Advanced Search

المحرر موضوع: كيف يلعب الحاسب الشطرنج ؟  (زيارة 4077 مرات)

0 الأعضاء و 1 ضيف يشاهدون هذا الموضوع.

فبراير 25, 2005, 08:56:32 مساءاً
زيارة 4077 مرات

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« في: فبراير 25, 2005, 08:56:32 مساءاً »
أشكر الأخ السفير (عالى الهمة) لمشاركته لى فى سلسلة التراجم هذه وأتمنى أن ينجح الآخرون فى تخطى عقبة الخوف من الترجمة.
=================================

اذا شاهدت مرة شخصاً يتعلم الشطرنج chess لأول مرة , ستدرك أنه يبدأ اللعب بقدرات محدودة .
فيما مضى كان اللاعب المبتدئ يجيد القوانين الأساسية للتحكم بقطع الشطرنج  بحيث يمكنك أن تسميه لاعبا جيدا. أما اليوم فاللاعبون الجدد ليسوا كذلك , فأكثر ما تسمعه منهم عندما تحيق بهم الهزيمة المبكرة هو تعابير تعجبية مثل :  " اوه , لم أفكر بهذا " أو " لم أنتبه لهذه الخطوة" وكأن خسارتهم كانت مفاجأة غريبة !
العقل البشري يستوعب تلك التعبيرات , يخزن تشكيلات مختلفة على لوحة الشطرنج , يكتشف
المناورات والخطط , ويتعامل مع التغييرات في اللعبة .. بآن واحد . وكنوع من تطوير المهارات , يقرأ اللاعب كتباً ليتعرف على نماذج لعب سابقة استخدمها خيرة اللاعبين في الماضي .
كما أن استراتيجيات اللعب تتطور كي ترشد اللاعب على التقدم من لعبة لأخرى .
بالنسبة للبشر تتضمن الشطرنج كمية كبيرة من التفكير النظري رفيع المستوى , نماذج مرئية ملائمة لتذكر الوضعيات على اللوحة , قوانين وارشادات , فكر يقظ , وحتى علم النفس .
=> الحاسب لا يفعل شيئا من كل ذلك !
الشطرنج تبدو كفعالية بشرية خاصة , تتطلب فكرا وذكاءً , اذن كيف يمكن للحاسب أن يلعبها ؟
في هذا المقال سنلقي الضوء على هذا السؤال , وسنجد أن الحاسب لا ( يلعب) الشطرنج في الحقيقة كما يفعل البشر . فالحاسب الذي يلعب الشطرنج لا يفكر انما يحسب من خلال صيغ محددة تتيح له أن يقوم بالحركات . كلما ازدادت سرعة جهاز الحاسب , كلما ازدادت جودة هذه الحسابات .
حواسيب الشطرنج تعتبر اليوم أفضل لاعبي الشطرنج اطلاقا , حتى انها تلعب مباشرة دون انتظار .

الحاسب والشطرنج

الوضع الحالي لفن الشطرنج المحوسب معقد , لكنه يستخدم حسابات بسيطة في جوهرها .
فلنفترض أنك ستبدأ اللعب :
لوحة الشطرنج جاهزة للبداية ..
كل لاعب لديه 16 قطعة .
البداية للأبيض .
للأبيض 20 خياراً للبدء :
- يمكنه تحريك أي واحد من البيادق ( الجنود) الثمانية خطوة أو خطوتين للأمام .
- يمكنه تحريك كل من الحصانين لمربعين مختلفين .

