مقدمة إلى لغة الذكاء الإصطناعي برولوج 2
Wednesday, August 13, 2008 | Labels: Prolog | |من منا لا يعرف مسألة أو لغز آينشتاين الذي انتشر كثيراً على المنتديات وجروبات الياهو وفي كل مكان ، وهو اللغز الذي يعتقد آينشتاين أن 98% من البشر لا يمكنهم حله ، هذا هو اللغز :
1- توجد خمس منازل لكل منها لون مختلف .
2- يسكن كل منزل شخص من جنسية مختلفه .
3- كل ساكن يفضل ان يشرب مشروبا معين , ويدخن سجائر نوع معين منها,ويحتفظ بحيوان أليف معين .
4- لاأحد من الجيران الخمسة يشرب نفس المشروب أو يدخن نفس النوع من السجائر أو لديه نفس الحيوان الأليف .
معلومات الربط :
* يسكن البريطاني في المنزل الأحمر .
* لدى السويدي كلب. * يحب الدنماركي شرب الشاي .
* البيت الأخضر على الجانب الأيسر من البيت الأبيض.
* مالك البيت الاخضر يشرب القهوة.
* الشخص الذي يشرب سجائر نوع بال مال لديه طائر.
* الرجل الذي يسكن في البيت الأوسط يشرب الحليب.
* مالك المنزل الأصفر يدخن سجائر نوع دانهيل .
* يسكن النرويجي في المنزل الاول .
* يسكن مدخن سجائر نوع مارلبور مجاورا لمن لديه قطه.
* الرجل الذي لديه حصان يسكن مجاورا لمن يدخن سجائر نوع دانهيل
* مدخن سجائر نوع وينفيلد يحب شرب الجعه (شراب الشعير).
* يسكن النرويجي مجاورا للبيت الأزرق .
* يدخن الألماني سجائر نوع روثمانز.
* مدخن سجائر نوع مارلبور لديه جار يحب شرب الماء.
المطلوب -.:
تحدد اللون / الجنسيه / الحيوان / المشروب / نوع السجائر لكل واحد مع توضيح :
من منهم لديه السمكة (أو أن حيوانه الأليف سمكة)؟
لا توجد خدعه في حل هذا اللغز , بل هو منطق صرف من يعرف الإجابة سيكون من ضمن أذكى أذكياء العالم (2% الأذكياء في العالم).
طبعاً كما ترى ، فاللغز عبارة عن مجموعة من البيانات على غرار (يدخن الألماني سجائر نوع روثمانز) ومجموعة من العلاقات على غرار (مدخن سجائر نوع مارلبور لديه جار يحب شرب الماء) ، وعندما تبدأ انت بحل هذه المشكلة ستبدأ في رص البيانات ومن ثم ربط العلاقات بها ، هذا ما يفعله البرلوج تماماً . ستجد نفسك تعطيه بعض المعلومات والقواعد ليقوم هو باستنتاج الحل . وهذا ما سنقوم به الآن .
بداية هذه المسألة بالغة الانجليزية لنستخلص منها بعض المصطلحات
The Brit lives in the red house. |
والآن سننقل نفس البيانات السابقة ولكن بنظام كتابة برولوج :
next_to(X, Y, List) :- iright(X, Y, List). |
بعد ترجمة هذا المشروع ، تستطيع سؤال البرنامج عن اي منهم وسوف يتتبع البيانات المتاحة له + القواعد ليصل بك إلى الناتج ، هذا هو السؤال الأساسي والخاص بمن يمتلك سمكة :
?- einstein(Houses, Fish_Owner). |
بداية ، دعني استغل ذكائك وحاول القيام بالحل بمفردك ، يمكنك التأكد من حلك باستخدام برولوج ، وفي النهاية لا تنس أن تحاول أن تتوسع في برولوج فقد تستفيد الكثير لاحقاً .
وفي الختام هذا هو الحل يمكنك اظهاره بتحديد الكلمة التالية بالماوس (الألماني) ، إذا لم يكن هذا هو حلك فأنت مرشح للانضمام إلى نادي ال 98% ، وهي نسبة ليست بسيطة كما ترى .