هذا الجزء للحديث عن لعبة الشطرنج المرحلة الثانية اللي يكون فيها الكمبيوتر يمثل احد اللاعبين. عندنا طريقتين لتحقيق ذلك , باستخدام الاحتمالات و باستخدام الذكاء الاصطناعي. في البداية ضروري نكون فاهمين قوانين اللعبة فمثلاً عندنا 16 قطعة كما في الصورة ( سلسلة )
في اول نقلة ممكن نحرك اي جندي ( الصف الاول ) إما حركة للأمام او حركتين فينتج عندنا 16 حركة و ممكن نحرك الحصان ثلاث خطوات افقية او رأسية ثم إما يمين او يسار على هيئة حرف L و لأن لدينا حصانين فهذه 4 حركات .. المجموع 20 حركة محتملة.
حركنا اول قطعة , ما هي احتمالات الحركة التالية ؟ الحركة الثانية ستعتمد على الحركة الأولى فأي حركة من العشرين حركة السابقة سينتج عنها 20 حركة اخرى !. بمعنى لدينا 400 حركة ( 20 في 20 ) و الحركة الثالثة 20 في 20 في 20 اي 8000 حركة.
قوة اللعبة ستعتمد على تقدير الحركات و العمق الذي سنحلل فيه الاحتمالات , مستوى اول نحلل فيه 20 او ثاني فيه 400 او ثالث فيه 8000 و هكذا. اطول مباراة شطرنج سجلت كان فيها 269 نقلة خلال 20 ساعة. مباراة كهذه ان اردنا تغطيتها نحتاج الى ضرب 20 في نفسه 269 مرة
هناك ما يمسى بShannon number نسبة لعالم احتسب عدد الاحتمالات الممكنة بـ10 قوة 120 ) اي 1 بجانبه 120 صفر. هذا العدد اكبر من عدد ذرات الكون ( 10 أوس 82 ). ولا يوجد اي سوبر كمبيوتر او كوانتم كمبيوتر على وجه الارض يمكنه معالجتها و إن حاول يعالجها يحتاج مليارات السنين.
لندخل في الحل , لاحظ ان عدد الحركات يكبر كشجرة لذا نحتاج هنا الى خوارزمية Search Tree ( تدرس تحت ال Data Structure & Algorithms ) . اغلب العاب الشطرنج الكومبيوترية التقليدية تستخدم الMinimax او Negamax ( اسهل )
الMinimax بنستخدمها لتحديد افضل حركة من ضمن كل الحركات الممكنة عن طريق التقييم . التقييم احنا بنحدده بناء على "ثقل" بأن نقول مثلاً ان الجندي قيمته 1 مثلاً و الحصان و الفيل لهم نفس القيمة 2 و القلعة 3 و الوزير 5 و الملك 10 و في المقابل تأخذ القطع السوداء نفس القيمة لكن بالسالب.
و عند اي حركة يقوم الكمبيوتر بتوليد شجرة قرار للنقلات المستقبلية بحيث أن أي حركة للاعب الابيض يزيد فيها العدد الموجب تعتبر جيدة له و اي حركة للاعب الأسود يكون فيها العدد السالب اصغر فهي جيدة له بناء على قيمة ما سيحصل او سيفقد من قطع.
بمعنى سيرسم شجرة قرار كل مستوى فيها عبارة عن نقلة مستقبلية له و ما يمكن للاعب الاخر ان يختار ثم يبدأ بالاحتساب من اسفل ( اوراق ) الشجرة إلى الاعلى ليحدد افضل نقلة.
بعض محركات العاب الشطرنج تستخدم خوازمية Alpha-Beta Pruning و هي تحسين للminimax تقلل عدد المرات التي يجري البحث بها للتقييم فمثلاً لو ان احد الحركات قد ينتج عنها كش ملك فما في داعي اختبر باقي الحركات و يتم قطع البحث.
احد الشباب ذكر خوارزمية مونتي كارلو MC و هي ايضاً خوازمية اتخاذ قرار بناء على تحليل الأخطار تم استخدامها لأول مرة من قبل علماء في صناعة القنبلة الذرية للحرب العالمية الثانية ضمن مشروع منهاتن و كان من بين العلماء John Von Neumann مصمم معمارية الحاسب المشهور.
خوارزمية مونتي كارلو تختلف عن ماقبلها في أنها تحتاج إلى تغذية بعينات عشوائية يمكن ان نحصل عليها عبر مراقبة مباريات شطرنج و هي ما استخدمته قوقل في لعبة AlphaGo . نكتفي بهذا القدر لإنهاء سلاسل لعبة الشطرنج . هناك مواقع كثيرة بها شروحات و اكواد لمن اراد الاستزادة.
جاري تحميل الاقتراحات...