Professional Documents
Culture Documents
وظيفة خوارزميات البحث الذكية 2023 - قسم الذكاء الصنعي - الفئات 5 و 6
وظيفة خوارزميات البحث الذكية 2023 - قسم الذكاء الصنعي - الفئات 5 و 6
السنة الرابعة
قواعد اللعبة
يتألف ال Puzzleالواحد من رقعة ثنائية البعد تحوي مجموعة خاليا ،تحوي الخاليا على دوائر لها عدة أنواع
باإلضافة إلى مربع مفرغ (واحد أو أكثر) موجود على إحدى الخاليا ،يتم تحريكه بزلقه على الرقعة ،يتغير نوع الدائرة
عند املرور عليها باملربع املفرغ حتى تصبح في النهاية بشكل مربع أبيض ،هذا املربع ال يمكن املرور عليه مرة أخرى،
الهدف إمرار املربع املفرغ على جميع الخاليا بحيث تصبح كلها مربعات بيضاء.
1
لنوضح أنواع الخاليا من خالل املثال التالي (مستوى متقدم من اللعبة)
2
3
املطلوب
نريد كتابة برنامج لبرمجة هذه اللعبة ليلعبها بها املستخدم باستعمال تعليمات من الكيبورد آخذين بعين االعتبار
أننا سنبرمج الحقا مجموعة من الخوارزميات تمثل كل منها استراتيجية بحث والتي ستحل املسألة باعتبارها مسألة
بحث.
املطلوب منك في هذا الجزء من الوظيفة هو تحقيق اللعبة بالبنية التي تراها مناسبة ،وباستخدام أي لغة برمجة
تريدها ،ولكن يجب األخذ بعين االعتبار أن يكون إضافة استراتيجية بحث جديدة هو أمر بسيط .يمكنك تحقيق
ذلك بالفصل ما بين جزء الكود املتعلق بمنطق اللعبة وبين الجزء املتعلق بطريقة اللعب على الشكل التالي.
هناك مجموعة من التوابع اإلضافية -يجب عليك تحقيقها في هذا الجزء من الوظيفة -التي ستحتاج إلى تحقيقها
ً
لتمثيل بنية مسألة البحث (قد ال تستخدمها اآلن في حالة لعب املستخدم للعبة ولكنك ستحتاج إليها الحقا عند
تحقيق خوارزميات البحث املختلفة)
ً
ابتداء من الرقعة الحالية بتحريك أي من املربعات املفرغة في • تابع يقوم برد جميع الحاالت (الرقع) املمكنة
أي من االتجاهات املمكنة ،وذلك ضمن قائمة من أغراض جديدة تمثل نسخة من الغرض املمثل للرقعة
الحالية مع تغيير فقط في مكان املربع املفرغ ونوع الخلية التي تم التحريك إليها.
1الرقعة ليست مستطيلة الحجم ،ولكن مع ذلك يمكنك أن تمثلها بمصفوفة ثنائية للسهولة ،ويمكن أن تجعل الخاليا التي ال تحوي على دوائر
غير مفعلة
2حافظ على هذا الترتيب أثناء تحقيقك للتابع.
4
ً
• توابع تتأكد من تساوي حالتين معا (ما يوافق equalsو hashCodeفي جافا)
في مراحل الحقة سيكون البرنامج هو من يلعب هذه اللعبة حيث يتم اختيار الخطوة حسب استراتيجية اللعب
وطباعة مجموعة خطوات الحل.
ليس عليك االعتناء بجمالية اإلظهار حيث يكفي أن تقوم بطباعة جدول يمثل الرقعة بشكل واضح كل مرة ،وأن
يكون اإلدخال بتعليمات دخل بسيطة.
ً
مالحظة :يجب أن يكون برنامجك قادرا على تحقيق إمكانية لعب أي رقعة وليس رقعة واحدة ثابتة
أمور تنظيمية:
• تسلم الوظيفة يوم اإلثنين 2023/10/30ضمن حصة العلمي .تأكد أن برنامجك يعمل ألنك ستقوم
بالتعديل عليه ضمن الحصة.
• الوظيفة فردية لكل طالب على حدا.
• أي وظيفة منقولة أو منقول منها من طالب آخر من اإلنترنت ستنال عالمة الصفر حتما،
ّ
م .زينة الدالل
5