يختار الأبيض احدى هذه الخطوات وينفذها .
يحين دور الأسود .. هو الآخر يملك 20 خياراً للبداية .. يختار أحدها وينفذه .
الآن دور الأبيض من جديد .. خطوته القادمة تعتمد على ما لعبه الأسود , لكنه يملك حوالي 20 خياراً للّعب حسب الوضع الحالي للّوحة .. ثم 20 خطوة تقريبا للأسود أيضا حسب وضع اللوحة .. وهكذا .
هكذا ينظر الحاسب للشطرنج , فهو يتعامل مع عالم من " كل الخيارات الممكنة "  فيصنع
لكل خيار منها , شجرة كبيرة كهذه :
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 25, 2005, 08:57:16 مساءاً
رد #1

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #1 في: فبراير 25, 2005, 08:57:16 مساءاً »
في هذه الشجرة هنالك 20 خطوة ممكنة للأبيض . ثم 20*20 = 400 خطوة ممكنة للأسود حسب ما يلعب الأبيض .. ثم 400*20=8000 خطوة ممكنة للأبيض . ثم 8000*20=160000 خطوة للأسود .. وهكذا .
عدد جميع خيارات الشجرة الشاملة لجميع وضعيات الشطرنج هو تقريبا :
1,000,000,000,000,000,000,000,000,
000,000,000,000,000,000,000,000,000,000,000,000,000,000,
000,000,000,000,000,000,000,000,000,000,000,000,000,000,
000,000,000,000,
أو 10^120
ولمن سيقول : "اذن اللعبة ذات عدد خيارات محصور " ! نقول أن العدد مذكور أعلاه أكبر من عدد الذرات في مجرة درب التبانة milky way galaxy .
الحاسب لا يمكنه - في وقتنا هذا - أن يحسب كل هذه الامكانيات , ما يحاول الحاسب فعله هو أن ينشئ شجرة احتمالات محددة .. مثلا ل 5 أو 10 أو 20 خطوة مسبقاً بافتراض أن هنالك 20 خطوة ممكنة لكل وضعية  على اللوحة .
شجرة احتمالات ل 5 خطوات للأمام تحوي  3,200,000 وضعية شطرنج .
شجرة احتمالات ل 10 خطوات للأمام تحوي 10,000,000,000,000 وضعية شطرنج .
عمق وتشعب شجرة الاحتمالات يتعلق بسرعة الحاسب الذي يلعب الشطرنج . وأسرع حواسيب
الشطرنج يمكنها أن تنتج وتقدر ملايين من وضعيات الشطرنج للثانية الواحدة .
في البداية يقوم الحاسب بتكوين الشجرة , ثم يقيّم وضعيات الشطرنج . بمعنى أنه يفحص ترتيب القطع على اللوحة ويرى ان كانت " جيدة " أم " رديئة ". يستخدم الحاسب أثناء تنفيذه هذه العملية ما يسمى بدالة التقييم.
أبسط احتمال لهذه الدالة هو ما يحوي عدد القطع التي يملكها كل من طرفي اللعب .
مثال :
اذا كان الحاسب يلعب بالأبيض , والوضعية الموجودة تشير لوجود 11 قطعة للأبيض و9 قطع للأسود ,
أبسط دالة تقييم ستكون كالتالي :
2=9-11
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 25, 2005, 08:58:22 مساءاً
رد #2

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #2 في: فبراير 25, 2005, 08:58:22 مساءاً »
لكن بعض القطع أثمن من الأخرى لذلك قد نضع فى الصيغة وزنا لكل قطعة. ويقوم المبرمج بوضع عوامل تقييم أخرى تزيد دالة التقييم تعقيدا مثل مكان القطعة فى لوحة اللعب و السيطرة على المركز و حماية االملك ومهاجمة وترقية القطع , وأطنان أخرى من البارامترات .
ولا يهم مدى تعقيد الدالة الناتجة فهى ستضغط إلى رقم مفرد يمثل جودة وضعية القطعة فى اللوحة.

المخطط الشجرى ذو الثلاثة مستويات:
======================

يبين الشكل التالى المخطط الشجرى ذو ثلاثة مستويات والتى توضح ثلاثة حركات للأمام وتم وضع تقييما للوضع النهائى.
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 25, 2005, 08:59:08 مساءاً
رد #3

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #3 في: فبراير 25, 2005, 08:59:08 مساءاً »
يلعب الحاسوب بالأبيض. وقد تحرك الأسود ليترك قمة الشجرة (المربع الأبيض) فارغة. وبهذه الشجرة يمكن للأبيض أن يقوم بثلاثة تحركات ممكنة وكرد على كل تحرك منها يمكن للأسود أن يتحرك ثلاثة تحركات مختلفة . ومن كل إحتمال من الإحتمالات التسعة لتحرك الأسود  يمكن للأبيض أن يقوم بحركتين. (فى الحياة الواقعية قد يكون هناك 20 حركة ممكنة عند أى موقع ولكن ذلك صعب رسمه فى المثال التوضيحى).

ولتحديد ما يجب القيام به يقوم الكمبيوتر بالنظر إلى هذه الشجرة من أسفل لأعلى حيث تقوم حساباته على أختيار وضع اللوحة الأفضل من كل تحرك ممكن للأسود (نأخذ التقييم الأكبر من تحركات المستوى الثالث لنضعه فى المستوى الثانى- أنظر الصورة التالية)
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 25, 2005, 09:00:03 مساءاً
رد #4

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #4 في: فبراير 25, 2005, 09:00:03 مساءاً »
وبالصعود لمستوى أعلى : فإن الحاسب يفترض أن الأسود سيختار أسوء وضع للأبيض (أى أنه يصعد القيم الدنيا فى المستوى الثانى إلى المستوى الأول- أنظر الصورة التالية).
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 25, 2005, 09:00:49 مساءاً
رد #5

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #5 في: فبراير 25, 2005, 09:00:49 مساءاً »
وأخيرا فإن الحاسب يأخذ أكبر رقم من أرقام المستوى الأول (وهو 7 فى حالتنا هذه) ويكون هذا هو التحرك الذى يقوم به الحاسب. وعندما يلعب الأسود لعبته القادمة سيقوم الحاسب بإجراء نفس هذه الحسابات مرة أخرى بانيا شجرة جديدة ومقيما كل وضعيات اللوحة الممكنة لتقرير التحرك التالى.

