هوش مصنوعی

Download Report

Transcript هوش مصنوعی

‫هوش مصنوعي‬
‫نام مرجع ‪:‬‬
‫‪Artificial Intelligence A Modern Approach‬‬
‫نويسنده ‪:‬‬
‫استوارت راسل‪ ،‬پيتر نورويگ‬
‫‪1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل اول‬
‫مقدمه‬
‫‪2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ :AI‬به طور رسمي در سال ‪ 1956‬مطرح شده است‪.‬‬
‫علل مطالعه ‪:Al‬‬
‫• ‪ AI‬سعي دارد تا موجوديتهاي هوشمند را درک کند‪ .‬از اين رو يکي از علل‬
‫مطالعه آن يادگيري بيشتر در مورد خودمان است‪.‬‬
‫• جالب و مفيد بودن موجوديتهاي هوشمند ‪.‬‬
‫‪3‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ AI‬چيست؟‌‬
‫تعاريفي از ‪ AI‬که به چهار قسمت تقسيم شدهاند‪:‬‬
‫•پردازش فکري و استداللي‬
‫• پردازش رفتاري‬
‫• ايدهآل هوشمندي (منطقي بودن)‬
‫• ارائه انساني‬
‫‪4‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫پردازش‌هاي فکري و استداللي‬
‫ايده‌آل‬
‫هوشمندي‬
‫سيستمهايي که‬
‫به طور منطقي‬
‫فکر ميکنند‬
‫سيستمهايي که‬
‫مانند انسان فکر‬
‫ميکنند‬
‫سيستمهايي که‬
‫به طور منطقي‬
‫عمل ميکنند‬
‫سيستمهايي که‬
‫مانند انسان عمل‬
‫ميکنند‬
‫تمرکز بر روي پردازش‌هاي رفتاري‬
‫‪5‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ارائه انساني‬
‫‪ .1‬انسان گونه عمل کردن‪ :‬رهيافت آزمون تورينگ‬
‫آزموني از کامپيوتر به عمل آيد‪ ،‬و آزمون گيرنده نتواند دريابد که در آن طرف انسان قرار دارد يا کامپيوتر‪.‬‬
‫براي اين کار کامپيوتر بايد قابليتهاي زير را داشته باشد‪:‬‬
‫‪ ‬پردازش زبان طبيعي = محاوره‬
‫‪ ‬بازنمايي دانش= ذخيره اطالعات‬
‫‪ ‬استدالل خودکار= استدالل و استخراج‬
‫‪ ‬يادگيري ماشيني= کشف الگو و برون ريزي‬
‫‪6‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫تست تورينگ‪ :‬اين آزمون از ارتباط فيزيکي مستقيم بين کامپيوتر و محقق اجتناب‬
‫ميکند‪.‬‬
‫به منظور قبول شدن در تست تورينگ کلي‪ ،‬کامپيوتر به موارد زير احتياج دارد‪:‬‬
‫‪ ‬بينايي ماشين براي درک اشياء‬
‫‪ ‬روباتيک به منظور حرکت آنها‬
‫‪7‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مقدمه‬
‫(مانند انسان عمل کردن)‬
‫تست تورينگ‬
‫‪B‬‬
‫‪A‬‬
‫‪8‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ .2‬انساني فکر کردن‪ :-‬رهيافت مدلسازي شناختي‪:‬‬
‫چگونگي شناسايي عملکرد افکار انسان‪:‬‬
‫‪ -1‬درون گرايي‬
‫‪ -2‬تجارب روانشناس ي‬
‫علوم شناختي ‪ :‬مدلهاي کامپيوتر از ‪ AI‬و همچنين تکنيکهاي روانشناختي را‬
‫گرد هم ميآورد تا بتواند تئوريهاي دقيقي از کارکرد ذهن انسان به دست‬
‫آورند‪.‬‬
‫‪9‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ .3‬منطقي فکر کردن‪ :‬قوانين رهيافت تفکر‬
‫رمز «تفکر درست»‪ :‬ارسطو سعي در کشف آن داشت‪.‬‬
‫قياس‪ :‬از موضوعات مطرح شده توسط ارسطو ميباشد‪ ،‬که الگوهايي براي ساختار‬
‫توافقي ايجاد کرد که همواره نتايج صحيحي به اندازه مقدمات صحيح به دست‬
‫ميآورد‪.‬‬
‫مثال‪« :‬سقراط انسان است‪ ،‬تمام انسانها ميميرند‪ ،‬پس سقراط خواهد مرد‪».‬‬
‫‪10‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫دو مشکل عمده در اين رسم منطق‌گرايي وجود دارد‪:‬‬
‫‪‬‬
‫تبديل دانش غير رسمي به شکل رسمي توسط اعالم‪ ،‬منطقي ساده نيست‪.‬‬
‫‪‬‬
‫تفاوت عمدهاي بين قادر به حل مسئله بودن در اصول و انجام آن در عمل وجود‬
‫دارد‪.‬‬
‫‪11‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ .4‬منطقي عمل کردن‪ :‬رهيافت عامل منطقي‬
‫عامل‪ :‬در اصل چيزي است که ابتدا درک ميکند و سپس عمل ميکند‪.‬‬
‫در نگرش «قوانين تفکر» تأکيد عمده بر روي استنتاجهاي صحيح بوده است‪.‬‬
‫«مهارتهاي شناخت» که براي آزمون تورينگ موردنياز است‪ ،‬براي انجام فعاليتهاي‬
‫منطقي وجود دارند‪.‬‬
‫‪12‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مزاياي مطالعه ‪ AI‬بهعنوان طراحي عامل منطقي‪:‬‬
‫‪‬‬
‫عموميتر از رهيافت «قوانين تفکر»‬
‫‪‬‬
‫پيشرفت علمي‪ ،‬بسيار قانونپذيرتر از رهيافتهايي است که بر تفکر يا‬
‫رفتار انساني متکي هستند‪.‬‬
‫‪13‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫زيربناي هوش مصنوعي‪:‬‬
‫‪ ،AI‬از علوم مختلفي بهره ميبرد که از ميان آنها علوم زير مهمتر شناخته شدهاند‪:‬‬
‫‪‬‬
‫علم فلسفه‬
‫‪‬‬
‫علم رياض ي‬
‫‪‬‬
‫علم روانشناس ي‬
‫‪‬‬
‫علم زبانشناس ي‬
‫‪‬‬
‫علم کامپيوتر‬
‫‪14‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ن)‬
‫فلسفه‪ 428( :‬قبل از ميالد مسيح – تاکنو ‌‬
‫پايههاي تفکر و فرهنگ غرب تشکيل شده است از‪ :‬افالطون‪ ،‬استادش سقراط‪ ،‬و شاگردش ارسطو‪.‬‬
‫‪‬‬
‫قياس‪ :‬ارسطو‪ ،‬سيستمي غيررسمي از قياس براي استدالل مناسب توسعه داد‪ ،‬امکان توليد‬
‫نتايج‪ ،‬بر پايه فرضيات اوليه به طور مکانيکي وجود داشت‪.‬‬
‫‪‬‬
‫‪15‬‬
‫در نظر گرفتن ذهن به‌عنوان سيستمي فيزيکي‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫رنه دکارت مدافع سرسخت قدرت استدالل بود؛ و همچنين طرفدار مکتب دواليسم‪.‬‬
‫ماترياليسم‪ :‬در مقابل دواليسم قرار دارد و معتقد است تمامي جهان مطابق قوانين فيزيکي عمل ميکنند‪.‬‬
‫ويلهم اليبنيز‪:‬‬
‫‪‬‬
‫تبديل موقعيت ماترياليستي به نتايج منطقي‬
‫‪‬‬
‫ساخت ابزاري مکانيکي براي انجام عمليات منطقي‬
‫‪16‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫ايجاد منبع دانش‪:‬‬
‫فرانسيس بيکن‪ ،‬جنبش آزمونگرايان را آغاز کرد‪ .‬و با شعار جان الک مفهوم يافت‪:‬‬
‫«هيچ چيز قابل فهم نيست اگر ابتدا در حس نباشد‪».‬‬
‫اصل استقراي امروزي‪ ،‬در حقيقت از کتاب ديويد هيوم نشأت ميگيرد‪" :‬رسانهاي از‬
‫طبيعت انسان"‬
‫برتراندراسل‪ ،‬پايهگذار پوزيوتيزم منطقي‪ ،‬ارائهدهندة اين تئوري بود که‪:‬‬
‫«قوانين عمومي توسط تکرار ارتباطات بين عناصر آنها به وجود ميآيند‪».‬‬
‫‪17‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫ارتباط بين دانش و عمل‬
‫اشياء را با تحليل‪ ،‬دستهبندي ميکنيم و در اطراف آنها‪ ،‬کارکرد مورد نيازشان نوسان مينمايد‪.‬‬
‫در اين ميان پايه سيستممکاشفهاي ‪ GPS‬بنيان گذارده ميشود‪.‬‬
‫‪18‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ن)‬
‫رياضيات (‪- C.800‬تاکنو ‌‬
‫براي ارتباط فلسفه با دانش نظري‪ ،‬نياز به فرمولسازي رياض ي در سه زمينه اصلي است‪:‬‬
‫‪‬‬
‫محاسبات‬
‫‪‬‬
‫منطق‬
‫‪‬‬
‫احتماالت‬
‫‪19‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫محاسبات‪:‬‬
‫نظريه اظهار محاسبات به عنوان الگوريتمي رسمي به خوارزمي برميگردد‪ ،‬رياضيدان عربي‬
‫قرن نهم که نوشتههاي وي‪ ،‬جبر و تئوري اعداد عربي را به اروپا معرفي کرد‪.‬‬
‫‪20‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق‪:‬‬
‫در اين زمينه‪ ،‬دانشمندان زيادي بر چگونگي شکلگيري و هدايت آن‪ ،‬نقش داشتهاند که به چند نفر از آنها‬
‫اشاره ميکنيم‪:‬‬
‫‪‬‬
‫ارسطو‪ :‬دانشمندي که بيشترين شکلگيري نگرش فلسفي منطق را به او نسبت ميدهند‪.‬‬
‫‪‬‬
‫جورج بول‪ :‬يک زبان رسمي براي ساخت استنتاج منطقي ارائه داد‪.‬‬
‫‪‬‬
‫‪ :FREGE‬منطق مرتبه اول را به شکلي مطرح نمود که در بيشتر سيستمهاي نمايش دانش پايه‬
‫استفاده ميشود‪.‬‬
‫‪‬‬
‫آلفرد تارسکي‪ :‬تئوري چگونگي ارتباط بين اشياء موجود در محيط منطقي‪ ،‬و اشياء موجود در دنياي‬
‫واقعي را ارائه نمود‪.‬‬
‫‪21‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫ديويد هيلبرت‪ :‬رياضيدان بزرگي بود که شهرت وي به دليل مسائلي است که نتوانست حل کند‪.‬‬
‫‪‬‬
‫راسل‪ :‬قضيه کامل نبودن )‪ (incompleteness‬را مطرح نمود‪.‬‬
‫‪‬‬
‫تورينگ‪ :‬ماشين تورينگ قادر به محاسبه هر تابع محاسبهپذيري است‪.‬‬
‫تئوري پيچيدگي‪:‬‬
‫‪.1‬‬
‫انجامناپذيري‬
‫‪.2‬‬
‫استحاله‬
‫استيون کوک و ريچارد کارپ‪ :‬تئوري ‪ NP-completeness‬را مطرح کردند‪.‬‬
‫‪‬‬
‫‪22‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫احتماالت‪:‬‬
‫گاردنيوي‪ :‬اولين کس ي بود که ايده احتمال را مطرح کرد‪.‬‬
‫‪‬‬
‫پير فرمت‪ ،‬پاسکال‪ ،‬برنولي‪ ،‬الپالس و ديگر دانشمندان بر رشد و توسعه اين ايده‬
‫تأثير داشتند‪.‬‬
‫‪‬‬
‫برنولي‪ :‬ديدگاه «درجه باور» ذهني را در مقايسه با نرخ نتايج عيني مطرح کرد‪.‬‬
‫‪‬‬
‫بيس‪ :‬قانوني براي بهنگامسازي احتماالت ذهني را به وجود آورد‪.‬‬
‫‪‬‬
‫نيومن و مورگنسترن‪ :‬تئوري تصميمگيري را آغاز کردند‪ .‬و از ترکيب تئوري احتمال‪،‬‬
‫و تئوري سودمندي حاصل ميشود‪.‬‬
‫‪23‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ن)‪:‬‬
‫روانشناس ي (‪ -1879‬تاکنو ‌‬
‫هلمولتز‪ :‬روش ي علمي براي مطالعه بينايي انسان به کار برد؛ که اين کتاب به عنوان مرجع بينايي‬
‫‪‬‬
‫فيزيولوژيک و حتي بهعنوان «مهمترين رساله فيزيکي و روانشناختي بينايي انسان تا به امروز» شناخته‬
‫ميشود‪.‬‬
‫‪‬‬
‫وندت‪ :‬اولين آزمايشگاه روانشناس ي تجربي را در دانشگاه اليپزيک راهاندازي کرد‪.‬‬
‫‪‬‬
‫داتسون و تورن دايک‪ :‬حرکت رفتارگرايي )‪ (behaviorism‬را مطرح کردند‪.‬‬
‫‪‬‬
‫اساس مشخصه روانشناس ي شناختي)‪ ،(congnitive psychology‬اين نگرش است که مغز‬
‫دارنده و پردازشکننده اطالعات است‪.‬‬
‫‪24‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫‪25‬‬
‫کريک‪ ،‬کتاب ماهيت بيان را منتشر کرد‪ .‬و سه مرحله کليدي را براي عامل مبتني بر داشن معين کرد‪:‬‬
‫‪‬‬
‫محرکها بايد به شکل دروني تبديل شوند‪.‬‬
‫‪‬‬
‫بازنمايي توسط پردازشهاي شناختي بازنماييهاي داخلي جديدي را مشتق کند‪.‬‬
‫‪‬‬
‫اينها دوباره به صورت عمل برگردند‪.‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مهندس ي کامپيوتر (‪ -1940‬تاکنون‌)‬
‫براي پيشرفت هوش مصنوعي‪ ،‬به دو چيز احتياج داريم‪:‬‬
‫‪‬‬
‫هوش‬
‫‪‬‬
‫محصول مصنوعي‬
‫در اين تقسيمبندي‪ ،‬کامپيوتر ميتواند به عنوان محصول مصنوعي محسوب گردد‪.‬‬
‫‪26‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫‪ :Heath Robinson‬اولين کامپيوتر مدرن عملياتي بود که در سال ‪ 1940‬توسط تيم آلن تورينگ‬
‫به منظور کدگشايي پيامهاي آملانها ساخته شد‪.‬‬
‫‪‬‬
‫‪ :Colossus‬نام ماشين بعدي بود که تيوپهاي مکنده در آن به کار برده شد‪.‬‬
‫‪‬‬
‫‪ :Z-3‬اولين کامپيوتر قابل برنامهريزي که توسط کنراد زوس در ‪ 1941‬اختراع شد‪.‬‬
‫‪27‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫اعداد با مميز شناور و زبان ‪ Plankalkul‬نيز توسط زوس اختراع شدند‪.‬‬
‫‪‬‬
‫‪ :ABC‬اولين کامپيوتر الکترونيک در امريکا توسط جان آتاناسف و کليفورد در دانشگاه ايالتي ايوا‬
‫ساخته شد‪.‬‬
‫‪‬‬
‫‪ :MARK I , II , III‬توسط تيمي به رهبري هوراد ايکن در هاروارد توسعه داده شد‪.‬‬
‫‪‬‬
‫‪ :ENIAC‬اولين کامپيوترديجيتال الکترونيک چند منظوره‪ ،‬توسط تيمي به سرپرستي ماچلي و اکرت در‬
‫دانشگاه پنسيلوانيا ساخته شد‪.‬‬
‫‪28‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫‪ :IBM 701‬اولين کامپيوتر سودآور‪ ،‬توسط ناتانيل روچتر در ‪ 1952‬ساخته شد‪.‬‬
‫‪‬‬
‫چارلز بابيج‪ :‬طراحي ماشيني که جداول لگاريتمي را محاسبه کند‪.‬‬
‫‪29‬‬
‫‪‬‬
‫طراحي موتور آناليتيکي‬
‫‪‬‬
‫طرح حافظه قابلآدرسدهي‪ ،‬برنامه ذخيره شده و پرشهاي شرطي‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫کار در زمينه ‪ AI‬منجر به ايدههاي بسيار متعددي شد که به علوم کامپيوتر برگشت؛‬
‫مانند‪:‬‬
‫‪‬‬
‫اشتراک زماني – مفسرهاي دوسويه – نوع داده ليست پيوندي – مديريت حافظه‬
‫خودکار و برخي نکات کليدي برنامهنويس ي ش يءگرا و محيطهاي توسعه برنامه مجتمع با‬
‫واسط کاربر گرافيکي‪.‬‬
‫‪30‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫زبان‌شناس ي (‪ -1975‬تاکنون‌)‬
‫اسکينر در سال ‪ 1975‬کتابي در زمينه رفتارگرايان براي يادگيري زبان‪ ،‬با نام «رفتار زباني»‬
‫منتشر کرد‪.‬‬
‫نوآم چامسکي بر اساس تئوري خودش يعني ساختارهاي ترکيبي‪ ،‬اين کتاب را تجديد نظر و‬
‫چاپ کرد‪ .‬که به اندازه اصل کتاب شهرت پيدا کرد‪.‬‬
‫تئوري چامسکي بر اساس مدلهاي نحوي قرار دارد‪.‬‬
‫‪31‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫زبانشناس ي مدرن و ‪ AI‬در يک زمان متولد شدند‪ ،‬بنابراين زبانشناس ي نقش مهمي در رشد‬
‫‪‬‬
‫‪ AI‬بازي نميکند‪.‬‬
‫اين دو دريک زمينه مشترک به نام‬
‫‪‬‬
‫زبانشناس ي محاسباتي)‪ (Computatioal linguistics‬يا‬
‫پردازش زبان طبيعي )‪(natural language processing‬‬
‫بهم تنيده شدهاند که در آن بر روي مسئله استفاده زبان تمرکز شده است‪.‬‬
‫‪32‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫تاريخچه هوش مصنوعي‬
‫پيدايش هوش مصنوعي (‪)1956 -1943‬‬
‫‪‬‬
‫‪33‬‬
‫اشتياق زودهنگام‪ ،‬آرزوهاي بزرگ (‪)1969-1952‬‬
‫‪‬‬
‫مقداري واقعيت (‪)1966-1974‬‬
‫‪‬‬
‫سيستمهاي مبتني بر دانش‪ :‬کليد قدرت؟ (‪)1979-1969‬‬
‫‪‬‬
‫بازگشت شبکههاي عصبي (‪ -1986‬تاکنون)‬
‫‪‬‬
‫حوادث اخير (‪ -1987‬تاکنون)‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫پيدايش هوش مصنوعي‬
‫‪‬‬
‫اولين کار جدي در حيطه ‪ ،AI‬توسط وارن مککلود و والتر پيتز انجام شد‪.‬‬
‫‪‬‬
‫سه منبع استفاده شده توسط آنها‪:‬‬
‫‪34‬‬
‫‪‬‬
‫دانش فيزيولوژي پايه و عملکرد نرون در مغز‬
‫‪‬‬
‫تحليل رسمي منطق گزارهها متعلق به راسل و رايت هد‬
‫‪‬‬
‫تئوري محاسبات تورينگ‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫در ‪ 1949‬دونالد هب‪ ،‬قانون ساده بهنگامسازي براي تغيير تقويت اتصاالت بين نرونها‬
‫را تعريف کرد که از طريق آن يادگيري ميسر ميگردد‪.‬‬
‫‪‬‬
‫در زماني که کلود شانون و آلن تورينگ‪ ،‬برنامه بازي شطرنج را نوشتند ‪،SNARC ،‬‬
‫اولين کامپيوتر شبکه عصبي در دانشگاه پرينستون توسط مينسکي و ادموندز ساخته‬
‫شد‪.‬‬
‫اين کامپيوتر‪ ،‬از ‪ 3‬هزار تيوپ مکش ي و مکانيزم خلباني خودکار اضافي که مربوط به‬
‫بمبافکنهاي ‪ B24‬ميباشد براي شبيهسازي شبکه ‪ 40‬نروني استفاده کرد‪.‬‬
‫‪35‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫محققين عالقمند به تئوري آتوماتا‪ ،‬شبکههاي عصبي و مطالعه هوش‪ ،‬گرد يکديگر جمع شدند و در‬
‫کارگاهي در دورت موند مشغول فعاليت شدند‪ .‬که در اين ميان نام هوش مصنوعي براي حيطه فعاليت‬
‫آنها انتخاب شد‪.‬‬
‫‪36‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫اشتياق زودهنگام‪ ،‬آرزوهاي بزرگ (‪)1969-1952‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪37‬‬
‫فعاالن در عرصه ‪:AI‬‬
‫روچستو و تيمش در ‪IBM‬‬
‫هربرت جلونتر‪ :‬با ساخت ‪Geometry Theorem Prover‬‬
‫آرتور ساموئل‪ :‬ساخت برنامه براي بازي چکر‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫جان مک کارتي در ‪:MIT‬‬
‫‪‬‬
‫تعريف زبان ليسپ )‪ (Lisp‬مهمترين زبان هوش مصنوعي‬
‫‪‬‬
‫مفهوم اشتراک زماني )‪(time sharing‬‬
‫‪‬‬
‫نشر مقالهاي با عنوان "برنامهها با حواس مشترک"‬
‫‪‬‬
‫تشريح يک سيستم فرض ي به نام ‪ ، Advice Taker‬که به اصول پايه بازنمايي‬
‫معرفت و استدالل تجسم بخشيد؛‬
‫‪38‬‬
‫‪‬‬
‫کار بر روي سيستم برنامهريزي سؤال‪-‬جواب‬
‫‪‬‬
‫کار بر روي پروژه روباتهاي ‪shakey‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫مينسکي‪ :‬کار بر روي ميکرو ورلدها و همکاري با مککارتي‪ ،‬ولي بر سر اختالف بر نگرش منطقي و‬
‫ضدمنطقي کار تحقيقاتي خود را از هم جدا کردند‪.‬‬
‫مينسکي با گروهي از دانشجويان بر روي ميکروورلدها کار کرد که برخي از آنها عبارتند از‪:‬‬
‫‪‬‬
‫جيمز اسالگل‪ ،SAINT ،‬قادر به حل مسائل انتگرالگيري فرم بسته‬
‫‪‬‬
‫اوانز‪ ،ANALOGY :‬حل مسائل مشابهت هندس ي در تستهاي هوش‬
‫‪‬‬
‫رافائل‪ :SIR :‬پاسخ به قضاياي پرسش ي جمالت ورودي‬
‫‪‬‬
‫بابرو‪ :STUDENT :‬حل مسائل داستاني جبر‬
‫‪39‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مقداري واقعيت (‪)1974-1966‬‬
‫‪‬‬
‫ً‬
‫مشکالت تقريبا تمام پروژهها تحقيقي ‪ AI‬وقتي پديدار ميشدند که مسائل گستردهتري براي‬
‫حل توسط آنها مطرح ميشد‪:‬‬
‫‪‬‬
‫برنامههاي اوليه اغلب داراي دانش محدود يا فاقد دانش در مورد موضوع کار بودند‪.‬‬
‫‪‬‬
‫انجام ناپذيري بسياري از مسائل‬
‫‪‬‬
‫به دليل اعمال برخي محدوديتهاي پايهاي بر روي ساختار پايه مورد استفاده براي توليد رفتار‬
‫هوشمند‬
‫‪40‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫سيستم‌هاي مبتني بر دانش‪ :‬کليد قدرت؟ (‪)1979-1969‬‬
‫‪‬‬
‫روشهاي ضعيف‪ :‬مبتني بر يک جستجوي همهمنظوره ميباشند که قدمهاي اوليه‬
‫يادگيري را برميدارند اما تالش ي در جهت يافتن راهحلهاي کامل ندارند‪.‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪41‬‬
‫به اين دليل که اطالعات ضعيفي را در مورد دامنه فعاليت خود به کار ميبرند‪.‬‬
‫ً‬
‫پس براي حل مسائل دشوار‪ ،‬تقريبا جواب را از قبل بايد بدانيم‪.‬‬
‫برنامه ‪ DENDRAL‬از برنامههايي است که از اين رهيافت استفاده ميکند‪.‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫اهميت برنامه ‪ DENDRAL‬در اين بود که اولين سيستم موفق با‬
‫دانش غني بود‪ ،‬يعني تبحر سيستم بر پايه تعداد بسيار زيادي قانون‬
‫ايجاد شده بود‪ .‬سيستمهاي بعدي ايده اصلي رهيافت ‪Advice taker‬‬
‫مک کارتي را دنبال ميکردند يعني جداسازي دانش (در شکل قوانين) و‬
‫مؤلفه استدالل‪.‬‬
‫‪42‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ MYCIN‬نسبت به ‪ DENDRAL‬دو تفاوت عمده دارد‪:‬‬
‫‪‬‬
‫برخالف قوانين ‪ ،DENDRAL‬هيچ مدل تئوريوار عمومي براي آنکه‬
‫قوانين ‪ MYCIN‬استنتاج شود‪ ،‬وجود نداشت‪.‬‬
‫‪‬‬
‫قوانين ميبايست عدم قطعيت مربوط به دانش پزشکي را منعکس‬
‫ميکرد‪.‬‬
‫‪43‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ AI‬به يک صنعت تبديل مي‌شود (‪)1988-1980‬‬
‫‪‬‬
‫‪ :RI‬اولين سيستم خبره تجاري موفق از شرکت ‪ DEC‬که سودآوري زيادي را براي شرکت بهمراه‬
‫داشت‪.‬‬
‫‪‬‬
‫پروژه «نسل پنجم»‪ :‬اين پروژه ژاپني به منظور ساخت کامپيوترهاي هوشمندي که پرولوگ را به جاي کد‬
‫ماشين اجرا ميکردند‪ ،‬انجام شد‪.‬‬
‫‪‬‬
‫شرکتهاي ديگر جهان از جمله ميکروالکترونيک‪ ،MCC ،‬ليسپ ماشين‪ ،‬تگزاس اينسترومنت‪،‬‬
‫سمبوليکس‪ ،‬زيراکس و غيره در ساخت ايستگاههاي کاري بهينه شده در اين عرصه فعاليت داشتند‪.‬‬
‫‪44‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫بازگشت شبکه‌هاي عصبي‪:‬‬
‫دانشمندان فعال در اين عرصه‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪45‬‬
‫هاپ فيلد‪ :‬که به آناليز خواص ذخيرهسازي و بهينهسازي شبکهها پرداخت‪.‬‬
‫راسل هارت و هينتون‪ :‬مطالعه مدلهاي شبکه عصبي را ادامه دادند‪.‬‬
‫ً‬
‫بريسون و هو‪ :‬الگوريتم يادگيري انتشار به عقب را مجددا مطرح کردند‪.‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حوادث اخير‪:‬‬
‫‪‬‬
‫رهيافت ‪ :HMM‬رهيافت غالب در سالهاي اخير ميباشد که توسط مايکف به وجود‬
‫آمده است‪.‬‬
‫اين رهيافت از دو جنبه زير حائز اهميت است‪:‬‬
‫‪‬‬
‫مبتني بر نظريه رياض ي محض است‪.‬‬
‫‪‬‬
‫طي فرايندي با يادگيري گروه عظيمي از داده گفتار واقعي خود را بهبود ميبخشد‪.‬‬
‫‪46‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫برنامهريزي‪ :‬در دهه ‪ 70‬فقط براي ميکرووردها مناسب بودند‪ ،‬اکنون‬
‫براي زمانبندي کار در کارخانهها و مأموريتهاي فضايي استفاده‬
‫ميشوند‪.‬‬
‫‪‬‬
‫بيان شبکه باور‪ :‬استدالل کارا را در مورد ترکيب رويدادهاي غيرمنطقي‬
‫ممکن ساخت‪.‬‬
‫‪47‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫ايده سيستمهاي خبره فرماتيو توسط کار جوداپير و ارديک هوروتيز و‬
‫ديويد هکرمن مطرح شد‪:‬‬
‫"سيستمهايي که مطابق قوانين تئوري تصميمگيري به طور منطقي عمل‬
‫ميکنند و سعي ندارند که تبحر انساني را تقليد کنند‪".‬‬
‫‪48‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫شرايط کنوني‪:‬‬
‫‪‬‬
‫برخي از سيستمهايي موجود در جهان که از هوش مصنوعي استفاده ميکنند‪:‬‬
‫‪‬‬
‫‪ :HITECH‬اولين برنامه کامپيوتري که موفق به شکست استاد بزرگ شطرنج جهان‪،‬‬
‫آرنولد دنکر شده است‪.‬‬
‫‪‬‬
‫‪ :PEGASUS‬يک برنامه درک گفتار که سؤاالت کاربر را جواب ميدهد و تمامي‬
‫برنامههاي مسافرتي شخص را با يک برنامهريزي درست‪ ،‬مقرون به صرفه ميکند‪.‬‬
‫‪‬‬
‫‪ :MARVEL‬سيستم خبرهاي که دادههاي ارسالي از سفينه فضايي را تحليل نموده و در‬
‫صورت بروز مشکالت جدي‪ ،‬پيغام هشدار به تحليلگران ميدهد‪.‬‬
‫‪49‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل دوم‬
‫عاملهاي هوشمند‬
‫‪50‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬عامل‬
‫‪‬خواص محيطهاي وظيفه‬
‫‪‬برنامه هاي عامل‬
‫‪51‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عامل‪:‬‬
‫به هر چيزي اطالق ميشود‪ ،‬که قادر به درک محيط پيرامون خود از طريق حسگرها(‪)sensor‬‬
‫و اثرگذاري بر روي محيط از طريق اثرکنندهها (‪ )effector‬باشد‪.‬‬
‫ي‪:‬‬
‫عامل نرم‌افزار ‌‬
‫عامل نرمافزاري رشتههاي بيتي را به عنوان درک محيط و عمل‪ ،‬کدگذاري ميکند‪.‬‬
‫‪52‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عوامل انساني‬
‫‪.1‬‬
‫حس کردن‪ :‬گوش‪ ،‬چشم‪ ،‬ديگر ارگانها‬
‫‪.2‬‬
‫اثرگذاري‌‪ :‬دست‪ ،‬پا‪ ،‬بيني‪ ،‬اندامهاي ديگر‬
‫عوامل روباتيک‬
‫‪53‬‬
‫‪.1‬‬
‫حس کردن‪ :‬دوربين‪ ،‬يابندههاي مادون قرمز‬
‫‪.2‬‬
‫اثرگذاري‌‪ :‬موتور‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫‪ ‬دنباله ادراک‬
‫سابقه کامل هر چيزي است که عامل تاکنون درک کرده است‪.‬‬
‫‪ ‬تابع عامل‬
‫رفتار عامل توسط تابع عامل توصيف ميشود که هر دنباله ادراک را به يک‬
‫فعاليت نقش ميکند‪.‬‬
‫‪f : P*  A‬‬
‫فعاليت‬
‫‪54‬‬
‫دنباله ادراک ‪ :‬تابع عامل‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
sensors
percepts
?
environment
agent
actions
effectors
4 - 3 - 2 - 1 (‫ نورویک‬- ‫) هوش مصنوعی راسل‬
55
‫عاملهاي هوشمند‬
‫‪ ‬معيارهاي کارايي‬
‫‪ ‬معيار کارايي‪ ،‬معياري براي موفقيت رفتار عامل است‪.‬‬
‫• بر اساس خواسته هاي فرد در محيط انتخاب ميشود‬
‫‪ ‬رفتار عقاليي‬
‫‪‬معيار کارايي که مالکهاي موفقيت را تعريف ميکند‬
‫‪ ‬دانش قبلي عامل نسبت به محيط‬
‫‪ ‬فعاليتهايي که عامل ميتواند انجام دهد‬
‫‪56‬‬
‫‪ ‬دنباله ادراک عامل در اين زمان‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫‪ ‬عامل عالِـم‬
‫)‪)Omni science‬‬
‫خروجي واقعي فعاليت خود را ميداند و ميتواند بر اساس آن عمل کند‬
‫‪ ‬عامل خردمند‬
‫(‪)Rational agent‬‬
‫فعاليتي را انتخاب ميکند که معيار کارايي اش را حداکثر ميکند‬
‫• جمع آوري اطالعات‪ ،‬اکتشاف‪ ،‬يادگيري‌‬
‫‪‬عامل خود مختار‬
‫نقص دانش قبلي خود را ميتواند جبران کند‬
‫‪57‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫ً‬
‫‪ ‬کامال قابل مشاهده درمقابل قابليت مشاهده جزئي‬
‫‪ ‬قطعي درمقابل غير قطعي‬
‫خواص‬
‫‪ ‬راهبردي‬
‫‪ ‬رويدادي(اپيزوديک) درمقابل ترتيبي‬
‫‪ ‬ايستا درمقابل پويا‬
‫‪ ‬گسسته درمقابل پيوسته‬
‫‪ ‬تک عاملي درمقابل چند عاملي‬
‫محيط هاي وظيفه‬
‫‪‬چند عاملي رقابتي درمقابل چندعاملي همياري‌‬
‫‪58‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ ‬قابل دسترس ي در مقابل غيرقابل دسترس ي‬
‫ً‬
‫‪ ( ‬کامال قابل مشاهده در مقابل قابل مشاهده جزئي)‬
‫محيط قابل دسترس ي‪ :‬محيطي که عامل آن توسط ابزار حسکنندهاش امکان دسترس ي به‬
‫وضعيت کامل محيط را داشته باشد‪.‬‬
‫محيط قابل دسترس ي راحت است‪ ،‬زيرا عامل نيازمند دستکاري هيچ وضعيت داخلي براي حفظ‬
‫دنيا را نخواهد داشت‪.‬‬
‫‪59‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ ‬قطعي در مقابل غير قطعي‬
‫محيط قطعي‪ :‬محيطي است که اگر وضعيت بعدي محيط بوسيله وضعيت کنوني و اعمالي که‬
‫با عاملها انتخاب گردد‪ ،‬تعيين شود‪.‬‬
‫بهتر است به قطعي يا غير قطعي بودن محيط از ديدگاه عامل نگاه کنيم‪.‬‬
‫‪60‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ ‬اپيزوديک در مقابل غير اپيزوديک‬
‫‪ ‬محيط اپيزوديک (‪ ،)episodic‬تجربه عامل به اپيزودهايي تقسيم ميگردد‪.‬‬
‫‪ ‬هر اپيزود شامل درک و عمل عامل است‪.‬‬
‫‪ ‬کيفيت اعمال آن تنها به خود اپيزود وابسته است‪.‬‬
‫‪ ‬محيطهاي اپيزودي بسيار سادهترند زيرا عامل نبايد به جلوتر فکر کند‪.‬‬
‫‪61‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ ‬ايستا در مقابل پويا‬
‫محيط پويا‪ :‬محيطي که در حين سنجيدن عامل تغيير ميکند‪.‬‬
‫محيط نيمه‌پويا‪ :‬محيطي که با گذر زمان تغيير نميکند اما امتياز کارايي تغيير ميکند‪.‬‬
‫محيطهاي ايستا براي کار ساده هستند زيرا عامل نياز به نگاهکردن به دنيا در حين تصميمگيري‬
‫عملي نداشته و همچنين در مورد گذر زمان نيز نگران نميباشد‪.‬‬
‫‪62‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ ‬گسسته در مقابل پيوسته‬
‫محيط گسسته‪ :‬اگر تعداد محدود و مجزا از ادراک و اعمال بوضوح تعريف شده باشد‪.‬‬
‫‪ -‬بازي شطرنج گسسته است‪.‬‬
‫ رانندگي تاکس ي پيوسته است‪.‬‬‫سختترين حالت در بين حاالت موجود براي محيط‪:‬‬
‫غير قابل دسترس ي‪ ،‬غير اپيزوديک‪ ،‬پويا و پيوسته‬
‫‪63‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مثال‌هايي از انواع محيط و ويژگي‌هاي آنها‬
‫‪64‬‬
‫محيط‬
‫قابل دسترس ي‬
‫قطعي‬
‫اپيزوديک‬
‫ايستا‬
‫گسسته‬
‫شطرنج به همراه ساعت‬
‫‪YES‬‬
‫‪YES‬‬
‫‪NO‬‬
‫‪Semi‬‬
‫‪YES‬‬
‫شطرنج بدون ساعت‬
‫‪YES‬‬
‫‪YES‬‬
‫‪NO‬‬
‫‪YES‬‬
‫‪YES‬‬
‫پوکر‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪YES‬‬
‫‪YES‬‬
‫تخته نرد‬
‫‪YES‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪YES‬‬
‫‪YES‬‬
‫راندن تاکس ي‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫سيستم تشخيص پزشکي‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫سيستم تحليل تصوير‬
‫‪YES‬‬
‫‪YES‬‬
‫‪YES‬‬
‫‪Semi‬‬
‫‪NO‬‬
‫ربات جابجا کننده اشياء‬
‫‪NO‬‬
‫‪NO‬‬
‫‪YES‬‬
‫‪NO‬‬
‫‪NO‬‬
‫کنترل‌کننده پااليشگاه‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫آموزش‌دهنده انگليس ي با ارتباط متقابل‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪NO‬‬
‫‪YES‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫ساختار عاملها‬
‫برنامه ‪ +‬معماري = عامل‬
‫کار هوش مصنوعي طراحي برنامه عامل است که تابع عامل را پياده سازي ميکند‬
‫‪65‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫براي مثال‪ 4 ،‬عامل را مورد بررس ي قرار مي دهيم‪:‬‬
‫‪ ‬عاملهاي واکنش ي ساده‬
‫‪ ‬عاملهايي که اثرات دنيا را حفظ ميکنند (مدل گرا)‬
‫‪ ‬عاملهاي هدفگرا‬
‫‪ ‬عاملهاي سودمند‬
‫‪ ‬عامل های يادگيرنده‬
‫‪66‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عاملهاي واکنش ي ساده‬
‫‪‬اين عاملها فعاليت را بر اساس‬
‫درک فعلي و بدون در نظر گرفتن‬
‫سابقه ادراک‪ ،‬انتخاب ميکند‬
‫جهان چگونه است‬
‫‪‬به خاطر حذف سابقه ادراک‬
‫برنامه عامل در مقايسه با جدول آن‬
‫بسيار کوچک است(جدول خيلي‬
‫بزرگ ولي برنامه در مقابل آن کوچک)‬
‫اکنون چه عملي بايد‬
‫انجام دهم‬
‫حسگرها‬
‫عامل‬
‫محيط‬
‫‪‬انتخاب فعاليت بر اساس يکسري‬
‫محرکها‬
‫قوانين موقعيت شرطي انجام‬
‫‪67‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ميشود‬
‫قانون‌‬
‫شرط عمل‬
‫عامل‌هاي واکنش ي ساده‬
‫در اينجا جدول رجوع بايد مورد توجه قرار گرفته و فيلدهاي مختلف آن توسط اطالعات ورودي‬
‫پر شود‪.‬‬
‫اتصاالتي (واکنشهايي) وجود دارند که انسانها بسياري از آنها را دارا بوده‪:‬‬
‫برخي از آنها قابل يادگيري و برخي ديگر غريزي است‪.‬‬
‫مربع مستطيل‪ :‬نشاندهنده وضعيت داخلي جاري فرايند تصميمگيري عامل‬
‫بيض ي‪ :‬نشاندهنده وضعيت اطالعات پسزمينه‬
‫‪68‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫مثالي از عامل واکنش ي ساده در دنياي جاروبرقي‬
‫‪‬تصميم گيري آن بر اساس مکان‬
‫فعلـ ـ ـ ــي و کثيـ ـ ـ ــف بـ ـ ـ ــودن آن مکا ا ا ااان‬
‫صورت ميگيرد‬
‫‪‬انتخ ا ا ا اااب فعالي ا ا ا اات ب ا ا ا اار اس ا ا ا اااس‬
‫موقعيت شرطي‪:‬‬
‫‪If dirty then suck‬‬
‫)]‪function REFLEX-VACUUM-AGENT ([location, status‬‬
‫‪return an action‬‬
‫‪if status == Dirty then return Suck‬‬
‫‪else if location == A then return Right‬‬
‫‪else if location == B then return Left‬‬
‫‪69‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عاملهاي واکنش ي مدل گرا‬
‫‪‬اسا ا ا ااتفاده از دان ا ا ا ااش “چگ ـ ـ ـ ــونگي‬
‫عملکرد جهان” که مدل نام دارد‬
‫‪‬عام ا ا اال باي ا ا ااد حالـ ـ ـ ــت داخلـ ـ ـ ــي را‬
‫ذخيا ااره کن ا ااد ک ا ااه با ااه س ـ ــابقه ادراک‬
‫بستگي دارد‬
‫جهان چگونه است‬
‫محيط‬
‫‪‬عام ا اال بخشـ ـ ـ ي از دني ـ ــايي را ک ا ااه‬
‫فعال ميبيند رديابي ميکند‬
‫حسگرها‬
‫حالت‬
‫جهان چگونه‬
‫تکامل مي يابد‬
‫کار فعاليت‬
‫چيست‬
‫اکنون چه عملي بايد‬
‫انجام دهم‬
‫‪‬در ه ا اار وض ا ااعيت‪ ,‬عام ا اال ميتوان ا ااد‬
‫توصيف جديدي از جهاان را کساب‬
‫محرکها‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪70‬کند‬
‫قانون‌‬
‫شرط عمل‬
‫عامل‬
‫عامل‌هايي که اثرات دنيا را حفظ مي‌کنند‬
‫از آنجايي ناش ي ميشود که حسگرها نميتوانند دسترس ي کامل به وضعيت دنيا را به وجود‬
‫آورند‪.‬‬
‫در چنين شرايطي‪ ،‬عامل ممکن است نيازمند دستکاري برخي اطالعات وضعيت داخلي باشد‬
‫تا از طريق آن تمايز بين وضعيتهاي دنيا که در ظاهر ورودي ادراکي يکساني ميکنند ولي در‬
‫ً‬
‫واقع معني کامال متفاوتي دارند را ميسر سازد‪.‬‬
‫‪71‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫بهنگام‌سازي اطالعات وضعيت داخلي همزمان با گذر زمان نيازمند دو نوع دانش کد شده در‬
‫برنامه عامل است‪.‬‬
‫اول‌‪ :‬نيازمند آنيم که برخي اطالعات درباره چگونگي تغيير جهان مستقل از عامل را داشته‬
‫باشيم‪.‬‬
‫دوم‪ :‬نيازمند اطالعات درباره اعمال خود هستيم که بر روي دنيا اثرگذار است‪.‬‬
‫‪72‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عامل‌هاي هدف گرا‪:‬‬
‫دانستن درباره وضعيت کنوني محيط همواره براي تصميمگيري عمل نميتواند کافي باشد‪.‬‬
‫به همان گونه که عامل نيازمند شرح وضعيت جاري است‪ ،‬به نوعي نيازمند اطالعات‬
‫هدف(‪ )goal‬ميباشد که توضيح موقعيت مطلوب است‪.‬‬
‫‪73‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عاملهاي هدف گرا‬
‫حسگرها‬
‫‪‬اي ا اان عام ا اال ع ا ااالوه ب ا اار توص ا اايف حال ا اات‬
‫فعل ا ااي‪ ،‬با ا اراي انتخ ا اااب موقعي ـ ــت مطل ـ ــوب‬
‫نيازمند اطالعات هدف نيز ميباشد‬
‫جهان چگونه است‬
‫محيط‬
‫‪‬جســت و جــو و برنامــه ريــزي‌‪ ،‬دنبالااه اي‬
‫از فعاليتها را براي رسيدن عامال باه هادف‪،‬‬
‫پيدا ميکند‬
‫اگر فعاليت ‪ A‬را‬
‫انجام دهم چه‬
‫خواهد شد‬
‫‪‬اياان نااوع تصااميم گيااري همااواره آينــده را‬
‫در نظر دارد و با قاوانين شارط عمال تفااوت‬
‫دارد‬
‫اکنون چه عملي بايد‬
‫انجام دهم‬
‫‪‬اين نوع عامل کارايي چنداني ندارد‪ ،‬اماا‬
‫قابليت انعطاف بيشتري دارد‬
‫محرکها‬
‫‪74‬‬
‫حالت‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جهان چگونه‬
‫تکامل مي يابد‬
‫کار فعاليت‬
‫چيست‬
‫اهداف‬
‫عامل‬
‫برنامه عامل ميتواند اين اطالعات را با اطالعاتي درباره نتايج اعمال ممکن (همانند اطالعاتي‬
‫که در عامل واکنش براي بهنگامسازي وضعيت داخلي استفاده شد) ترکيب نموده تا اعمال‬
‫مناسب را براي دسترس ي به هدف انتخاب نمايد‪.‬‬
‫در مواقعي ساده است‪ :‬که رضايت از هدف بالفاصله از عمل واحد توليد گردد‪.‬‬
‫در مواقعي پيچيده است‪ :‬که عامل بايد دنبالههاي طوالني را در نظرگرفته تا راهي براي‬
‫دستيابي به هدف پيدا کند‪.‬‬
‫در مواقع پيچيده‪ ،‬جستجو و برنامهريزي به يافتن دنباله اعمال منجر خواهند شد‪.‬‬
‫‪75‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫تفاوت عامل‌هاي واکنش ي و هدف‌گرا‪:‬‬
‫در طراحي عاملهاي واکنش ي طراح براي حاالت متفاوت عملي درست را پيش محاسبه ميکند‪ .‬در‬
‫عاملهاي هدفگرا‪ ،‬عامل ميتواند دانش خود را در مورد چگونگي واکنش بهنگام سازد‪.‬‬
‫‪76‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫تفاوت عاملهاي واکنش ي و هدفگرا‪:‬‬
‫‪ .1‬براي عامل واکنش ي ما مجبور به دوباره نويس ي تعداد زيادي قوانين شرط –عمل خواهيم‬
‫بود‪.‬‬
‫‪ .2‬عامل هدفگرا نسبت به رسيدن به مقاصد متفاوت انعطاف پذير است‪.‬‬
‫‪ .3‬بسادگي با تعيين يک هدف تازه‪ ،‬ميتوانيم عامل هدفگرا را به رفتار تازه برسانيم‪.‬‬
‫‪77‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عامل‌هاي سودمند‪:‬‬
‫‪ ‬اهداف به تنهايي براي توليد رفتار با کيفيت باال کافي نيستند‪.‬‬
‫‪ ‬مالک کارايي عمومي بايد مقايسهاي بين وضعيتهاي دنياي متفاوت (يا دنباله حاالت) را بر‬
‫پايه چگونگي رضايت عامل در صورت حصول هدف بدهد‪.‬‬
‫‪ ‬بنابراين اگر يک وضعيت دنيا به ديگري ترجيح داده ميشود‪ ،‬آنگاه آن براي عامل سودمندتر‬
‫خواهد بود‬
‫‪78‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عاملهاي سودمند‬
‫حسگرها‬
‫‪‬اياان عاماال ب اراي اهــداف مشــخص‪ ،‬راه‬
‫ه ــاي مختلف ــي دارد‪ ،‬کااه راه ح اال بهت اار ب ااراي‬
‫عامل سودمندتر است‪.‬‬
‫‪‬وقتاي اهداف متضـاد باشاند‪ ،‬بعضـ ي از‬
‫آنها برآورده ميشوند‬
‫جهان چگونه است‬
‫محيط‬
‫‪‬تــابع ســودمندي‪ ،‬حالاات يااا دنبالااه اي از‬
‫حالته ا ااا را ب ا ااه ي ا ااک ع ا اادد حقيق ـ ــي نگاش ا اات‬
‫ميکن ا ا ااد ک ا ا ااه درج ـ ـ ــه رض ـ ـ ــايت را توص ا ا اايف‬
‫ِميکند‪.‬‬
‫حالت‬
‫اگر فعاليت ‪ A‬را‬
‫انجام دهم چه‬
‫خواهد شد‬
‫در چنين حالتي چقدر‬
‫رضايت دارم‬
‫اکنون چه عملي بايد‬
‫انجام دهم‬
‫‪‬اگاار هيچيــک از اهــداف بااه طااور قطعااي‬
‫قابل حصاول نباشاند‪ ،‬احتماال موفقيات باا‬
‫‪79‬اهميت هدف مقايسه ميشود‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫محرکها‬
‫جهان چگونه‬
‫تکامل مي يابد‬
‫کار فعاليت‬
‫چيست‬
‫سودمند‬
‫عامل‬
‫سودمندي‪ :‬تابعي است که يک وضعيت را به عدد حقيقي نگاشت ميدهد‪ ،‬که درجه رضايت‬
‫مربوط را تشريح ميکند‪.‬‬
‫مشخصات کامل تابع سودمندي امکان تصميمگيري منطقي را براي دو نوع حالتي که هدف‬
‫مشکل دارد‪ ،‬اجازه ميدهد‪.‬‬
‫‪ .1‬زماني که اهداف متناقص وجود دارند‪.‬‬
‫‪ .2‬زماني که چندين هدف دارند که عامل ميتواند آنها را هدف قرار دهد و هيچکدام از آنها با‬
‫قطعيت قابل حصول نيست‪.‬‬
‫‪80‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي هوشمند‬
‫عاملهاي يادگيرنده‬
‫استاندارد کارايي‬
‫‪ ‬عنصا ا ا ا ِار ِ يادگيرنـ ـ ـ ــده مسا ا ا اائول ايجا ا ا اااد‬
‫بهبودها‬
‫محيط‬
‫عنصر کارايي‬
‫‪‬مول ـ ـ ـ ـ ـ ــد مس ـ ـ ـ ـ ـ ـ له مسا ا ا ا ا اائول پيشا ا ا ا ا اانهاد‬
‫فعاليته ا ااايي اس ا اات ک ا ااه منج ا اار ب ا ااه تجربي ا اات‬
‫آموزنده جديدي ميشود‬
‫‪81‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫تغييرات‬
‫دانش‬
‫عنصر‬
‫يادگيرنده‬
‫اهداف‬
‫ي‬
‫يادگير ‌‬
‫‪‬منتقد مشخص ميکند که يادگيرناده باا‬
‫توجه به استانداردهاي کارايي چگونه عمل‬
‫ميکند‬
‫بازخورد‬
‫‪‬عنص ا ا ا ا ا اار ک ـ ـ ـ ـ ـ ــارايي مس ا ا ا ا ا اائول انتخ ا ا ا ا ا اااب‬
‫فعاليتهاي خارجي‬
‫حسگرها‬
‫منتقد‬
‫مولد مس له‬
‫محرکها‬
‫عامل‬
‫هوش مصنوعي‬
‫فصل سوم‬
‫حل مسئله با جستجو‬
‫‪82‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬عاملهاي حل مس له‬
‫‪‬مس له‬
‫‪‬اندازه گيري کارايي حل مس له‬
‫‪‬جستجوي ناآگاهانه‬
‫‪‬اجتناب از حالتهاي تکراري‌‬
‫‪‬جستجو با اطالعات ناقص‬
‫‪83‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫عاملهاي حل مس له‬
‫چهار گام اساس ي براي حل مسائل‬
‫‪‬فرموله کردن هدف‪ :‬وضعيتهاي مطلوب نهايي کدامند؟‬
‫‪‬فرمولــه کــردن مسـ له‪ :‬چــه فعاليتهــا و وضــعيتهايي بــراي رســيدن بــه هــدف موجــود‬
‫است؟‬
‫‪‬جسـ ــتجو‪ :‬انتخـ ــاب بهتـ ــرين دنبالـ ــه از فعاليتهـ ــايي کـ ــه منجـ ــر بـ ــه حـ ــاالتي بـ ــا مقـ ــدار‬
‫شناخته شده ميشود‪.‬‬
‫‪‬اج ـرا‪ :‬وقت ــي دنبال ــه فعالي ــت مطل ــوب پي ــدا ش ــد‪ ،‬فعاليته ــاي پيشـ ـ هادي آن ميتوان ــد‬
‫‪84‬اجرا شود‪.‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫يک نوع عامل هدفگرا‪ ،‬عامل حل مسئله ناميده ميشود‪.‬‬
‫عامل‌هاي حل مس له توسط يافتن ترتيب عمليات تصميم ميگيرند که چه انجام دهند تا‬
‫آنها را به حالتهاي مطلوب سوق دهد‪.‬‬
‫‪85‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عامل‌هاي حل مس له‬
‫ً‬
‫‪ ‬عاملهاي هوشمند به طريقي عمل ميکنند که محيط مستقيما به داخل دنباله حالتهايي‬
‫وارد شود که معيار کارآرايي را افزايش ميدهند‪.‬‬
‫‪ ‬عمليات به گونهاي سادهسازي ميشوند که عامل قادر باشد تا هدفي را قبول کرده و به آن‬
‫برسد‪.‬‬
‫‪ ‬الگوريتم جستجو مسئلهاي را به عنوان ورودي دريافت نموده و راهحلي را به صورت دنباله‬
‫عمليات بر ميگرداند‪.‬‬
‫‪86‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫چهار نوع اساس ي از مسائل وجود دارند‪:‬‬
‫‪ ‬مسائل تک حالته )‪(Single-state‬‬
‫‪ ‬مسائل چند حالته )‪(Multiple-state‬‬
‫‪ ‬مسائل احتمالي )‪(Contingency‬‬
‫‪ ‬مسائل اکتشافي )‪(Exploration‬‬
‫‪87‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫دانش و انواع مس له‬
‫دنياي مکش (جاروبرقي)‪:‬‬
‫اگر دنيا حاوي دو محل باشد‪:‬‬
‫هر محل ممکن است که شامل خاک باشد و يا نباشد و عامل ممکن است که در يک محل يا‬
‫ديگر محلها باشد؛ که داراي هشت حالت متفاوت خواهد بود‪.‬‬
‫هدف تميز کردن تمام خاکهاست که در اينجا معادل با مجموعه حالت {‪8‬و ‪ }7‬است‪.‬‬
‫‪88‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مدلهاي مختلف براي مسئله جاروبرقي‪:‬‬
‫ مدل تک حالته‪:‬‬‫حسگرهاي عامل به آن اطالعات کافي ميدهند تا وضعيت دقيق مشخص شود‪( .‬دنيا قابل‬
‫دسترس ي است)‪ .‬عامل ميتواند محاسبه کند که کدام وضعيت پس از هر دنباله از‬
‫عمليات قرار خواهد گرفت‪.‬‬
‫‪89‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ مدل چند حالته‪:‬‬‫عامل تمام اثرهاي عملياتش را ميداند اما دسترس ي به حالت دنيا را محدود کرده است‪.‬‬
‫ً‬
‫زماني که دنيا تماما قابل دسترس ي نيست عامل بايد در مورد مجموعه حالتهايي که‬
‫ممکن است به آن برسد استدالل کند‪.‬‬
‫‪90‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ مدل احتمالي‪:‬‬‫با اين مدل حل مسئله‪ ،‬حسگرهايي را در طول فاز اجرايي نياز داريم‪ .‬عامل اکنون بايد تمام‬
‫درخت عملياتي را بر خالف دنباله عملياتي منفرد‪ ،‬محاسبه کند‪ .‬که به طور کلي هر شاخه‬
‫درخت‪ ،‬با يک امکان احتمالي که از آن ناش ي ميشود‪ ،‬بررس ي ميشود‪.‬‬
‫‪91‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ مدل اکتشافي‪:‬‬‫عاملي که هيچ اطالعاتي در مورد اثرات عملياتش ندارد‪.‬‬
‫در اين حالت‪ ،‬عامل بايد تجربه کند و به تدريج کشف کند که چه عملياتي بايد انجام شود و‬
‫چه وضعيتهايي وجود دارند‪ .‬اين روش يک نوع جستجو است‪.‬‬
‫اگر عامل نجات يابد‪« ،‬نقشهاي» از محيط را ياد ميگيرد که ميتواند مسائل بعدي را حل کند‪.‬‬
‫‪92‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجو با اطالعات ناقص‬
‫‪‬مسئله هاي فاقد حسگر‪ :‬اگر عامل فاقد حسگر باشد‪ ،‬ميتواند در يکي از چند حالت اوليه‬
‫باشد و هر فعاليت ميتواند آن را به يکي از چند حالت جانشين ببرد‬
‫‪‬مسئله هاي اقتضايي‪ :‬اگر محيط به طور جزئي قابل مشاهده باشد يا اگر فعاليتها قطعي‬
‫نباشد‪ ،‬ادراکات عامل‪ ،‬پس از هر عمل‪ ،‬اطالعات جديدي را تهيه ميکنند‪ .‬هر ادراک ممکن‪ ،‬اقتضايي را‬
‫تعريف ميکند که بايد براي آن برنامه ريزي شود‬
‫‪‬مسائل خصمانه‪ :‬اگرعدم قطعيت در اثر فعاليتهاي عامل ديگري بوجود آيد‪ ،‬مسئله را‬
‫خصمانه گويند‬
‫‪‬مسئله هاي اکتشافي‪ :‬وقتي حالتها و فعاليتهاي محيط ناشناخته باشند‪ ،‬عامل بايد سعي کند آنها‬
‫را کشف کند‪ .‬مسئله هاي اکتشافي را ميتوان شکل نهايي مسئله هاي اقتضايي دانست‬
‫‪93‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬دنياي جاروبرقي فاقد حسگر‬
‫‪‬عام ا اال ج ا ااارو تم ا ااام اث ا ارات فعاليته ا ااايش را ميدان ا ااد ام ا ااا‬
‫فاقد حسگر است‪.‬‬
‫‪‬حال ا ا ا ا ا ا ا ا ا ا ا ا ا ا اات اولي ا ا ا ا ا ا ا ا ا ا ا ا ا ا ااه آن يک ا ا ا ا ا ا ا ا ا ا ا ا ا ا ااي از اعض ا ا ا ا ا ا ا ا ا ا ا ا ا ا اااي‬
‫مجموعه{‪ }1،2،3،4،5،6،7،8‬ميباشد‬
‫‪‬فعاليت (‪(Right‬‬
‫‪‬فعاليت (‪)Right,Suck‬‬
‫{‪}2،4،6،8‬‬
‫{‪}4،8‬‬
‫‪‬فعالي ا ا ا ا ا ا اات (‪ )Right,Suck,Left,Suck‬تض ا ا ا ا ا ا اامين‬
‫ميکنااد کااه صاارف نظاار از حالاات اوليااه‪ ،‬بااه حالاات هاادف‪،‬‬
‫يعني ‪ 7‬برسد‬
‫‪94‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫دنياي جاروبرقي‬
‫فاقد حسگر‬
‫‪‬عاماال بايااد راجااع بااه مجموعااه هاااي‬
‫ح ا ا ااالتي ک ا ا ااه ميتوان ا ا ااد ب ا ا ااه آنه ا ا ااا برس ا ا ااد‬
‫اسااتدالل کنااد‪ .‬اياان مجموعااه از حالته اا‬
‫را حالت باور گوييم‪.‬‬
‫‪‬اگ اار فض اااي حال اات فيزيک ااي داراي ‪s‬‬
‫حالت باشاد فضااي حالات بااور ‪2^s‬‬
‫حالت باور خواهد داشت‪.‬‬
‫‪95‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫براي تعريف يک مسئله موارد زير نياز داريم‪:‬‬
‫‪ ‬وضعيت آغازين (‪ )initial state‬که عامل خودش از بودن در آن آگاه است‪.‬‬
‫‪ ‬مجموعهاي از عمليات ممکن‪ ،‬که براي عامل قابل دسترس ي باشد‪.‬‬
‫‪ ‬آزمون هدف (‪ ،)goal test‬که عامل ميتواند در يک تعريف وضعيت منفرد آن را تقاضا‬
‫کند تا تعيين گردد که آن حالت‪ ،‬وضعيت هدف است يا خير‪.‬‬
‫‪ ‬تابع هزينه مسير‪ ،‬تابعي است که براي هر مسير‪ ،‬هزينهاي را در نظر ميگيرد؛ و با حرف ‪g‬‬
‫مشخص ميشود‪.‬‬
‫هزينه يک سفر= مجموع هزينه‌هاي عمليات اختصاص ي در طول مسير‬
‫‪96‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫براي حل مسئله چند حالته‪ ،‬فقط به يک اصالح جزئي نياز داريم‪:‬‬
‫يک مسئله شامل‪:‬‬
‫‪ ‬يک مجموعه حالت اوليه‬
‫‪ ‬مجموعهاي از عملگرهاي ويژه براي هر عمل به گونهاي که از هر وضعيت داده شده‬
‫مجموعهاي حاالت رسيده شده و يک آزمون هدف و تابع هزينه مسير را معين کند‪.‬‬
‫‪97‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫يک عملگر‪:‬‬
‫توسط اجتماع نتايج اعمال عملگر در هر وضعيت مجموعه‪ ،‬به کار برده ميشود‪.‬‬
‫يک مسير‪:‬‬
‫مجموعه حاالت را مرتبط ميکند‪.‬‬
‫يک راه حل‪:‬‬
‫مسيري است که به مجموعهاي از حاالت که تمام آنها‪ ،‬وضعيت هدف هستند‪ ،‬سوق‬
‫ميدهند‪.‬‬
‫‪98‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫اندازه‌گيري کارايي حل مس له‪:‬‬
‫کارايي يک جستجو‪ ،‬حداقل از سه طريق ميتواند اندازهگيري شود‪:‬‬
‫‪ .1‬آيا اين جستجو راه حلي پيدا ميکند؟‬
‫‪ .2‬آيا راه حلي مناسبي است؟‬
‫‪ .3‬هزينه جستجو از نظر زماني و حافظه مورد نياز براي يافتن راه حل چيست؟‬
‫مجموع هزينه جستجو= هزينه مسير ‪ +‬هزينه جستجو‬
‫عامل بايد تصميم بگيرد که چه منابعي را فداي جستجو و چه منابعي را صرف اجرا کند‪.‬‬
‫‪99‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬نقشه روماني‬
‫‪100‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬نقشه روماني‬
‫‪‬صورت مسأله‪ :‬رفتن از آراد به بخارست‬
‫‪‬فرموله کردن هدف‪ :‬رسيدن به بخارست‬
‫‪‬فرموله کردن مس له‪:‬‬
‫‪‬وضعيتها‪ :‬شهرهاي مختلف‬
‫‪‬فعاليتها‪ :‬حرکت بين شهرها‬
‫‪‬جستجو‪ :‬دنباله اي از شهرها مثل‪:‬آراد‪ ،‬سيبيو‪ ،‬فاگارس‪ ،‬بخارست‬
‫‪‬اين جستجو با توجه به کم هزينه ترين مسير انتخاب ميشود‬
‫‪101‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مس له‬
‫‪‬حالت اوليه‪ :‬حالتي که عامل از آن شروع ميکند‪.‬‬
‫‪‬در مثال روماني‪ :‬شهر آراد )‪n(Arad‬‬
‫‪‬تابع جانشين‪ :‬توصيفي از فعاليتهاي ممکن که براي عامل مهيا است‪.‬‬
‫‪‬در مثال روماني‪S(Arad)={ Zerind,Sibui,Timisoara} :‬‬
‫‪‬فضاي حالت‪ :‬مجموعه اي از حالتها که از حالت اوليه ميتوان به آنها رسيد‪.‬‬
‫‪‬در مثال روماني‪ :‬کليه شهرها که با شروع از آراد ميتوان به آنها رسيد‬
‫تابع جانشين ‪ +‬حالت اوليه = فضاي حالت‬
‫‪102‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫‪‬آزمون هدف‪ :‬تعيين ميکند که آيا حالت خاص ي‪ ،‬حالت هدف است يا خير‬
‫‪‬هدف صريح‪ :‬در مثال روماني‪ ،‬رسيدن به بخارست‬
‫‪‬هدف انتزاعي‪ :‬در مثال شطرنج‪ ،‬رسيدن به حالت کيش و مات‬
‫‪‬مسير‪ :‬دنباله اي از حالتها که دنباله اي از فعاليتها را به هم متصل ميکند‪.‬‬
‫‪‬در مثال روماني‪ Arad, Sibiu, Fagaras :‬يک مسير است‬
‫‪‬هزينه مسير‪ :‬براي هر مسير يک هزينه عددي در نظر ميگيرد‪.‬‬
‫‪‬در مثال روماني‪ :‬طول مسير بين شهرها بر حسب کيلومتر‬
‫راه حل مس له مسيري از حالت اوليه به حالت هدف است‬
‫راه حل بهينه کمترين هزينه مسير را دارد‬
‫‪103‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬دنياي جارو برقي‬
‫حالتهااا‪ :‬دو مک ااان ک ااه هاار يااک ممکاان اساات کثي ااف ي اا‬
‫تميز باشند‪.‬لذا ‪2 *2^2 = 8‬حالت در ايان جهاان وجاود‬
‫دارد‬
‫حال اات اولي ااه‪ :‬ه اار ح ااالتي ميتوان ااد ب ااه عن ااوان حال اات‬
‫اوليه طراحي شود‬
‫تا ا ااابع جانشا ا ااين‪ :‬حالتها ا اااي معتبا ا اار از سا ا ااه عمليا ا ااات‪:‬‬
‫راست‪ ،‬چپ‪ ،‬مکش‬
‫آزمون هدف‪ :‬تميزي تمام مربعها‬
‫هزينه مسير‪ :‬تعداد مراحل در مسير‬
‫‪104‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬دنياي جارو برقي‬
‫حالتهااا‪ :‬دو مکااان کااه هاار يااک ممکاان اساات کثيااف ي اا‬
‫تميز باشند‪.‬لذا ‪2 *2^2 = 8‬حالت در ايان جهاان وجاود‬
‫دارد‬
‫حال اات اولي ااه‪ :‬ه اار ح ااالتي ميتوان ااد ب ااه عن ااوان حال اات‬
‫اوليه طراحي شود‬
‫تا ا ااابع جانشا ا ااين‪ :‬حالتها ا اااي معتبا ا اار از سا ا ااه عمليا ا ااات‪:‬‬
‫راست‪ ،‬چپ‪ ،‬مکش‬
‫آزمون هدف‪ :‬تميزي تمام مربعها‬
‫هزينه مسير‪ :‬تعداد مراحل در مسير‬
‫‪105‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬معماي‪8‬‬
‫حالتها‪ :‬مکان هر هشت خانه شماره دار و خانه خالي در يکي از ‪ 9‬خانه‬
‫حالت اوليه‪ :‬هر حالتي را ميتوان به عنوان حالت اوليه در نظر گرفت‬
‫تااابع جانشااين‪ :‬حالتهاااي معتباار از چهااار عماال‪ ،‬انتقااال خانااه خااالي باه چااپ‪،‬‬
‫راست‪ ،‬باال يا پايين‬
‫آزمااون هاادف‪ :‬بررسا ي ميکنااد کااه حااالتي کااه اعااداد بااه ترتيااب چيااده شاده‬
‫اند(طبق شکل روبرو) رخ داده يا نه‬
‫هزينه مسير‪ :‬برابر با تعداد مراحل در مسير‬
‫‪106‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬معماي‪8‬‬
‫حالتها‪ :‬مکان هر هشت خانه شماره دار و خانه خالي در يکي از ‪ 9‬خانه‬
‫حالت اوليه‪ :‬هر حالتي را ميتوان به عنوان حالت اوليه در نظر گرفت‬
‫تاابع جانشااين‪ :‬حالتهاااي معتباار از چهاار عماال‪ ،‬انتقااال خاناه خااالي باه چااپ‪،‬‬
‫راست‪ ،‬باال يا پايين‬
‫آزماون هادف‪ :‬بررسا ي ميکناد کاه حااالتي کاه اعاداد بااه ترتياب چياده شاده‬
‫اند(طبق شکل روبرو) رخ داده يا نه‬
‫هزينه مسير‪ :‬برابر با تعداد مراحل در مسير‬
‫‪107‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬مس له ‪ 8‬وزير‬
‫فرمول بندي افزايش ي‬
‫حالتها‪ :‬هر ترتيبي از ‪ 0‬تا ‪ 8‬وزير در صفحه‪ ،‬يک حالت است‬
‫حالت اوليه‪ :‬هيچ وزيري در صفحه نيست‬
‫تابع جانشين‪ :‬وزيري را به خانه خالي اضافه ميکند‬
‫آزمااون هاادف‪8 :‬وزياار در صاافحه وجااود دارنااد و هاايچ کاادام بااه‬
‫يکديگر گارد نميگيرند‬
‫در اين فرمول بندي بايد ‪ 3*10^14‬دنباله ممکن‬
‫بررس ي ميشود‬
‫‪108‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬مس له ‪ 8‬وزير‬
‫فرمول بندي افزايش ي‬
‫حالتها‪ :‬هر ترتيبي از ‪ 0‬تا ‪ 8‬وزير در صفحه‪ ،‬يک حالت است‬
‫حالت اوليه‪ :‬هيچ وزيري در صفحه نيست‬
‫تابع جانشين‪ :‬وزيري را به خانه خالي اضافه ميکند‬
‫آزمااون هاادف‪8 :‬وزياار در صاافحه وجااود دارنااد و هاايچ کاادام بااه‬
‫يکديگر گارد نميگيرند‬
‫‪109‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬مس له ‪ 8‬وزير‬
‫فرمول بندي حالت کامل‬
‫حالتهاا‪ :‬چيادمان ‪ n‬وزيار )‪ ،(0≤ n≤ 8‬بطوريکاه در هار ساتون از ‪n‬‬
‫س ااتون س اامت چ ااپ‪ ،‬ي ااک وزي اار قا ارار گي اارد و ه اايچ دو وزي ااري به اام گا ااارد‬
‫نگيرند‬
‫حالت اوليه‪ :‬با ‪ 8‬وزير در صفحه شروع ميشود‬
‫تابع جانشين‪ :‬وزيري را در سمت چپ ترين ستون خالي قارار ميدهاد‪،‬‬
‫بطوري که هيچ وزيري آن را گارد ندهد‬
‫آزمااون هاادف‪8 :‬وزياار در صاافحه وجااود دارنااد و هاايچ کاادام بااه يکااديگر‬
‫گارد نميگيرند‬
‫اين فرمول بندي فضاي حالت را از ‪ 3*10^14‬به‬
‫‪ 2057‬کاهش ميدهد‬
‫‪110‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫مثال‪ :‬مس له ‪ 8‬وزير‬
‫فرمول بندي حالت کامل‬
‫حالتهاا‪ :‬چيادمان ‪ n‬وزيار )‪ ،(0≤ n≤ 8‬بطوريکاه در هار ساتون از ‪n‬‬
‫س ااتون س اامت چ ااپ‪ ،‬ي ااک وزي اار قا ارار گي اارد و ه اايچ دو وزي ااري به اام گا ااارد‬
‫نگيرند‬
‫حالت اوليه‪ :‬با ‪ 8‬وزير در صفحه شروع ميشود‬
‫تابع جانشين‪ :‬وزيري را در سمت چپ ترين ستون خالي قرار ميدهد‪،‬‬
‫بطوري که هيچ وزيري آن را گارد ندهد‬
‫آزمااون هاادف‪8 :‬وزياار در صاافحه وجااود دارنااد و هاايچ کاادام بااه يکااديگر‬
‫گارد نميگيرند‬
‫‪111‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫اندازه گيري کارايي حل مس له‬
‫‪‬کام اال ب ااودن‪ :‬آيااا الگااوريتم تضاامين ميکنااد کااه در صااورت وجااود راه حاال‪ ،‬آن را‬
‫بيابد؟‬
‫‪‬بهينگي‪ :‬آيا اين راهبرد‪ ،‬راه حل بهينه اي را ارائه ميکند‪.‬‬
‫‪‬پيچيدگي‬
‫زماني‪ :‬چقدر طول ميکشد تا راه حل را پيدا کند؟‬
‫تعداد گره هاي توليد شده در اثناي جستجو‬
‫‪‬پيچيدگي فضا‪ :‬براي جستجو چقدر حافظه نياز دارد؟‬
‫حداکثر تعداد گره هاي ذخيره شده در حافظه‬
‫‪112‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫اندازه گيري کارايي حل مس له‬
‫‪‬کام اال ب ااودن‪ :‬آيااا الگااوريتم تضاامين ميکنااد کااه در صااورت وجااود راه حاال‪ ،‬آن را‬
‫بيابد؟‬
‫‪‬بهينگي‪ :‬آيا اين راهبرد‪ ،‬راه حل بهينه اي را ارائه ميکند‪.‬‬
‫‪‬پيچيدگي‬
‫زماني‪ :‬چقدر طول ميکشد تا راه حل را پيدا کند؟‬
‫‪‬تعداد گره هاي توليد شده در اثناي جستجو‬
‫‪‬پيچيدگي فضا‪ :‬براي جستجو چقدر حافظه نياز دارد؟‬
‫‪‬حداکثر تعداد گره هاي ذخيره شده در حافظه‬
‫‪113‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي ناآگاهانه‬
‫‪‬ناآگاهي اين است که الگوريتم هيچ اطالعاتي غير از تعريف مسئله در اختيار ندارد‬
‫‪‬اين الگوريتمها فقط ميتواند جانشينهايي را توليد و هدف را از غير هدف تشخيص دهند‬
‫‪‬راهبردهايي که تشخيص ميدهد يک حالت غير هدف نسبت به گره غير هدف ديگار‪ ،‬امياد بخاش تار اسات‪،‬‬
‫جست و جوي آگاهانه يا جست و جوي اکتشافي ناميده ميشود‪.‬‬
‫راهبردها‬
‫‪114‬‬
‫‪‬جست و جوي عرض ي‬
‫‪‬جست و جوي عمقي‬
‫‪‬جست و جوي عمقي محدود‬
‫‪‬جست و جوي عميق کننده تکراري‬
‫‪‬جست و جوي دو طرفه‬
‫‪‬جست و جوي هزينه يکنواخت‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي عرض ي‬
‫‪A‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪H‬‬
‫‪Q‬‬
‫‪115‬‬
‫‪B‬‬
‫‪P‬‬
‫‪G‬‬
‫‪O‬‬
‫‪N‬‬
‫‪F‬‬
‫‪M‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪E‬‬
‫‪K‬‬
‫‪J‬‬
‫حل مس له با جستجو‬
‫جستجوي عرض ي‬
‫کامل بودن‪ :‬بله‬
‫بهينگي‪ :‬بله (مشروط)‬
‫بله (مشروط)‬
‫در صورتي بهينه است که هزينه مسير‪ ،‬تابعي غير نزو لي از عمق گره‬
‫باشد‪(.‬مثل وقتي که فعاليتها هزينه يکساني دارند)‬
‫‪116‬‬
‫پيچيدگي زماني‪:‬‬
‫‪d1‬‬
‫پيچيدگي فضا‪:‬‬
‫‪d1‬‬
‫) ‪O(b‬‬
‫) ‪O(b‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي هزينه يکنواخت‬
‫اين جستجو گره ‪ n‬را با کمترين هزينه مسير بسط ميدهد‬
‫‪A‬‬
‫‪3‬‬
‫‪1‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪B‬‬
‫‪H‬‬
‫‪Q‬‬
‫‪117‬‬
‫‪1‬‬
‫‪P‬‬
‫‪G‬‬
‫‪O‬‬
‫‪N‬‬
‫‪F‬‬
‫‪M‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪E‬‬
‫‪K‬‬
‫‪J‬‬
‫حل مس له با جستجو‬
‫جستجوي هزينه يکنواخت‬
‫کامل بودن‪ :‬بله‬
‫هزينه هر مرحله بزرگتر يا مساوي يک مقدار ثابت و مثبت ‪ε‬‬
‫مسير با حرکت در مسير افزايش مي يابد)‬
‫بهينگي‪ :‬بله‬
‫هزينه هر مرحله بزرگتر يا مساوي ‪ ε‬باشد‬
‫پيچيدگي زماني‪:‬‬
‫پيچيدگي فضا‪:‬‬
‫‪118‬‬
‫)‬
‫)‬
‫] ‪[C*/‬‬
‫‪O(b‬‬
‫] ‪[C*/‬‬
‫‪O(b‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫باشد‪(.‬هزينه‬
‫حل مس له با جستجو‬
‫جستجوي عمقي‬
‫‪A‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪B‬‬
‫‪H‬‬
‫‪6‬‬
‫‪G‬‬
‫‪2‬‬
‫‪E‬‬
‫‪F‬‬
‫‪3‬‬
‫‪7‬‬
‫‪Q‬‬
‫‪P‬‬
‫‪O‬‬
‫‪N‬‬
‫‪M‬‬
‫‪L‬‬
‫‪K‬‬
‫‪5‬‬
‫‪119‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪J‬‬
‫‪4‬‬
‫حل مس له با جستجو‬
‫جستجوي عمقي‬
‫خير‬
‫بودن‪:‬‬
‫بودن‪:‬‬
‫کاملکامل‬
‫اگر زير درخت چپ عمق نامحدود داشت و فاقد هر گونه راه حل باشد‪،‬‬
‫جستجو هرگز خاتمه نمي يابد‪.‬‬
‫خير‬
‫بهينگي‪:‬‬
‫بهينگي‪:‬‬
‫‪120‬‬
‫‪m‬‬
‫پيچيدگي زماني‪:‬‬
‫) ‪O(b‬‬
‫پيچيدگي فضا‪:‬‬
‫)‪O(bm‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي عمقي محدود‬
‫مسئله درختهاي نامحدود ميتواند به وسيله جست و جوي عمقي با عمق محدود ‪ L‬بهبود‬
‫يابد‬
‫‪A‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪H‬‬
‫‪Q‬‬
‫‪121‬‬
‫‪B‬‬
‫‪P‬‬
‫‪G‬‬
‫‪O‬‬
‫‪N‬‬
‫‪F‬‬
‫‪M‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪E‬‬
‫‪K‬‬
‫‪J‬‬
‫حل مس له با جستجو‬
‫جستجوي عمقي محدود‬
‫خير‬
‫بودن‪:‬‬
‫بودن‪:‬‬
‫کاملکامل‬
‫اين‬
‫اگر ‪ L<d‬و سطحي ترين هدف در خارج از عمق محدود قرار داشته باشد‪،‬‬
‫راهبرد کامل نخواهد بود‪.‬‬
‫خير‬
‫بهينگي‪:‬‬
‫بهينگي‪:‬‬
‫اگر ‪ L>d‬انتخاب شود‪ ،‬اين راهبرد بهينه نخواهد بود‪.‬‬
‫‪122‬‬
‫پيچيدگي زماني‪:‬‬
‫) ‪O(b‬‬
‫پيچيدگي فضا‪:‬‬
‫)‪O(bL‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي عميق کننده تکراري‌‬
‫‪A‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪H‬‬
‫‪Q‬‬
‫‪123‬‬
‫‪B‬‬
‫‪P‬‬
‫‪G‬‬
‫‪O‬‬
‫‪N‬‬
‫‪F‬‬
‫‪M‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪E‬‬
‫‪K‬‬
‫‪J‬‬
‫حل مس له با جستجو‬
‫جستجوي عميق کننده تکراري‌‬
‫‪A‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪H‬‬
‫‪Q‬‬
‫‪124‬‬
‫‪B‬‬
‫‪P‬‬
‫‪G‬‬
‫‪O‬‬
‫‪N‬‬
‫‪F‬‬
‫‪M‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪E‬‬
‫‪K‬‬
‫‪J‬‬
‫حل مس له با جستجو‬
‫جستجوي عميق کننده تکراري‌‬
‫‪A‬‬
‫‪D‬‬
‫‪C‬‬
‫‪I‬‬
‫‪S‬‬
‫‪125‬‬
‫‪B‬‬
‫‪H‬‬
‫‪R‬‬
‫‪Q‬‬
‫‪P‬‬
‫‪G‬‬
‫‪O‬‬
‫‪N‬‬
‫‪F‬‬
‫‪M‬‬
‫‪L‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪E‬‬
‫‪K‬‬
‫‪J‬‬
‫حل مس له با جستجو‬
‫جستجوي عميق کننده تکراري‌‬
‫بله‬
‫بودن‪:‬‬
‫بودن‪:‬‬
‫کاملکامل‬
‫در صورتي که فاکتور انشعاب محدود باشد‬
‫بله‬
‫بهينگي‪:‬‬
‫بهينگي‪:‬‬
‫وقتي که هزينه مسير‪ ،‬تابعي غير نزو لي از عمق گره باشد‬
‫‪126‬‬
‫‪d‬‬
‫پيچيدگي زماني‪:‬‬
‫) ‪O(b‬‬
‫پيچيدگي فضا‪:‬‬
‫)‪O(bd‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي دو طرفه‬
‫انجام دو جست و جوي همزمان‪ ،‬يکي از حالت اوليه به هدف و ديگري از هدف به حالت اوليه‬
‫تا زماني که دو جست و جو به هم برسند‬
‫‪127‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫جستجوي دو طرفه‬
‫بله‬
‫بودن‪:‬‬
‫بودن‪:‬‬
‫کاملکامل‬
‫اگر هر دو جستجو‪ ،‬عرض ي باشند و هزينه تمام مراحل يکسان باشد‬
‫بله‬
‫بهينگي‪:‬‬
‫بهينگي‪:‬‬
‫اگر هر دو جستجو‪ ،‬عرض ي باشند و هزينه تمام مراحل يکسان باشد‬
‫‪128‬‬
‫پيچيدگي زماني‪:‬‬
‫‪d/2‬‬
‫پيچيدگي فضا‪:‬‬
‫‪d/2‬‬
‫) ‪O(b‬‬
‫) ‪O(b‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حل مس له با جستجو‬
‫اجتناب از حالتهاي تکراري‌‬
‫وجود حالتهاي تکراري در يک مسئله قابل حل‪ ،‬ميتواند آن را به مسئله غير قابل حل تبديل‬
‫کند‬
‫‪129‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ي‪:‬‬
‫اجتناب از حاالت تکرار ‌‬
‫باراي مسااائل زيااادي‪ ،‬حاااالت تکاراري غيرقاباال اجتناااب هسااتند‪ .‬اياان شااامل تمااام مسااائلي ميشااود‬
‫که عملگرها قابل وارونه شدن باشند‪ ،‬مانند مسائل مسيريابي و کشيشها و آدمخوارها‪.‬‬
‫‪130‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ي‬
‫کامپيوتر وجود دارد‪:‬‬
‫‌‬
‫کار‬
‫فشار ‌‬
‫‌‬
‫ي براي مقابله با افزايش مرتبه ‌و سرريز ‌‬
‫سه راه براي حل مشکل حاالت تکرار ‌‬
‫به حالتي که هم اکنون از آن آمدهايد‪ ،‬برنگرديد‪ .‬داشتن تابع بسط (يا مجموعه عملگرها) از توليد مابعدهايي که‬
‫مشابه حالتي هستند که در آنجا نيز والدين اين گرهها وجود دارند‪ ،‬جلوگيري ميکند‪.‬‬
‫‪ .1‬از ايجاد مسيرهاي دوار بپرهيزيد‪ .‬داشتن تابع بسط (يا مجموعه عملگرها) از توليد مابعدهاي يک گره که‬
‫مشابه اجداد آن گره است‪ ،‬جلوگيري ميکند‪.‬‬
‫ً‬
‫ً‬
‫‪ .2‬حالتي را که قبال توليد شده است‪ ،‬مجددا توليد نکنيد‪ .‬اين مسئله باعث ميشود که هر حالت در حافظه‬
‫نگهداري شود‪ ،‬پيچيدگي فضايي )‪ O(bd‬داشته باشد‪ .‬بهتر است که به )‪ O(s‬توجه کنيد که ‪ s‬تعداد کل‬
‫حاالت در فضاي حالت ورودي است‪.‬‬
‫‪131‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪:Cryptarithmetic‬‬
‫در مسائل کريپتاريتمتيک‪ ،‬حروف به جاي ارقام مينشينند و هدف يافتن جايگزيني از اعداد براي حروف‬
‫ً‬
‫است که مجموع نتيجه از نظر رياض ي درست باشد‪ .‬معموال هر حرف بايد به جاي يک رقم مختلف‬
‫بنشينند‪.‬‬
‫مثال‪:‬‬
‫‪F=2, O=9, R=7, etc.‬‬
‫‪132‬‬
‫‪29786‬‬
‫‪FORTY‬‬
‫‪+ 850‬‬
‫‪+ TEN‬‬
‫‪+ 850‬‬
‫‪+ TEN‬‬
‫‪----------‬‬
‫‪----------‬‬
‫‪31486‬‬
‫‪SIXTY‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫يک فرمول ساده‪:‬‬
‫حاالت‪ :‬يک معماي ‪ Cryptarithmetic‬با چند حروف جايگزين شده توسط ارقام‪.‬‬
‫ً‬
‫عملگرها‪ :‬وقوع يک حروف را با يک رقم جايگزين کنيد که قبال در معما ظاهر نشده باشد‪.‬‬
‫آزمون هدف‪ :‬معما فقط شامل ارقام است و يک مجموع صحيح را بر ميگرداند‪.‬‬
‫هزينه مسير‪ :‬صفر‪ -‬تمام راه حلهاي صحيح است‪.‬‬
‫‪133‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ميخواهيم که از تبديل جايگزينيهاي مشابه اجتناب کنيم‪:‬‬
‫‪ ‬قبول يک ترتيب ثابت مانند ترتيب الفبايي‪.‬‬
‫‪ ‬هر کدام که بيشترين محدوديت جايگزيني را دارد‪ ،‬انتخاب کنيم؛ يعني حرفي که کمترين‬
‫امکان مجاز را دارند‪ ،‬محدوديتهاي معما را ميدهد‪.‬‬
‫‪134‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫دنياي مکش‪:‬‬
‫مس له تک حالته‪ :‬عامل از جاي خودش اطالع دارد و تمام مکانهاي آلوده را ميشناسد و‬
‫دستگاه مکنده ما درست کار ميکند‪.‬‬
‫حاالت‪ :‬يکي از ‪ 8‬حالت نشان داده شده‪.‬‬
‫عملگرها‪ :‬حرکت به چپ‪ ،‬حرکت به راست‪ ،‬عمل مکش‪.‬‬
‫آزمون هدف‪ :‬هيچ خاکي در چهار گوشها نباشد‪.‬‬
‫هزينه مسير‪ :‬هر عمل ارزش ‪ 1‬دارد‪.‬‬
‫‪135‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪136‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مس له چند حالته‪ :‬عامل داراي حسگر نميباشد‪.‬‬
‫مجموعه وضعيت‌ها ‪ :‬زير مجموعهاي از حاالت‪.‬‬
‫عملگرها‪ :‬حرکت به چپ‪ ،‬حرکت به راست‪ ،‬عمل مکش‪.‬‬
‫آزمون‌ هدف‪ :‬تمام حاالت در مجموعه حالتها فاقد خاک باشند‪.‬‬
‫هزينه مسير‪ :‬هر عمل هزينه ‪ 1‬دارد‪.‬‬
‫‪137‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مس له کشيش‌ها و آدمخوارها‪:‬‬
‫سه کشيش و سه آدم خوار در يک طرف رودخانه قرار دارند و هم چنين قايقي که قادر‬
‫است يک يا دو نفر را حمل کند‪ .‬راهي را بيابيد که هر نفر به سمت ديگر رودخانه برود‪،‬‬
‫بدون آنکه تعداد کشيشها در يکجا کمتر از آدم خوارها شود‪.‬‬
‫‪138‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حاالت‪ :‬يک حالت شامل يک دنبالة مرتب شده از عدد است که تعداد کشيشها‪ ،‬تعداد‬
‫آدمخوارها و محل قايق در ساحلي از رودخانه که از آنجا مسئله شروع شده را نمايش ميدهد‪.‬‬
‫عملگرها‪ :‬از هر حالت‪ ،‬عملگرهاي ممکن يک کشيش‪ ،‬يک آدمخوار‪ ،‬دو کشيش‪ ،‬دو آدمخوار‪،‬‬
‫يا يکي از هر کدام را در قايق جا ميدهند‪.‬‬
‫آزمون هدف‪ :‬رسيدن به حالت(‪0‬و ‪ 0‬و ‪.)0‬‬
‫هزينه مسير‪ :‬تعداد دفعات عبور از رودخانه‪.‬‬
‫‪139‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل دنياي واقعي‬
‫مسيريابي‪:‬‬
‫الگوريتمهاي مسير يابي کاربردهاي زيادي دراند‪ ،‬مانند مسيريابي در شبکههاي کامپيوتري‪،‬‬
‫سيستمهاي خودکار مسافرتي و سيستمهاي برنامهنويس ي مسافرتي هوايي‪.‬‬
‫‪140‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل فروشنده دوره گرد ‌و تور‌ ‪:‬‬
‫مسئله فروشنده دوره گرد مسئله مشهوري است که در آن هر شهر حداقل يکبار بايد مالقات‬
‫شود هدف يافتن کوتاهترين مسير است‪.‬‬
‫عالوه بر مکان عامل‪ ،‬هر حالت بايد مجموعه شهرهايي را که عامل مالقات کرده‪ ،‬نگه دارد‪.‬‬
‫عالوه بر برنامهريزي صفر براي فروشنده دورهگرد‪ ،‬اين الگوريتمها براي اعمالي نظير برنامهريزي‬
‫حرکات مته خوردکار سوراخکننده برد مدار استفاده ميشود‪.‬‬
‫‪141‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫طرح ‪: VISI‬‬
‫ابزار طراحي کمکي کامپيوتري در هر فازي از پردازش استفاده ميشود دو وظيفه بسيار مشکل‬
‫عبارتند از‪:‬‬
‫‪ Channel routing‬‬
‫‪ Cell layout‬‬
‫که بعد از اينکه ارتباطات و اتصاالت مدار کامل شد‪ ،‬اين دو قسمت انجام ميشوند‪.‬‬
‫‪142‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬‬
‫هدف طراحي مداري روي تراشه است که کمترين مساحت و طول اتصاالت و بيشترين سرعت را داشته‬
‫باشد‪.‬‬
‫‪‬‬
‫هدف قرار دادن سلولها روي تراشه به گونهاي است که آنها روي هم قرار نگيرند و بنابراين فضايي نيز براي‬
‫سيمهاي ارتباطي وجود دارد که بايد بين سلولها قرار گيرند‪.‬‬
‫‪‬‬
‫کاناليابي‪ ،‬مسير ويژهاي را براي هر سيم که از فواصل بين سلولها استفاده ميکند‪ ،‬پيدا ميکند‪.‬‬
‫‪143‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هدايت ربات‪:‬‬
‫‪ ‬يک ربات ميتواند در يک فضاي پيوسته با يک مجموعه نامحدودي از حاالت و عمليات‬
‫ممکن حرکت کند‪.‬‬
‫‪ ‬رباتهاي واقعي بايد قابليت تصحيح اشتباهات را در خواندن حسگرها و کنترل موتور‬
‫داشته باشند‪.‬‬
‫‪144‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫خط توليد خودکار‪:‬‬
‫در مسائل سرهمبندي‪ ،‬مشکل يافتن قانوني است که تکههاي چند شيئي را جمع کند‪ .‬اگر ترتيب‬
‫نادرست انتخاب شود‪ ،‬راهي نيست که بتوان قسمتهاي بعدي را بدون از نو انجام دادن‬
‫قسمتهاي قبلي‪ ،‬اضافه کرد‪.‬‬
‫کنترل يک مرحله در دنباله‪ ،‬يک مسئله جستجوي پيچيدة هندس ي است که ارتباط نزديکي با‬
‫هدايت ربات دارد‪ .‬از اين رو توليد مابعدهاي مجاز گرانترين قسمت دنباله سرهمبندي است و‬
‫استفاده از الگوريتمهاي آگاهانه براي کاهش جستجو‪ ،‬ضروري است‪.‬‬
‫‪145‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل چهارم‬
‫جست و جوي آگاهانه و اکتشاف‬
‫‪146‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬متدهاي جست و جوي آگاهانه‬
‫‪‬يادگيري براي جست و جوي بهتر‬
‫ي‬
‫‪‬جست و جوي محلي و بهينه ساز ‌‬
‫‪‬جست و جوي محلي در فضاهاي پيوسته‬
‫‪‬عاملهاي جست و جوي ‪Online‬‬
‫‪147‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫متدهاي جستجوي آگاهانه‬
‫‪‬بهترين جستجو‬
‫‪‬حريصانه‬
‫‪‬تپه نوردي‬
‫‪A*‬‬
‫‪IDA*‬‬
‫‪RBFS‬‬
‫‪‬شبيه سازي حرارت‬
‫‪‬پرتو محلي‬
‫‪ MA* ‬و*‪SMA‬‬
‫‪148‬‬
‫‪‬جستجوي محلي‬
‫بهينه سازي‬
‫‪‬الگوريتمهاي ژنتيک‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫و‬
‫جستجوي‌ بهترين‪:‬‬
‫اين استراتژي به اين صورت بيان ميشود که در يک درخت‪ ،‬زماني که گرهها مرتب ميشوند‪،‬‬
‫گرهاي که بهترين ارزيابي را داشته باشد‪ ،‬قبل از ديگر گرهها بسط داده ميشود‪.‬‬
‫ً‬
‫هدف‪ :‬يافتن راهحلهاي کمهزينه است‪ ،‬اين الگوريتمها عموما از تعدادي معيار تخمين براي‬
‫هزينه راهحلها استفاده ميکنند و سعي بر حداقل کردن آنها دارند‪.‬‬
‫‪149‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫حداقل هزينه تخمين زده شده براي رسيدن به هدف‪ :‬جستجوي‌ حريصانه‬
‫يکي از سادهترين استراتژيهاي جستجوي بهترين‪ ،‬به حداقل رساندن هزينه تخمين زده شده‬
‫براي رسيدن به هدف است‪ .‬بدين صورت که حالت گرهاي که به حالت هدف نزديکتر است‪،‬‬
‫ابتدا بسط داده ميشود‪.‬‬
‫ً‬
‫تابع کشفکننده‪ :‬هزينه رسيدن به هدف از يک حالت ويژه ميتواند تخمين زده شود اما دقيقا‬
‫تعيين نميشود‪ .‬تابعي که چنين هزينههايي را محاسبه ميکند تابع کشفکننده ‪ h‬ناميده‬
‫ميشود‪.‬‬
‫جستجوي حريصانه‪ :‬جستجوي بهترين که ‪ h‬را به منظور انتخاب گره بعدي براي بسط‬
‫استفاده ميکند‪ ،‬جستجوي حريصانه )‪ (greedy search‬ناميده ميشود‪.‬‬
‫‪150‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ويژگيهاي جستجوي حريصانه‪:‬‬
‫‪ ‬جستجوي حريصانه از لحاظ دنبال کردن يک مسير ويژه در تمام طول راه به طرف هدف‪ ،‬مانند جستجوي‬
‫عمقي است‪ ،‬اما زماني که به بنبست ميرسد‪ ،‬برميگردد‪.‬‬
‫‪ ‬اين جستجو بهينه نيست و ناکامل است‪.‬‬
‫‪ ‬پيچيدگي زماني در بدترين حالت براي جستجوي حريصانه )‪ ،O(bm‬که ‪ m‬حداکثر عمق فضاي جستجو‬
‫است‪.‬‬
‫‪ ‬جستجوي حريصانه تمام گرهها را در حافظه نگه ميدارد‪ ،‬بنابراين پيچيدگي فضاي آن مشابه پيچيدگي زماني‬
‫آن است‪.‬‬
‫‪ ‬ميزان کاهش پيچيدگي به مسئله و کيفيت تابع ‪ h‬بستگي دارد‪.‬‬
‫‪151‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫تعاريف‬
‫‪‬تابع هزينه مسير‪ : g(n) ،‬هزينه مسير از گره اوليه تا گره ‪n‬‬
‫‪‬تابع اکتشافي‪ : h(n) ،‬هزينه تخميني ارزان ترين مسير از گره ‪ n‬به گره هدف‬
‫‪‬تابع بهترين مسير‪ : h*(n) ،‬ارزان ترين مسير از گره ‪ n‬تا گره هدف‬
‫‪‬تابع ارزيابي‪ : f(n) ،‬هزينه تخميني ارزان ترين مسير از طريق ‪n‬‬
‫)‪f(n): g(n) + h(n‬‬
‫‪ : f*(n)‬هزينه ارزان ترين مسير از طريق‪n‬‬
‫‪152‬‬
‫)‪f*(n): g(n) + h*(n‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي حريصانه‬
‫‪A‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪B‬‬
‫‪C‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪G‬‬
‫‪3‬‬
‫‪3‬‬
‫‪3‬‬
‫‪Z‬‬
‫‪153‬‬
‫‪1‬‬
‫‪3‬‬
‫‪F‬‬
‫‪1‬‬
‫‪1‬‬
‫‪O‬‬
‫‪2‬‬
‫‪Y‬‬
‫‪2‬‬
‫‪2‬‬
‫‪N‬‬
‫‪2‬‬
‫‪1‬‬
‫‪M‬‬
‫‪L 3‬‬
‫‪K‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪V‬‬
‫‪U‬‬
‫‪1‬‬
‫‪X‬‬
‫‪0‬‬
‫‪W‬‬
‫‪1‬‬
‫‪2‬‬
‫‪5‬‬
‫‪E‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪1‬‬
‫‪D‬‬
‫‪3‬‬
‫‪1‬‬
‫‪I 3‬‬
‫‪3‬‬
‫‪2‬‬
‫‪3‬‬
‫‪2‬‬
‫‪T‬‬
‫‪S‬‬
‫‪2‬‬
‫‪R‬‬
‫‪2‬‬
‫‪Q‬‬
‫‪1‬‬
‫‪J‬‬
‫‪0‬‬
‫‪1‬‬
‫‪3‬‬
‫‪1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪H‬‬
‫‪2‬‬
‫‪3‬‬
‫‪P‬‬
‫‪3‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي حريصانه‬
‫‪A‬‬
‫‪2‬‬
‫‪2‬‬
‫‪3‬‬
‫‪1‬‬
‫‪C‬‬
‫‪1‬‬
‫‪1‬‬
‫‪23‬‬
‫‪‬‬
‫‪3‬‬
‫‪O‬‬
‫‪F‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪E‬‬
‫‪4‬‬
‫‪N‬‬
‫‪‬‬
‫‪1‬‬
‫‪X‬‬
‫‪0‬‬
‫‪‬‬
‫‪1‬‬
‫‪1‬‬
‫‪5‬‬
‫‪‬‬
‫‪5‬‬
‫‪154‬‬
‫‪3‬‬
‫‪G‬‬
‫‪3‬‬
‫‪B‬‬
‫‪1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪D‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي حريصانه‬
‫‪A‬‬
‫‪1‬‬
‫‪4‬‬
‫‪2‬‬
‫‪B‬‬
‫‪C‬‬
‫‪1‬‬
‫‪1‬‬
‫‪3‬‬
‫‪G‬‬
‫‪3‬‬
‫‪3‬‬
‫‪3‬‬
‫‪Z‬‬
‫‪155‬‬
‫‪1‬‬
‫‪3‬‬
‫‪F‬‬
‫‪1‬‬
‫‪1‬‬
‫‪O‬‬
‫‪2‬‬
‫‪Y‬‬
‫‪2‬‬
‫‪2‬‬
‫‪N‬‬
‫‪1‬‬
‫‪X‬‬
‫‪0‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪5‬‬
‫‪E‬‬
‫‪1‬‬
‫‪3‬‬
‫‪M‬‬
‫‪L 3‬‬
‫‪K‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪0‬‬
‫‪D‬‬
‫‪3‬‬
‫‪3‬‬
‫‪1‬‬
‫‪1‬‬
‫‪I 3‬‬
‫‪3‬‬
‫‪2‬‬
‫‪3‬‬
‫‪2‬‬
‫‪T‬‬
‫‪S‬‬
‫‪2‬‬
‫‪R‬‬
‫‪2‬‬
‫‪Q‬‬
‫‪1‬‬
‫‪J‬‬
‫‪U‬‬
‫‪V‬‬
‫‪W‬‬
‫‪1‬‬
‫‪2‬‬
‫‪1‬‬
‫‪ ) 1‬هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪H‬‬
‫‪2‬‬
‫‪3‬‬
‫‪P‬‬
‫‪3‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي حريصانه‬
‫‪A‬‬
‫‪1‬‬
‫‪4‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1 B‬‬
‫‪C‬‬
‫‪2‬‬
‫‪‬‬
‫‪3‬‬
‫‪‬‬
‫‪1‬‬
‫‪1‬‬
‫‪3‬‬
‫‪K‬‬
‫‪5‬‬
‫‪D‬‬
‫‪E‬‬
‫‪3‬‬
‫‪J‬‬
‫‪0‬‬
‫‪156‬‬
‫‪1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي حريصانه‬
‫‪‬کامل بودن‪ :‬خير‬
‫‪‬اما اگر *‪ h = h‬آنگاه جستجو کامل ميشود‬
‫‪‬بهينگي‪ :‬خير‬
‫‪‬اما اگر *‪ h = h‬آنگاه جستجو کامل ميشود‬
‫‪‬پيچيدگي زماني‪:‬‬
‫‪m‬‬
‫) ‪O(b‬‬
‫‪‬اما اگر *‪ h = h‬آنگاه ) ‪O(bd‬‬
‫‪‬پيچيدگي فضا‪:‬‬
‫) ‪O(bm‬‬
‫‪‬اما اگر *‪ h = h‬آنگاه ) ‪O(bd‬‬
‫‪157‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫ي *‪A‬‬
‫حداقل‌سازي‌ مجموع هزينه مسير‪ :‬جستجو ‌‬
‫جستجو با هزينه يکسان‪ ،‬هزينه مسير‪ g(n) ،‬را نيز حداقل ميکند‪.‬‬
‫با ترکيب دو تابع ارزيابي داريم‪:‬‬
‫)‪f(n) = g(n) + h(n‬‬
‫)‪ :g(n‬هزينه مسير از گره آغازين به گره ‪ n‬را به ما ميدهد‪.‬‬
‫)‪ :h(n‬هزينه تخمين زده شده از ارزانترين مسير از ‪ n‬به هدف است‬
‫و ما داريم‪:‬‬
‫هزينه تخمين زده شده ارزانترين راه حل از طريق ‪f(n) = n‬‬
‫‪158‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A/5‬‬
‫‪2‬‬
‫‪1‬‬
‫‪B/4‬‬
‫‪C/4‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪G/2‬‬
‫‪3‬‬
‫‪O/3‬‬
‫‪3‬‬
‫‪Z/1‬‬
‫‪159‬‬
‫‪2‬‬
‫‪Y/2‬‬
‫‪F/3‬‬
‫‪1‬‬
‫‪2‬‬
‫‪E/1‬‬
‫‪1‬‬
‫‪N/1‬‬
‫‪M/2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪W/1‬‬
‫‪V/2‬‬
‫‪X/0‬‬
‫‪1‬‬
‫‪3‬‬
‫‪L/3‬‬
‫‪D/5‬‬
‫‪3‬‬
‫‪J/1‬‬
‫‪K/0‬‬
‫‪3‬‬
‫‪U/1‬‬
‫‪3‬‬
‫‪3‬‬
‫‪T/1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪I/3‬‬
‫‪2‬‬
‫‪S/2‬‬
‫‪1‬‬
‫‪H/2‬‬
‫‪3‬‬
‫‪2‬‬
‫‪R/2‬‬
‫‪Q/1‬‬
‫‪3‬‬
‫‪P/3‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A/5‬‬
‫‪1‬‬
‫‪51‬‬
‫‪‬‬
‫‪6‬‬
‫‪C/4‬‬
‫‪‬‬
‫‪8‬‬
‫‪3‬‬
‫‪B/4‬‬
‫‪1‬‬
‫‪1‬‬
‫‪42‬‬
‫‪2‬‬
‫‪G/2‬‬
‫‪5‬‬
‫‪F/3‬‬
‫‪1‬‬
‫‪3‬‬
‫‪O/3‬‬
‫‪N/1 4‬‬
‫‪1‬‬
‫‪X/0‬‬
‫‪160‬‬
‫‪4‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A/5‬‬
‫‪2‬‬
‫‪1‬‬
‫‪B/1‬‬
‫‪C/4‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪G/2‬‬
‫‪3‬‬
‫‪O/3‬‬
‫‪3‬‬
‫‪Z/1‬‬
‫‪161‬‬
‫‪2‬‬
‫‪Y/2‬‬
‫‪F/3‬‬
‫‪1‬‬
‫‪2‬‬
‫‪E/1‬‬
‫‪1‬‬
‫‪N/1‬‬
‫‪M/2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪W/1‬‬
‫‪V/2‬‬
‫‪X/0‬‬
‫‪1‬‬
‫‪3‬‬
‫‪L/3‬‬
‫‪D/5‬‬
‫‪3‬‬
‫‪J/1‬‬
‫‪K/0‬‬
‫‪3‬‬
‫‪U/1‬‬
‫‪3‬‬
‫‪3‬‬
‫‪T/1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪I/3‬‬
‫‪2‬‬
‫‪S/2‬‬
‫‪1‬‬
‫‪H/2‬‬
‫‪3‬‬
‫‪2‬‬
‫‪R/2‬‬
‫‪Q/1‬‬
‫‪3‬‬
‫‪P/3‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A/5‬‬
‫‪1‬‬
‫‪53‬‬
‫‪‬‬
‫‪‬‬
‫‪8‬‬
‫‪3‬‬
‫‪3B/1‬‬
‫‪C/4‬‬
‫‪1‬‬
‫‪1‬‬
‫‪44‬‬
‫‪2‬‬
‫‪1‬‬
‫‪5‬‬
‫‪F/3‬‬
‫‪G/2‬‬
‫‪1‬‬
‫‪2‬‬
‫‪4‬‬
‫‪‬‬
‫‪3‬‬
‫‪1‬‬
‫‪8‬‬
‫‪D/5‬‬
‫‪E/1‬‬
‫‪3‬‬
‫‪5‬‬
‫‪O/3‬‬
‫‪N/1 4‬‬
‫‪K/0 6‬‬
‫‪J/1‬‬
‫‪1‬‬
‫‪X/0‬‬
‫‪162‬‬
‫‪4‬‬
‫‪1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪7‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A/5‬‬
‫‪2‬‬
‫‪1‬‬
‫‪B/1‬‬
‫‪C/9‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪G/2‬‬
‫‪3‬‬
‫‪O/3‬‬
‫‪3‬‬
‫‪Z/1‬‬
‫‪163‬‬
‫‪2‬‬
‫‪Y/2‬‬
‫‪F/3‬‬
‫‪1‬‬
‫‪2‬‬
‫‪E/1‬‬
‫‪1‬‬
‫‪N/1‬‬
‫‪M/2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪W/1‬‬
‫‪V/2‬‬
‫‪X/0‬‬
‫‪1‬‬
‫‪3‬‬
‫‪L/3‬‬
‫‪D/5‬‬
‫‪3‬‬
‫‪J/1‬‬
‫‪K/0‬‬
‫‪3‬‬
‫‪U/1‬‬
‫‪3‬‬
‫‪3‬‬
‫‪T/1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪I/3‬‬
‫‪2‬‬
‫‪S/2‬‬
‫‪1‬‬
‫‪H/2‬‬
‫‪3‬‬
‫‪2‬‬
‫‪R/2‬‬
‫‪Q/1‬‬
‫‪3‬‬
‫‪P/3‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A/5‬‬
‫‪1‬‬
‫‪10‬‬
‫‪2‬‬
‫‪ B/1‬‬
‫‪3‬‬
‫‪C/9‬‬
‫‪2‬‬
‫‪4‬‬
‫‪‬‬
‫‪3‬‬
‫‪‬‬
‫‪K/0‬‬
‫‪1‬‬
‫‪8‬‬
‫‪D/5‬‬
‫‪3‬‬
‫‪J/1‬‬
‫‪6‬‬
‫‪164‬‬
‫‪1‬‬
‫‪E/1‬‬
‫‪3‬‬
‫‪1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪‬کامل بودن‪ :‬بله‬
‫‪‬بهينگي‪ :‬بله‬
‫‪‬پيچيدگي زماني‪:‬‬
‫) ‪O(bm‬‬
‫‪‬اما اگر *‪ h = h‬آنگاه‬
‫) ‪O(bd‬‬
‫‪‬پيچيدگي فضا‪:‬‬
‫) ‪O(bm‬‬
‫‪‬اما اگر *‪ h = h‬آنگاه ) ‪O(bd‬‬
‫‪165‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A‬‬
‫‪1‬‬
‫‪C 4‬‬
‫‪1‬‬
‫‪0‬‬
‫‪A‬‬
‫‪1‬‬
‫‪1‬‬
‫‪3 B‬‬
‫‪1‬‬
‫‪C 2‬‬
‫‪1‬‬
‫‪166‬‬
‫‪1 B‬‬
‫‪1‬‬
‫‪E 1‬‬
‫‪2 D‬‬
‫‪E 1‬‬
‫‪1 D‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪G‬‬
‫‪1 F‬‬
‫‪0‬‬
‫‪G‬‬
‫‪1‬‬
‫*‪h ≤/ h‬‬
‫‪1‬‬
‫‪0 H‬‬
‫*‪h ≤ 4h‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪- 3 - 2 - 1‬‬
‫‪1 F‬‬
‫‪1‬‬
‫‪0 H‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪A‬‬
‫‪A‬‬
‫‪1‬‬
‫‪C 4‬‬
‫‪1‬‬
‫‪E 1‬‬
‫‪1‬‬
‫‪0‬‬
‫‪G‬‬
‫‪A‬‬
‫‪1‬‬
‫‪1‬‬
‫‪B‬‬
‫‪1‬‬
‫‪3‬‬
‫‪1‬‬
‫‪4‬‬
‫‪‬‬
‫‪C 2‬‬
‫‪1‬‬
‫‪2‬‬
‫‪2‬‬
‫‪D‬‬
‫‪1‬‬
‫‪F‬‬
‫‪1‬‬
‫‪E‬‬
‫‪1‬‬
‫‪1‬‬
‫‪3‬‬
‫‪0‬‬
‫‪5‬‬
‫‪6‬‬
‫‪G‬‬
‫‪1‬‬
‫‪4‬‬
‫‪0 H‬‬
‫‪‬‬
‫*‪h ≤/ h‬‬
‫‪167‬‬
‫*‪h ≤ 4h‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪- 3 - 2 - 1‬‬
‫‪1‬‬
‫‪1‬‬
‫‪B‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪1‬‬
‫‪D‬‬
‫‪1‬‬
‫‪F‬‬
‫‪3‬‬
‫‪1‬‬
‫‪1‬‬
‫‪0 H‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫ي‬
‫جستجوي *‪ A‬و اجتناب از گره هاي تکرار ‌‬
‫‪A/100‬‬
‫‪10‬‬
‫‪D/90‬‬
‫‪I/87‬‬
‫‪V/83‬‬
‫‪C/95‬‬
‫‪M/75‬‬
‫‪U/81‬‬
‫‪P/79‬‬
‫‪T/60‬‬
‫‪O/78‬‬
‫‪X/58‬‬
‫‪G/90‬‬
‫‪W/52‬‬
‫‪Z/50‬‬
‫هزينه هر مرحله ‪ 10‬ميباشد‬
‫‪168‬‬
‫‪B/80‬‬
‫‪L/80‬‬
‫‪F/78‬‬
‫‪K/85‬‬
‫‪N/72‬‬
‫‪Y/47‬‬
‫‪R/20‬‬
‫‪Q/0‬‬
‫‪E/86‬‬
‫‪T/60‬‬
‫‪X/58‬‬
‫‪M/75‬‬
‫‪S/70‬‬
‫‪W/52‬‬
‫‪- 3 Z/50‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪- 2 - 1‬‬
‫‪Y/47 4‬‬
‫‪P/79‬‬
‫‪O/78‬‬
‫‪J/82‬‬
‫‪H/80‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫ي‬
‫جستجوي *‪ A‬و اجتناب از گره هاي تکرار ‌‬
‫‪A/100‬‬
‫‪8‬‬
‫‪‬‬
‫‪3‬‬
‫‪‬‬
‫‪100 D/90‬‬
‫‪105 C/95‬‬
‫‪B/80 90‬‬
‫‪I/87 107‬‬
‫‪T/60 80‬‬
‫‪‬‬
‫‪F/78 98‬‬
‫‪G/90 110‬‬
‫‪5‬‬
‫‪P/79‬‬
‫‪O/78‬‬
‫‪109‬‬
‫‪108‬‬
‫‪88 X/58‬‬
‫‪‬‬
‫‪N/72 102‬‬
‫‪82 W/52‬‬
‫‪6‬‬
‫‪‬‬
‫‪T/60 100‬‬
‫‪9‬‬
‫‪‬‬
‫‪87 Y/47‬‬
‫‪Z/50 90‬‬
‫‪S/70 110‬‬
‫‪7‬‬
‫‪169‬‬
‫‪‬‬
‫‪2‬‬
‫‪4‬‬
‫‪‬‬
‫‪95 M/75‬‬
‫‪1‬‬
‫‪R/20‬‬
‫‪Q/0‬‬
‫‪70‬‬
‫‪50‬‬
‫‪10‬‬
‫‪‬‬
‫‪X/58 108‬‬
‫‪‬‬
‫‪102 W/52‬‬
‫‪- 3 Z/50‬‬
‫‪-2-1‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک(‬
‫‪110‬‬
‫‪107 Y/47 4‬‬
‫‪‬‬
‫‪M/75 105‬‬
‫‪106 E/86‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫مثال ديگر از جستجوي *‪A‬‬
‫)‪f(n)=g(n) + h(n‬‬
‫‪170‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪ A‬در نقشه روماني‬
‫جستجوي ‪ Bucharest‬با شروع از ‪Arad‬‬
‫‪f(Arad) = g(Arad)+h(Arad)=0+366=366‬‬
‫‪171‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪ A‬در نقشه روماني‬
‫ََ‌‪ Arad‬را باز کرده و )‪ f(n‬را براي هر يک از زيربرگها محاسبه ميکنيم‪:‬‬
‫‪f(Sibiu)=c(Arad,Sibiu)+h(Sibiu)=140+253=393‬‬
‫‪f(Timisoara)=c(Arad,Timisoara)+h(Timisoara)=118+329=447‬‬
‫‪f(Zerind)=c(Arad,Zerind)+h(Zerind)=75+374=449‬‬
‫بهترين انتخاب شهر ‪ Sibiu‬است‬
‫‪172‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫ در نقشه روماني‬A* ‫جستجوي‬
:‫ را براي هر يک از زيربرگها محاسبه ميکنيم‬f(n) ‫ را باز کرده و‬Sibiu‌ََ
f(Arad)=c(Sibiu,Arad)+h(Arad)=280+366=646
f(Fagaras)=c(Sibiu,Fagaras)+h(Fagaras)=239+179=415
f(Oradea)=c(Sibiu,Oradea)+h(Oradea)=291+380=671
f(Rimnicu Vilcea)=c(Sibiu,Rimnicu Vilcea)+ h(Rimnicu Vilcea)=220+192=413
‫ است‬Rimnicu Vilcea ‫بهترين انتخاب شهر‬
4 - 3 - 2 - 1 (‫ نورویک‬- ‫) هوش مصنوعی راسل‬
173
‫جست و جوي آگاهانه و اکتشاف‬
‫ در نقشه روماني‬A* ‫جستجوي‬
:‫ را براي هر يک از زيربرگها محاسبه ميکنيم‬f(n) ‫ را باز کرده و‬Rimnicu Vilcea‌ََ
f(Craiova)=c(Rimnicu Vilcea, Craiova)+h(Craiova)=360+160=526
f(Pitesti)=c(Rimnicu Vilcea, Pitesti)+h(Pitesti)=317+100=417
f(Sibiu)=c(Rimnicu Vilcea,Sibiu)+h(Sibiu)=300+253=553
‫ است‬Fagaras ‫بهترين انتخاب شهر‬
4 - 3 - 2 - 1 (‫ نورویک‬- ‫) هوش مصنوعی راسل‬
174
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪ A‬در نقشه روماني‬
‫ََ ‪ Fagaras‬را باز کرده و )‪ f(n‬را براي هر يک از زيربرگها محاسبه ميکنيم‪:‬‬
‫‪f(Sibiu)=c(Fagaras, Sibiu)+h(Sibiu)=338+253=591‬‬
‫‪f(Bucharest)=c(Fagaras,Bucharest)+h(Bucharest)=450+0=450‬‬
‫‪175‬‬
‫شهر‬
‫انتخاب‬
‫است ‪4 -‬‬
‫‪3 - 2 -Pitesti‬‬
‫!!!‪ -‬نورویک( ‪1‬‬
‫راسل‬
‫مصنوعی‬
‫بهترين هوش‬
‫)‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪ A‬در نقشه روماني‬
‫ََ ‪ Pitesti‬را باز کرده و )‪ f(n‬را براي هر يک از زيربرگها محاسبه ميکنيم‪:‬‬
‫‪f(Bucharest)=c(Pitesti,Bucharest)+h(Bucharest)=418+0=418‬‬
‫‪176‬‬
‫است‬
‫بهترين انتخاب شهر !!! ‪Bucharest‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي *‪ A‬در نقشه روماني‬
‫‪177‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫کشف‌کنندگي قابل قبو ‌ل‪:‬‬
‫تابع ‪h‬اي را که هزينهاي بيش از تخمين براي رسيدن به هدف نداشته باشد‪ ،‬يک کشفکنندگي‬
‫قابل قبول )‪ (admissible heuristic‬گويند‪.‬‬
‫جستجوي‌ *‪:A‬‬
‫جستجوي بهترين که ‪ f‬به عنوان تابع ارزياب و يک تابع ‪ h‬قابل قبول استفاده ميکند‪ ،‬به عنوان‬
‫جستجوي *‪ A‬شناخته ميشود‪.‬‬
‫‪178‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫فتار جستجوي‌ *‪A‬‬
‫ر ‌‬
‫نگاهي گذرا به اثبات کامل و بهينه بودن *‪:A‬‬
‫مشاهده مقدماتي‪:‬‬
‫ً‬
‫تقريبا تمام کشفکنندگيهاي مجاز داراي اين ويژگي هستند که در طول هر مسيري از ريشه‪،‬‬
‫هزينه ‪ f‬هرگز کاهش پيدا نميکند‪.‬‬
‫اين خاصيت براي کشفکنندگي‪ ،‬خاصيت يکنوايي )‪ (monotonicity‬گفته ميشود‪.‬‬
‫اگر يکنوا نباشد‪ ،‬با ايجاد يک اصالح جزئي آن را يکنوا ميکنيم‪.‬‬
‫‪179‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫بنابراين هر گره جديدي که توليد ميشود‪ ،‬بايد کنترل کنيم که آيا هزينة ‪ f‬اين گره از هزينه ‪f‬‬
‫پدرش کمتر است يا خير‪ .‬اگر کمتر باشد‪ ،‬هزينة ‪ f‬پدر به جاي فرزند مينشيند‪:‬‬
‫بنابراين‪:‬‬
‫‪ f‬هميشه در طول هر مسيري از ريشه غيرکاهش ي خواهد بود‪ ،‬مشروط بر اينکه ‪ h‬امکانپذير‬
‫باشد‪.‬‬
‫‪180‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫)‪ :h*(n‬هزينه واقعي رسيدن از ‪ n‬به هدف است‪.‬‬
‫در استفاده عملي‪ ،‬خطاها با هزينه مسير متناسب هستند‪ ،‬و سرانجام رشد نمايي هر کامپيوتر‬
‫را تسخير ميکند‪ .‬البته‪ ،‬استفاده از يک کشفکنندگي خوب هنوز باعث صرفهجويي زيادي‬
‫نسبت به جستجوي ناآگاهانه ميشود‪.‬‬
‫ً‬
‫*‪ A‬معموال قبل از اينکه دچار کمبود زمان شود‪ ،‬دچار کمبود فضا ميشود‪ .‬زيرا اين جستجو‬
‫تمام گرههاي توليد شده را در حافظه ذخيره ميکند‪.‬‬
‫‪181‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جستجوي‌ اکتشافي با حافظه محدود *‪IDA‬‬
‫‪‬ساااده تاارين راه باراي کاااهش حافظااه مااورد نياااز *‪ A‬اسااتفاده از عميااق کننااده تکارار در زمينااه‬
‫جست و جوي اکتشافي است‪.‬‬
‫‪‬الگوريتم عميق کننده تکرار *‪A‬‬
‫*‪IDA‬‬
‫‪‬در جستجوي *‪ IDA‬مقدار برش مورد استفاده‪ ،‬عمق نيست بلکه هزينه )‪ f(g+h‬است‪.‬‬
‫‪ IDA*‬براي اغلب مسئله هاي با هزيناه هااي مرحلاه اي‪ ،‬مناساب اسات و از ساربار ناشا ي از‬
‫نگهداري صف مرتبي از گره ها اجتناب ميکند‬
‫‪182‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫بهترين جستجوي‌ بازگشتي ‪RBFS‬‬
‫‪‬ساااختار آن شاابيه جساات و جااوي عمقااي بازگشااتي اساات‪ ،‬امااا بااه جاااي اينکااه دائمااا بااه طاارف‬
‫پ ااايين مس ااير حرک اات کن ااد‪ ،‬مق اادار ‪ f‬مرب ااوط ب ااه بهت اارين مس ااير از ه اار ج ااد گ ااره فعل ااي را نگه ااداري‬
‫ميکنااد‪ ،‬اگاار گااره فعلااي از اياان حااد تجاااوز کنااد‪ ،‬بازگشااتي بااه عقااب برميگااردد تااا مسااير ديگااري را‬
‫انتخاب کند‪.‬‬
‫‪‬اين جستجو اگر تابع اکتشافي قابل قبولي داشته باشد‪ ،‬بهينه است‪.‬‬
‫‪‬پيچيدگي فضايي آن )‪ O(bd‬است‬
‫‪‬تعيين پيچيدگي زماني آن به دقات تاابع اکتشاافي و ميازان تغييار بهتارين مساير در اثار بساط گاره‬
‫ها بستگي دارد‪.‬‬
‫‪183‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫بهترين جستجوي‌ بازگشتي ‪RBFS‬‬
‫‪ RBFS‬تا حدي از *‪ IDA‬کارآمدتر است‪ ،‬اما گره هاي زيادي توليد ميکند‪.‬‬
‫‪ IDA* ‬و ‪ RBFS‬در مع اارز اف ازايش ت ااواني پيچي اادگي ق ارار دارن ااد ک ااه در جس اات و ج ااوي‬
‫گرافها مرسوم است‪ ،‬زيرا نميتوانند حالتهاي تکاراري را در غيار از مساير فعلاي بررسا ي کنناد‪ .‬لاذا‪،‬‬
‫ممکن است يک حالت را چندين بار بررس ي کنند‪.‬‬
‫‪ IDA* ‬و ‪ RBFS‬از فضاااي اناادکي اسااتفاده ميکننااد کااه بااه آنهااا آساايب ميرساااند‪IDA* .‬‬
‫بااين هاار تک ارار فقااط يااک عاادد را نگهااداري ميکنااد کااه فعلااي هزينااه ‪ f‬اساات‪ RBFS .‬اطالعااات‬
‫بيشتري در حافظه نگهداري ميکند‬
‫‪184‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫يادگيري براي جست و جوي بهتر‬
‫‪‬روشهاي جست و جوي قبلي‪ ،‬از روشهاي ثابت استفاده ميکردند‪.‬‬
‫‪‬عامل با استفاده از فضاي حالت فراسطحي ميتواند ياد بگيرد که بهتر جست و جو کند‬
‫‪‬هاار حال اات در فض ــاي حال ــت ف ــرا س ــطحي‪ ،‬حالاات(محاس ااباتي) داخلا ِاي برنام ااه اي را تس ااخير‬
‫ميکند که فضاي حالت سطح ش يء‪ ،‬مثل روماني را جست و جو ميکند‬
‫‪‬الگااوريتم يــادگيري فراســطحي ميتوانااد چيزهااايي را از تجربيااات بياااموزد تااا زيردرختهاااي غياار‬
‫قابل قبول را کاوش نکند‪.‬‬
‫‪‬هدف يادگيري‪ ،‬کمينه کردن کل هزينه‪ ،‬حل مسئله است‬
‫‪185‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫توابع اکتشافي‬
‫‪‬مثال براي معماي‪8‬‬
‫ميانگين هزينه حل تقريبا ‪ 22‬مرحله و فاکتور انشعاب در حدود ‪ 3‬است‪.‬‬
‫‪ِ ‬‬
‫‪‬جست و جوي جامع تا عمق ‪322  3.11010 : 22‬‬
‫‪‬با انتخاب يک تابع اکتشافي مناسب ميتوان مراحل جستجو را کاهش داد‬
‫‪186‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫دو روش اکتشافي متداول براي معماي‪8‬‬
‫تعداد کاشيها در مکانهاي نادرست‬
‫در حالت شروع‬
‫‪h1 ‬‬
‫‪h1  8‬‬
‫‪h1‬اکتشاف قابل قبولي است‪ ،‬زيـرا هـر کاشـ ي‬
‫که در جاي نامناسبي قرار دارد‪ ،‬حداقل يکبار‬
‫بايد جابجا شود‬
‫‪187‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫دو روش اکتشافي متداول براي معماي‪8‬‬
‫مجموعه فواصل کاشيها از موقعيتهاي هدف آنها‬
‫در حالت شروع‬
‫‪h2 ‬‬
‫‪h2  3  1  2  2  2  3  3  2  18‬‬
‫‪188‬‬
‫چااون کاشاانها نميتواننااد در امتااداد قطاار جااا بااه جااا شااوند‪,‬‬
‫فاصااله اي کااه محاساابه ميکناايم مجمااوع فواصاال افقاي و‬
‫عم ا ااودي اس ا اات‪ .‬اي ا اان فاص ا االه را فاص ا االه بل ـ ــوک ش ـ ــهر ي ا ااا‬
‫فاصله مانهاتان مينامند‪.‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫دو روش اکتشافي متداول براي معماي‪8‬‬
‫مجموعه فواصل کاشيها از موقعيتهاي هدف آنها‬
‫‪h2 ‬‬
‫‪ h2‬قابا اال قبا ااول اسا اات‪ ،‬زي ا ارا ها اار جابجا ااايي کا ااه ميتوانا ااد‬
‫انجا ااام گيا اارد‪ ،‬با ااه انا اادازه يا ااک مرحلا ااه با ااه ها اادف نزديا ااک‬
‫ميشود‪.‬‬
‫هيچ کدام از اين برآوردها‪ ،‬هزينه واقعي راه حل نيست‬
‫هزينه واقعي ‪ 36‬است‬
‫‪189‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫اثر دقت اکتشاف بر کارايي‬
‫‪‬فاکتور انشعاب مؤثر *‪b‬‬
‫‪‬اگاار تعااداد گااره هااايي کااه باراي يااک مساائله خاااص توسااط *‪ A‬توليااد ميشااود براباار بااا ‪ N‬و عمااق راه حاال‬
‫برابر با ‪ d‬باشد‪ ،‬آن گاه *‪ b‬فاکتور انشعابي اسات کاه درخات يکناواختي باه عماق ‪ d‬باياد داشاته باشاد تاا‬
‫حاوي ‪ N+1‬گره باشد‬
‫)*‪N  1  b * (b*)  ...  (b‬‬
‫‪d‬‬
‫‪2‬‬
‫ً‬
‫‪‬فاکتور انشعاب مؤثر معموال براي مس له هاي سخت ثابت است‬
‫‪‬اناادازه گيراهاااي تجربااي *‪ b‬باار روي مجموعااه کااوچکي از مساائله هااا ميتوانااد راهنمــاي خــوبي بــراي مفيــد‬
‫بودن اکتشاف باشد‬
‫‪‬مقدار *‪ b‬در اکتشافي با طراحي خوب‪ ،‬نزديک ‪ 1‬است‬
‫‪190‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫اثر دقت اکتشاف بر کارايي‬
‫فاکتور انشعاب مؤثر‬
‫هزينه جست و جو‬
‫ميانگين گره هاي بسط يافته در جستجوي‌‪ IDS‬و *‪ A‬و فاکتور‬
‫انشعاب مؤثر با استفاده از‪ h1‬و ‪h2‬‬
‫‪191‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪ITERSTIVE‬‬
‫‪DEEPING‬‬
‫‪SEARCH‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫اثر دقت اکتشاف بر کارايي‬
‫‪‬اگر براي هر گره ‪ n‬داشته باشيم‪h2(n) >= h1(n) :‬‬
‫‪ h2‬بر ‪h1‬غالب است‬
‫‪‬غالب بودن مستقيما به کارايي ترجمه ميشود‬
‫‪‬تعداد گره هايي که با بکارگيري ‪ h2‬بسط داده ميشود‪ ،‬هرگز بيش از بکارگيري ‪ h1‬نيست‬
‫هميشه بهتر است از تابع اکتشافي با مقادير بزرگ استفاده‬
‫کرد‪ ،‬به شرطي که زمان محاسبه اکتشاف‪ ،‬خيلي بزرگ‬
‫نباشد‬
‫‪192‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫الگوريتم هاي جست و جوي محلي و بهينه سازي‌‬
‫‪‬الگوريتم هاي قبلي‪ ،‬فضاي جست و جو را به طور سيستماتيک بررس ي ميکنند‬
‫‪‬تا رسيدن به هدف يک يا چند مسير نگهداري ميشوند‬
‫‪‬مسير رسيدن به هدف‪ ،‬راه حل مسئله را تشکيل ميدهد‬
‫‪‬در الگوريتم هاي محلي مسير رسيدن به هدف مهم نيست‬
‫‪‬مثال‪ :‬مسئله ‪ 8‬وزير‬
‫‪‬دو امتياز عمده جست و جوهاي محلي‬
‫‪‬استفاده از حافظه کمکي‬
‫‪‬ارائه راه حلهاي منطقي در فضاهاي بزرگ و نامتناهي‬
‫‪‬اين الگوريتمها براي حل مسائل بهينه سازي نيز مفيدند‬
‫‪193‬‬
‫‪‬يافتن بهترين حالت بر اساس تابع هدف‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫الگوريتم هاي جست و جوي محلي و بهينه سازي‌‬
‫‪194‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جست و جوي تپه نوردي‬
‫‪hill climbing search‬‬
‫‪‬حلقه اي که در جهت افزايش مقدار حرکت ميکند(بطرف باالي تپه)‬
‫‪‬رسيدن به بلندترين قله در همسايگي حالت فعلي‪ ،‬شرط خاتمه است‪.‬‬
‫‪‬ساختمان داده گره فعلي‪ ،‬فقط حالت و مقدار تابع هدف را نگه ميدارد‬
‫‪‬جست و جوي محلي حريصانه نيز نام دارد‬
‫‪‬بدون فکر قبلي حالت همسايه خوبي را انتخاب ميکند‬
‫‪‬تپه نوردي به داليل زير ميتواند متوقف شود‪:‬‬
‫‪195‬‬
‫‪‬بيشينه محلي‬
‫‪‬برآمدگي ها‬
‫‪‬فالت‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جست و جوي تپه نوردي‬
‫‪‬انواع تپه نوردي‪:‬‬
‫‪‬تپه نوردي غيرقطعي‪ ،‬تپه نوردي اولين انتخاب‪ ،‬تپه نوردي شروع مجدد تصادفي‬
‫مثال‪ :‬مس له ‪ 8‬وزير‬
‫‪‬مسئله ‪ 8‬وزير با استفاده از فرمولبندي حالت کامل‬
‫‪‬در هر حالت ‪ 8‬وزير در صفحه قرار دارند‬
‫‪‬تابع جانشين‪ :‬انتقال يک وزير به مربع ديگر در همان ستون‬
‫‪‬تابع اکتشاف‪ :‬جفت وزيرهايي که نسبت به هم گارد دارند‬
‫‪196‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫ب‬
‫مثال جست و جوي تپه نوردي‬
‫الف‪ -‬حالت با هزينه ‪ h=17‬که مقدار ‪ h‬را براي هر جانشين نشان ميدهد‬
‫ب‪ -‬کمينه محلي در فضاي حالت ‪ 8‬وزير؛ ‪h=1‬‬
‫‪197‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫الف‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جست و جوي شبيه سازي حرارت‬
‫‪Simulated annealing‬‬
‫‪‬تپه نوردي مرکب با حرکت تصادفي‬
‫‪‬شبيه سازي حرارت‪ :‬حرارت با درجه باال و به تدريج سرد کردن‬
‫‪‬مقايسه با حرکت توپ‬
‫‪‬توپ در فرود از تپه به عميق ترين شکاف ميرود‬
‫‪‬با تکان دادن سطح توپ از بيشينه محلي خارج ميشود‬
‫‪‬با تکان شديد شروع(دماي زياد)‬
‫‪‬بتدريج تکان کاهش(به دماي پايين تر)‬
‫‪‬با کاهش زمانبندي دما به تدريج‪ ،‬الگوريتم يک بهينه عمومي را مي يابد‬
‫‪‬گير افتادن در ماکزيمم محلی ‪ :‬حرکت به چند گام قبل برای فرار از ماکزيمم محلی‬
‫‪198‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫جست و جوي پرتو محلي‬
‫‪‬به جاي يک حالت‪ k ،‬حالت را نگهداري ميکند‬
‫‪‬حالت اوليه‪ k :‬حالت تصادفي‬
‫‪‬گام بعد‪ :‬جانشين همه ‪ k‬حالت توليد ميشود‬
‫‪‬اگر يکي از جانشين ها هدف بود‪ ،‬تمام ميشود‬
‫‪‬وگر نه بهترين جانشين را انتخاب کرده‪ ،‬تکرار ميکند‬
‫‪‬تفاوت عمده با جستجوي شروع مجدد تصادفي‬
‫‪‬در جست و جوي شروع مجدد تصادفي‪ ،‬هر فرايند مستقل از بقيه اجرا ميشود‬
‫‪‬در جست و جوي پرتو محلي‪ ،‬اطالعات مفيدي بين ‪ k‬فرايند موازي مبادله ميشود‬
‫‪‬جست و جوي پرتو غيرقطعي‬
‫‪‬به جاي انتخاب بهترين ‪ k‬از جانشينها‪ k ،‬جانشين تصادفي را بطوريکه احتمال انتخاب يکي تابعي صعودي از‬
‫مقدارش باشد‪ ،‬انتخاب ميکند‬
‫‪199‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫الگوريتم هاي ژنتيک‬
‫ش ا ا ا ا ا ااکلي از جس ا ا ا ا ا اات و‬
‫ج ااوي پرت ااو غي اار قطع ااي‬
‫ک ااه حالته اااي جانش ااين‬
‫از طريا ا ا ا ااق ترکيا ا ا ا ااب دو‬
‫حال ا ا ا اات وال ا ا ا ااد تولي ا ا ا ااد‬
‫ميشود‬
‫‪200‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جست و جوي آگاهانه و اکتشاف‬
‫الگوريتم هاي ژنتيک‬
‫‪201‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل پنجم‬
‫مسائل ارضاي محدوديت‬
‫‪202‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬ارضاي محدوديت چيست؟‬
‫‪‬جست و جوي عقبگرد براي ‪CSP‬‬
‫‪‬بررس ي پيشرو‌‬
‫‪‬پخش محدوديت‬
‫‪203‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫ارضاي محدوديت (‪ )CSP‬چيست؟‬
‫‪‬مجموعه متناهي از متغيرها؛ ‪X1, X2, …, Xn‬‬
‫‪‬مجموعه متناهي از محدوديتها؛ ‪C1, C2, …, Cm‬‬
‫‪‬دامنه هاي ناتهي براي هر يک از متغيرها؛ ‪DX1,DX2,…,DXn‬‬
‫‪‬هر محدوديت ‪ Ci‬زيرمجموعه اي از متغيرها و ترکيبهاي ممکني از مقادير براي آن زيرمجموعه ها‬
‫‪‬هر حالت با انتساب مقاديري به چند يا تمام متغيرها تعريف ميشود‬
‫‪‬انتسابي که هيچ محدوديتي را نقض نکند‪ ،‬انتساب سازگار نام دارد‬
‫‪‬انتساب کامل آن است که هر متغيري در آن باشد‬
‫‪ ‬راه حل ‪ CSP‬يک انتساب کامل است اگر تمام محدوديتها را برآورده کند‬
‫‪‬بعض ي از ‪CSP‬ها به راه حلهايي نياز دارند که تابع هدف را بيشينه کنند‬
‫‪204‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال ‪ :CSP‬رنگ آميزي نقشه‬
‫متغيرها‪WA, NT, Q, NSW, V, SA, T :‬‬
‫دامنه‪{ :‬آبي‪ ،‬سبز‪ ،‬قرمز} = ‪Di‬‬
‫محدوديتها‪ :‬دو منطقه مجاور‪ ،‬همرنگ نيستند‬
‫مثال‪ WA ≠ NT :‬يعني )‪ (WA,NT‬عضو‬
‫{(قرمز‪,‬سبز(‪),‬قرمز‪,‬آبي(‪),‬سبز‪,‬قرمز)‪،‬‬
‫(سبز‪,‬آبي(‪),‬آبي‪,‬قرمز(‪),‬آبي‪,‬سبز)}‬
‫‪205‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫راه حل انتساب مقاديري است که محدوديتها را ارضا کند‬
‫‪206‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫گراف محدوديت‬
‫‪‬در گراف محدوديت‪:‬‬
‫‪‬گره ها‪ :‬متغيرها‬
‫‪‬يالها‪ :‬محدوديتها‬
‫‪‬گراف براي ساده تر کردن‬
‫جست و جو بکار ميرود‬
‫‪207‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال ‪ :CSP‬رمزنگاري‬
‫متغيرها‪F,T,U,W,R,O,X1,X2,X3:‬‬
‫محدوديتها‪ F,T,U,R,O,W :‬مخالفند‬
‫‪208‬‬
‫دامنه‪9{:‬و‪8‬و‪7‬و‪6‬و‪5‬و‪4‬و‪3‬و‪2‬و‪1‬و‪}0‬‬
‫‪... - O+O=R+10.X1 -‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫‪‬نمايش حالتها در ‪ CSP‬از الگوي استانداردي پيروي ميکند‬
‫‪‬براي ‪ CSP‬ميتوان فرمول بندي افزايش ي ارائه کرد‪:‬‬
‫‪‬حالت اوليه‪ :‬انتساب خالي{} که در آن‪ ،‬هيچ متغيري مقدار ندارد‬
‫‪‬تابع جانشين‪ :‬انتساب يک مقدار به هر متغير فاقد مقدار‪ ،‬به شرطي که با‬
‫متغيرهايي که قبال مقدار گرفتند‪ ،‬متضاد نباشند‬
‫‪‬آزمون هدف‪ :‬انتساب فعلي کامل است‬
‫‪‬هزينه مسير‪ :‬هزينه ثابت براي هر مرحله‬
‫‪209‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫جست و جوي عقبگرد براي ‪CSP‬‬
‫‪‬جست و جوي عمقي‬
‫‪‬انتخاب مقادير يک متغير در هر زمان و عقبگرد در صورت عدم وجود‬
‫مقداري معتبر براي انتساب به متغير‬
‫‪‬يک الگوريتم ناآگاهانه است‬
‫‪‬براي مسئله هاي بزرگ کارآمد نيست‬
‫‪210‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال جست و جوي عقبگرد براي ‪CSP‬‬
‫‪211‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال جست و جوي عقبگرد براي ‪CSP‬‬
‫‪212‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال جست و جوي عقبگرد براي ‪CSP‬‬
‫‪213‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال جست و جوي عقبگرد براي ‪CSP‬‬
‫‪214‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مقادير باقيمانده کمينه(‪)MRV‬‬
‫‪‬انتخاب متغيري با کمترين مقادير معتبر‬
‫‪‬متغيري انتخاب ميشود که به احتمال زياد‪ ،‬بزودي با شکست مواجه شده و درخت‬
‫جست و جو را هرس ميکند‬
‫‪215‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫اکتشاف درجه اي‬
‫‪‬سعي ميکند فاکتور انشعاب را در انتخاب آينده کم کند‬
‫‪‬متغيري انتخاب ميکند که در بزرگترين محدوديتهاي مربوط به متغيرهاي بدون انتساب‬
‫قرار دارد‬
‫‪216‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫اکتشاف مقداري باکمترين محدوديت‬
‫‪‬اين روش مقداري را ترجيح ميدهد که در گراف محدوديت‪ ،‬متغيرهاي همسايه به ندرت‬
‫آن را انتخاب ميکنند‬
‫‪‬سعي بر ايجاد بيشترين قابليت انعطاف براي انتساب بعدي متغيرها‬
‫‪217‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫بررس ي پيشرو‬
‫وقتي انتساب به ‪ X‬صورت ميگيرد‪ ،‬فرايند بررس ي پيشرو‪ ،‬متغيرهاي بدون‬
‫انتساب مثل ‪ Y‬را در نظر ميگيرد که از طريق يک محدوديت به ‪ X‬متصل‬
‫است و هر مقداري را که با مقدار انتخاب شده براي ‪ X‬برابر است‪ ،‬از‬
‫دامنه ‪ Y‬حذف ميکند‬
‫‪218‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫بررس ي پيشرو‬
‫‪219‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫بررس ي پيشرو‬
‫‪220‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫بررس ي پيشرو‬
‫‪221‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{1,2,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫}‪{1,2,3,4‬‬
‫‪X3‬‬
‫}‪{1,2,3,4‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪222‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{1,2,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫}‪{1,2,3,4‬‬
‫‪X3‬‬
‫}‪{1,2,3,4‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪223‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , ,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ ,2,3,‬‬
‫‪X3‬‬
‫}‪{ ,2, ,4‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪224‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , ,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ ,2,3,‬‬
‫‪X3‬‬
‫}‪{ ,2, ,4‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪225‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , ,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ ,2,3,‬‬
‫‪X3‬‬
‫} ‪{ , , ,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪226‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{1,2,3,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫}‪{1,2,3,4‬‬
‫‪X3‬‬
‫}‪{1,2,3,4‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪227‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫}‪{1, ,3,4‬‬
‫‪X3‬‬
‫} ‪{1, ,3,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪228‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫}‪{1, ,3,4‬‬
‫‪X3‬‬
‫} ‪{1, ,3,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪229‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{1, ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪230‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{1, ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪231‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ , ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪232‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ , ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪233‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪4‬‬
‫مسائل ارضاي محدوديت‬
‫پخش محدوديت‬
‫پخش الزام محدوديتهاي يک متغير به متغيرهاي ديگر‬
‫‪‬مثال‪ :‬پخش محدوديتهاي ‪ WA‬و ‪ Q‬به ‪ NT‬و ‪SA‬‬
‫‪234‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫سازگاري يال‬
‫‪‬روش سريعي براي پخش محدود و قويتر از بررس ي پيشرو‬
‫‪‬يال؛ يال جهت دار در گراف محدوديت‬
‫‪‬بررس ي سازگاري يال‬
‫‪‬يک مرحله پيش پردازش‪ ،‬قبل از شروع جستجو‬
‫‪‬يک مرحله پخش ي پس از هر انتساب در حين جستجو‬
‫‪235‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬سازگاري يال‬
‫‪ SA  NSW‬سازگار است اگر‬
‫‪SA=blue and NSW=red‬‬
‫‪236‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬سازگاري يال‬
‫‪237‬‬
‫‪ NSW  SA ‬سازگار است اگر‬
‫‪SA=blue and NSW=red‬‬
‫???=‪NSW=blue and SA‬‬
‫‪ ‬يال ميتواند سازگار شود با حذف ‪ blue‬از ‪NSW‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬سازگاري يال‬
‫‪ ‬يال ميتواند سازگار شود با حذف ‪ blue‬از ‪NSW‬‬
‫‪ ‬حذف ‪ red‬از ‪V‬‬
‫‪238‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‪ :‬سازگاري يال‬
‫‪ ‬يال ميتواند سازگار شود با حذف ‪ blue‬از ‪NSW‬‬
‫‪ ‬حذف ‪ red‬از ‪V‬‬
‫‪ ‬تکرار تا هيچ ناسازگاري باقي نماند‬
‫‪239‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫سازگاري ‪K‬‬
‫‪‬سازگاري يال تمام ناسازگاراهاي ممکن را مشخص نميکند‬
‫‪‬با روش سازگاري‪ ،K‬شکلهاي قويتري از پخش را ميتوان تعريف کرد‬
‫‪‬در ص ااورتي ‪ CSP‬س ااازگاري‪ K‬اس اات‪ ،‬ک ااه ب اراي ه اار ‪ k-1‬متغي اار و ب اراي ه اار‬
‫انتساب سازگار با آن متغيرها‪ ،‬يک مقدار سازگار‪ ،‬هميشاه بتواناد باه متغيار ‪k‬ام‬
‫نسبت داده شود‬
‫‪240‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫‪‬بطور مثال‪:‬‬
‫سازگاري ‪K‬‬
‫‪‬سازگاري‪ :1‬هر متغير با خودش سازگار است(سازگاري گره)‬
‫‪‬سازگاري‪ :2‬مشابه سازگاري يال‬
‫‪‬سازگاري‪ :k‬بسط هر جفت از متغيرهاي همجوار به سومين متغير همسايه(سازگاري مسير)‬
‫‪ ‬گراف در صورتي قويا سازگار‪ K‬است که‪:‬‬
‫‪‬سازگار‪ k‬باشد‬
‫‪‬همچنين سازگار‪ k-1‬و سازگار‪ k-2‬و‪ ...‬سازگار ‪ 1‬باشد‬
‫‪‬در اين صورت‪ ،‬مسئله را بدون عقبگرد ميتوان حل کرد‬
‫‪‬پيچيدگي زماني آن )‪ O(nd‬است‬
‫‪241‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫جست و جوي محلي در مسائل ارضاي محدوديت‬
‫‪‬بسياري از ‪CSP‬ها را بطور کارآمد حل ميکنند‬
‫‪‬حالت اوليه‪ ،‬مقداري را به هر متغير نسبت ميدهد‬
‫‪‬تابع جانشين‪ ،‬تغيير مقدار يک متغير در هر زمان‬
‫‪‬انتخاب مقدار جديد براي يک متغير‬
‫‪‬انتخاب مقداري که کمترين برخورد را با متغيرهاي ديگر ايجاد کند(اکتشاف برخورد کم)‬
‫‪ ‬زمان اجراي برخورد کم مستقل از اندازه مسئله است‬
‫‪‬برخورد کم‪ ،‬براي مسئله هاي سخت نيز کار ميکند‬
‫‪‬جست و جوي محلي ميتواند در صورت تغيير مسئله‪ ،‬تنظيمات ‪ Online‬را‬
‫انجام دهد‬
‫‪242‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫مسائل ارضاي محدوديت‬
‫مثال‬
‫راه حل دو مرحله اي براي مسئله ‪8‬وزير با استفاده از کمترين برخورد‬
‫‪‬در هر مرحله‪ ،‬يک وزير براي انتساب مجدد در ستون خودش انتخاب ميگردد‬
‫‪‬تعداد برخوردها در هر مربع نشان داده شده است‬
‫‪‬الگوريتم وزير را به مربعي با کمترين برخورد انتقال ميدهد‪ ،‬بطوريکه گره ها را بطور تصادفي ميشکند‬
‫‪243‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل ششم‬
‫جستجوي خصمانه‬
‫‪244‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬بازيها چيستند و چرا مطالعه ميشوند؟‬
‫‪‬انواع بازيها‬
‫‪‬الگوريتم ‪minimax‬‬
‫‪‬بازيهاي چند نفره‬
‫‪‬هرس آلفا‪-‬بتا‬
‫‪‬بازيهاي قطعي با اطالعات ناقص‬
‫‪‬بازيهايي که حاوي عنصر شانس هستند‬
‫‪245‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫بازي ها چيستند و چرا مطالعه ميشوند؟‬
‫‪‬بازاها حالتي از محيطهاي چند عاملي هستند‬
‫‪‬هر عامل نياز به در نظر گرفتن ساير عاملها و چگونگي تأثير آنها دارد‬
‫‪‬تمايز بين محيطهاي چند عامل رقابتي و همکار‬
‫‪‬محيطهاي رقابتي‪ ،‬که در آنها اهداف عاملها با يکديگر برخورد دارند‪ ،‬منجر به مسئله هاي‬
‫خصمانه ميشود که به عنوان بازي شناخته ميشوند‬
‫‪‬چرا مطالعه ميشوند؟‬
‫‪‬قابليتهاي هوشمندي انسانها را به کار ميگيرند‬
‫‪‬ماهيت انتزاعي بازي ها‬
‫‪‬حالت بازي را به راحتي ميتوان نمايش داد و عاملها معموال به مجموعه کوچکي از فعاليتها محدود‬
‫هستند که نتايج آنها با قوانين دقيقي تعريف شده اند‬
‫‪246‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫انواع بازي ها‬
‫تصادفي‬
‫قطعي‬
‫تخته نرد‬
‫شطرنج‬
‫ريورس ي‬
‫پوکر‬
‫‪247‬‬
‫اطالعات کامل‬
‫اطالعات ناقص‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫‪‬بازي دو نفره‪ Min :‬و ‪Max‬‬
‫‪‬اول ‪ Max‬حرکت ميکند و سپس به نوبت بازي ميکنند تا بازي تمام شود‬
‫‪‬در پايان بازي‪ ،‬برنده جايزه و بازنده جريمه ميشود‬
‫‪‬بازي به عنوان يک جستجو‪:‬‬
‫‪‬حالت اوليه‪ :‬موقعيت صفحه و شناسه هاي قابل حرکت‬
‫‪‬تابع جانشين‪:‬ليستي از (حالت‪,‬حرکت) که معرف يک حرکت معتبر است‬
‫‪‬آزمون هدف‪:‬پايان بازي چه موقع است؟(حالتهاي پايانه)‬
‫‪‬تابع سودمندي‪ :‬براي هر حالت پايانه يک مقدار عددي را ارائه ميکند‪ .‬مثال برنده(‪ )+1‬و بازنده(‪-1‬‬
‫)‬
‫ي را براي آن بازي ايجاد ميکند‬
‫‪‬حالت اوليه و حرکات معتبر براي هر بازيکن‪ ،‬درخت باز ‌‬
‫‪248‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫الگوريتم؛‬
‫‪‬بـ ـ ـ ـ ــازيکن‪ :‬انتخ ا ا ا اااب بهتـ ـ ـ ـ ــرين‬
‫حالت‬
‫‪‬حري ـ ـ ـ ـ ــف‪ :‬انتخ ا ا ا ا اااب بهت ا ا ا ا اارين‬
‫موقعيا ا ا اات ب ا ا ا اراي خا ا ا ااودش يا ا ا ااا‬
‫بدترين وضعيت براي بازيکن‬
‫بازيکن‪ :‬ماکزيمم حالت‬
‫حريف‪ :‬مينيمم حالت‬
‫‪249‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫الگوريتم ‪minimax‬‬
‫‪250‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫‪251‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫‪252‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫‪253‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫‪254‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫يک نمونه بازي‬
‫‪255‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫الگوريتم ‪minimax‬‬
‫کامل بودن‪ :‬بله (اگر درخت محدود باشد)‬
‫بهينگي‪ :‬بله‬
‫‪256‬‬
‫‪m‬‬
‫پيچيدگي زماني‪:‬‬
‫) ‪O(b‬‬
‫پيچيدگي فضا‪:‬‬
‫)‪O(bm‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫بازاهاي چند نفره‬
‫‪‬تخصيص يک بردار به هر گره‪ ،‬به جاي يک مقدار‬
‫ً‬
‫‪‬بازاهاي چند نفره معوال شامل اتحاد رسمي يا غير رسمي بين بازيکنان است‬
‫‪‬اتحاد با پيشروي بازي ايجاد و از بين ميرود‬
‫‪‬بازيکنان بطور خودکار همکاري ميکنند‪ ،‬تا به هدف مطلوب انحصاري برسند‬
‫‪257‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫هرس آلفا‪-‬بتا‬
‫در الگوريتم ‪:MaxMin‬‬
‫‪‬تعداد حالتهاي بازي که بايد بررس ي شوند‪ ،‬بر حسب تعداد حرکتها‪ ،‬تواني است‬
‫‪‬راه حل‪ :‬محاسبه تصميم الگوريتم‪ ،‬بدون ديدن همه گره ها امکانپذير است‬
‫هرس آلفا‪-‬بتا‪:‬‬
‫‪‬انشعابهايي که در تصميم نهايي تأثير ندارند را حذف ميکند‬
‫‪‬آلفا‪ :‬مقدار بهترين انتخاب در هر نقطه انتخاب در مسير ‪ Max‬تاکنون‬
‫‪‬بتا‪ :‬مقدار بهترين انتخاب در هر نقطه انتخاب در مسير ‪ Min‬تاکنون‬
‫) ‪d/2‬‬
‫تقليل‪O(b‬ميابد‬
‫‪‬تعداد گره هايي که بايد بررس ي شوند به‬
‫‪‬فاکتور انشعاب مؤثر به جاي ‪ b‬برابر با جذر‪ b‬خواهد بود‬
‫‪‬پيش بيني آن نسبت به ‪ minimax‬دو برابر است‬
‫‪258‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫هرس آلفا‪-‬بتا‬
‫‪‬گره ‪ n‬که هر جاي درخت ميتواند باشد‪ ،‬بررس ي‬
‫ميشود‬
‫‪‬اگر بازيکن انتخاب بهتري داشته باشد‬
‫‪‬در گره والد ‪n‬‬
‫‪‬يا هر انتخاب بهتري تا کنون‬
‫‪ n‬هيچوقت در بازي واقعي قابل دسترس نخواهد‬
‫بود‬
‫‪‬در نتيجه ‪ n‬هرس ميشود‬
‫‪259‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫محدوده مقادیر ممکن‬
‫]∞‪[-∞,+‬‬
‫]∞‪[-∞, +‬‬
‫‪260‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫]∞‪[-∞,+‬‬
‫]‪[-∞,3‬‬
‫‪261‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫]∞‪[-∞,+‬‬
‫]‪[-∞,3‬‬
‫‪262‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫]∞‪[3,+‬‬
‫]‪[3,3‬‬
‫‪263‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫]∞‪[3,+‬‬
‫این گره براي ‪ Max‬مناسب نیست‬
‫]‪[-∞,2‬‬
‫‪264‬‬
‫]‪[3,3‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫‪,‬‬
‫]‪[-∞,14‬‬
‫‪265‬‬
‫]‪[3,14‬‬
‫]‪[-∞,2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫]‪[3,3‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫‪,‬‬
‫]‪[-∞,5‬‬
‫‪266‬‬
‫]‪[3,5‬‬
‫]‪[−∞,2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫]‪[3,3‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫]‪[3,3‬‬
‫]‪[2,2‬‬
‫‪267‬‬
‫]‪[−∞,2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫]‪[3,3‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬
‫]‪[3,3‬‬
‫]‪[2,2‬‬
‫‪268‬‬
‫]‪[-∞,2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫]‪[3,3‬‬
‫جستجوي خصمانه‬
‫بازاهاي قطعي با اطالعات ناقص‬
‫معايب الگوريتم هاي پيشين‬
‫‪‬الگوريتم ‪ minimax‬کل فضاي جست و جوي بازي را توليد ميکند‬
‫‪‬الگوريتم آلفا‪-‬بتا با وجود هرس درخت‪ ،‬اما کل مسير حالتهاي پايانه‪ ،‬حداقل براي بخش ي از‬
‫فضاي حالت‪ ،‬بايد جست و جو شود‬
‫‪‬اين عمق عملي نيست‪ ،‬زيرا حرکات بايد در زماني معقول انجام شود‬
‫شانون(‪)1950‬‬
‫براي کمتر شدن زمان جست و جو و اعمال تابع ارزيابي اکتشافي به حالتهاي جستجو‪ ،‬بهتر است‬
‫از گره هاي غير پايانه به گره هاي پايانه پرداخته شود‬
‫‪269‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫بازاهاي قطعي با اطالعات ناقص‬
‫‪‬در شانون‪ minimax ,‬و آلفا‪-‬بتا به دو روش بطور متناوب عمل ميکنند‬
‫‪‬جايگزيني تابع سودمندي با تابع ارزيابي اکتشافي بنام ‪EVAL‬‬
‫‪‬تخميني از سودمندي موقعيت ارائه ميکند‬
‫‪‬جايگزين تست پايانه با تست توقف‬
‫‪‬تصميم ميگيرد ‪ EVAL‬چه موقع اعمال شود‬
‫‪270‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫تابع ارزيابي اکتشافي ‪EVAL‬‬
‫‪‬تابع ارزيابي‪ ،‬ارائه تخميني از سودمندي مورد انتظار بازي از يک موقعيت خاص‬
‫‪‬توابع اکتشافي‪ ،‬تخميني از فاصله تا هدف را بر ميگرداندند‬
‫‪‬اغلب توابع ارزيابي‪ ،‬خواص گوناگوني از حالتها را محاسبه ميکنند‬
‫‪‬خواص روي هم رفته‪ ،‬کالسهاي هم ارزي يا دسته هاي مختلفي از حالتها را تعريف ميکنند‬
‫‪‬حالتهاي هر دسته‪ ،‬براي تمام خواص مقدار يکساني دارند‬
‫‪‬هر دسته حاوي چند حالت است که‬
‫‪‬موجب برنده شدن‬
‫‪‬موجب رسم شدن‬
‫‪‬منجر به باختن‬
‫‪‬تابع ارزيابي نميداند کدام حالت منجر به چه چيزي ميشود‪ ،‬اما ميتواند مقداري برگرداند که‬
‫‪271‬‬
‫مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫نشانهوش‬
‫)‬
‫دهد‬
‫تناسب حالتها را با هر نتيجه‬
‫جستجوي خصمانه‬
‫مثال‪ :‬تابع ‪EVAL‬‬
‫‪‬اغل ا ا ااب تواب ا ا ااع ارزي ا ا ااابي‪ ,‬مق ا ا اادار ع ا ا ااددي‬
‫جداگان ااه اي با اراي ه اار خاص اايت محاس اابه‪،‬‬
‫سااپس آنهااا را ترکيااب ميکننااد تااا مقاادار کاال‬
‫بدست آيد‬
‫‪fi‬‬
‫مثال در تابع بازي شطرنج‪:‬‬
‫‪fi‬‬
‫تعداد هر نوع قطعه در صفحه‬
‫‪wi‬‬
‫مق ا ااادير آن قطع ا ااات(‪ 1‬با ا اراي پي ا اااده‪3 ،‬‬
‫براي اسب يا فيل‪ 5،‬براي رخ و ‪)...‬‬
‫‪272‬‬
‫)‪Eval(s) = w1 f1(s) + w2 f2(s) + … + wnfn(s‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫مثال‪ :‬تابع ‪EVAL‬‬
‫ارزيابي تابع ‪ EVAL‬از مقدار پيروزي در دو موقعيت کامال متفاوت‬
‫ب) سفيد حرکت ميکند‬
‫الف) سفيد حرکت ميکند‬
‫الف) سياه‪ ،‬مزيت اسب و دو پياده دارد و بازي را ميبرد‬
‫‪273‬‬
‫ب) پس از اينکه سفيد‪ ،‬وزير را در اختيار ميگيرد‪ ،‬سياه ميبازد‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫اثر افق‬
‫‪‬وقتااي بوجااود مااي آيااد کااه برنامااه بااا اثااري از‬
‫رقيب مواجه شود که منجار باه خراباي جادي‬
‫گشته و اجتناب پذير است‬
‫‪‬مثال‪ :‬شکل مقابل؛‬
‫سااياه در اصاال جلوساات‪ ،‬امااا اگاار ساافيد پياااده‬
‫اش را از سااطر هفااتم بااه هشااتم بباارد‪ ،‬پياااده بااه‬
‫وزير تباديل ميشاود و موقعيات بارد باراي سافيد‬
‫بوجود مي آيد‬
‫‪274‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫جستجوي خصمانه‬
‫بازاهايي که حاوي عنصر شانس هستند‬
‫شانس‬
‫شانس‬
‫پايانه‬
‫‪275‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل هفتم‬
‫عامل هاي منطقي‬
‫‪276‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬عاملهاي مبتني بر دانش‬
‫‪‬منطق‬
‫‪‬منطق گزاره اي‬
‫‪‬الگوهاي استدالل در منطق گزاره اي‬
‫‪‬الگوريتم ‪resolution‬‬
‫‪‬زنجير پيشرو و عقبگرد‬
‫‪277‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫عاملهاي مبتني بر دانش‬
‫‪‬مؤلفه اصلي عامل مبتني بر دانش‪ ،‬پايگاه دانش آن است‬
‫‪‬پايگاه دانش‪ :‬مجموعه اي از جمالت‬
‫‪‬جمله‪ :‬زبان نمايش دانش و بيان ادعاهايي در مورد جهان‬
‫محدوده الگو ِريتمهاي مستقل‬
‫خاص‬
‫اطالعاتخاص‬
‫محدودهاطالعات‬
‫محدوده‬
‫‪ask‬‬
‫‪‬براي اضافه کردن جمالت به پايگاه دانش و درخواست دانسته ها‬
‫‪TELL ‬و ‪ASK‬‬
‫‪‬هر دو ممکن است شامل استنتاج باشند‬
‫‪‬پيروي‪:‬انجام فرايند استنتاج تحت مقررات خاص‬
‫‪278‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫بخش استنتاج‬
‫‪tell‬‬
‫پايگاه دانش‬
‫عاملهاي منطقي‬
‫عاملهاي مبتني بر دانش‬
‫‪ ‬عامل مبتني بر دانش بايد بتواند‪:‬‬
‫‪‬نمايش حاالت و فعاليتها‬
‫‪‬ترکيب ادراکات جديد‬
‫‪‬بروز کردن تصور داخلي خود از جهان‬
‫‪‬استنباط خصوصيات مخفي جهان‬
‫‪‬استنتاج فعاليتهاي مناسب‬
‫‪ ‬عامل پايگاه دانش خيلي شبيه به عاملهايي با حالت دروني است‬
‫‪‬عاملها در دو سطح متفاوت تعريف ميشوند‪:‬‬
‫‪‬سطح دانش‪ :‬عامل چه چيزي ميداند و اهداف آن کدامند؟‬
‫‪‬سطح پياده سازي‪ :‬ساختمان داده اطالعات پايگاه دانش و چگونگي دستکاري آنها‬
‫‪279‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫‪‬معيار کارايي‪:‬‬
‫جهان ‪WUMPUS‬‬
‫‪ +1000‬انتخاب طال‪ -1000 ،‬افتادن در گودال يا خورده شدن‪،‬‬
‫‪ -1‬هر مرحله‪ -10 ،‬براي استفاده از تير‬
‫‪‬محيط‪:‬‬
‫‪‬بوي تعفن در مربعهاي همجوار ‪WUMPUS‬‬
‫‪‬نسيم در مربعهاي همجوار گودال‬
‫‪‬درخشش در مربع حاوي طال‬
‫‪‬کشته شدن ‪ WUMPUS‬با شليک در صورت مقابله‬
‫‪‬تير فقط مستقيم عمل ميکند‬
‫‪‬برداشتن و انداختن طال‬
‫‪‬حسگرها‪:‬‬
‫‪‬بو تعفن‪ ،‬نسيم‪ ،‬تابش‪ ،‬ضربه‪ ،‬جيغ زدن‬
‫‪‬محرکها‪:‬‬
‫‪280‬‬
‫‪‬گردش به چپ‪ ،‬گردش به راست‪ ،‬جلو رفتن‪ ،‬برداشتن‪،‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫انداختن‪ ،‬شليک کردن‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫قابل مشاهده کامل‪ :‬خير‪ ,‬فقط ادراک محلي‬
‫قطعي‪ :‬بله‪ ،‬نتيجه دقيقا مشخص است‬
‫رويدادي‪ :‬خير‪ ،‬ترتيبي از فعاليتهاست‬
‫ايستا‪ :‬بله‪ WUMPUS ,‬و گودالها حرکت ندارند‬
‫گسسته‪ :‬بله‬
‫تک عامله‪ :‬بله‪ WUMPUS ،‬در اصل يک خصوصيت طبيعي است‬
‫‪281‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫کاوش در جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪282‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪283‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪284‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪285‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪286‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪287‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪288‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫توصيف‬
‫جهان ‪WUMPUS‬‬
‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬
‫‪289‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫منطق‬
‫‪‬يک زبان رسمي‪:‬‬
‫‪‬ترکيب(نحو)‪ :‬چه کلمه بندي صحيح است‪(.‬خوش فرم)‬
‫‪‬معناشناس ي‪ :‬يک کلمه بندي صحيح چه معنايي دارد‬
‫‪‬در منطق‪ ،‬معناي زبان‪ ،‬درستي هر جمله را در برابر هر جهان ممکن تعريف ميکند‬
‫‪‬مثال‪ ،‬در زبان رياضيات‬
‫‪ X+2 >= y‬يک جمله اما ‪ x2+y‬جمله نيست‬
‫‪ X+2 >= y‬در جهان درست است اگر ‪ x=7‬و ‪y =1‬‬
‫‪ X+2 >= y‬در جهان غلط است اگر ‪ x=0‬و ‪y =6‬‬
‫‪290‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫استلزام‬
‫‪‬استلزام منطقي بين جمالت اين است که جمله اي بطور منطقي از جمله ديگر پيروي‬
‫ميکند‬
‫‪a╞b‬‬
‫‪‬جمله ‪ a‬استلزام جمله ‪ b‬است‬
‫‪‬جمله ‪ a‬جمله ‪ b‬را ايجاد ميکند‬
‫‪‬اگر و فقط اگر‪ ،‬در هر مدلي که ‪ a‬درست است‪ b ،‬نيز درست است‬
‫‪‬اگر ‪ a‬درست باشد‪ b ،‬نيز درست است‬
‫‪‬درستي ‪ b‬در درستي ‪ a‬نهفته است‬
‫‪‬مثال‪ :‬جمله ‪ x+y=4‬مستلزم جمله ‪ 4=x+y‬است‬
‫‪291‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫مدلهاي ‪Wumpus‬‬
‫‪292‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫مدلهاي ‪Wumpus‬‬
‫‪KB‬‬
‫=‬
‫قوانين دنياي ‪Wumpus‬‬
‫‪+‬‬
‫مشاهدات‬
‫‪293‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫مدلهاي ‪Wumpus‬‬
‫‪294‬‬
‫مشاهدات ‪ +‬دنياي ‪KB = wumpus‬‬
‫‪", KB ╞ α1‬امن است ]‪α1 = "[1,2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫مدلهاي ‪Wumpus‬‬
‫مشاهدات ‪ +‬دنياي ‪KB = wumpus‬‬
‫‪295‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫مدلهاي ‪Wumpus‬‬
‫‪296‬‬
‫مشاهدات ‪ +‬دنياي ‪KB = wumpus‬‬
‫‪", KB ╞ α2‬امن است ]‪α2 = "[2,2‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫منطق گزاره اي‬
‫‪‬نحو منطق گزاره اي‪ ،‬جمالت مجاز را تعريف ميکند‬
‫‪‬جمالت اتميک(عناصر غير قابل تعميم) تشکيل شده از يک نماد گزاره‬
‫‪‬هر يک از اين نمادها به گزاره اي درست يا نادرست اختصاص دارد‬
‫‪‬نمادها از حروف بزرگ مثل ‪ R,Q,P‬استفاده ميکنند‬
‫‪‬جمالت پيچيده با استفاده از رابطهاي منطقي‪ ،‬از جمالت ساده تر ساخته ميشوند‬
‫‪ )not( ┐‬جمله اي مثل ‪ ┐W1,3‬نقيض ‪ W1,3‬است‬
‫‪‬ليترال يک جمله اتميک(ليترال مثبت)‪ ،‬يا يک جمله اتميک منفي(ليترال منفي) است‬
‫‪ )and( ^‬مثل ‪ W1,3 ^ P1,3‬ترکيب عطفي نام دارد‪.‬هر بخش آن يک عطف ناميده ميشود‬
‫‪ )or( ν‬مثل ‪ )W1,3 ^ P3,1( ν W2,2‬ترکيب فصلي مربوط به فصل هاي ‪ W2,2‬و ‪W1,3 ^ P3,1‬‬
‫‪( =>‬استلزام)‪ )W1,3 ^ P3,1( ν ┐ W2,2 :‬استلزام يا شرطي ناميده ميشود‪ .‬مقدمه ياا مقادم آن ‪^ P3,1‬‬
‫‪ W1,3‬و نتيجه يا تالي آن ‪ ┐ W2,2‬است‬
‫‪ ‬جمله ‪ W1,3  W2,2‬دو شرطي نام دارد‬
‫‪297‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫منطق گزاره اي‬
‫‪298‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫جدول درستي پنج رابطه منطقي‬
‫‪P ^ Q P ν Q P=>Q PQ‬‬
‫‪299‬‬
‫‪┐P‬‬
‫‪Q‬‬
‫‪P‬‬
‫‪T‬‬
‫‪T‬‬
‫‪F‬‬
‫‪F‬‬
‫‪T‬‬
‫‪F‬‬
‫‪F‬‬
‫‪F‬‬
‫‪T‬‬
‫‪T‬‬
‫‪F‬‬
‫‪T‬‬
‫‪T‬‬
‫‪F‬‬
‫‪F‬‬
‫‪F‬‬
‫‪T‬‬
‫‪F‬‬
‫‪F‬‬
‫‪F‬‬
‫‪T‬‬
‫‪T‬‬
‫‪T‬‬
‫‪T‬‬
‫‪T‬‬
‫‪F‬‬
‫‪T‬‬
‫‪T‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫منطق گزاره اي در دنياي ‪Wumpus‬‬
‫در ‪ B1,1‬نسيمي وجود دارد‬
‫)‪B1,1  (P1,2 ν P2,1‬‬
‫در ]‪ [1,1‬گودالي وجود ندارد‬
‫‪R1: ┐P1,1‬‬
‫‪300‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوهاي استدالل در منطق گزاره اي‬
‫‪‬قوانين استنتاج‪ :‬الگوهايي استاندارد که زنجيره اي از نتايج را براي رسيدن به هدف ايجاد‬
‫ميکند‬
‫‪‬قياس استثنايي‪ :‬با استفاده از ترکيب عطفي‪ ،‬ميتوان هر عطف را استنتاج کرد(يعني هر‬
‫وقت جمله اي به شکل ‪ a=>b‬داده شود‪ ،‬جمله ‪ b‬را ميتوان استنتاج کرد‪).‬‬
‫‪‬ميتوان از‬
‫)‪(WumpusAhead ^ WumpusAlive‬‬
‫و‬
‫‪(WumpusAhead ^ WumpusAlive) => Shoot‬‬
‫‪ Shoot‬را استنتاج کرد‬
‫‪301‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪   ,‬‬
‫‪‬‬
‫عاملهاي منطقي‬
‫‪‬حذف ‪ :and‬هر عطف را ميتوان از ترکيب عطفي استنتاج کرد‬
‫مثال‪ WumpusAlive :‬را ميتوان از جمله زير استناج کرد‬
‫)‪(WumpusAhead ^ WumpusAlive‬‬
‫خاصيت يکنواختي‬
‫‪ ‬‬
‫‪‬‬
‫مجموعه اي از جمالت استلزامي که فقط ميتواند در صورت اضافه شدن اطالعات به پايگاه‬
‫دانش رشد کند‪.‬‬
‫براي جمالت ‪ a‬و ‪ b‬داريم‪:‬‬
‫‪302‬‬
‫‪KB |   KB   | ‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫قانون ‪resolution‬‬
‫‪‬قانون ‪ resolution‬واحد‪ ،‬يک عبارت و يک ليترال را گرفته‪ ،‬عبارت ديگري توليد ميکند‬
‫‪l1  ... lk , m‬‬
‫‪l1  ... li1  li1  ... lk‬‬
‫‪‬قانون ‪ resulotion‬واحد ميتواند به قانون ‪ resulotion‬کامل تعميم داد‪:‬‬
‫‪l1  ... lk , m1  ... mn‬‬
‫‪l1  ... li1  li1  ... lk  m1  ... m j 1  m j 1  ... mn‬‬
‫‪303‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم ‪resolution‬‬
‫‪‬شکل نرمال عطفي(‪ :)CNF‬جمله اي که بصورت ترکيب عطفي از ترکيبات فصلي ليترالها بيان‬
‫ميشود‪.‬در هر عبارت موجود در جمله ‪ k-CNF‬دقيقا ‪ k‬ليترال وجود دارد‬
‫) ‪(l1,1  ... l1,k )  ... (ln,1  ... ln,k‬‬
‫‪‬الگوريتم ‪:resolution‬‬
‫‪‬براي اينکه نشان دهيم ‪ ,KB|=a‬مشخص ميکنيم (‪ )KB ^ ┐a‬ارضا کننده نيست‬
‫‪‬ابتدا (‪ )KB ^ ┐a‬را به ‪ CNF‬تبديل ميکنيم‬
‫‪‬سپس قانون ‪ resulotion‬به عبارات کوچک حاصل اعمال ميشود‬
‫‪‬هر جفتي که شامل ليترالهاي مکمل باشد‪ resulotion ،‬ميشود تا عبارت جديدي ايجاد گردد‬
‫‪‬اگر اين عبارت قبال در مجموعه نباشد‪ ،‬به آن اضافه ميشود‬
‫‪‬فرايند تا محقق شدن يکي از شروط زير ادامه مي يابد‪:‬‬
‫‪‬هيچ عبارت ديگري وجود نداشته باشد که بتواند اضافه شود‪ .‬در اين مورد‪ b ،‬استلزام ‪ a‬نيست‬
‫‪‬کاربرد قانون ‪ ،resolution‬عبارت تهي را بدست ميدهد که در اين مورد‪ b ،‬استلزام ‪ a‬است‬
‫‪304‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫مثال‪:‬الگوريتم ‪resolution‬‬
‫‪KB = (B1,1  (P1,2 P2,1))  B1,1 α = P1,2‬‬
‫‪305‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو و عقبگرد‬
‫‪‬عبارات هورن‪ :‬ترکيب فصلي ليترالهايي است که فقط يکي از آنها مثبت است‬
‫‪‬هاار عبااارت هــورن را ميتااوان بااه صااورت يااک اسااتلزام نوشاات کااه مقدمااه آن ترکيااب عطفااي ليتراله ااي‬
‫مثبت و تالي آن يک ليترال مثبت است‬
‫‪‬اين نوع عبارات هورن که فقط يک ليترال مثبت دارند‪ ،‬عبارات معين ناميده ميشوند‬
‫‪‬ليترال مثبت را رأس و ليترالهاي منفي را بدنه عبارت گويند‬
‫‪‬عبارت معيني که فاقد ليترالهاي منفي باشد‪ ،‬گزاره اي بنام حقيقت نام دارد‬
‫‪‬عبارات معين اساس برنامه نويس ي منطقي را ميسازد‬
‫‪‬استنتاج با عبارات هورن‪ ،‬از طريق الگوريتم هاي زنجير پيشرو‌ و زنجير عقبگرد انجام ميگيرد‬
‫‪306‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫الگوريتم زنجير پيشرو تعيين ميکند آيا نماد گزاره اي ‪(q‬تقاضا)‪ ،‬توسط پايگاه دانش‬
‫عبارات هورن ايجاب ميشود يا خير‬
‫‪307‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪308‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪309‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪310‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪311‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪312‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪313‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪314‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫زنجير پيشرو‬
‫‪315‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪316‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪‬تغييرات عمده‪ :‬خاتمه زودرس‪ ،‬اکتشاف نماد محض‪ ،‬اکتشاف عبارت واحد‬
‫‪317‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪318‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪319‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪320‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪321‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪322‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪323‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪324‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪325‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫عاملهاي منطقي‬
‫الگوريتم عقبگرد کامل‬
‫‪326‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫فصل هشتم‬
‫منطق رتبه اول‬
‫‪327‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬مروري بر منطق گزاره اي‬
‫‪‬منطق رتبه اول‌‬
‫‪‬انواع منطق‬
‫‪‬نحو و معناي منطق رتبه اول‌‬
‫‪‬مهندس ي دانش‬
‫‪328‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫‪‬ويژگنها‬
‫منطق رتبه اول‬
‫مروري بر منطق گزاره اي‬
‫‪‬ماهيت اعالني‬
‫ً‬
‫‪‬دانش و استنتاج متمايزند و استنتاج کامال مستقل از دامنه است‬
‫‪‬قدرت بيان کافي براي اداره کردن اطالعات جزئي‬
‫‪‬با استفاده از ترکيب فصلي و نقيض‬
‫‪‬قابليت ترکيب‬
‫‪‬معناي جمله‪ ،‬تابعي از معناي بخشهاي آن‬
‫‪‬معنا‪ ،‬مستقل از متن است‬
‫‪‬بر خالف زبانهاي طبيعي که‪ ،‬معناي جمالت وابسته به متن است‬
‫‪‬معايب‬
‫‪‬فاقد قدرت بياني براي تشريح دقيق محيطي با اشياي مختلف‬
‫‪329‬‬
‫‪‬بر خالف زبانهاي طبيعي‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫منطق رتبه اول‬
‫‪‬اساس منطق گزاره اي را پذيرفته و بر اساس آن يک منطق بياني ميسازيم‬
‫‪‬از ايده هاي نمايش ي زبان طبيعي استفاده کرده‪ ،‬از عيوب آن اجتناب ميکنيم‬
‫‪‬زبانهاي طبيعي از جهان طبقه بندي زير را دارند‬
‫اهايو ‪...‬‬
‫آتش‬
‫خانه‪،‬بازاهاي‬
‫اد‪،‬رنگها‪،‬‬
‫اعداد‪،‬‬
‫اشياء‪ :‬افراد‪،‬خانه‪،‬‬
‫فوتبال‪ ،‬آتش و ‪...‬‬
‫اعداد‪ ،‬رنگها‪،‬‬
‫اشياء‪ :‬افر‬
‫فوتبال‪،‬باز‬
‫رابطه ها‪ :‬رابطه ها‪:‬‬
‫اول و ‪...‬‬
‫يکاني ياقرمز‪،‬‬
‫خواص مثل‬
‫يکاني يا‬
‫قرمز‪ ،‬گرد‪ ،‬اول و ‪...‬‬
‫گرد‪،‬مثل‬
‫خواص‬
‫ابطه هاي‬
‫رابطه هاي ‪‬ر‬
‫مالکيت‬
‫بخشر يگتراز‪،‬‬
‫ادربودن‪،‬‬
‫گتر‬
‫هايبرادر‬
‫ابطهمثل‬
‫چندتايي‬
‫بخشوي‪...‬از‪ ،‬مالکيت و ‪...‬‬
‫بودن‪،‬‬
‫بودن‪ ،‬بز‬
‫بزربر‬
‫بودن‪،‬مثل‬
‫چندتايي‬
‫رابطه هاي ‪‬ر‬
‫بهترينبيشتر از و‬
‫دوست‪ ،‬يکي‬
‫دوست‪... ،‬يکي بيشتر از و ‪...‬‬
‫بهترينپدر بودن‪،‬‬
‫بودن‪،‬توابع‪:‬‬
‫توابع‪ :‬پدر ‪‬‬
‫‪‬منطق رتبه اول توسط اشيا و رابطه ها ساخته ميشود‬
‫‪330‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫انواع منطق‬
‫زبان‬
‫هستي شناس ي‬
‫حقيقت شناس ي‬
‫(آنچه در جهان هست)‬
‫(اعتقادات عامل راجع به حقايق)‬
‫منطق گزاره اي‬
‫منطق رتبه اول‬
‫حقايق‬
‫حقايق‪ ،‬اشيا‪ ،‬رابطه ها‬
‫درست‪/‬نادرست‪/‬نامشخص‬
‫درست‪/‬نادرست‪/‬نامشخص‬
‫منطق موقتي‬
‫حقايق‪ ،‬اشيا‪ ،‬رابطه ها‪ ،‬زمان‬
‫درست‪/‬نادرست‪/‬نامشخص‬
‫نظريه احتمال‬
‫حقايق‬
‫درجه اي از اعتقاد متعلق به ]‪[0,1‬‬
‫منطق فازي‬
‫حقايق با درجه اي از درستي متعلق‬
‫به ]‪[0,1‬‬
‫در فاصله معين‬
‫‪331‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫نحو و معناي منطق رتبه اول‬
‫‪‬نمادهاي ثابت؛ اشيا را نشان ميدهد‪ .‬مثال‪ :‬علي‪ ،2 ،‬رضا‪... ،‬‬
‫‪‬نمادهاي محمول؛ رابطه ها را نشان ميدهد‪ .‬مثال‪:‬برادر بودن‪ ،‬بزرگتر بودن از‬
‫‪‬نمادهاي تابع؛ توابع را نشان ميدهند‪ .‬مثال‪ :‬تابع پاي چپ(‪)LeftLeg‬‬
‫‪‬متغيرها‪x , y , a ,b :‬‬
‫‪‬روابط منطقي‪, , , ,  :‬‬
‫‪‬تساوي‪= :‬‬
‫‪‬سورها‪,  :‬‬
‫‪332‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫جمالت اتميک‬
‫‪ ‬هر ترم يک عبارت منطقي است که به شيئ اشاره ميکند‬
‫‪‬نمادهاي ثابت ترم هستند‬
‫‪‬هميشه استفاده از نماد متمايز براي نامگذاري ش يء آسان نيست‬
‫)‪LeftLeg(John‬‬
‫‪‬پاي چپ پاي پادشاه ‪John‬‬
‫‪.‬‬
‫متغير‬
‫ثابت‬
‫يا‬
‫يا‬
‫)ترم‪ ،1‬ترم‪ ، ... ،2‬ترم‪(n‬تابع = ترم‬
‫‪‬جمالت اتميک‪ :‬ترکيب ترمهاي اشياء و محولهاي روابط‬
‫‪.‬‬
‫ترم‪ =2‬ترم‪1‬‬
‫‪‬مثال‪:‬‬
‫‪333‬‬
‫يا‬
‫)ترم‪ ،1‬ترم‪ ، ... ،2‬ترم‪(n‬محمو ‌ل = جمالت اتميک‬
‫))‪Married(Father(Richard),Mother(John‬‬
‫پدر ريچارد با مادر جان ازدواج کرده است‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫جمالت پيچيده‬
‫با ترکيب جمالت اتميک و روابط منطقي ميتوان جمالت پيچيده‬
‫تري ساخت‬
S, S1  S2, S1  S2, S1  S2, S1  S2
Brother(LeftLeg(Richard),John)
:‫مثال‬
Brother(Richard,John)  Brother(John,Richard)
King(Richard)  King(John)
King(Richard)  King(John)
4 - 3 - 2 - 1 (‫ نورویک‬- ‫) هوش مصنوعی راسل‬
334
‫منطق رتبه اول‬
‫‪‬مثال‬
‫مدلي با پنج‬
‫ش يء‪ ،‬دو رابطه‬
‫دودويي‪ ،‬سه‬
‫رابطه يکاني و‬
‫يک تا يکاني به‬
‫نام پاي چپ‬
‫‪335‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫سورها‬
‫‪ ‬کمک ميکنند تا به جاي شمارش اشيا از طريق نام آنها‪ ،‬خواص‬
‫کلکسيون اشيا را بيان کرد‬
‫‪‬سور عمومي؛ ‪“ ‬براي همه”‬
‫‪‬سور وجودي؛ ‪ “ ‬وجود دارد حداقل‪”...‬‬
‫‪336‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫سور عمومي‬
‫>جمله< >متغيرها<‪‬‬
‫‪ x P‬که در آن ‪ P‬يک عبارت منطقي است‪ ،‬بيان ميکند‬
‫که ‪ P‬براي هر ش يء ‪ x‬درست است‬
‫‪‬مثال‪:‬‬
‫‪337‬‬
‫)‪x King(x)  Person(x‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫سور وجودي‬
‫>جمله< >متغيرها< ‪‬‬
‫‪  x P‬که در آن ‪ P‬يک عبارت منطقي است‪ ،‬بيان ميکند‬
‫که ‪ P‬حداقل براي يک ش يء ‪ x‬درست است‬
‫‪‬مثال‪ x Crown(x)  OnHead(x , John) :‬‬
‫‪338‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫خصوصيات سورها‬
‫‪  ‬رابط طبيعي براي کار با ‪ ‬و ‪ ‬رابط طبيعي براي کار با ‪ ‬ميباشد‬
‫‪‬استفاده از ‪ ‬بعنوان رابط اصلي با ‪ ‬منجر به حکم قوي ميشود‬
‫‪‬استفاده از ‪ ‬با ‪ ‬منجر به حکم ضعيفي ميشود‬
‫‪x y ‬برابر است با‪ y x‬و ‪x y‬برابر است با ‪y x‬‬
‫‪x y ‬برابر نيست با‪y x‬‬
‫‪x y Loves(x,y)‬‬
‫‪‬حداقل يک نفر وجود دارد که همه چيز در جهان را دوست دارد‬
‫‪y x Loves(x,y)‬‬
‫‪‬همه در دنيا حداقل يک نفر را دوست دارند‬
‫‪339‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫خصوصيات سورها‬
‫‪“ ‬هر کس ي بستني را دوست دارد” به معناي اين است که “هيچ کس وجود‬
‫ندارد که بستني را دوست نداشته باشد”‬
‫‪ x Likes(x , IceCream)‬هم ارز )‪x Likes(x , IceCream‬‬
‫‪ x P ‬هم ارز ‪x P‬‬
‫‪ x P ‬هم ارز ‪x P‬‬
‫‪x P ‬‬
‫هم ارز ‪x P‬‬
‫‪x P ‬‬
‫هم ارز ‪x P‬‬
‫‪340‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫تساوي‬
‫‪ ‬با استفاده از = دو ترم به يک ش يء اشاره ميکنند‬
‫‪‬براي تعيين درستي جمله تساوي بايد ديد که آيا ارجاع ها به دو ترم‪،‬‬
‫اشياي يکساني اند يا خير‬
‫‪‬مثال‪ :‬ريچارد حداقل دو برادر دارد‬
‫)‪x,y Brother(x,Richard) ^ Brother(y,Richard) ^ (x=y‬‬
‫‪341‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫ادعاها و تقاضاها‬
‫‪‬جمالت از طريق ‪ TELL‬به پايگاه دانش اضافه ميشوند‬
‫‪‬اين جمالت را ادعا گويند‬
‫‪TELL (KB , King(John))‬‬
‫‪TELL (KB , x King(x) => Person(x))‬‬
‫‪‬با استفاده از ‪ ASK‬تقاضاهايي را از پليگاه دانش انجام ميدهيم‬
‫‪‬اين پرسشها‪ ،‬تقاضا يا هدف نام دارد‬
‫‪ASK (KB , Person(John))‬‬
‫‪ASK(KB , x Person(x)) ‬‬
‫‪‬ليست جانشيني يا انقياد‬
‫‪‬ليستي از جانشيننها در صورت وجود بيش از يک پاسخ‬
‫‪342‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫دامنه خويشاوندي‬
‫‪‬مادر هر فرد والد مؤنث آن فرد است‬
‫‪m,c Mother(c) = m  Femail(m) ^ Parent(m,c)‬‬
‫‪‬شوهر هر فرد‪ ،‬همسر مذکر آن فرد است‬
‫‪w,h Husband(h,w)  Male(h) ^ Spouse(h,w)‬‬
‫‪‬مذکر و مؤنث بودن طبقه هاي متمايزي هستند‬
‫‪x, Male(x)  Female(x)‬‬
‫‪‬والد و فرزند‪ ،‬رابطه هاي معکوس هستند‬
‫‪p,c Parent(p,c)  Child(c,p)‬‬
‫والدين والدين هر فرد است‬
‫‪‬پدر بزرگ يا مادربزرگ‬
‫ِ‬
‫‪g,c Grandparent(g,c)  p Parent(g,p) ^ Parent(p,c) ‬‬
‫‪343‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬
‫منطق رتبه اول‬
‫اعداد و مجموعه ها‬
s Set(s)  (s = {} )  (x,s2 Set(s2)  s = {x|s2})

x,s {x|s} = {}

x,s x  s  s = {x|s}

x,s x  s  [ y,s2} (s = {y|s2}  (x = y  x  s2))]

4 - 3 - 2 - 1 (‫ نورویک‬- ‫) هوش مصنوعی راسل‬
344
‫منطق رتبه اول‬
‫مهندس ي دانش‬
‫‪‬فرايند کلي ساخت پايگاه دانش که شامل مراحل ذيل ميباشد‪:‬‬
‫‪‬مشخص کردن کار‬
‫‪‬مونتاژ دانش مربوطه‬
‫‪‬تصميم گيري در مورد واژه نامه محمولها‪ ،‬توابع و وراثت‬
‫‪‬کدگزاري دانش کلي در مورد دامنه‬
‫‪‬کد گزاري توصيف نمونه مسئله خاص‬
‫‪ِ ‬اعمال تقاضاها به رويه استنتاج و دريافت پاسخ‬
‫‪‬اشکال زدايي پايگاه دانش‬
‫‪345‬‬
‫) هوش مصنوعی راسل ‪ -‬نورویک( ‪4 - 3 - 2 - 1‬‬