Miklix

مولد متاهة خوارزمية ويلسون

نُشرت: ١٦ فبراير ٢٠٢٥ م في ٧:٣٠:٣٩ م UTC
آخر تحديث: ١٢ يناير ٢٠٢٦ م في ٩:٠٣:١١ ص UTC

مولد متاهات يستخدم خوارزمية ويلسون لإنشاء متاهة مثالية. تُولّد هذه الخوارزمية جميع المتاهات الممكنة ذات الحجم المحدد بنفس الاحتمالية، لذا يُمكنها نظريًا توليد متاهات ذات تصميمات مختلطة متعددة، ولكن نظرًا لوجود عدد أكبر من المتاهات ذات الممرات القصيرة مقارنةً بالمتاهات ذات الممرات الطويلة، فسترى هذه الأخيرة بشكل متكرر.

لقد تمت ترجمة هذه الصفحة آليًا من الإنجليزية بهدف جعلها متاحة لأكبر عدد ممكن من الأشخاص. لسوء الحظ، لم يتم تطوير تقنية الترجمة الآلية بعد، لذا قد تحدث أخطاء. إذا كنت تفضل ذلك، يمكنك عرض النسخة الإنجليزية الأصلية هنا:

Wilson's Algorithm Maze Generator

خوارزمية ويلسون هي طريقة للمشي العشوائي مع حذف الحلقات، تُولّد أشجارًا ممتدة منتظمة لإنشاء المتاهات. هذا يعني أن جميع المتاهات الممكنة ذات الحجم المحدد لها نفس احتمالية التوليد، مما يجعلها تقنية غير متحيزة لتوليد المتاهات. يمكن اعتبار خوارزمية ويلسون نسخة محسّنة من خوارزمية ألدوس-برودر، حيث تُولّد متاهات ذات خصائص متطابقة، ولكنها تعمل بسرعة أكبر بكثير، لذا لم أُدرج خوارزمية ألدوس-برودر هنا.

المتاهة المثالية هي المتاهة التي يوجد بها مسار واحد فقط من أي نقطة في المتاهة إلى أي نقطة أخرى. وهذا يعني أنه لا يمكنك أن تنتهي إلى الدوران في دوائر، ولكنك ستواجه غالبًا نهايات مسدودة، مما يضطرك إلى الالتفاف والعودة.

تتضمن خرائط المتاهة التي تم إنشاؤها هنا إصدارًا افتراضيًا بدون أي مواضع بداية ونهاية، لذا يمكنك تحديدها بنفسك: سيكون هناك حل من أي نقطة في المتاهة إلى أي نقطة أخرى. إذا كنت تريد الإلهام، فيمكنك تمكين موضع بداية ونهاية مقترح - وحتى رؤية الحل بين الاثنين.


إنشاء متاهة جديدة








حول خوارزمية ويلسون

ابتكر ديفيد بروس ويلسون خوارزمية ويلسون لتوليد الأشجار الممتدة الموحدة باستخدام جدار عشوائي تم مسحه بالحلقة.

قدّم ويلسون هذه الخوارزمية لأول مرة عام 1996 أثناء بحثه في الأشجار الممتدة العشوائية وسلاسل ماركوف في نظرية الاحتمالات. ورغم أن عمله كان في الأساس في الرياضيات والفيزياء الإحصائية، فقد تم اعتماد الخوارزمية على نطاق واسع منذ ذلك الحين لتوليد المتاهات نظرًا لقدرتها على إنتاج متاهات متجانسة تمامًا.

كيف تعمل خوارزمية ويلسون في توليد المتاهات

تضمن خوارزمية ويلسون أن تكون المتاهة النهائية متصلة بالكامل دون أي حلقات عن طريق نحت المسارات بشكل متكرر من الخلايا غير المزارة باستخدام المشي العشوائي.

الخطوة 1: التهيئة

  • ابدأ بشبكة مليئة بالجدران.
  • حدد قائمة بجميع خلايا المرور الممكنة.

الخطوة الثانية: اختر خلية بداية عشوائية

  • اختر أي خلية عشوائية وقم بتحديدها على أنها تمت زيارتها. ستكون هذه الخلية بمثابة نقطة البداية للمتاهة أثناء عملية التوليد.

الخطوة 3: المشي العشوائي مع مسح الحلقات

  • اختر خلية لم تتم زيارتها وابدأ في القيام بجولة عشوائية (التحرك في اتجاهات عشوائية).
  • إذا وصل المسار إلى خلية تمت زيارتها بالفعل، فامسح أي حلقات في المسار.
  • بمجرد أن يتصل المسار بالمنطقة التي تمت زيارتها، قم بتحديد جميع الخلايا الموجودة في المسار على أنها تمت زيارتها.

الخطوة الرابعة: كرر العملية حتى يتم زيارة جميع الخلايا:

  • استمر في اختيار الخلايا التي لم تتم زيارتها وإجراء عمليات المشي العشوائي حتى تصبح كل خلية جزءًا من المتاهة.

قراءات إضافية

إذا أعجبك هذا المنشور، فقد تعجبك أيضًا هذه الاقتراحات:


شارك على بلوسكايشارك على الفيسبوكشارك على لينكدإنشارك على تمبلرشارك على إكسشارك على لينكدإنثبت على بينتريست

ميكيل كريستنسن

عن المؤلف

ميكيل كريستنسن
ميكيل هو مؤسس ومالك موقع miklix.com. يتمتع بخبرة تزيد عن 20 عامًا كمبرمج كمبيوتر/مطور برامج محترف ويعمل حاليًا بدوام كامل في إحدى شركات تكنولوجيا المعلومات الأوروبية الكبرى. عندما لا يقوم بالتدوين، يقضي وقت فراغه في مجموعة واسعة من الاهتمامات والهوايات والأنشطة، والتي قد تنعكس إلى حد ما في تنوع الموضوعات التي يغطيها هذا الموقع.