Miklix

Gjeneratori i Algoritmit Maze të Uillsonit

Publikuar: 16 shkurt 2025 në 7:36:29 e pasdites, UTC
Përditësimi i fundit: 12 janar 2026 në 9:03:37 e paradites, UTC

Gjenerator labirinti që përdor algoritmin e Wilson për të krijuar një labirint të përsosur. Ky algoritëm gjeneron të gjitha labirintet e mundshme të një madhësie të caktuar me të njëjtën probabilitet, kështu që në teori mund të gjenerojë labirinte me shumë paraqitje të përziera, por meqenëse ka më shumë labirinte të mundshme me korridore më të shkurtra sesa më të gjata, do t'i shihni më shpesh ato.

Kjo faqe u përkthye me makinë nga anglishtja për ta bërë të aksesueshme për sa më shumë njerëz. Fatkeqësisht, përkthimi me makinë nuk është ende një teknologji e përsosur, kështu që mund të ndodhin gabime. Nëse preferoni, mund ta shikoni versionin origjinal në anglisht këtu:

Wilson's Algorithm Maze Generator

Algoritmi i Wilsonit është një metodë ecjeje të rastësishme me fshirje loop-i që gjeneron pemë uniforme që përfshijnë për krijimin e labirinteve. Kjo do të thotë që të gjitha labirintet e mundshme të një madhësie të caktuar kanë të njëjtën probabilitet të gjenerohen, duke e bërë atë një teknikë të paanshme të gjenerimit të labirinteve. Algoritmi i Wilsonit mund të konsiderohet një version i përmirësuar i algoritmit Aldous-Broder, pasi gjeneron labirinte me karakteristika identike, por funksionon shumë më shpejt, kështu që nuk jam shqetësuar ta zbatoj algoritmin Aldous-Broder këtu.

Një labirint i përsosur është një labirint në të cilin ka saktësisht një rrugë nga çdo pikë në labirint në çdo pikë tjetër. Kjo do të thotë që nuk mund të përfundoni duke ecur në rreth, por shpesh do të hasni në rrugë pa krye, duke ju detyruar të ktheheni dhe të ktheheni.

Hartat e labirintit të krijuara këtu përfshijnë një version të paracaktuar pa asnjë pozicion fillimi dhe mbarimi, kështu që ju mund t'i vendosni ato vetë: do të ketë një zgjidhje nga çdo pikë në labirint në çdo pikë tjetër. Nëse dëshironi frymëzim, mund të aktivizoni një pozicion të sugjeruar fillimi dhe përfundimi - dhe madje të shihni zgjidhjen midis të dyjave.


Gjeneroni labirint të ri








Rreth Algoritmit të Wilsonit

Algoritmi i Wilsonit për gjenerimin e pemëve uniforme që përfshijnë një mur të rastësishëm të fshirë me loop u krijua nga David Bruce Wilson.

Wilson e prezantoi fillimisht këtë algoritëm në vitin 1996, ndërsa bënte kërkime mbi pemët e rastësishme që shtrihen dhe zinxhirët Markov në teorinë e probabilitetit. Edhe pse puna e tij ishte kryesisht në matematikë dhe fizikë statistikore, algoritmi që atëherë është përdorur gjerësisht për gjenerimin e labirinteve për shkak të aftësisë së tij për të prodhuar labirinte të përkryera uniforme.

Si funksionon algoritmi i Wilsonit për gjenerimin e labirinteve

Algoritmi i Wilsonit siguron që labirinti përfundimtar të jetë i lidhur plotësisht pa asnjë lak duke gdhendur në mënyrë iterative shtigje nga qelizat e pavizituara duke përdorur ecje të rastësishme.

Hapi 1: Inicializoni

  • Filloni me një rrjetë të mbushur me mure.
  • Përcaktoni një listë të të gjitha qelizave të mundshme të kalimit.

Hapi 2: Zgjidhni një qelizë fillestare të rastësishme

  • Zgjidh çdo qelizë të rastësishme dhe shënoje si të vizituar. Kjo shërben si pikënisje e labirintit gjatë gjenerimit.

Hapi 3: Ecje e rastësishme me fshirje në loop

  • Zgjidh një qelizë të pavizituar dhe fillo një shëtitje të rastësishme (duke lëvizur në drejtime të rastësishme).
  • Nëse ecja arrin në një qelizë të vizituar tashmë, fshini çdo syth në shteg.
  • Pasi shëtitja të lidhet me rajonin e vizituar, shënoni të gjitha qelizat në shteg si të vizituara.

Hapi 4: Përsëriteni derisa të vizitohen të gjitha qelizat:

  • Vazhdoni të zgjidhni qelizat e pavizituara dhe të kryeni shëtitje të rastësishme derisa çdo qelizë të jetë pjesë e labirintit.

Lexime të mëtejshme

Nëse ju pëlqeu ky postim, mund t'ju pëlqejnë edhe këto sugjerime:


Shpërndaje në BlueskyShpërndaje në FacebookNdani në LinkedInShpërndaje në TumblrShpërndaje në XNdani në LinkedInPin në Pinterest

Mikkel Christensen

Rreth Autorit

Mikkel Christensen
Mikkel është krijuesi dhe pronari i miklix.com. Ai ka mbi 20 vjet përvojë si programues profesional kompjuteri/zhvillues softuerësh dhe aktualisht është i punësuar me kohë të plotë për një korporatë të madhe evropiane IT. Kur nuk bën blog, ai e kalon kohën e lirë në një gamë të gjerë interesash, hobish dhe aktivitetesh, të cilat mund të reflektohen në një farë mase në shumëllojshmërinë e temave të mbuluara në këtë faqe interneti.