Generator Maze Algoritma Wilson
Diterbitake: 16 Februari 2025 ing 19:36:23 UTC
Dianyari pungkasan: 12 Januari 2026 ing 09:03:36 UTC
Wilson's Algorithm Maze Generator
Algoritma Wilson kuwi metode random walk sing diilangi loop sing ngasilake wit-witan sing seragam kanggo nggawe labirin. Iki tegese kabeh labirin sing bisa digawe kanthi ukuran tartamtu duwe kemungkinan sing padha, saengga dadi teknik generasi labirin sing ora bias. Algoritma Wilson bisa dianggep minangka versi sing luwih apik saka algoritma Aldous-Broder, amarga ngasilake labirin kanthi karakteristik sing padha, nanging mlaku luwih cepet, mula aku ora repot-repot ngetrapake algoritma Aldous-Broder ing kene.
Labirin sing sampurna yaiku labirin sing ana persis siji dalan saka sembarang titik ing mbingungake menyang titik liyane. Iku tegese sampeyan ora bisa mungkasi munggah ing bunderan, nanging sampeyan bakal kerep nemoni bund ends, meksa sampeyan kanggo nguripake lan bali.
Peta mbingungake sing digawe ing kene kalebu versi standar tanpa posisi wiwitan lan pungkasan, supaya sampeyan bisa mutusake dhewe: bakal ana solusi saka sembarang titik ing mbingungake menyang titik liyane. Yen sampeyan pengin inspirasi, sampeyan bisa ngaktifake posisi wiwitan lan pungkasan sing disaranake - lan malah ndeleng solusi ing antarane loro kasebut.
Babagan Algoritma Wilson
Algoritma Wilson kanggo ngasilake wit-witan sing merata nggunakake tembok acak sing dihapus loop digawe dening David Bruce Wilson.
Wilson wiwitane ngenalake algoritma iki ing taun 1996 nalika nliti wit-witan sing nyabang acak lan rantai Markov ing teori probabilitas. Sanajan karyane utamane ana ing matematika lan fisika statistik, algoritma iki wis digunakake sacara wiyar kanggo generasi labirin amarga kemampuane kanggo ngasilake labirin sing seragam kanthi sampurna.
Cara Kerja Algoritma Wilson kanggo Generasi Labirin
Algoritma Wilson njamin yen labirin pungkasan wis nyambung kanthi lengkap tanpa ana puteran kanthi ngukir jalur kanthi iteratif saka sel sing durung dikunjungi nggunakake cara mlaku acak.
Langkah 1: Inisialisasi
- Miwiti nganggo kothak sing kebak tembok.
- Nemtokake dhaptar kabeh sel perangan sing bisa ditindakake.
Langkah 2: Pilih Sel Wiwitan Acak
- Pilih sel acak lan tandhani minangka sel sing wis dibukak. Iki dadi titik wiwitan labirin sajrone generasi.
Langkah 3: Mlaku Acak nganggo Ngilangi Putaran
- Pilih sel sing durung tau dikunjungi lan wiwiti mlaku kanthi acak (obah ing arah sing acak).
- Yen mlaku tekan sel sing wis dibukak, busak puteran ing dalan kasebut.
- Sawise mlaku nyambung menyang wilayah sing wis dibukak, tandhani kabeh sel ing dalan minangka sing wis dibukak.
Langkah 4: Baleni nganti kabeh sel dibukak:
- Terusake milih sel sing durung dibukak lan mlaku-mlaku kanthi acak nganti saben sel dadi bagean saka labirin.
Wacan Salajengipun
Yen sampeyan seneng karo kiriman iki, sampeyan bisa uga seneng saran iki:
- Generator labirin Algoritma Kruskal
- Rekursif Backtracker Maze Generator
- Generator Labirin Algoritma Eller
