و عليكم السلام و رحمة الله مرحبا في المنتدى .. الرجاء التفصيل اكثر لنستطيع مساعدتك بشكل افضل.. مثلا ما الهدف ؟ بحثي/تعليمي ام تطوير لعبة ما خبراتك البرمجية؟ لنعلم من اين يجب ان تبدأ و اي الحلول انسب لك في حال كانت خبرتك البرمجية جيدة و الهدف بحثي/تعليمي (مجال ال A.I الذكاء الصناعي) فانصحك بالبحث عن اكواد مفتوحة المصدر للتكفل لك برسم لوحة الشطرنج على الشاشة و اخذ المدخلات من اللاعب .بشكل عام يجب ان تختار الكود الاقرب لاحتياجاتك و يجب ان يكون الجزء المسؤول عن الذكاء الصناعي في ذلك المشروع قابل لان ستبدله بافكارك الخاصة . ساتوقف هنا الى ان تتم اضافة التفاصيل.
شكراً لك و جزاك الله خيراً للرد .. هدفي هو بحثي وهو مشروع تخرج طلب مني , خبراتي البرمجية : اتقن السي شارب و اعرف بالسي بلس .. لكن ببداية الأمر أريد البحث عن الحل الامثل باستخدام خوارزميات البحث , بمعنى آخر الجزء الأول من المشروع هو خوارزميات ,, للبحث عن أفضل خوارزمية للعبة الشطرنج والجزء الثاني هو تطبيق عملي محاكاة لهذه اللعبة.. أرجو ان تكون فكرتي اصبحت واضحة , واي استفسار انا جاهزة .. وكل الشكر لحضرتكم ..
جربي اولا ان تستخدمي البرنامج و تستكشفيه ثم ستجدين في هذا المجلد الجزء المتعلق بالذكاء الصناعي SharpChess/SharpChess.Model/AI هدفك سيكون ان تفهمي الكود الموجود هناك لتستطيعي استبداله بالكود الخاص بك . (تحديدا هناك كلاس اسمه Search و فيه يتم تعيين ال Score للحركات في نطاق البحث) البرنامج يتكفل بالمحاكاة بالمناسبة .
شكراً جزبلاً لك وجعله الله في ميزان حسناتك ان شاء الله ... المشروع رائع وفتح لي العديد من الابواب .. سوف اقوم بقراءة الأكواد وفهمها بإذن الله .. لكن سؤال اخير لو سمحت احتاج مرجع او كتاب يتحدث عن خوارزميات للعبة الشطرنج لإيجاد افضل خوارزمية لها ..(من هذه الخوارزميات قرأت قليلا عن خوارزمية minmax , alpha beta) ..لكن بحاجة لشرح عميق وموسع لهم ولخوارزميات اخرى ..
لأن في البداية بحاجة لفهم الخوارزميات الممكنة للعبة وايجاد افضل خوارزمية ..
انصحك بهذا الكورس (شخصيا تعلمت منه) http://ai.berkeley.edu/lecture_videos.html تحديدا شاهدي Uninformed Search Informed Search Adversarial Searchالمواضيع ستتطرق كخوازرميات البحث بشكل عام (breadth first,depth first ) ثم سيذكر ان علينا بهذه الخوارزيمات ان نبحث في فضاء البحث باكمله و لذا يمكن ان "نوجه" جهودنا و نبحث بطريقة اذكى باستخدام ما يسمى ال Heuristics (يمكنكي ان تتخيلي ال Heuristics بانها ما يناله لاعب الشطرنج بالخبرة ) من الامثلة عليها في الشطرنج مثلا ان تختاري الحركة التي تقلل عدد القلاع لدى الخصم فتقيمين جميع الخيارات امام اللاعب و تختارين الحركة التي تحقق ذلك . اذا كان البحث معتمدا على هذه ال Heuristics تماما يسمى البحث Greedy Search و اذا استخدمتي اضافة الى ال Heuristics خوارزيمات البحث العامة مثل ال Breadth First فان خوارزمية البحث هذه تسمى *A-star or A سيستعرض الكورس ايضا الخوارزميات المستخدمة في حال وجود اعداء(Adversarial Search) مثل ال Min-Max Alpha Beta Pruning هي اضافة على ال Min-Max تساعد في تقليل الفروع التي سنبحث فيها في فضاء البحث (Pruning the search tree) ككتب متخصصة في الخوارزيمات الفضلى للعبة الشطرنج تحديدا صراحة لا اعرف ايا منها .