وهذه النظرية تدعى خوارزمية القيم العظمى والصغرى minimax algorithm وذلك لأنها تتردد ما بين القيم العظمى والصغرى حتى تصل لقمة الشجرة . وبتطبيق تقنية تعرف بتقنية تقليم ألفا بيتا alpha beta pruning يمكن أن تعمل تلك الخوارزمية بضعف سرعتها وتأخذ ذاكرة أقل.

وكما ترى فإن هذه العملية آلية ولا تتطلب أى فكر. بل هى فقط مجرد حساب لقيمة دالة التقييم (التى وضعها المبرمج)عند كل وضعية من وضعيات اللعبة.

وبإضافة مهارات التعلم لبرنامج الشطرنج (بجانب الخوارزمية السابقة ) والتى يمكنها التعديل فى دالة التقييم بناء على تاريخ اللعب فإن البرنامج سيتحسن مع مرور الوقت.

وسبحان الله . الذى جعل عقل الإنسان يخترع هذه التقنيات ليصبح الجماد لاعبا ماهرا للشطرنج.

المصدر
http://stuffo.howstuffworks.com/chess.htm/printable

روابط أخرى
http://www.x3dchess.com/about.htm
http://www.chess.ibm.com/
http://www.zone.com/Kasparov
http://www.cs.umbc.edu/courses....gs.html
http://www.xs4all.nl/~verhelst/chess/programming.html
http://www.cnn.com/2003....ex.html

ترجمه لكم الحريرى والسفير
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 25, 2005, 10:54:46 مساءاً
رد #6

ابو يوسف

  • عضو خبير

  • *****

  • 10867
    مشاركة

  • مشرف اداري

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #6 في: فبراير 25, 2005, 10:54:46 مساءاً »
السلام عليكم

اخوي الكريمين السفير ومحمد الحريري

جزاكما الله كل خير على عملكما المشترك

واضيف معلومة صغيرة وهي ان الحاسب يستوعب ايضا عددا كبيرا من المباريات التي تمت كنوع من التقييم او المقارنة

وهذا ما يجعل اللعب ضده صعبا جدا

مع ذلك فإن نقطة ضعف الحاسب تكمن في اتخاذ الخطوات غير المتوقعة

طبعا اذا كانت محسوبة جيدا من قبل اللاعب الخصم

شكرا جزيلا لكما مرة اخرى

'<img'>

فبراير 25, 2005, 11:51:23 مساءاً
رد #7

السفير

  • عضو خبير

  • *****

  • 7214
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #7 في: فبراير 25, 2005, 11:51:23 مساءاً »
السلام عليكم

شكرا لك أخي محمد

شكرا لك أخي أبو يوسف

وأتمنى أن الموضوع نال اعجابكم ..

فبراير 26, 2005, 09:01:31 مساءاً
رد #8

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
كيف يلعب الحاسب الشطرنج ؟
« رد #8 في: فبراير 26, 2005, 09:01:31 مساءاً »
الاخ العزيز ابو يوسف.. هل سبق و فزت على الحاسوب بلعبة الشطرنج؟
انا لم افز عليه بأي حال .. طبعا فهو يعتمد على دراسة جميع الحركات و يحسب احسنها على مدى بعيد..

حتى ان برمجة لعبة الشطرنج قد تعد من اصعب ما يتخيله المبرمج من عناء و تعب!
اسألوا مجرب! '<img'>
الحياة مزيج جميل مستعص على الادراك البشري من القوة و الحب و الكره و الضعف و لا نمسها بشيء .. بل هي من يمسنا بكل شيء و طريقنا الوحيد لتغييرها هي تغيير أنفسنا من الداخل. و هو أصعب ما يمكن لي أن أتصور حدوثه.
كل شيء في هذه الحياة قد رسم بخط أسود... و إن لم نره !

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل

فبراير 26, 2005, 09:34:43 مساءاً
رد #9

ساكن الأفق

  • عضو متقدم

  • ****

  • 899
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #9 في: فبراير 26, 2005, 09:34:43 مساءاً »
الشطرنج كما ذكر الأخ ابو ريان من أخصب الحقول للمبرمجين، لكن عندي سؤالا...

