asg-2.pdf

‫هوش مصنوعی ‪74-714‬‬
‫نيمسال دوم ‪94-91‬‬
‫تمرين سری دوم‬
‫مدرس‪ :‬سليمانی‬
‫هَػذ ارسال الکسرًٍيکی کذ ترًاهِ ٍ گسارش آى ‪ 4‬ارديثْشر (زا ساػر ‪ )44‬اسر‪ّ .‬وچٌيي زحَيل يک ًسخِ کسثی گسارش تِ‬
‫ّوراُ خريٌر کذ زَاتغ اصلی تازی ًيس زا رٍز سِشٌثِ ‪ 5‬ارديثْشر در کالس درس الساهی اسر‪ .‬ترای اًجام ايي زوريي هیزَاًيذ‬
‫از ّر يک از زتاىّای ترًاهًَِيسی ‪ C++‬يا ‪ java‬اسسفادُ کٌيذ‪ .‬سرػر ترًاهِی شوا در ارزياتی ًْايی هْن خَاّذ تَد‪.‬‬
‫کذ شوا تايذ تا رػاير اصَل ترًاهًَِيسی‪ ،‬خَاًا ٍ ّوچٌيي ّوراُ تا زَضيحاذ الزم تاشذ‪.‬‬
‫بازی ‪ Connect-4‬تغييريافته‬
‫لثل از زؼريف صَرذ هسالِ اتسذا تا تازی ‪ ٍ Connect-4‬لَاػذ آى آشٌا شَين‪:‬‬
‫هحيط ايي تازی دًٍفرُ هیزَاًذ تِ صَرذ يک صفحِ ‪ 7×6‬درًظر گرفسِ شَد‪ .‬ترای ّر تازيکي ‪ 42‬هْرُ درًظر گرفسِ شذُ اسر‪.‬‬
‫تازيکي هیزَاًذ در ّر ًَتر شوارُی يکی از سسَىّا (‪ 2‬زا ‪ )7‬را چٌاىکِ زا آى لحظِ سسَى هرتَطِ خر ًشذُ تاشذ‪ ،‬اًسخاب کٌذ‪.‬‬
‫هْرُی تازيکي در خايييزريي هحل خالی آى سسَى لرار هیگيرد‪ .‬ترد يک تازيکي زهاًی ازفاق هیافسذ کِ زَاًسسِ تاشذ چْار هْرُی‬
‫هجاٍر تِ صَرذ سطری‪ ،‬سسًَی يا لطری داشسِ تاشذ‪ .‬چٌاىچِ ّوِی خاًِّا خر شَد ٍ ّيچ تازيکٌی ترًذُ ًشَد‪ً ،‬سيجِی تازی‬
‫هساٍی درًظر گرفسِ هیشَد‪.‬‬
‫در شکل زغييريافسِی ايي تازی کِ در ايي زوريي هذ ًظر هاسر‪ ،‬فرض هیشَد کِ دٍ گَشِی خاييي سور راسر ٍ خاييي سور‬
‫چح از لثل خر ّسسٌذ ٍ ّر تازيکي ‪ 42‬هْرُ در اخسيار دارد‪.‬‬
‫ّذف ايي زوريي ًَشسي ترًاهِای ترای اًجام ايي تازی تا اسسفادُ از هفاّين َّش هصٌَػی اسر‪ .‬در ٍالغ لرار اسر تا تِکارگيری‬
‫الگَريسنّای ‪ Minimax‬يا ‪ alpha-beta pruning‬در ّر هرحلِ حرکر هٌاسة زَسط کاهديَزر زؼييي شَد‪ .‬از آىجا کِ تا خيادُسازی‬
‫سادُی ايي زَاتغ ًویزَاى در ايي تازی تِ جَاب رسيذ‪ ،‬تايذ فرايٌذ جسسجَ را در جايی لطغ کرد ٍ از يک زاتغ ارزياتی هٌاسة‬
‫اسسفادُ کرد‪:‬‬
‫‪ )a‬زاتغ هکاشفِی هٌاسثی ترای ارزياتی ٍضؼيرّای تازی ارائِ ٍ خيادُسازی کٌيذ‪.‬‬
‫‪ )b‬الگَريسن ‪ Minimax‬را در حالر تِکارگيری ايي زاتغ ارزياتی خيادُسازی کٌيذ‪.‬‬
‫‪ )c‬الگَريسن ‪ alpha-beta pruning‬را در حالر تِکارگيری ايي زاتغ ارزياتی خيادُسازی کٌيذ‪.‬‬
‫‪( )d‬اخسياری) ّر گًَِ زکٌيک يا هکاشفِ اضافِ ًظير اسسفادُ از ‪ Table lookup‬ترای ٍضؼيرّای شرٍع يا خاياًی تازی‪،‬‬
‫‪ ... ٍ move ordering‬ترای تْثَد اًسخاب حرکر‪.‬‬
‫ورودی و خروجی‬
‫فرض کٌيذ ترای شرٍع تازی از کارتر رًگ هْرُ هَردًظرش سَال شَد ٍ ّويشِ شرٍع تازی تا تازيکي سياُ تاشذ‪ .‬سدس سَال‬
‫شَد کِ الگَريسن تازی کاهديَزر چِ تاشذ؟ کِ گسيٌِی ‪ 2‬الگَريسن ‪ Minimax‬را هشخص هیکٌذ ٍ گسيٌِی ‪ 4‬الگَريسن‬
‫‪alpha-beta‬‬
‫‪.pruning‬‬
‫در ّر هرحلِ از تازی کِ ًَتر کارتر تاشذ‪ ،‬از کارتر شوارُی حرکر هَردًظرش سَال هیشَد‪ .‬چٌاىچِ شوارُ سسَى ٍارد شذُ‬
‫زَسط کارتر يک حرکر هجاز ًثاشذ (سسَى هرتَطِ خر تاشذ)‪ ،‬خيغام خطا چاج هیشَد ٍ هجذد درخَاسر حرکر از کارتر‬
‫هیشَد‪ .‬خازوِی تازی ٍ ّوچٌيي ٍضؼير اهسياز (در خازوِ) تايذ در خرٍجی ترًاهِ گسارش شَد‪.‬‬
‫هثالی از شرٍع ٍرٍدی ٍ خرٍجی تازی هیزَاًذ تِ صَرذ زير تاشذ‪:‬‬
‫کاهديَزر تايذ در زهاًی هؼمَل (هثالً کوسر از‬
‫) حرکر خيشٌْادی خَد را هشخص کٌذ‪ّ .‬وچٌيي ترای گسارش ًسايج کِ در‬
‫اداهِ خَاّذ آهذ ‪ ،‬الزم اسر ترًاهِ تسَاًذ تِ ازای ٍرٍدی کِ ٍضؼير صفحِ تازی اسر‪ ،‬حرکر خيشٌْادی را هشخص کٌذ‪.‬‬
‫طراحی ٍاسط گرافيکی ترای ايي تازی اخسياری اسر‪.‬‬
‫گسارش‬
‫گسارش ترًاهِ کِ تايذ تِ صَرذ دسسی زحَيل دادُ شَد‪ ،‬شاهل هَارد زير اسر‪:‬‬
‫‪ )2‬زَضيحاذ الزم در هَرد ًحَُی ػولکرد زاتغ ارزياتی خيشٌْادی‬
‫‪ )4‬ترای همايسِی ػولکرد الگَريسنّای ‪ alpha-beta pruning ٍ Minimax‬تا فرض اسسفادُ از زاتغ ارزياتی يکساى‪ ،‬فايل‬
‫گسارش (‪ )report0.pdf‬را تِ ازای ًوًَِّای آزهَى (‪ )states.zip‬زکويل ًواييذ‪.‬‬
‫هَفك تاشيذ‬