تخطّي إلى المحتوى
Kudos AI

المينيماكس وتشذيب ألفا-بيتا

نشر القيم صعودًا في شجرة اللعبة بافتراض خصم أمثل، وقطع الفروع التي يثبت أنها لا تغيّر النتيجة.

متوسّطالوحدة 130 دقيقة · 120 XP
الشكل 5.2 محلولاً مرتين: القيم مرجَّعةً في الشجرة، ثم الشجرة نفسها تحت ألفا-بيتا، فتُقطع ورقتان دون تحريك الإجابة.

في لعبة بلاعبين صفرية المجموع تامّة المعلومات، يعرف اللاعبان كل شيء، ومكسب أحدهما خسارة الآخر. فـMAX يريد منفعة نهائية كبيرة؛ وMIN يريدها صغيرة. وللّعب الأمثل أمام خصم كامل تعريف دقيق، ويُحسب من أسفل إلى أعلى.

قيمة المينيماكس

MINIMAX(s)={UTILITY(s)if s is terminal,max⁡aMINIMAX(RESULT(s,a))if MAX moves at s,min⁡aMINIMAX(RESULT(s,a))if MIN moves at s.\text{MINIMAX}(s) = \begin{cases} \text{UTILITY}(s) & \text{if } s \text{ is terminal},\\ \max_{a} \text{MINIMAX}(\text{RESULT}(s,a)) & \text{if MAX moves at } s,\\ \min_{a} \text{MINIMAX}(\text{RESULT}(s,a)) & \text{if MIN moves at } s. \end{cases}

اقرأها افتراضاً عن الخصم: إذ يفترض MAX أن MIN سيردّ دائماً بأسوأ نقلة لـMAX. والقيمة هي ما يستطيع MAX ضمانه حتى أمام لعب كامل - حدٌّ أدنى لا يمكن أن تُجادَل عنه، لا تنبّؤ بما سيفعله خصم ضعيف.

مثال محلول

الشجرة المعيارية من طبقتين. جذرٌ MAX له ثلاثة أبناء MIN، وأوراقهم

B:(3,12,8),C:(2,4,6),D:(14,5,2).B: (3, 12, 8) , \qquad C: (2, 4, 6) , \qquad D: (14, 5, 2) .

رجّع عقد MIN. يأخذ كلٌّ منها أصغر أوراقه:

B=min⁡(3,12,8)=3,C=min⁡(2,4,6)=2,D=min⁡(14,5,2)=2.B = \min(3,12,8) = 3 , \quad C = \min(2,4,6) = 2 , \quad D = \min(14,5,2) = 2 .

رجّع جذر MAX. يأخذ أكبر أبنائه:

root=max⁡(3,2,2)=3.\text{root} = \max(3, 2, 2) = 3 .

فقيمة المينيماكس 3\mathbf{3}، والنقلة المثلى هي التي تؤدّي إلى BB.

ولاحظ المطبّ في العقدة DD: فهي تحوي أكبر ورقة في الشجرة كلها، 1414. ومع ذلك قيمتها 22، لأن MAX لا يختار أي ورقة من DD تُبلَغ - بل MIN يختار، وسيأخذ 22. فالفرع يساوي ما يسمح به خصمك، لا ما يحتويه.

تشذيب ألفا-بيتا

يفحص المينيماكس كل عقدة، وهو O(bm)O(b^m) وميؤوس منه في الألعاب الحقيقية. لكنك لا تحتاج رؤية كل عقدة لتعرف قيمة الجذر.

لنفترض أن MAX أثبت سلفاً أن BB يضمن 33. والآن افحص CC فتجد أن ورقتها الأولى 22. والعقدة CC عقدة MIN، فقيمتها النهائية على الأكثر 22 - إذ يستطيع MIN دائماً أخذ تلك الـ22، ولا تستطيع الأوراق التالية إلا خفضها. ولأن 2<32 < 3، لن يختار MAX CC أبداً. فأوراق CC المتبقّية لا تستطيع تغيير قيمة الجذر، ومن ثم لا حاجة إلى فحصها إطلاقاً.

وتلك هي الفكرة كلها، متتبَّعةً بحدّين: α\alpha، أفضل قيمة يضمنها MAX سلفاً، وβ\beta، أفضل ما يضمنه MIN سلفاً.

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

تفاعلي: الأوراق التي لا يحتاج إلى النظر إليها أبدًا

MAX في الجذر، وMIN تحته، واثنتا عشرة ورقة.

3MAX3B3128≤2C246≤2D1452
مفحوصة
7 / 9
لم تُفحص قطّ
2
قيمة الجذر
3
ترتيب النقلات:

2 من الأوراق الاثنتي عشرة لم تُقوَّم قطّ، والجواب مطابق لجواب مينيماكس. ولاحظ العقدة D: فيها أكبر ورقة في الشجرة كلها، 14، وقيمتها 2، لأن MAX ليس هو من يختار أي ورقة من D تُبلغ، بل MIN. فالفرع يساوي ما يسمح به خصمك، لا ما يحويه. ولاحظ كذلك أن قيمة العقدة المقطوعة تُعرض بوصفها على الأكثر قيمةً لا مساويةً لها: فقد توقف البحث قبل أن يعرف إلى أي حدّ تنزل، وذاك بعينه العمل الذي وُفِّر.

ترتيب النقلات

يتوقّف التشذيب كلياً على فحص النقلات الجيدة مبكراً. فإن بُحثت أفضل نقلة أولاً، ارتفعت α\alpha فوراً وقُطعت الفروع اللاحقة سريعاً. ومع ترتيب مثالي يهبط معامل التفرّع الفعّال من bb إلى نحو b\sqrt{b}، فيتيح للبحث أن يمضي أعمق بنحو الضعف في الزمن نفسه. ومع ترتيب أسوأ الحالات لا يُشذَّب شيء وتكون قد دفعت كلفة المينيماكس كاملة.

ولهذا تستثمر المحرّكات الحقيقية بكثافة في قواعد الترتيب الاسترشادية قبل تعميق البحث.

قبل الاختبار

كن قادراً على ترجيع القيم في شجرة صغيرة، وعلى القول إن ألفا-بيتا يعيد القيمة ذاتها بفحص عقد أقل، وعلى تفسير لماذا تساوي DD قيمة 22 رغم احتوائها على 1414. انظر البحث التنافسي والمينيماكس.

المراجع والقراءات الإضافية

  • Stuart Russell, Peter Norvig, Artificial Intelligence: A Modern Approach, Pearson (3rd edition), 2010· مكتبة مراجع Kudos AI

تُذكر الأعمال المحمية بحقوق النشر للمرجعية فقط ولا تُستضاف هنا؛ يرجى الرجوع إلى الناشر للوصول إليها.

افتح المسار كاملًا

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