أستاذي محمد، هل صحيح أنه لا يوجد حاسوب يلعب الشطرنج بشكل يوازي اللاعبين المحترفين؟ هذا ما سمعته في الواقع.

ومن جهة أخرى، ما هو موقف الشرع من هذه اللعبة؟ هل هناك من يستطيع الافادة؟

شكرا،، '<img'>


لا نزال نسعى نحو آفاق بعيدة ..... وفي طريقنا إليها نسكنها ... نسكنها بأرواحنا وأفكارنا وأحلامنا ... حتى إذا بلغناها سكناها بأجسامنا فأنفت أرواحنا أن تسكنها وتطلعت إلى آفاق أبعد ... وهكذا نبقى نسكن الآفاق البعيدة .....

فبراير 27, 2005, 05:09:02 صباحاً
رد #10

السفير

  • عضو خبير

  • *****

  • 7214
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #10 في: فبراير 27, 2005, 05:09:02 صباحاً »
السلام عليكم

هنالك حواسيب قادرة على هزيمة أفضل اللاعبين , فسلسلة الحواسيب deep blue فازت عدة مرات على

جاري كاسباروف لاعب الشطرنج الاشهر .

بالنسبة لموقف الشرع , فبحدود معرفتي لم يرد ما يمنع اللعبة في القرآن والسنة , كذلك هي لعبة تنشط

الذكاء ولا يوجد فيها حظ أو مقامرة , انما تعتمد على ذكاء وتركيز ودراسة وممارسة اللاعب للشطرنج .

فبراير 27, 2005, 08:41:46 صباحاً
رد #11

ابو يوسف

  • عضو خبير

  • *****

  • 10867
    مشاركة

  • مشرف اداري

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #11 في: فبراير 27, 2005, 08:41:46 صباحاً »
السلام عليكم

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


فقط القديمة منها, قبل نحو 20 عاما

'<img'>

فبراير 28, 2005, 10:53:08 مساءاً
رد #12

Mgh

  • عضو خبير

  • *****

  • 3536
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #12 في: فبراير 28, 2005, 10:53:08 مساءاً »
أستاذى أبو يوسف :
ما قد تعتقده غير متوقع ربما يكون متوقعا وخصوصا مع منافس يدرس جميع الإحتمالات ببرود.

Vipera Palestina:
- ربما السفير يستطيع هزيمة الحاسب ... ولكن بالطبع فى مستوى الصعوبة صفر '<img'>
- أما عن برمجة الشطرنج فهى بقدر صعوبتها إلا أنها ممتعة والأمتع فيها هو دراسة الخوارزميات وأبتكار الطرق المختلفة لجعل الحاسب ذكيا.
فهى صراع بين عقول.

*** أما حول شرعية لعب الشطرنج فقد دار حوار قبلا هنا أتمنى أن يكون به من الفائدة:
http://olom.info/ib3....;hl=mgh
هناك أشياء جميلة في حياتنا لكننا لانراها لاننا لانكلف أنفسنا محاولة النظر اليها.. وربما تشابه الايام والروتين يحجب الرؤية عنها

فبراير 28, 2005, 11:00:09 مساءاً
رد #13

السفير

  • عضو خبير

  • *****

  • 7214
    مشاركة

    • مشاهدة الملف الشخصي
كيف يلعب الحاسب الشطرنج ؟
« رد #13 في: فبراير 28, 2005, 11:00:09 مساءاً »
اقتباس
ربما السفير يستطيع هزيمة الحاسب ... ولكن بالطبع فى مستوى الصعوبة صفر


'<img'>   انا اتحدى أي شخص وأي جهاز في العالم بالشطرنج ':cool:'

صحيح أنني قد أخسر , لكنني أيضا أستطيع الفوز ':cool:'




مارس 01, 2005, 06:13:19 صباحاً
رد #14

Vipera Palestina

  • عضو خبير

  • *****

  • 1539
    مشاركة

  • مشرف قسم الحاسوب

    • مشاهدة الملف الشخصي
    • http://ala.aburayyan.com
كيف يلعب الحاسب الشطرنج ؟
« رد #14 في: مارس 01, 2005, 06:13:19 صباحاً »
الاخ السفير .. تحياتي لك و للجميع ، للأسف ليس لدي الوقت الكافي و الا لكنت جربت حظي معك في الشطرنج.. ':cool:'

مش مشكلة .. الاخ Mgh طبعا برمجة اللعبة جميلة و ممتعة و لكن يمكن أن تصل الى اعلى حالات التركيز الذهني في مثل هذه المشاريع! كما ان هيكلة البرنامج و تصميمه بالدقة و السرعة المطلوبة قد تستغرق وقتا طويلا و جهدا هائلا..

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

ألا كل شيء ما خلا الله باطل و كل نعيم لا محالة زائل