ဝီလ်ဆန်၏ အယ်လ်ဂိုရီသံ မြေဇ် ထုတ်လုပ်သူ
ထုတ်ဝေသည်- ၂၀၂၅၊ ဖေဖော်ဝါရီ ၁၆ UTC ၁၉:၄၂:၂၆
နောက်ဆုံး မွမ်းမံပြင်ဆင်သည်- ၂၀၂၆၊ ဇန်နဝါရီ ၁၂ UTC ၀၉:၀၃:၄၅
Wilson's Algorithm Maze Generator
Wilson ရဲ့ algorithm ကတော့ loop-erased random walk နည်းလမ်းတစ်ခုဖြစ်ပြီး maze ဖန်တီးဖို့အတွက် uniform spanning tree တွေကိုထုတ်ပေးပါတယ်။ ဆိုလိုတာက ပေးထားတဲ့အရွယ်အစားရှိတဲ့ maze အားလုံးကို တူညီစွာထုတ်လုပ်နိုင်ခြေရှိပြီး ဘက်မလိုက်တဲ့ maze generation နည်းပညာတစ်ခုဖြစ်စေပါတယ်။ Wilson ရဲ့ algorithm ကို Aldous-Broder algorithm ရဲ့ တိုးတက်လာတဲ့ဗားရှင်းတစ်ခုအဖြစ် သတ်မှတ်နိုင်ပါတယ်၊ ဘာလို့လဲဆိုတော့ တူညီတဲ့ဝိသေသလက္ခဏာတွေရှိတဲ့ maze တွေကိုထုတ်ပေးပေမယ့် ပိုမြန်အောင်အလုပ်လုပ်လို့ပါပဲ၊ ဒါကြောင့် Aldous-Broder algorithm ကို ဒီမှာ အကောင်အထည်ဖော်ဖို့ ကျွန်တော်စိတ်မ၀င်စားပါဘူး။
ပြီးပြည့်စုံသော ဝင်္ကပါသည် ဝင်္ကပါရှိ မည်သည့်မှတ်တိုင်မှ အခြားနေရာသို့ လမ်းကြောင်းတစ်ခု အတိအကျ ရှိသည့် ဝင်္ကပါတစ်ခုဖြစ်သည်။ ဆိုလိုတာက သင် လှည့်ပတ်ပြီး နောက်ကြောင်းပြန်ဖို့ တွန်းအားပေးတဲ့ အသေအဆုံးတွေကို မကြာခဏ ကြုံတွေ့ရပါလိမ့်မယ်။
ဤနေရာတွင် ထုတ်လုပ်လိုက်သော ဝင်္ကပါမြေပုံများတွင် မည်သည့်အစမှအဆုံး အနေအထားများ မပါရှိဘဲ မူရင်းဗားရှင်းပါ၀င်သည်၊ ထို့ကြောင့် ၎င်းတို့ကို သင်ကိုယ်တိုင် ဆုံးဖြတ်နိုင်သည်- ဝင်္ကပါရှိ မည်သည့်အမှတ်မှ အခြားအမှတ်အထိ အဖြေတစ်ခု ရှိလိမ့်မည်။ သင်သည် လှုံ့ဆော်မှုကို လိုချင်ပါက၊ အကြံပြုထားသော အစနှင့် အပြီးသတ် အနေအထားကို ဖွင့်နိုင်သည် - နှစ်ခုကြားမှ ဖြေရှင်းချက်ကိုပင် ကြည့်နိုင်သည်။
Wilson ရဲ့ Algorithm အကြောင်း
ကွင်းဆက်ဖျက်ထားသော ကျပန်းနံရံကို အသုံးပြု၍ တူညီသော ပြန့်ကားနေသော သစ်ပင်များထုတ်လုပ်ရန် Wilson ၏ algorithm ကို David Bruce Wilson မှ ဖန်တီးခဲ့သည်။
Wilson သည် ဤ algorithm ကို ၁၉၉၆ ခုနှစ်တွင် probability theory တွင် random spanning trees များနှင့် Markov chains များကို သုတေသနပြုနေစဉ်တွင် မိတ်ဆက်ခဲ့သည်။ သူ၏လုပ်ငန်းသည် အဓိကအားဖြင့် သင်္ချာနှင့် စာရင်းအင်းရူပဗေဒတွင် ဖြစ်သော်လည်း၊ ပြီးပြည့်စုံသော uniform mazes များကို ထုတ်လုပ်နိုင်စွမ်းကြောင့် maze generation အတွက် ကျယ်ကျယ်ပြန့်ပြန့် လက်ခံကျင့်သုံးခဲ့ကြသည်။
Maze Generation အတွက် Wilson ရဲ့ Algorithm ဘယ်လိုအလုပ်လုပ်လဲ
Wilson ရဲ့ algorithm က နောက်ဆုံး maze ကို ကွင်းဆက်မရှိဘဲ အပြည့်အဝချိတ်ဆက်ထားကြောင်း သေချာစေပြီး မဝင်ကြည့်ရသေးတဲ့ ဆဲလ်တွေကနေ ကျပန်းလမ်းလျှောက်တာတွေကို အသုံးပြုပြီး လမ်းကြောင်းတွေကို ထပ်ခါတလဲလဲ ထွင်းထုပေးပါတယ်။
အဆင့် ၁: စတင်ပါ
- နံရံများဖြည့်ထားသော ဇယားကွက်ဖြင့် စတင်ပါ။
- ဖြစ်နိုင်ချေရှိသော passage cell အားလုံး၏ စာရင်းကို သတ်မှတ်ပါ။
အဆင့် ၂: ကျပန်းစတင်ဆဲလ်တစ်ခုကို ရွေးချယ်ပါ
- ကျပန်းဆဲလ်တစ်ခုခုကို ရွေးချယ်ပြီး ဝင်ရောက်ကြည့်ရှုပြီးအဖြစ် မှတ်သားပါ။ ၎င်းသည် မျိုးဆက်အတွင်း ပဟေဠိ၏ အစမှတ်အဖြစ် ဆောင်ရွက်ပါသည်။
အဆင့် ၃: Loop-Erasing ဖြင့် ကျပန်းလမ်းလျှောက်ခြင်း
- မရောက်ဖူးသော ဆဲလ်တစ်ခုကို ရွေးချယ်ပြီး ကျပန်းလမ်းလျှောက်ခြင်း (ကျပန်း ဦးတည်ရာများဖြင့် ရွေ့လျားခြင်း) ကို စတင်ပါ။
- လမ်းလျှောက်ခြင်းသည် သွားရောက်လည်ပတ်ပြီးသား ဆဲလ်တစ်ခုသို့ ရောက်ရှိပါက လမ်းကြောင်းရှိ ကွင်းဆက်များကို ဖျက်ပစ်ပါ။
- လမ်းလျှောက်ခြင်းသည် သွားရောက်လည်ပတ်ခဲ့သော ဒေသသို့ ချိတ်ဆက်ပြီးသည်နှင့် လမ်းကြောင်းရှိ ဆဲလ်အားလုံးကို သွားရောက်လည်ပတ်ပြီးဟု မှတ်သားပါ။
အဆင့် ၄: ဆဲလ်အားလုံး လာရောက်ကြည့်ရှုသည်အထိ ထပ်ခါတလဲလဲ လုပ်ဆောင်ပါ-
- မရောက်ဖူးသောဆဲလ်များကို ဆက်လက်ရွေးချယ်ပြီး ဆဲလ်တိုင်းသည် ပဟေဠိ၏ အစိတ်အပိုင်းတစ်ခုဖြစ်သည်အထိ ကျပန်းလမ်းလျှောက်ခြင်းများ ပြုလုပ်ပါ။
နောက်ထပ်စာဖတ်ခြင်း။
ဤပို့စ်ကို သင်နှစ်သက်ပါက၊ ဤအကြံပြုချက်များကို သင်လည်း နှစ်သက်နိုင်ပါသည်-
- အဲလ်လား၏ အယ်လ်ဂိုရီသံ မြေဇ် ထုတ်လုပ်သူ
- ဟန်တ် နှင့် ကွယ်လွန် သွားမယ် မြေဇ် ထုတ်လုပ်သူ
- Recursive Backtracker Maze မီးစက်
