Ov və öldür labirent generatoru
Nəşr olundu: 16 fevral 2025 at 21:05:01 UTC
Maze generatoru Hunt and Kill alqoritminin köməyi ilə mükəmməl bir mazut yaratmaq üçün istifadə edir. Bu alqoritm Recursive Backtracker-ə bənzəyir, lakin bir qədər az uzun, küləkli koridorlarla mazutlar əmələ gətirməyə meyllidir.Hunt and Kill Maze Generator
"Hunt and Kill" alqoritmi həqiqətən "Recursive Backtracker"in dəyişdirilmiş versiyasıdır. Modifikasiya sistematik olaraq yeni hüceyrənin daha da irəli gedə bilmədiyi vaxtdan davam etməsi üçün skan etməkdən (və ya "ovlamaqdan") ibarətdir. Həqiqi rekursiv axtarışın əksinə, bu hüceyrə həmişə yığının üzərindəki əvvəlki hüceyrəyə qayıdacaq.
Buna görə də bu alqoritm asanlıqla müxtəlif görünüşə və hisslərə malik mazutlar əmələ gətirmək üçün adaptasiya oluna bilər, sadəcə "ov" rejiminə daha tez-tez və ya konkret qaydalara uyğun daxil olmağı seçməklə. Burada tətbiq edilən versiya yalnız indiki hüceyrədən daha da irəli gedə bilmədiyi halda "ov" rejiminə daxil olur.
Mükəmməl bir labirint, labirintdəki hər hansı bir nöqtədən hər hansı digər nöqtəyə tam olaraq bir yolun olduğu labirintdir. Bu o deməkdir ki, siz dövrələrə girə bilməyəcəksiniz, ancaq tez-tez çıxılmaz nöqtələrlə qarşılaşacaqsınız, sizi dönüb geri qayıtmağa məcbur edəcəksiniz.
Burada yaradılan labirint xəritələri heç bir başlanğıc və bitmə mövqeləri olmayan defolt versiyanı ehtiva edir, buna görə də özünüz üçün bunlara qərar verə bilərsiniz: labirintdə istənilən nöqtədən istənilən digər nöqtəyə həll yolu olacaq. Əgər ilham almaq istəyirsinizsə, təklif olunan başlanğıc və bitiş mövqeyini aktivləşdirə və hətta ikisi arasında həll yolu görə bilərsiniz.
Ov və öldürmə alqoritmi haqqında
Hunt and Kill alqoritmi mazutların əmələ gətirməsi üçün sadə, eyni eyni ilə effektiv üsuldur. Bu, bir qədər dərinlik-birinci axtarış (yəni Recursive Backtracker alqoritmi) ilə oxşardır, nəinki indiki mövqedən daha çox gedə bilmədiyi halda, o, yeni hüceyrə tapmaq üçün labirint üzərindən sistematik olaraq skan edir (və ya "ovlar"). Alqoritm iki əsas mərhələdən ibarətdir: gəzinti və ov.
Hunt and Kill Alqoritmi Maze nəsli üçün necə işləyir?
1-ci addım: Təsadüfi hüceyrədən başlayın
- Şəbəkədə təsadüfi bir hüceyrə tapın və ziyarət edildiyi kimi işarə edin.
2-ci addım: Gəzinti mərhələsi (Təsadüfi gəzinti)
- Təsadüfi görünməyən qonşu seçin.
- Qonşunun yanına gedib onu ziyarət et və əvvəlki və yeni hüceyrə arasında yol oyada.
- Görünməyən qonşular qalmayana qədər təkrarlayın.
3-cü addım: Ov fazası (Scanning vasitəsilə backtracking)
- Şəbəkə cərgəsinə görə (və ya sütuna görə) skan edin.
- Ən azı bir ziyarət edilən qonşusu olan ilk gözəgörünməz hüceyrəni tapın.
- Gəzinti mərhələsini davam etdirmək üçün həmin hüceyrəni ziyarət edilən qonşuya bağlayın.
- Bütün hüceyrələr ziyarət edilənə qədər təkrarlayın.