You are on page 1of 277

‫هوش مصنوعی‬

: ‫نام مرجع‬

Artificial Intelligence A Modern Approach


: ‫نویسنده‬

‫ پیتر نورویگ‬،‫استوارت راسل‬

Email:amin.yousefli@pardisiau.ac.ir
Email:amin.yousefli@yahoo.com
1
‫هوش مصنوعي‬
‫فصل اول‬

‫مقدمه‬
‫‪2‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬

‫فهرست‬
‫‪‬هوش مصنوعي چيست؟‬
‫‪‬مباني هوش مصنوعي‬
‫‪‬تاريخچه هوش مصنوعي‬
‫مقدمه‬
‫هوش مصنوعي چيست؟‬

‫مانند انسان فکر کردن‬ ‫عاقالنه فکر کردن‬

‫مانند انسان عمل کردن‬ ‫عاقالنه عمل کردن‬


‫‪4‬‬
‫مقدمه‬

‫‪Acting humanly‬‬ ‫مانند انسان عمل کردن‬


‫‪ ‬هنر ساخت ماشينهايي که کارهايي را انجام ميدهند که آن‬
‫کارها توسط انسان با فکر کردن انجام ميشوند‪.‬‬

‫‪‬مطالعه براي ساخت کامپيوترها براي انجام کارهايي که‬


‫ً‬
‫فعال انسان آنها را بهتر انجام ميدهد‪.‬‬
‫‪5‬‬
‫(مانند انسان عمل کردن)‬ ‫مقدمه‬
‫تست تورينگ‬

‫‪B‬‬

‫‪A‬‬

‫‪6‬‬
‫مقدمه‬

‫‪Thinking humanly‬‬ ‫مانند انسان فکر کردن‬


‫‪‬تالش جديد و هيجان انگيز براي ساخت ماشين هايي‬
‫متفکر و با حس کامل‬

‫‪‬خودکارسازي فعاليت هاي مرتبط با تفکر انسان‪،‬‬


‫فعاليتهايي مثل تصميم گيري‪ ،‬حل مسئله‪ ،‬يادگيري‬
‫‪7‬‬
‫مقدمه‬

‫‪Think rationally‬‬ ‫عاقالنه فکر کردن‬


‫‪ ‬مطالعه توانايي هاي ذهني از طريق مدل هاي‬
‫محاسباتي (منطق گرايي)‬

‫‪‬مطالعه محاسباتي که منجر به درک و استدالل مي‬


‫شود‪.‬‬
‫‪8‬‬
‫مقدمه‬

‫‪Act rationally‬‬ ‫عاقالنه عمل کردن‬


‫طوري عمل کند که بهترين نتيجه را ارائه دهد‬

‫‪‬هوش محاسباتي‪ ،‬مطالعه طراحي عامل هاي هوشمند‬


‫است‬
‫‪9‬‬
‫مقدمه‬
‫مباني هوش مصنوعي‬
‫ي‪ :‬تطبيق‪ ،‬اثر‬ ‫روان شناس‬ ‫فلسفه‪ :‬منطق‪ ،‬استدالل‪،‬‬
‫طبيعي ادراک و تاثير آن بر محيط‬ ‫ناش ي شدن تفکر از مغز‬
‫فيزيکي‪ ،‬مباني يادگيري‪ ،‬زبان و‬
‫عقالنيت‬
‫رياضيات‪ :‬نمايش رسمي‬
‫الگوريتمها‪ ،‬محاسبات‪ ،‬تصميم‬ ‫ي‪ :‬علم‬ ‫زبان شناس‬
‫پذيري و تصميم ناپذيري‪ ،‬احتمال‬
‫ارائه‪ ،‬گرامر‬
‫‪10‬‬
‫مقدمه‬
‫مباني هوش مصنوعي‬
‫نحوه‬ ‫علوم عصبي‪:‬‬ ‫نظريه کنترل و سيبرنتيک‪:‬‬
‫پردازش اطالعات توسط مغز‬ ‫تحت کنترل در آوردن محصوالت مصنوعي‪،‬‬
‫ثبات و پايداري‪ ،‬طراحي عامل بهينه‬

‫مهندس ي کامپيوتر‪:‬‬ ‫نظريه تصميمهاي‬ ‫اقتصاد‪:‬‬


‫ساخت کامپيوترهاي سريع‬ ‫عقاليي‪ ،‬نظريه بازي‬
‫‪11‬‬
‫مقدمه‬
‫تاريخچه هوش مصنوعي‬
‫‪ ،1943‬مک کولوچ و والتر پيتز‪ :‬ارايه مدل نرون مصنوعي بيتي( دو حالته) قابل يادگيري به‬
‫منظور محاسبه هر تابع قابل محاسبه‪.‬‬
‫‪ ،1950‬آلن تورينگ اولين بار ديد کاملي از هوش مصنوعي را تحت عنوان “ محاسبات ماشيني و‬
‫هوشمند” ارايه نمود‪.‬‬
‫‪ ،1951‬هينسکي و ادموندز اولين کامپيوتر شبکه عصبي را طراحی کردند‪.‬‬
‫‪ ،1952‬آرتور سامويل‪ :‬برنامه اي ساخت که ياد ميگرفت بهتر از نويسنده اش بازي کند؛ در‬
‫نتيجه اين تصور را که “کامپيوتر فقط کاري را انجام ميدهد که به آن گفته شود” نقض کرد‪.‬‬

‫‪12‬‬
‫(تاريخچه هوش مصنوعي)‬ ‫مقدمه‬
‫‪،1956‬نشست کارگروهي دورتموند‪ :‬انتخاب نام هوش مصنوعي‬
‫‪ ،1959‬هربرت جلونتر‪ :‬برنامه(‪ )GTP‬را ساخت که قضايا را با اصل موضوعات مشخص‬
‫ثابت مي کرد‪.‬‬
‫‪ ،1958‬جان مک کارتي‪ :‬تعريف زبان ليسپ که بهترين زبان هوش مصنوعي شد‪.‬‬
‫‪ ،1973-1958‬جيمز اسالگل‪ :‬برنامه حل مسايل انتگرالگيري فرم بسته‬
‫‪‬تام ايوانز‪ :‬برنامه حل مشابهت هاي هندس ي‬
‫‪‬دانيل بابروز‪ :‬برنامه حل مسايل جبري‬
‫‪‬ديويد هافمن‪ :‬پروژه محدوده بينايي روبات در جهان بلوکها‬
‫‪‬ديويد والتز‪ :‬سيستم بينايي و انتشار محدود‬
‫‪13‬‬
‫‪‬پاتريک ونيستون‪ :‬نظريه يادگيري‬
‫(تاريخچه هوش مصنوعي)‬ ‫مقدمه‬
‫(‪ )1966-1973‬کند شدن مسير تحقيقات هوش مصنوعی‬
‫‪ ‬پيچيده شدن الگوريتم برنامه های جديد‬
‫‪ ‬برنامه ترجمه متون‬

‫‪ ‬انجام ناپذيری بسياری از مسائلی که سعی در حل آنها بود‬


‫‪ ‬عدم موفقيت اثبات قضايا با مفروضات بيشتر‬

‫‪ ‬بکارگيری بعض ی محدوديتها روی ساختارهای اساس ی‬


‫‪ ‬محدوديت نمايش پرسپترون دو ورودی‬
‫‪14‬‬
‫(تاريخچه هوش مصنوعي)‬ ‫مقدمه‬
‫(‪ )1979 -1969‬سيستم های مبتنی بر دانش‬
‫‪‬جست و جوی همه منظوره که سعی بر يادگيری داشت تا پيمودن راه حل کامل‬
‫‪ ‬مثل برنامه ‪ ،DENDRAL‬بوچانان و همکارانش در سال ‪1969‬‬
‫• مزيت برنامه ‪ DENDRAL‬اين بود که اولين سيستم پاداش غنی بود‬

‫‪ ‬متدولوژی جديد سيستم خبره‬


‫‪‬مثل سيستم ‪ MYCIN‬که برای تشخيص عفونتهای خونی طراحی شد‬
‫استفاده از فاکتورهای قطعيت‬ ‫•‬

‫‪ ‬افزايش تقاضا برای ِشمای نمايش دانش‬


‫‪ ‬استفاده از منطق در پرولوگ‪ ،‬استفاده از ايده مينسکی يعنی قابها و ‪...‬‬
‫‪15‬‬
‫(تاريخچه هوش مصنوعي)‬ ‫مقدمه‬

‫‪ 1980‬تا کنون‪ :‬تبديل هوش مصنوعی به يک صنعت‬


‫‪ 1986‬تاکنون‪ :‬برگشت به شبکه های عصبی‬
‫‪ 1987‬تاکنون‪ :‬هوش مصنوعی به علم تبديل ميشود‬
‫‪ 1995‬تاکنون‪ :‬ظهور عاملهای هوشمند‬

‫‪16‬‬
‫هوش مصنوعي‬
‫فصل دوم‬

‫عاملهاي هوشمند‬
‫‪17‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬

‫فهرست‬
‫‪‬عامل‬
‫‪‬خواص محيطهای وظيفه‬
‫‪‬برنامه های عامل‬
‫‪18‬‬
‫عاملهای هوشمند‬
‫‪ ‬دنباله ادراک‬
‫سابقه کامل هر چيزی است که عامل تاکنون درک کرده است‪.‬‬
‫‪ ‬تابع عامل‬
‫رفتار عامل توسط تابع عامل توصيف ميشود که هر دنباله ادراک را به يک فعاليت‬
‫نقش ميکند‪.‬‬
‫‪f : P*  A‬‬
‫دنباله ادراک ‪ :‬تابع عامل‬ ‫فعاليت‬
‫‪19‬‬
‫عاملهای هوشمند‬
‫‪ ‬عامل‬
‫حسگرها‬ ‫ادراک ها‬

‫عامل‬ ‫?‬ ‫محيط‬

‫فعاليت ها‬
‫محرکها‬

‫‪20‬‬
‫عاملهای هوشمند‬
‫‪ ‬معيارهای کارايي‬
‫‪ ‬معيار کارايي‪ ،‬معياری برای موفقيت رفتار عامل است‪.‬‬
‫• بر اساس خواسته های فرد در محيط انتخاب ميشود‬

‫‪ ‬رفتار عقاليي‬
‫‪‬معيار کارايي که مالکهای موفقيت را تعريف ميکند‬
‫‪ ‬دانش قبلي عامل نسبت به محيط‬
‫‪ ‬فعاليتهايي که عامل ميتواند انجام دهد‬
‫‪ ‬دنباله ادراک عامل در اين زمان‬ ‫‪21‬‬
‫عاملهای هوشمند‬
‫)‪)Omni science‬‬ ‫‪ ‬عامل عالِـم‬
‫خروجی واقعی فعاليت خود را ميداند و ميتواند بر اساس آن عمل کند‬

‫(‪)Rational agent‬‬ ‫‪ ‬عامل خردمند‬


‫فعاليتی را انتخاب ميکند که معيار کارايي اش را حداکثر ميکند‬
‫• جمع آوری اطالعات‪ ،‬اکتشاف‪ ،‬يادگيری‬

‫‪‬عامل خود مختار‬


‫نقص دانش قبلی خود را ميتواند جبران کند‬
‫‪22‬‬
‫عاملهای هوشمند‬
‫ً‬
‫‪ ‬کامال قابل مشاهده درمقابل قابليت مشاهده جزئی‬
‫‪ ‬قطعي درمقابل غير قطعی‬
‫خواص‬ ‫‪ ‬راهبردی‬
‫‪ ‬رويدادی درمقابل ترتيبي‬

‫محيط های وظيفه‬ ‫‪ ‬ايستا درمقابل پويا‬


‫‪ ‬گسسته درمقابل پيوسته‬
‫‪ ‬تک عاملي درمقابل چند عاملي‬
‫‪‬چند عاملي رقابتي درمقابل چندعاملي همياری‬
‫‪23‬‬
‫عاملهای هوشمند‬
‫ساختار عاملها‬
‫برنامه ‪ +‬معماری = عامل‬
‫کار هوش مصنوعی طراحی برنامه عامل است که تابع عامل را پياده سازی ميکند‬

‫برنامه های عامل‬


‫‪ ‬عاملهای واکنش ی مدل گرا‬ ‫‪ ‬عاملهای واکنش ی ساده‬

‫‪‬عاملهای سودمند‬ ‫‪‬عاملهای هدف گرا‬

‫‪24‬‬
‫عاملهای هوشمند‬
‫عاملهای واکنش ی ساده‬
‫حسگرها‬ ‫‪‬اين عاملها فعاليت را بر اساس‬
‫عامل‬ ‫درک فعلی و بدون در نظر گرفتن‬
‫جهان چگونه است‬
‫سابقه ادراک‪ ،‬انتخاب ميکند‬
‫‪‬به خاطر حذف سابقه ادراک‬

‫محيط‬
‫برنامه عامل در مقايسه با جدول آن‬
‫قانون‬ ‫بسيار کوچک است‬
‫اکنون چه عملی بايد‬
‫شرط عمل‬ ‫انجام دهم‬
‫‪‬انتخاب فعاليت بر اساس يکسری‬
‫قوانين موقعيت شرطي انجام ميشود‬
‫محرکها‬
‫‪25‬‬
‫عاملهای هوشمند‬
‫مثالي از عامل واکنش ی ساده در دنيای جاروبرقي‬
‫‪‬تصممميگ گیممنی آن بممر اسمماس مکـان‬
‫فعل ـ ـ ـ ــی و کثي ـ ـ ـ ــف ب ـ ـ ـ ــودن آن مک م م م ممان‬
‫صورت ميگیند‬
‫‪‬در برنام م ممه عام م ممل در مقايس م ممه ب م مما‬
‫ج ممدول آن‪ ،‬تع ممداد مالن ممای ممک ممن ا‬
‫‪ 4‬به ‪ 4‬کاهش مي يابد‬
‫)]‪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‬‬ ‫‪If dirty then suck‬‬
‫‪26‬‬
‫عاملهای هوشمند‬
‫عاملهای واکنش ي مدل گرا‬
‫‪‬اس م م م ممتفاد ا دا م م م م “چگ ـ ـ ـ ــون ی‬
‫حالت‬ ‫حسگرها‬
‫عملکرد جهان” که مدل نام دارد‬
‫جهان چگونه‬
‫جهان چگونه است‬ ‫‪‬عام م م ممل بخش ـ ـ ـ ي از دني ـ ـ ــايي را ک م م ممه‬
‫تکامل می يابد‬
‫فعال ميبيند رديابی ميکند‬

‫محيط‬
‫کار فعاليت‬
‫چيست‬ ‫‪‬عامل بايمد حالت داخلـي را ذخیمن‬
‫کن م ممد ک م ممه ب م ممه س ـ ــابقه ادراک بس م ممت ي‬
‫قانون‬ ‫اکنون چه عملی بايد‬
‫شرط عمل‬ ‫انجام دهم‬
‫دارد‬
‫‪‬در ه م ممر و م ممعيت‪ ,‬عامم ممل ميتوانم ممد‬
‫عامل‬ ‫محرکها‬ ‫توصــيف جديــدی ا جهممان را کس م‬
‫‪27‬‬
‫کند‬
‫عاملهای هوشمند‬
‫حسگرها‬
‫عاملهای هدف گرا‬
‫حالت‬
‫‪‬اي م ممن عام م ممل ع م ممالو ب م ممر توص م ممي مالم م ممت‬
‫فعلم م ممن‪ ،‬ب م م مرای انتخم م مماب موقعيـ ـ ــت مطلـ ـ ــوب‬
‫جهان چگونه است‬ ‫نيا مند اطالعات هدف نیز ميباشد‬
‫جهان چگونه‬
‫تکامل می يابد‬ ‫‪‬جســت و جــو و برنامــه ري ــزی‪ ،‬دنبالممه ای‬

‫محيط‬
‫اگر فعاليت ‪ A‬را‬ ‫ا فعالين مما را ب مرای رسمميدن عامممل بممه هممدف‪،‬‬
‫کار فعاليت‬ ‫انجام دهم چه خواهد‬
‫شد‬ ‫پيدا ميکند‬
‫چيست‬
‫‪‬اين نوع تصميگ گینی هموار آينـده را در‬
‫اکنون چه عملی بايد‬ ‫نظم ممر دارد و بم مما مم مموانین شم ممر عمم ممل تفم مماوت‬
‫اهداف‬ ‫انجام دهم‬ ‫دارد‬
‫‪‬ايممن نمموع عامممل ممارایي دنممدا م نممدارد‪ ،‬ام ما‬
‫عامل‬ ‫محرکها‬ ‫قابليت انعطاف بيشتنی دارد‬
‫‪28‬‬
‫عاملهای هوشمند‬
‫حسگرها‬
‫عاملهای سودمند‬
‫حالت‬
‫‪‬اي ممن عام ممل بم مراي اهـ ــداف مشـ ــخص‪ ،‬راه‬
‫هـ ــای مختلفـ ــی دارد‪ ،‬ک ممه را م ممل ت ممن ب ممرای‬
‫جهان چگونه است‬ ‫عامل سودمندتر است‪.‬‬
‫جهان چگونه‬
‫تکامل می يابد‬ ‫‪‬ت ــابع س ــودمندی‪ ،‬مال ممت ي مما دنبال ممه ای ا‬
‫اگر فعاليت ‪ A‬را‬

‫محيط‬
‫انجام دهم چه خواهد‬ ‫مالن ا را به يم عمدد حقيقـی ن اشمت ميکنمد‬
‫کار فعاليت‬ ‫شد‬ ‫که درجه رضايت را توصي ِميکند‪.‬‬
‫چيست‬
‫سودمند‬
‫در چنين حالتی چقدر‬ ‫‪‬ومت م اهــداف متضــاد باشممند‪ ،‬بعض ـ ی ا‬
‫رضايت دارم‬ ‫آن ا برآورد ميشوند‬
‫اکنون چه عملی بايد‬ ‫‪‬اگممر هيچي ــک از اه ــداف بممه ط ممور مط ممن‬
‫انجام دهم‬ ‫مابممل مصممول نباشممند‪ ،‬امتمممال موفقيممت بمما‬
‫عامل‬ ‫محرکها‬
‫اهميت هدف مقايسه ميشود‬
‫‪29‬‬
‫عاملهای هوشمند‬
‫استاندارد کارايي‬ ‫عاملهای يادگيرنده‬
‫‪ ‬عنص م م م م ِمر ِ يادگيرن ـ ـ ـ ــده مس م م م م ول ايج م م م مماد‬
‫منتقد‬ ‫حسگرها‬ ‫بودها‬
‫‪‬عنصر کارايي مس ول انتخماب فعالين مای‬
‫بازخورد‬

‫خارجن‬

‫محيط‬
‫تغييرات‬ ‫‪‬منتقــد مش م م ميکنممد کممه يادگیننممد بمما‬
‫عنصر‬
‫عنصر کارايي‬ ‫توجممه بممه اسممتانداردهای ممارایي د ونممه عمممل‬
‫يادگيرنده‬ ‫دانش‬
‫ميکند‬
‫يادگيری‬
‫اهداف‬

‫‪‬مولد مسئله مسم ول پيشما اد فعالين مایي‬


‫مولد مسئله‬ ‫اس م م ممت ک م م ممه منج م م ممر ب م م ممه تجر ي م م ممات آمو ن م م ممد‬
‫جديدی ميشود‬
‫عامل‬ ‫محرکها‬
‫‪30‬‬
‫هوش مصنوعي‬
‫فصل سوم‬
‫مل مس له با جستجو‬
‫‪31‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬

‫فهرست‬
‫‪‬عاملهای حل مسئله‬
‫‪‬مسئله‬
‫‪‬اندازه گيری کارايي حل مسئله‬
‫‪‬جستجوی ناآگاهانه‬
‫‪‬اجتناب از حالتهای تکراری‬
‫‪‬جستجو با اطالعات ناقص‬
‫‪32‬‬
‫حل مسئله با جستجو‬
‫عاملهای حل مسئله‬
‫چهار گام اساس ي برای حل مسائل‬
‫‪‬فرموله کردن هدف‪ :‬وضعيتهای مطلوب نهايي کدامند؟‬

‫‪‬فرمولــه کــردن مســئله‪ :‬چــه فعاليتهــا و وضــعيتهايي بــرای رســيدن بــه هــدف موجــود‬
‫است؟‬

‫‪‬جستجو‪ :‬انتخاب بهترين دنباله از فعاليتهايي که منجر بـه حـاالتی بـا مقـدار شـناخته‬
‫شده ميشود‪.‬‬

‫‪‬اجـرا‪ :‬وقتــی دنبالــه فعاليــت مطلــوب پيــدا شــد‪ ،‬فعاليتهــای پيشــنهادی آن ميتوانــد اجــرا‬
‫شود‪.‬‬
‫‪33‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬نقشه رومانی‬

‫‪34‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬نقشه رومانی‬
‫‪‬صورت مسأله‪ :‬رفتن از آراد به بخارست‬

‫‪‬فرموله کردن هدف‪ :‬رسيدن به بخارست‬

‫‪‬فرموله کردن مسئله‪:‬‬


‫‪‬وضعيتها‪ :‬شهرهای مختلف‬

‫‪‬فعاليتها‪ :‬حرکت بين شهرها‬

‫‪‬جستجو‪ :‬دنباله ای از شهرها مثل‪:‬آراد‪ ،‬سيبيو‪ ،‬فاگارس‪ ،‬بخارست‬


‫‪‬اين جستجو با توجه به کم هزينه ترين مسير انتخاب ميشود‬
‫‪35‬‬
‫حل مسئله با جستجو‬
‫مسئله‬
‫‪‬مالت اوليه‪ :‬مالت که عامل ا آن شروع ميکند‪.‬‬
‫‪‬در مثال روما م‪ :‬شهر آراد )‪n(Arad‬‬

‫‪‬تابع جا شین‪ :‬توصيفي ا فعالين ای ممکن که برای عامل مهيا است‪.‬‬


‫‪‬در مثال روما م‪S(Arad)={ Zerind,Sibui,Timisoara} :‬‬

‫‪‬فضای مالت‪ :‬مجموعه ای ا مالن ا که ا مالت اوليه ميتوان به آن ا رسيد‪.‬‬


‫‪‬در مثال روما م‪ :‬ليه شهرها که با شروع ا آراد ميتوان به آن ا رسيد‬

‫تابع جانشين ‪ +‬حالت اوليه = فضای حالت‬


‫‪36‬‬
‫حل مسئله با جستجو‬
‫‪‬آ مون هدف‪ :‬تعيین ميکند که آيا مالت خاص ‪ ،‬مالت هدف است يا خین‬
‫‪‬هدف صريح‪ :‬در مثال روما م‪ ،‬رسيدن به بخارست‬
‫‪‬هدف انتزاعن‪ :‬در مثال شطرنج‪ ،‬رسيدن به مالت کي و مات‬

‫‪‬مسین‪ :‬دنباله ای ا مالن ا که دنباله ای ا فعالين ا را به هگ متصل ميکند‪.‬‬


‫‪‬در مثال روما م‪ Arad, Sibiu, Fagaras :‬ي مسین است‬
‫‪‬هزينه مسین‪ :‬برای هر مسین ي هزينه عددی در نظر ميگیند‪.‬‬
‫‪‬در مثال روما م‪ :‬طول مسین بین شهرها بر مس کيلومتن‬

‫راه حل مسئله مسيری از حالت اوليه به حالت هدف است‬


‫راه حل بهينه کمترين هزينه مسير را دارد‬
‫‪37‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬دنيای جارو برقي‬
‫مالن مما‪ :‬دو مک ممان ک ممه ه ممر ي م ممک ممن اس ممت کثيم م يم ما‬
‫تمیممز باشممند‪.‬لم ا ‪2 *2^2 = 8‬مالممت در ايممن جهممان وجممود‬
‫دارد‬

‫مال ممت اولي ممه‪ :‬ه ممر م ممالت ميتوان ممد ب ممه عن مموان مال ممت‬
‫اوليه طراحن شود‬

‫ت م م ممابع جا ش م م ممین‪ :‬مالن م م ممای معتع م م ممن ا س م م ممه عملي م م ممات‪:‬‬


‫راست‪ ،‬دپ‪ ،‬مک‬

‫آ مون هدف‪ :‬تمیزی تمام مربعها‬

‫هزينه مسین‪ :‬تعداد مرامل در مسین‬


‫‪38‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬دنيای جارو برقي‬
‫مالن مما‪ :‬دو مک ممان ک ممه ه ممر ي م ممک ممن اس ممت کثيم م يم ما‬
‫تمیممز باشممند‪.‬لم ا ‪2 *2^2 = 8‬مالممت در ايممن جهممان وجممود‬
‫دارد‬

‫مال ممت اولي ممه‪ :‬ه ممر م ممالت ميتوان ممد ب ممه عن مموان مال ممت‬
‫اوليه طراحن شود‬

‫ت م م ممابع جا ش م م ممین‪ :‬مالن م م ممای معتع م م ممن ا س م م ممه عملي م م ممات‪:‬‬


‫راست‪ ،‬دپ‪ ،‬مک‬

‫آ مون هدف‪ :‬تمیزی تمام مربعها‬

‫هزينه مسین‪ :‬تعداد مرامل در مسین‬


‫‪39‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬معمای‪8‬‬
‫مالن ا‪ :‬مکان هر هشت خانه شمار دار و خانه خالن در يکي ا ‪ 9‬خانه‬

‫مالت اوليه‪ :‬هر مالتي را ميتوان به عنوان مالت اوليه در نظر گرفت‬

‫تممابع جا شممین‪ :‬مالن ممای معتعممن ا دهممار عمممل‪ ،‬انتقممال خانممه خممالن ب مه دممپ‪،‬‬
‫راست‪ ،‬باال يا پايین‬

‫آ م ممون ه ممدف‪ :‬بررس م ميکنممد کممه مممالت ک ممه اعممداد بممه ترتي م ديممد ش مد‬
‫اند(طبق شکل رو رو) رخ داد يا نه‬

‫هزينه مسین‪ :‬برابر با تعداد مرامل در مسین‬

‫‪40‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬معمای‪8‬‬
‫مالن ا‪ :‬مکان هر هشت خانه شمار دار و خانه خالن در يکي ا ‪ 9‬خانه‬

‫مالت اوليه‪ :‬هر مالتي را ميتوان به عنوان مالت اوليه در نظر گرفت‬

‫تممابع جا شممین‪ :‬مالن ممای معتعممن ا دهممار عمممل‪ ،‬انتقممال خانممه خممالن ب مه دممپ‪،‬‬
‫راست‪ ،‬باال يا پايین‬

‫آ م ممون ه ممدف‪ :‬بررس م ميکنممد کممه مممالت ک ممه اعممداد بممه ترتي م ديممد ش مد‬
‫اند(طبق شکل رو رو) رخ داد يا نه‬

‫هزينه مسین‪ :‬برابر با تعداد مرامل در مسین‬

‫‪41‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬مسئله ‪ 8‬وزير‬
‫فرمول بندی افزايش ي‬
‫مالن ا‪ :‬هر ترتيبي ا ‪ 0‬تا ‪ 8‬و ير در صفحه‪ ،‬ي مالت است‬
‫مالت اوليه‪ :‬هيچ و يری در صفحه نيست‬
‫تابع جا شین‪ :‬و يری را به خانه خالن ا افه ميکند‬
‫آ مممون هممدف‪8 :‬و يممر در صممفحه وجممود دارنممد و همميچ کممدام بممه‬
‫يکديگر گارد نميگینند‬

‫در اين فرمول بندی بايد ‪ 3*10^14‬دنباله ممکن‬


‫بررس ی ميشود‬
‫‪42‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬مسئله ‪ 8‬وزير‬
‫فرمول بندی افزايش ي‬
‫مالن ا‪ :‬هر ترتيبي ا ‪ 0‬تا ‪ 8‬و ير در صفحه‪ ،‬ي مالت است‬
‫مالت اوليه‪ :‬هيچ و يری در صفحه نيست‬
‫تابع جا شین‪ :‬و يری را به خانه خالن ا افه ميکند‬
‫آ مممون هممدف‪8 :‬و يممر در صممفحه وجممود دارنممد و همميچ کممدام بممه‬
‫يکديگر گارد نميگینند‬

‫در اين فرمول بندی بايد ‪ 3*10^14‬دنباله ممکن‬


‫بررس ی ميشود‬
‫‪43‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬مسئله ‪ 8‬وزير‬
‫فرمول بندی حالت کامل‬
‫مالن ما‪ :‬ديمدمان ‪ n‬و يمر )‪ ،(0≤ n≤ 8‬بطوريکمه در همر سمتون ا ‪n‬‬
‫ستون سمت دپ‪ ،‬ي و ير مرار گیند و هيچ دو و يری گ گارد نگینند‬
‫مالت اوليه‪ :‬با ‪ 8‬و ير در صفحه شروع ميشود‬
‫تممابع جا شممین‪ :‬و يممری را در سمممت دممپ تممرين سممتون خممال ممرار ميدهممد‪،‬‬
‫بطوری که هيچ و يری آن را گارد ندهد‬
‫آ مممون هممدف‪8 :‬و يممر در صممفحه وجممود دارنممد و همميچ کممدام بممه يکممديگر‬
‫گارد نميگینند‬

‫اين فرمول بندی فضای حالت را از ‪ 3*10^14‬به‬


‫‪ 2057‬کاهش ميدهد‬
‫‪44‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬مسئله ‪ 8‬وزير‬
‫فرمول بندی حالت کامل‬
‫مالن ما‪ :‬ديمدمان ‪ n‬و يمر )‪ ،(0≤ n≤ 8‬بطوريکمه در همر سمتون ا ‪n‬‬
‫ستون سمت دپ‪ ،‬ي و ير مرار گیند و هيچ دو و يری گ گارد نگینند‬
‫مالت اوليه‪ :‬با ‪ 8‬و ير در صفحه شروع ميشود‬
‫تممابع جا شممین‪ :‬و يممری را در سمممت دممپ تممرين سممتون خممال ممرار ميدهممد‪،‬‬
‫بطوری که هيچ و يری آن را گارد ندهد‬
‫آ مممون هممدف‪8 :‬و يممر در صممفحه وجممود دارنممد و همميچ کممدام بممه يکممديگر‬
‫گارد نميگینند‬

‫اين فرمول بندی فضای حالت را از ‪ 3*10^14‬به‬


‫‪ 2057‬کاهش ميدهد‬
‫‪45‬‬
‫حل مسئله با جستجو‬
‫اندازه گيری کارايي حل مسئله‬
‫امل بودن‪ :‬آيا ال وريتگ تضمین ميکند که در صورت وجود را مل‪ ،‬آن را بيابد؟‬ ‫‪‬‬
‫ي‪ :‬آيا اين راهعند‪ ،‬را مل ينه ای را ارائه ميکند‪.‬‬ ‫‪ ‬ين‬
‫ما م‪ :‬دقدر طول ميکشد تا را مل را پيدا کند؟‬ ‫‪‬پيچيدگي‬
‫تعداد گر های توليد شد در اثنای جستجو‬

‫‪‬پيچيدگم فضا‪ :‬برای جستجو دقدر مافظه نيا دارد؟‬


‫مداکثن تعداد گر های ذخین شد در مافظه‬

‫‪46‬‬
‫حل مسئله با جستجو‬
‫اندازه گيری کارايي حل مسئله‬
‫امل بودن‪ :‬آيا ال وريتگ تضمین ميکند که در صورت وجود را مل‪ ،‬آن را بيابد؟‬ ‫‪‬‬
‫ي‪ :‬آيا اين راهعند‪ ،‬را مل ينه ای را ارائه ميکند‪.‬‬ ‫‪ ‬ين‬
‫ما م‪ :‬دقدر طول ميکشد تا را مل را پيدا کند؟‬ ‫‪‬پيچيدگي‬
‫‪‬تعداد گر های توليد شد در اثنای جستجو‬

‫‪‬پيچيدگم فضا‪ :‬برای جستجو دقدر مافظه نيا دارد؟‬


‫‪‬مداکثن تعداد گر های ذخین شد در مافظه‬

‫‪47‬‬
‫حل مسئله با جستجو‬
‫جستجوی ناآگاهانه‬
‫‪‬ناآگاهن اين است که ال وريتگ هيچ اطالعاتم غین ا تعري مس له در اختيار ندارد‬
‫‪‬اين ال وريتمها فقط ميتواند جا شيا ایي را توليد و هدف را ا غین هدف تش يم دهند‬
‫‪‬راهعندهممایي کممه تشم يم ميدهممد يم مالممت غیممن هممدف سممدت بممه گممر غیممن هممدف ديگممر‪ ،‬اميممد بخم تممر اسممت‪،‬‬
‫جست و جوی آگاهانه يا جست و جوی اکتشاف ناميد ميشود‪.‬‬

‫راهبردها‬
‫‪‬جست و جوی هزينه يکنواخت‬ ‫‪‬جست و جوی عرض‬
‫‪‬جست و جوی عمقم محدود‬ ‫‪‬جست و جوی عمقم‬
‫‪‬جست و جوی دو طرفه‬ ‫‪‬جست و جوی عميق کنند تکراری‬
‫‪48‬‬
‫حل مسئله با جستجو‬
‫جستجوی عرض ی‬
‫‪A‬‬

‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬

‫‪49‬‬
‫حل مسئله با جستجو‬
‫جستجوی عرض ی‬
‫امل بودن‪ :‬بله‬
‫بله (مشرو )‬ ‫ين م‪ :‬بله (مشرو )‬
‫گر‬ ‫در صورتم ينه است که هزينه مسین‪ ،‬تاب ن غین نزو لن ا عمق‬
‫باشد‪(.‬مثل ومتي که فعالين ا هزينه يکسا م دارند)‬

‫) ‪O(b‬‬ ‫‪d1‬‬ ‫پيچيدگي ما ي‪:‬‬


‫) ‪O(b‬‬ ‫‪d1‬‬
‫پيچيدگم فضا‪:‬‬
‫‪50‬‬
‫حل مسئله با جستجو‬
‫جستجوی هزينه يکنواخت‬
‫اين جستجو گر ‪ n‬را با کمتنين هزينه مسین بسط ميدهد‬
‫‪A‬‬
‫‪1‬‬ ‫‪3‬‬
‫‪1‬‬
‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬


‫‪51‬‬
‫حل مسئله با جستجو‬
‫جستجوی هزينه يکنواخت‬
‫امل بودن‪ :‬بله‬
‫باشد‪(.‬هزينه‬ ‫هزينه هر مرمله بزرگتن يا مساوی ي مقدار ثابت و مثدت ‪ε‬‬
‫مسین با مرکت در مسین افزاي مي يابد)‬
‫‪ :‬ين م‪ :‬بله‬
‫هزينه هر مرمله بزرگتن يا مساوی ‪ ε‬باشد‬
‫] ‪[C*/‬‬
‫‪O(b‬‬ ‫)‬ ‫پيچيدگي ما ي‪:‬‬
‫] ‪[C*/‬‬
‫‪O(b‬‬ ‫)‬ ‫پيچيدگم فضا‪:‬‬ ‫‪52‬‬
‫حل مسئله با جستجو‬
‫جستجوی عمقی‬
‫‪A‬‬

‫‪2‬‬ ‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪3‬‬ ‫‪E‬‬ ‫‪F‬‬ ‫‪6‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪7‬‬
‫‪4‬‬ ‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬
‫‪5‬‬
‫‪53‬‬
‫حل مسئله با جستجو‬
‫جستجوی عمقی‬
‫امل بودن‪ :‬خین‬
‫اگر ير درخت دپ عمق نامحدود داشت و فامد هر گونه را مل باشد‪،‬‬
‫جستجو هرگز خاتمه نمي يابد‪.‬‬

‫ين م‪ :‬خین‬
‫‪m‬‬
‫) ‪O(b‬‬ ‫پيچيدگي ما ي‪:‬‬
‫)‪O(bm‬‬ ‫پيچيدگم فضا‪:‬‬
‫‪54‬‬
‫حل مسئله با جستجو‬
‫جستجوی عمقی محدود‬
‫مس له درخن ای نامحدود ميتواند به وسيله جست و جوی عمقي با عمق محدود ‪ L‬بود‬
‫يابد‬
‫‪A‬‬

‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬


‫‪55‬‬
‫حل مسئله با جستجو‬
‫جستجوی عمقی محدود‬
‫امل بودن‪ :‬خین‬
‫اگر ‪ L<d‬و سطحن ترين هدف در خارج ا عمق محدود مرار داشته باشد‪ ،‬اين‬
‫راهعند امل نخواهد بود‪.‬‬
‫ين م‪ :‬خین‬
‫اگر ‪ L>d‬انتخاب شود‪ ،‬اين راهعند ينه نخواهد بود‪.‬‬

‫) ‪O(b‬‬ ‫‪L‬‬ ‫پيچيدگي ما ي‪:‬‬


‫)‪O(bL‬‬ ‫پيچيدگم فضا‪:‬‬
‫‪56‬‬
‫حل مسئله با جستجو‬
‫جستجوی عميق کننده تکراري‬
‫‪A‬‬

‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬

‫‪57‬‬
‫حل مسئله با جستجو‬
‫جستجوی عميق کننده تکراري‬
‫‪A‬‬

‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬

‫‪58‬‬
‫حل مسئله با جستجو‬
‫جستجوی عميق کننده تکراري‬
‫‪A‬‬

‫‪B‬‬ ‫‪C‬‬ ‫‪D‬‬

‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬ ‫‪H‬‬ ‫‪I‬‬

‫‪J‬‬ ‫‪K‬‬ ‫‪L‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬ ‫‪P‬‬ ‫‪Q‬‬ ‫‪R‬‬ ‫‪S‬‬

‫‪59‬‬
‫حل مسئله با جستجو‬
‫جستجوی عميق کننده تکراري‬
‫امل بودن‪ :‬بله‬
‫در صورتم که فاکتور ا شعاب محدود باشد‬
‫ين م‪ :‬بله‬
‫ومت که هزينه مسین‪ ،‬تاب ن غین نزو لن ا عمق گر باشد‬
‫‪d‬‬
‫) ‪O(b‬‬ ‫پيچيدگي ما ي‪:‬‬
‫)‪O(bd‬‬ ‫پيچيدگم فضا‪:‬‬
‫‪60‬‬
‫حل مسئله با جستجو‬
‫جستجوی دو طرفه‬
‫انجام دو جست و جوی همزمان‪ ،‬يکي ا مالت اوليه به هدف و ديگری ا هدف به مالت اوليه تا‬
‫ما م که دو جست و جو به هگ برسند‬

‫‪61‬‬
‫حل مسئله با جستجو‬
‫جستجوی دو طرفه‬
‫امل بودن‪ :‬بله‬
‫اگر هر دو جستجو‪ ،‬عرض باشند و هزينه تمام مرامل يکسان باشد‬
‫ين م‪ :‬بله‬
‫اگر هر دو جستجو‪ ،‬عرض باشند و هزينه تمام مرامل يکسان باشد‬
‫‪d/2‬‬
‫) ‪O(b‬‬ ‫پيچيدگي ما ي‪:‬‬
‫) ‪O(b‬‬ ‫‪d/2‬‬
‫پيچيدگم فضا‪:‬‬
‫‪62‬‬
‫حل مسئله با جستجو‬
‫اجتناب از حالتهای تکراری‬
‫وجود مالن ای تکراری در ي مس له مابل مل‪ ،‬ميتواند آن را به مس له غین مابل مل تبديل کند‬

‫‪63‬‬
‫حل مسئله با جستجو‬
‫جستجو با اطالعات ناقص‬
‫‪‬مس له های فامد مسگر‪ :‬اگر عامل فامد مسگر باشد‪ ،‬ميتواند در يکي ا دند مالت اوليه باشد‬
‫و هر فعاليت ميتواند آن را به يکي ا دند مالت جا شین بعند‬

‫‪‬مس له های امتضایي‪ :‬اگر محيط به طور جزئم مابل مشاهد باشد يا اگر فعالين ا مط نباشد‪،‬‬
‫ادرا ات عامل‪ ،‬پس ا هر عمل‪ ،‬اطالعات جديدي را ت يه ميکنند‪ .‬هر ادراک ممکن‪ ،‬امتضایم را تعري ميکند‬
‫که بايد برای آن برنامه ريزی شود‬

‫‪‬مسائل خصمانه‪ :‬اگرعدم مطعيت در اثر فعالين ای عامل ديگری بوجود آيد‪ ،‬مس له را‬
‫خصمانه گويند‬

‫‪‬مس له های اکتشافن‪ :‬ومت مالن ا و فعالين ای محيط ناشناخته باشند‪ ،‬عامل بايد س کند آن ا را‬
‫کش کند‪ .‬مس له های اکتشافن را ميتوان شکل ن ایم مس له های امتضایي دا ست‬
‫‪64‬‬
‫حل مسئله با جستجو‬
‫مثال‪ :‬دنيای جاروبرقی فاقد حسگر‬
‫‪‬عامممل جممارو تمممام اثمرات فعالين مماي را ميدانممد اممما فامممد‬
‫مسگر است‪.‬‬
‫‪‬مال م م م م م م م م م م م م م م م ممت اولي م م م م م م م م م م م م م م م ممه آن يک م م م م م م م م م م م م م م م ممي ا اعض م م م م م م م م م م م م م م م ممای‬
‫مجموعه{‪ }1،2،3،4،5،6،7،8‬ميباشد‬
‫{‪}2،4،6،8‬‬ ‫‪‬فعاليت (‪(Right‬‬

‫{‪}4،8‬‬ ‫‪‬فعاليت (‪)Right,Suck‬‬

‫‪‬فعالي م م م م م م ممت (‪ )Right,Suck,Left,Suck‬تضم م م م م م م مممین‬


‫ميکن ممد ک ممه ص ممرف نظ ممر ا مال ممت اولي ممه‪ ،‬ب ممه مال ممت ه ممدف‪،‬‬
‫‪ 65‬برسد‬ ‫يعن ‪7‬‬
‫حل مسئله با جستجو‬
‫دنيای جاروبرقی‬
‫فاقد حسگر‬
‫‪‬عام ممل باي ممد راج ممع ب ممه مجموع ممه ه مماي‬
‫مم م م ممالت کم م م ممه ميتوانم م م ممد بم م م ممه آن م م م مما برسم م م ممد‬
‫استدالل کند‪ .‬اين مجموعه ا مالن ا را‬
‫مالت باور گوييگ‪.‬‬
‫‪‬اگ ممر فضم ممای مال ممت فیزيک ممي دارای ‪s‬‬
‫مال ممت باش ممد فض ممای مال ممت ب مماور ‪2^s‬‬
‫مالت باور خواهد داشت‪.‬‬

‫‪66‬‬
‫هوش مصنوعي‬
‫فصل دهارم‬
‫جست و جوی آگاهانه و اکتشاف‬
‫‪67‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬

‫فهرست‬
‫‪‬متدهای جست و جوی آگاهانه‬
‫‪‬يادگيری برای جست و جوی بهتر‬
‫‪‬جست و جوی محلی و بهينه سازی‬
‫‪‬جست و جوی محلی در فضاهای پيوسته‬
‫‪‬عاملهای جست و جوی ‪Online‬‬

‫‪68‬‬
‫جست و جوی آگاهانه و اکتشاف‬

‫متدهای جستجوی آگاهانه‬


‫‪‬جستجوی محلن و ينه سا ی‬
‫‪ ‬تنين جستجو‬
‫‪‬تپه نوردی‬
‫‪‬مريصانه‬
‫‪‬شديه سا ی مرارت‬ ‫‪A*‬‬
‫‪‬پرتو محلن‬ ‫‪IDA*‬‬
‫‪‬ال وريتمهای ژنتي‬ ‫‪RBFS‬‬
‫‪ MA* ‬و*‪SMA‬‬
‫‪69‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫تعاريف‬
‫‪‬تابع هزينه مسین‪ : g(n) ،‬هزينه مسین ا گر اوليه تا گر ‪n‬‬

‫‪‬تابع اکتشافن‪ : h(n) ،‬هزينه تخمين ار ان ترين مسین ا گر ‪ n‬به گر هدف‬

‫‪‬تابع تنين مسین‪ : h*(n) ،‬ار ان ترين مسین ا گر ‪ n‬تا گر هدف‬

‫‪‬تابع ار يابي‪ : f(n) ،‬هزينه تخمين ار ان ترين مسین ا طريق ‪n‬‬

‫)‪f(n): g(n) + h(n‬‬


‫)‪f*(n): g(n) + h*(n‬‬ ‫‪ : f*(n)‬هزينه ار ان ترين مسین ا طريق‪n‬‬

‫‪70‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حريصانه‬
‫‪A‬‬
‫‪3‬‬ ‫‪1‬‬
‫‪1‬‬ ‫‪2‬‬
‫‪B‬‬ ‫‪C‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪5‬‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪2‬‬
‫‪D‬‬ ‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬
‫‪1‬‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪3‬‬
‫‪2‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪3‬‬
‫‪H‬‬ ‫‪I 3‬‬ ‫‪J‬‬ ‫‪K‬‬ ‫‪L 3‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬
‫‪3‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪0‬‬ ‫‪3‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬
‫‪3‬‬
‫‪P‬‬ ‫‪Q‬‬ ‫‪R‬‬ ‫‪S‬‬ ‫‪T‬‬ ‫‪U‬‬ ‫‪V‬‬ ‫‪W‬‬ ‫‪X‬‬ ‫‪Y‬‬ ‫‪Z‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪71‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حريصانه‬
‫‪A‬‬
‫‪2‬‬
‫‪1‬‬
‫‪3‬‬ ‫‪1‬‬
‫‪2‬‬
‫‪‬‬ ‫‪1‬‬
‫‪B‬‬ ‫‪C‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪5‬‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪23‬‬
‫‪D‬‬ ‫‪E‬‬ ‫‪F‬‬
‫‪1‬‬
‫‪G‬‬
‫‪3‬‬
‫‪‬‬
‫‪4‬‬
‫‪‬‬ ‫‪1‬‬ ‫‪3‬‬
‫‪N‬‬ ‫‪O‬‬
‫‪1‬‬
‫‪5‬‬
‫‪‬‬
‫‪X‬‬
‫‪0‬‬ ‫‪72‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حريصانه‬
‫‪A‬‬
‫‪2‬‬ ‫‪1‬‬
‫‪1‬‬ ‫‪4‬‬
‫‪B‬‬ ‫‪C‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪5‬‬ ‫‪1‬‬ ‫‪3‬‬ ‫‪3‬‬
‫‪D‬‬ ‫‪E‬‬ ‫‪F‬‬ ‫‪G‬‬
‫‪1‬‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪3‬‬

‫‪2‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪3‬‬


‫‪H‬‬ ‫‪I 3‬‬ ‫‪J‬‬ ‫‪K‬‬ ‫‪L 3‬‬ ‫‪M‬‬ ‫‪N‬‬ ‫‪O‬‬
‫‪3‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪0‬‬ ‫‪3‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬
‫‪3‬‬
‫‪P‬‬ ‫‪Q‬‬ ‫‪R‬‬ ‫‪S‬‬ ‫‪T‬‬ ‫‪U‬‬ ‫‪V‬‬ ‫‪W‬‬ ‫‪X‬‬ ‫‪Y‬‬ ‫‪Z‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪73‬‬
‫‪1‬‬ ‫‪0‬‬ ‫‪2‬‬ ‫‪1‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حريصانه‬
‫‪A‬‬
‫‪2‬‬ ‫‪1‬‬
‫‪1‬‬
‫‪1 B‬‬ ‫‪C‬‬
‫‪4‬‬

‫‪1‬‬ ‫‪1‬‬
‫‪5‬‬ ‫‪1‬‬
‫‪2‬‬
‫‪D‬‬
‫‪3‬‬
‫‪E‬‬ ‫‪‬‬
‫‪3‬‬
‫‪3‬‬
‫‪1‬‬
‫‪J‬‬ ‫‪K‬‬ ‫‪‬‬
‫‪0‬‬

‫‪74‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حريصانه‬
‫‪ ‬امل بودن‪ :‬خین‬
‫‪‬اما اگر *‪ h = h‬آن ا جستجو امل ميشود‬
‫‪ ‬ين م‪ :‬خین‬
‫‪‬اما اگر *‪ h = h‬آن ا جستجو امل ميشود‬
‫) ‪O(bm‬‬ ‫‪‬پيچيدگي ما ي‪:‬‬
‫) ‪O(bd‬‬ ‫‪‬اما اگر *‪ h = h‬آن ا‬
‫) ‪O(bm‬‬ ‫‪‬پيچيدگم فضا‪:‬‬
‫‪‬اما اگر *‪ h = h‬آن ا ) ‪O(bd‬‬
‫‪75‬‬
‫جست و جوی آگاهانه و اکتشاف‬
A* ‫جستجوی‬
A/5
2 1

B/4 C/4
1 1 1 1
D/5 E/1 F/3 G/2
1 3 3 3 1 2 1 3

H/2 I/3 J/1 K/0 L/3 M/2 N/1 O/3


3 2 3 2 3 3 2 1 1 2 3

P/3 Q/1 R/2 S/2 T/1 U/1 V/2 W/1 X/0 Y/2 Z/1
76
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪A‬‬
‫‪A/5‬‬
‫‪2‬‬ ‫‪1‬‬
‫‪51‬‬
‫‪6‬‬
‫‪B/4‬‬ ‫‪C/4‬‬ ‫‪‬‬
‫‪1‬‬ ‫‪1‬‬
‫‪5‬‬ ‫‪42‬‬
‫‪F/3‬‬ ‫‪G/2‬‬ ‫‪‬‬
‫‪1‬‬ ‫‪3‬‬
‫‪3‬‬
‫‪N/1 4‬‬ ‫‪O/3‬‬
‫‪8‬‬

‫‪1‬‬

‫‪X/0‬‬
‫‪4‬‬ ‫‪77‬‬
‫جست و جوی آگاهانه و اکتشاف‬
A* ‫جستجوی‬
A/5
2 1

B/1 C/4
1 1 1 1
D/5 E/1 F/3 G/2
1 3 3 3 1 2 1 3

H/2 I/3 J/1 K/0 L/3 M/2 N/1 O/3


3 2 3 2 3 3 2 1 1 2 3

P/3 Q/1 R/2 S/2 T/1 U/1 V/2 W/1 X/0 Y/2 Z/1
78
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪A‬‬
‫‪A/5‬‬
‫‪2‬‬ ‫‪1‬‬
‫‪1‬‬
‫‪3B/1‬‬ ‫‪C/4‬‬
‫‪53‬‬
‫‪‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪8‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪44‬‬
‫‪D/5‬‬ ‫‪E/1‬‬ ‫‪‬‬
‫‪2‬‬
‫‪F/3‬‬ ‫‪G/2‬‬ ‫‪‬‬
‫‪3‬‬ ‫‪3‬‬ ‫‪1‬‬ ‫‪3‬‬
‫‪5‬‬
‫‪7‬‬
‫‪J/1‬‬ ‫‪K/0 6‬‬
‫‪N/1 4‬‬ ‫‪O/3‬‬
‫‪8‬‬

‫‪1‬‬

‫‪X/0‬‬
‫‪4‬‬ ‫‪79‬‬
‫جست و جوی آگاهانه و اکتشاف‬
A* ‫جستجوی‬
A/5
2 1

B/1 C/9
1 1 1 1
D/5 E/1 F/3 G/2
1 3 3 3 1 2 1 3

H/2 I/3 J/1 K/0 L/3 M/2 N/1 O/3


3 2 3 2 3 3 2 1 1 2 3

P/3 Q/1 R/2 S/2 T/1 U/1 V/2 W/1 X/0 Y/2 Z/1
80
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪A‬‬
‫‪A/5‬‬
‫‪2‬‬ ‫‪1‬‬
‫‪1‬‬
‫‪ B/1‬‬ ‫‪3‬‬
‫‪C/9‬‬
‫‪10‬‬

‫‪1‬‬ ‫‪1‬‬
‫‪8‬‬ ‫‪4‬‬
‫‪2‬‬
‫‪D/5‬‬
‫‪3‬‬
‫‪E/1‬‬ ‫‪‬‬
‫‪3‬‬
‫‪3‬‬
‫‪1‬‬
‫‪J/1‬‬
‫‪‬‬
‫‪K/0‬‬
‫‪6‬‬

‫‪81‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪A‬‬
‫‪ ‬امل بودن‪ :‬بله‬
‫‪ ‬ين م‪ :‬بله‬
‫) ‪O(bm‬‬ ‫‪‬پيچيدگي ما ي‪:‬‬
‫) ‪O(bd‬‬ ‫‪‬اما اگر *‪ h = h‬آن ا‬
‫) ‪O(bm‬‬ ‫‪‬پيچيدگم فضا‪:‬‬
‫‪‬اما اگر *‪ h = h‬آن ا ) ‪O(bd‬‬
‫‪82‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪A‬‬
‫‪A‬‬ ‫‪A‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪1 B‬‬ ‫‪C 2‬‬ ‫‪3 B‬‬ ‫‪C 4‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪1 D‬‬ ‫‪E 1‬‬ ‫‪2 D‬‬ ‫‪E 1‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪1 F‬‬ ‫‪G‬‬ ‫‪0‬‬ ‫‪1 F‬‬ ‫‪G‬‬ ‫‪0‬‬
‫‪1‬‬ ‫‪1‬‬

‫‪0 H‬‬ ‫‪0 H‬‬


‫*‪h ≤ h‬‬ ‫*‪≤/ h‬‬
‫‪h 83‬‬
‫جست و جوی آگاهانه و اکتشاف‬
A* ‫جستجوی‬
A A
1 1 1 1 1 1
1 B C 2 
4 3 B C 4
1 1 1 1
2 5 2
1 D E 1 2 D E 1
1 6 1 1 1
3
1 F
G 0
3
1 F G 0
1 1
4
0 H 0 H
h ≤ h* ≤/ h*
h 84
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ A‬و اجتناب از گره های تکراری‬
‫‪A/100‬‬

‫‪10‬‬

‫‪B/80‬‬ ‫‪C/95‬‬ ‫‪D/90‬‬

‫‪E/86‬‬ ‫‪F/78‬‬ ‫‪G/90‬‬ ‫‪T/60‬‬ ‫‪M/75‬‬ ‫‪I/87‬‬

‫‪H/80‬‬ ‫‪J/82‬‬ ‫‪M/75‬‬ ‫‪N/72‬‬ ‫‪K/85‬‬ ‫‪L/80‬‬ ‫‪W/52‬‬ ‫‪X/58‬‬ ‫‪O/78‬‬ ‫‪P/79‬‬ ‫‪U/81‬‬ ‫‪V/83‬‬

‫‪O/78‬‬ ‫‪P/79‬‬ ‫‪S/70‬‬ ‫‪T/60‬‬ ‫‪Y/47‬‬ ‫‪Z/50‬‬

‫‪W/52‬‬ ‫‪X/58‬‬ ‫‪Q/0‬‬ ‫‪R/20‬‬ ‫هزينه هر مرحله ‪ 10‬ميباشد‬


‫‪85‬‬
‫‪Y/47‬‬ ‫‪Z/50‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ A‬و اجتناب از گره های تکراری‬
‫‪A/100‬‬

‫‪8‬‬
‫‪1‬‬
‫‪‬‬ ‫‪B/80 90‬‬ ‫‪105 C/95‬‬ ‫‪‬‬ ‫‪100 D/90‬‬
‫‪3‬‬
‫‪‬‬
‫‪2‬‬ ‫‪4‬‬
‫‪‬‬ ‫‪‬‬
‫‪106 E/86‬‬ ‫‪F/78 98‬‬ ‫‪G/90 110‬‬ ‫‪T/60 80‬‬ ‫‪95 M/75‬‬ ‫‪I/87 107‬‬

‫‪‬‬ ‫‪M/75 105‬‬

‫‪S/70 110‬‬
‫‪‬‬
‫‪5‬‬
‫‪N/72 102‬‬

‫‪6‬‬
‫‪‬‬
‫‪T/60 100‬‬
‫‪9‬‬
‫‪‬‬
‫‪82 W/52‬‬

‫‪87 Y/47‬‬
‫‪88 X/58‬‬

‫‪Z/50 90‬‬
‫‪O/78‬‬

‫‪108‬‬
‫‪P/79‬‬

‫‪109‬‬

‫‪7‬‬
‫‪‬‬ ‫‪10‬‬
‫‪102 W/52‬‬
‫‪‬‬
‫‪X/58 108‬‬ ‫‪Q/0‬‬ ‫‪R/20‬‬

‫‪50‬‬ ‫‪70‬‬
‫‪86‬‬
‫‪107 Y/47‬‬ ‫‪Z/50 110‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫مثال ديگر از جستجوی *‪A‬‬
‫)‪f(n)=g(n) + h(n‬‬

‫‪87‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ A‬در نقشه رومانی‬

‫جستجوی ‪ Bucharest‬با شروع از ‪Arad‬‬


‫‪f(Arad) = g(Arad)+h(Arad)=0+366=366‬‬

‫‪88‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ 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‬است‬
‫‪89‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫ در نقشه رومانی‬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 ‫بهترين انتخاب شهر‬
90
‫جست و جوی آگاهانه و اکتشاف‬
‫ در نقشه رومانی‬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 ‫بهترين انتخاب شهر‬ 91
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ A‬در نقشه رومانی‬

‫ََ ‪ Fagaras‬را باز کرده و )‪ f(n‬را برای هر يک از زيربرگها محاسبه ميکنيم‪:‬‬


‫‪f(Sibiu)=c(Fagaras, Sibiu)+h(Sibiu)=338+253=591‬‬
‫‪f(Bucharest)=c(Fagaras,Bucharest)+h(Bucharest)=450+0=450‬‬
‫بهترين انتخاب شهر !!! ‪ Pitesti‬است‬ ‫‪92‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ A‬در نقشه رومانی‬

‫ََ ‪ Pitesti‬را باز کرده و )‪ f(n‬را برای هر يک از زيربرگها محاسبه ميکنيم‪:‬‬


‫‪f(Bucharest)=c(Pitesti,Bucharest)+h(Bucharest)=418+0=418‬‬

‫بهترين انتخاب شهر !!! ‪ Bucharest‬است‬ ‫‪93‬‬


‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی *‪ A‬در نقشه رومانی‬

‫‪94‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی اکتشافی با حافظه محدود *‪IDA‬‬
‫‪‬سمماد تممرين را ب مرای مماه مافظممه مممورد نيمما *‪ A‬اسممتفاد ا عميممق کننممد تک مرار در مينممه‬
‫جست و جوی اکتشاف است‪.‬‬

‫*‪IDA‬‬ ‫‪‬ال وريتگ عميق کنند تکرار *‪A‬‬

‫‪‬در جستجوی *‪ IDA‬مقدار برش مورد استفاد ‪ ،‬عمق نيست بلکه هزينه )‪ f(g+h‬است‪.‬‬

‫‪ IDA*‬ب مرای اغل م مس م له هممای بمما هزينممه هممای مرملممه ای‪ ،‬مناس م اسممت و ا سممر ار نا م ي ا‬
‫نگهداری ص مرتبي ا گر ها اجتناب ميکند‬

‫‪95‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫بهترين جستجوی بازگشتي ‪RBFS‬‬
‫‪‬ساختار آن شديه جست و جوی عمقي با گشتي است‪ ،‬اما بمه جمای اينکمه دائمما بمه طمرف پمايین‬
‫مسممین مرکممت کنممد‪ ،‬مقممدار ‪ f‬مر ممو بممه تممنين مسممین ا هممر جممد گممر فعلممن را نگهممداری ميکنمد‪ ،‬اگممر‬
‫گر فعلن ا اين مد تجاو کند‪ ،‬با گشت به عق برميگردد تا مسین ديگري را انتخاب کند‪.‬‬
‫‪‬اين جستجو اگر تابع اکتشافن مابل مبولن داشته باشد‪ ،‬ينه است‪.‬‬

‫‪‬پيچيدگي فضایي آن )‪ O(bd‬است‬


‫‪‬تعيین پيچيدگم ما م آن به دمت تابع اکتشافن و میزان تغيین تنين مسین در اثر بسمط گمر هما‬
‫بست م دارد‪.‬‬

‫‪96‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫بهترين جستجوی بازگشتي ‪RBFS‬‬
‫‪ RBFS‬تا مدی ا *‪ IDA‬ارآمدتر است‪ ،‬اما گر های يادی توليد ميکند‪.‬‬

‫‪ IDA* ‬و ‪ RBFS‬در معم ممرا اف م مزاي تم مموا ي پيچيم ممدگي م م مرار دارنم ممد کم ممه در جسم ممت و جم مموی‬
‫گرافهمما مرسمموم اسممت‪ ،‬يمرا نميتواننممد مالن ممای تکمراری را در غیممن ا مسممین فعلم بررسم ي کننممد‪ .‬لم ا‪،‬‬
‫ممکن است ي مالت را دندين بار بررس ي کنند‪.‬‬

‫‪ IDA* ‬و ‪ RBFS‬ا فضای اند ي استفاد ميکنند که به آن ا آسي مینساند‪ IDA* .‬بین‬
‫هممر تکمرار فقممط يم عممدد را نگهممداری ميکنممد کممه فعلم هزينممه ‪ f‬اسممت‪ RBFS .‬اطالعممات بيشممتنی‬
‫در مافظه نگهداری ميکند‬
‫‪97‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫بهترين جستجوی بازگشتي در نقشه رومانی‬

‫‪98‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫بهترين جستجوی بازگشتي در نقشه رومانی‬

‫‪99‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫بهترين جستجوی بازگشتي در نقشه رومانی‬

‫‪100‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حافظه محدود ساده *‪SMA‬‬
‫‪ SMA*‬تنين برگ را بسمط ميدهمد تما مافظمه پمر شمود‪ .‬در ايمن نقطمه بمدون ا بمین بمردن گمر‬
‫های مبل نميتواند گر جديدی ا افه کند‬

‫‪ SMA*‬هميشممه بممدترين گممر بممرگ را م م ف ميکنممد و س م س ا طريممق گممر فراممموش شممد بممه‬
‫والممد آن بممر ميگممردد‪ .‬پممس جممد يممر درخممت فراممموش شممد ‪ ،‬کيفيممت تممنين مسممین را در آن يمر درخممت‬
‫ميداند‬

‫‪‬اگر عمق سطحن ترين گر هدف کمتن ا مافظه باشد‪ ,‬امل است‪.‬‬

‫‪ SMA* ‬تنين ال وريتگ همه منظور برای يافتن ملهای ينه ميباشد‬
‫‪101‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی حافظه محدود ساده *‪SMA‬‬
‫‪‬اگمر مقمدار ‪ f‬تممام برگهمما يکسمان باشمد و ال موريتگ يم گمر را همگ بمرای بسممط و همگ بمرای مم ف‬
‫انتخماب کنمد‪ SMA* ،‬ايممن مسم له را بمما بسمط تممنين بمرگ جديمد و مم ف تمنين بممرگ ممديم مممل‬
‫ميکند‬

‫‪‬ممک ممن اس ممت *‪ SMA‬مجب ممور ش ممود دائم مما ب ممین مجموع ممه ای ا مس ممینهای م ممل اندي ممد تغيی ممن‬
‫مو ع دهد‪ ،‬در مالن که بخ ودکم ا هر کدام در مافظه جا شود‬

‫‪‬محدودين ای مافظه ممکن است مس له ها را ا نظر مان محاسباتم‪ ،‬غین مابل مل کند‪.‬‬

‫‪102‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪C/1‬‬ ‫‪2‬‬

‫‪4‬‬ ‫‪G/1‬‬
‫‪1‬‬ ‫‪1‬‬ ‫‪1‬‬
‫‪A/6‬‬
‫‪E/2‬‬
‫‪D/1‬‬ ‫‪1‬‬ ‫‪H/0‬‬
‫‪1‬‬ ‫‪J/1‬‬ ‫‪1‬‬
‫‪1‬‬ ‫‪4‬‬ ‫‪2‬‬
‫‪B/5‬‬ ‫‪F/2‬‬
‫‪3‬‬
‫‪103‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪5‬‬ ‫‪‬‬
‫‪C/1‬‬

‫‪4‬‬

‫‪A/6‬‬

‫‪1‬‬

‫‪B/5‬‬
‫‪6‬‬
‫‪104‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪5‬‬ ‫‪‬‬
‫‪C/1‬‬ ‫‪2‬‬
‫‪7‬‬
‫‪4‬‬ ‫‪G/1‬‬
‫‪1‬‬
‫‪A/6‬‬

‫‪D/1‬‬
‫‪1‬‬
‫‪62‬‬
‫‪‬‬
‫‪B/5‬‬
‫‪6‬‬
‫‪105‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪5‬‬ ‫‪‬‬
‫‪C/1‬‬ ‫‪2‬‬
‫‪7‬‬
‫‪4‬‬ ‫‪G/1‬‬
‫‪1‬‬
‫‪A/6‬‬
‫‪7‬‬
‫‪D/1‬‬ ‫‪1‬‬
‫‪1‬‬
‫‪62‬‬
‫‪‬‬
‫‪J/1‬‬

‫‪B/5‬‬
‫‪63‬‬
‫‪‬‬ ‫‪106‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪5‬‬ ‫‪4‬‬
‫‪C/1‬‬ ‫‪2‬‬
‫‪7 6‬‬
‫‪4‬‬ ‫‪G/1‬‬
‫‪1‬‬
‫‪A/6‬‬ ‫‪5‬‬
‫‪4 E/2‬‬
‫‪7‬‬
‫‪4‬‬ ‫‪D/1‬‬
‫‪1‬‬ ‫‪‬‬ ‫‪62‬‬
‫‪1‬‬
‫‪J/1‬‬
‫‪1‬‬ ‫‪4‬‬ ‫‪‬‬
‫‪B/5‬‬ ‫‪F/2‬‬
‫‪63‬‬ ‫‪3‬‬
‫‪‬‬ ‫‪5‬‬
‫‪107‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪5‬‬ ‫‪4‬‬
‫‪C/1‬‬ ‫‪2‬‬
‫‪7 6‬‬
‫‪4‬‬ ‫‪G/1‬‬
‫‪1‬‬ ‫‪1‬‬
‫‪A/6‬‬ ‫‪5‬‬
‫‪4 E/2‬‬
‫‪7‬‬
‫‪4‬‬ ‫‪D/1‬‬
‫‪1‬‬ ‫‪‬‬ ‫‪62‬‬
‫‪1‬‬
‫‪J/1‬‬
‫‪1‬‬ ‫‪4‬‬ ‫‪‬‬ ‫‪6‬‬
‫‪B/5‬‬ ‫‪F/2‬‬
‫‪63‬‬ ‫‪3‬‬
‫‪‬‬ ‫‪5 5‬‬
‫‪‬‬ ‫‪108‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪4‬‬
‫‪C/1‬‬ ‫‪2‬‬
‫‪7 6‬‬
‫‪G/1‬‬
‫‪1‬‬ ‫‪1‬‬
‫‪A/6‬‬ ‫‪5‬‬
‫‪4 E/2‬‬ ‫‪6‬‬
‫‪‬‬
‫‪4‬‬ ‫‪D/1‬‬ ‫‪1‬‬ ‫‪‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪J/1‬‬
‫‪1‬‬ ‫‪‬‬ ‫‪2‬‬ ‫‪6‬‬
‫‪B/5‬‬ ‫‪F/2‬‬
‫‪63‬‬ ‫‪3‬‬
‫‪‬‬ ‫‪5 5‬‬
‫‪‬‬ ‫‪109‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جستجوی گراف با *‪A‬‬
‫‪1‬‬
‫‪5‬‬ ‫‪4‬‬
‫‪C/1‬‬ ‫‪2‬‬
‫‪7 6‬‬
‫‪G/1‬‬
‫‪1‬‬ ‫‪1‬‬
‫‪A/6‬‬ ‫‪5‬‬ ‫‪7‬‬
‫‪4‬‬
‫‪4 E/2‬‬
‫‪D/1‬‬
‫‪76‬‬
‫‪‬‬ ‫‪‬‬
‫‪1‬‬ ‫‪‬‬ ‫‪62‬‬
‫‪1‬‬
‫‪J/1‬‬
‫‪H/0‬‬
‫‪6‬‬
‫‪1‬‬ ‫‪‬‬ ‫‪6‬‬
‫‪1‬‬

‫‪B/5‬‬ ‫‪F/2‬‬
‫‪63‬‬ ‫‪3‬‬
‫‪‬‬ ‫‪5 5‬‬
‫‪‬‬ ‫‪110‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫يادگيری برای جست و جوی بهتر‬
‫‪‬روشهای جست و جوی مبل ‪ ،‬ا روشهای ثابت استفاد ميکردند‪.‬‬
‫‪‬عامل با استفاد ا فضای حالت فراسطحی ميتواند ياد بگیند که تن جست و جو کند‬
‫‪‬ه ممر مال ممت در فض ــای حال ــت ف ــرا س ــطحی‪ ،‬مال ممت(محاس ممباتم) داخل م ِمن برنام ممه ای را ت م م ین‬
‫ميکند که فضای حالت سطح ش یء‪ ،‬مثل روما م را جست و جو ميکند‬
‫‪‬ال مموريتگ ي ــادگيری فراس ــطحی ميتوان ممد دیزه ممایي را ا تجر ي ممات بي ممامو د ت مما يردرخن ممای غی ممن‬
‫مابل مبول را اوش نکند‪.‬‬
‫‪‬هدف يادگینی‪ ،‬کمينه کردن کل هزينه‪ ،‬مل مس له است‬

‫‪111‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫توابع اکتشافی‬

‫‪‬مثال برای معمای‪8‬‬


‫ميانگين هزينه حل تقريبا ‪ 22‬مرحله و فاکتور انشعاب در حدود ‪ 3‬است‪.‬‬
‫‪ِ ‬‬
‫‪322  3.11010‬‬ ‫‪‬جست و جوی جامع تا عمق ‪: 22‬‬
‫‪‬با انتخاب يک تابع اکتشافی مناسب ميتوان مراحل جستجو را کاهش داد‬
‫‪112‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫دو روش اکتشافي متداول برای معمای‪8‬‬

‫‪h1 ‬‬ ‫تعداد کاشيها در مکانهای نادرست‬


‫‪h1  8‬‬ ‫در حالت شروع‬

‫‪h1‬اکتشــاف قابــل قبــولی اســت‪ ،‬زيـرا هــر کاشـ ي‬


‫که در جای نامناسبی قـرار دارد‪ ،‬حـداقل يکبـار‬
‫بايد جابجا شود‬
‫‪113‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫دو روش اکتشافي متداول برای معمای‪8‬‬

‫‪h2 ‬‬ ‫مجموعه فواصل کاشيها از موقعيتهای هدف آنها‬


‫در حالت شروع‬
‫‪h2  3  1  2  2  2  3  3  2  18‬‬

‫دممون اشممي ا نميتواننممد در امتممداد مطممر جمما بممه جمما شمموند‪,‬‬


‫فاص ممله ای ک ممه محاس ممبه ميکن مميگ مجم مموع فواص ممل افق مم و‬
‫عممودی اسممت‪ .‬ايممن فاصممله را فاصممله بلــوک شــهر يمما فاصممله‬
‫‪114‬مانهاتان مينامند‪.‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫دو روش اکتشافي متداول برای معمای‪8‬‬

‫‪h2 ‬‬ ‫مجموعه فواصل کاشيها از موقعيتهای هدف آنها‬


‫‪h2‬مابممل مبممول اسممت‪ ،‬ي مرا هممر جابجممایي کممه ميتوانممد انجممام‬
‫گیند‪ ،‬به اندا ي مرمله به هدف نزدي ميشود‪.‬‬

‫هيچ کدام از اين برآوردها‪ ،‬هزينه واقعی راه حل نيست‬

‫هزينه واقعي ‪ 36‬است‬


‫‪115‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫اثر دقت اکتشاف بر کارايي‬
‫‪‬فاکتور ا شعاب مؤثر *‪b‬‬
‫‪‬اگر تعداد گر همایي کمه بمرای يم مسم له خماص توسمط *‪ A‬توليمد ميشمود برابمر بما ‪ N‬و عممق را ممل برابمر‬
‫بمما ‪ d‬باشممد‪ ،‬آن گمما *‪ b‬فــاکتور انشــعابی اسممت کممه درخممت يکنممواخت بممه عمممق ‪ d‬بايممد داشممته باشممد تمما ممماوی‬
‫‪ N+1‬گر باشد‬
‫)*‪N  1  1 b * (b*)  ...  (b‬‬ ‫‪2‬‬ ‫‪d‬‬
‫ً‬
‫‪‬فاکتور ا شعاب مؤثر معموال برای مسئله های سخت ثابت است‬
‫‪‬اندا گیني ای تجربي *‪ b‬بر روی مجموعه ودکي ا مس له ها ميتوانمد راهنمای خـوبي بـرای مفيـد بـودن‬
‫اکتشاف باشد‬

‫‪‬‬ ‫‪‬مقدار *‪ b‬در اکتشاف با طراح خوب‪ ،‬نزدي ‪ 1‬است‬


‫‪116‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫اثر دقت اکتشاف بر کارايي‬
‫هزينه جست و جو‬ ‫فاکتور انشعاب مؤثر‬

‫ميانگين گره های بسط يافته در جستجوی‪ IDS‬و *‪ A‬و فاکتور انشعاب مؤثر با استفاده از‪ h1‬و ‪h2‬‬
‫‪117‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫اثر دقت اکتشاف بر کارايي‬
‫‪‬اگر برای هر گر ‪ n‬داشته باشيگ‪h2(n) >= h1(n) :‬‬
‫‪ h2‬بر ‪h1‬غال است‬
‫‪‬غال بودن مستقيما به ارایي ترجمه ميشود‬
‫‪‬تعداد گر هایي که با بکارگینی ‪ h2‬بسط داد ميشود‪ ،‬هرگز بي ا بکارگینی ‪ h1‬نيست‬

‫هميشه بهتر است از تابع اکتشافی با مقادير بزرگ استفاده‬


‫کرد‪ ،‬به شرطی که زمان محاسبه اکتشاف‪ ،‬خيلي بزرگ‬
‫نباشد‬
‫‪118‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫الگوريتم های جست و جوی محلی و بهينه سازی‬
‫‪‬ال وريتگ های مبلن‪ ،‬فضای جست و جو را به طور سيستماتي بررس ميکنند‬
‫‪‬تا رسيدن به هدف ي يا دند مسین نگهداری ميشوند‬
‫‪‬مسین رسيدن به هدف‪ ،‬را مل مس له را تشکيل ميدهد‬

‫‪‬در ال وريتگ های محلن مسین رسيدن به هدف مهگ نيست‬


‫‪‬مثال‪ :‬مس له ‪ 8‬و ير‬

‫‪‬دو امتيا عمد جست و جوهای محل‬


‫‪‬استفاد ا مافظه کمکم‬
‫‪‬ارائه را ملهای منطقي در فضاهای بزرگ و نامتناهن‬
‫‪‬اين ال وريتمها برای مل مسائل ينه سا ی نیز مفيدند‬
‫‪‬يافتن تنين مالت بر اساس تابع هدف‬ ‫‪119‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫الگوريتم های جست و جوی محلی و بهينه سازی‬

‫‪120‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جست و جوی تپه نوردی‬
‫‪‬ملقه اي که در جهت افزاي مقدار مرکت ميکند(بطرف باالی تپه)‬
‫‪‬رسيدن به بلندترين مله در همساي م مالت فعلن‪ ،‬شر خاتمه است‪.‬‬

‫‪‬ساختمان داد گر فعلن‪ ،‬فقط مالت و مقدار تابع هدف را نگه ميدارد‬
‫‪‬جست و جوی محلن مريصانه نیز نام دارد‬
‫‪‬بدون فکر مبل مالت همسايه خوبي را انتخاب ميکند‬

‫‪‬تپه نوردی به داليل ير ميتواند متوم شود‪:‬‬


‫‪‬بيشينه محل‬
‫‪‬برآمدگي ها‬
‫‪‬فالت‬
‫‪121‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جست و جوی تپه نوردی‬
‫‪‬انواع تپه نوردی‪:‬‬
‫‪‬تپه نوردی غینمط ن‪ ،‬تپه نوردی اولین انتخاب‪ ،‬تپه نوردی شروع مجدد تصادفن‬

‫مثال‪ :‬مسئله ‪ 8‬وزير‬


‫‪‬مس له ‪ 8‬و ير با استفاد ا فرمولبندی مالت امل‬
‫‪‬در هر مالت ‪ 8‬و ير در صفحه مرار دارند‬
‫‪‬تابع جا شین‪ :‬انتقال ي و ير به مربع ديگر در همان ستون‬
‫‪‬تابع اکتشاف‪ :‬جفت و يرهایي که سدت به هگ گارد دارند‬
‫‪‬مستقيگ يا غین مستقيگ‬
‫‪122‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫مثال جست و جوی تپه نوردی‬
‫ال‬ ‫ب‬

‫ال ‪ -‬مالت با هزينه ‪ h=17‬که مقدار ‪ h‬را برای هر جا شین شان ميدهد‬
‫ب‪ -‬کمينه محلن در فضای مالت ‪ 8‬و ير؛ ‪h=1‬‬
‫‪123‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جست و جوی شبيه سازی حرارت‬
‫‪‬تپه نوردی مرک با مرکت تصادفن‬
‫‪‬شديه سا ی مرارت‪ :‬مرارت با درجه باال و به تدريج سرد کردن‬
‫‪‬مقايسه با مرکت توپ‬
‫‪‬توپ در فرود ا تپه به عميق ترين شکاف مینود‬
‫‪‬با تکان دادن سطح توپ ا بيشينه محل خارج ميشود‬
‫‪‬با تکان شديد شروع(دمای ياد)‬
‫‪‬بتدريج تکان اه (به دمای پايین تر)‬

‫ينه عمومم را مي يابد‬ ‫ماندندی دما به تدريج‪ ،‬ال وريتگ ي‬ ‫‪‬با اه‬

‫‪124‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جست و جوی پرتو محلي‬
‫‪‬به جای ي مالت‪ k ،‬مالت را نگهداری ميکند‬
‫‪‬مالت اوليه‪ k :‬مالت تصادفن‬
‫‪‬گام بعد‪ :‬جا شین همه ‪ k‬مالت توليد ميشود‬
‫‪‬اگر يکي ا جا شین ها هدف بود‪ ،‬تمام ميشود‬
‫‪‬وگر نه تنين جا شین را انتخاب کرد ‪ ،‬تکرار ميکند‬

‫‪‬تفاوت عمد با جستجوی شروع مجدد تصادفن‬


‫‪‬در جست و جوی شروع مجدد تصادفن‪ ،‬هر فرايند مستقل ا بقيه اجرا ميشود‬
‫‪‬در جست و جوی پرتو محلن‪ ،‬اطالعات مفيدی بین ‪ k‬فرايند موا ی مبادله ميشود‬

‫‪‬جست و جوی پرتو غینمط ن‬


‫‪‬به جای انتخاب تنين ‪ k‬ا جا شيا ا‪ k ،‬جا شین تصادفن را بطوريکه امتمال انتخاب يکي تاب ن صعودی ا‬
‫مقدارش باشد‪ ،‬انتخاب ميکند‬
‫‪125‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫الگوريتم های ژنتيک‬

‫ش م م م م م ممکلن ا جس م م م م م ممت و‬
‫جمموی پرتممو غیممن مط ممن‬
‫کم ممه مالن م ممای جا شم ممین‬
‫ا طريم م م م ممق ترکي م م م م م دو‬
‫مالم م م م ممت والم م م م ممد توليم م م م ممد‬
‫ميشود‬

‫‪126‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫الگوريتم های ژنتيک‬

‫‪127‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫جست و جوی محلی در فضاهای پيوسته‬
‫‪‬گسسته در مقابل محيط های پيوسته‬
‫‪‬در فضاهای پيوسته‪ ،‬تابع جا شین در اغل موارد‪ ،‬مالن ای نامتناهن را بر ميگرداند‬

‫‪‬مل مس له‪:‬‬
‫‪‬گسسته کردن همسايه هر مالت‬
‫‪‬استفاد ا شي منظر‬

‫‪f f ‬‬
‫‪x  x  f‬‬ ‫‪where f   ,‬‬ ‫‪,...‬‬
‫افسون ‪x1‬‬
‫‪x 2 ‬‬
‫‪‬روش نيوتن ر‬
‫‪128‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫عاملهای جست و جوی ‪ Online‬و محيطهای ناشناخته‬
‫‪‬تا به مال همه ال وريتمها برون خطي بودند‬
‫‪‬برون خطم(‪:)Offline‬را مل مبل ا اجرا مش م است‬
‫‪‬درون خطم(‪:)Online‬با ي در ميان کردن محاسبات و فعاليت عمل ميکند‬

‫‪‬جستجوی درون خطم در محيطهای پويا و نيمه پويا مفيد است‬


‫‪‬آنچه را که بايد وامعا اتفاق بيفتد‪ ،‬در نظر گرفته نميشود‬

‫روری برای مسئله اکتشاف است‬ ‫‪‬جست و جوی درون خطم ايد‬
‫‪‬فعالين ا و مالن ا برای عامل مش م نيستند‬
‫‪‬مثال‪:‬مرار گرفتن رو ات در محيطي جديد‪ ,‬نو اد تا بدنيا آمد‬

‫‪129‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫مسئله های جست و جوی ‪Online‬‬
‫‪‬اطالعات عامل‬
‫‪ :Actions(s)‬ليست ا فعالين ای مجا در مالت ‪s‬‬
‫‪‬تابع هزينه مرمله ای )’‪ :c(s,a,s‬استفاد ومت که بداند ’‪ s‬نتيجه است‬
‫‪ :Goal-Test(s)‬آ مون هدف‬

‫‪‬عامل مالت مالمات شد مبلن را تش يم ميدهد‬


‫‪‬فعالين ا مط ن اند‬
‫‪‬دستنس به تابع اکتشافن مابل مبول )‪h(s‬‬

‫‪130‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫مسئله های جست و جوی ‪Online‬‬
‫‪ ‬هدف‪ :‬رسيدن به ‪ G‬با کمتنين هزينه‬
‫‪‬هزينه‪ :‬مجموع هزينه های مرامل مسینی است که عامل طم ميکند‬
‫‪ ‬سدت رمابت ‪ :‬مقايسه هزينه با هزينه مسینی که اگر عامل فضای مالت را ا مبل‬
‫ميشناخت‪ ،‬طم ميکرد‬
‫‪‬در بعض موارد‪ ،‬تنين سدت رمابت‬
‫نامتناهن است‬
‫‪‬ممکن است جستجو به ي مالت‬
‫بن بست برسد که نتوان ا طريق آن به هدف رسيد‬

‫‪131‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫مسئله های جست و جوی ‪Online‬‬

‫دو فضمای مالممت کمه عامممل جسممت‬


‫و جمموی ‪ Online‬را بممه بممن بسممت‬
‫مینسم ممانند‪ .‬هم ممر عم ممامل مم ممدامل در‬
‫يک ممي ا اي ممن دو فض مما شکس ممت م ممم‬
‫خورد‬

‫‪132‬‬
‫جست و جوی آگاهانه و اکتشاف‬
‫مسئله های جست و جوی ‪Online‬‬

‫يم م م محم م مميط دو بع م ممدی کم م ممه موج م م م‬


‫ميش م م م م م م م م م م م ممود عام م م م م م م م م م م م ممل جس م م م م م م م م م م م ممت و‬
‫جم م م م م مموی‪ Online‬مسم م م م م ممین د م م م م م مموا‬
‫نا ارآم ممدی را ب مرای رس مميدن ب ممه ه ممدف‬
‫مل کند‬

‫‪133‬‬
‫هوش مصنوعي‬
‫فصل پنجگ‬
‫مسائل ار ای محدوديت‬
‫‪134‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬

‫فهرست‬
‫‪‬ارضای محدوديت چيست؟‬
‫‪‬جست و جوی عقبگرد برای ‪CSP‬‬
‫‪‬بررس ی پيشرو‬
‫‪‬پخش محدوديت‬

‫‪135‬‬
‫مسائل ار ای محدوديت‬
‫ار ای محدوديت (‪ )CSP‬ديست؟‬
‫‪‬مجموعه متناهن ا متغینها؛ ‪X1, X2, …, Xn‬‬
‫‪‬مجموعه متناهن ا محدودين ا؛ ‪C1, C2, …, Cm‬‬
‫‪‬دامنه های ناته برای هر ي ا متغینها؛ ‪DX1,DX2,…,DXn‬‬
‫‪‬هر محدوديت ‪ Ci‬يرمجموعه ای ا متغینها و ترکيب ای ممکن ا مقادير برای آن يرمجموعه ها‬
‫‪‬هر مالت با انتساب مقاديری به دند يا تمام متغینها تعري ميشود‬
‫‪‬انتسابم که هيچ محدوديت را نقض نکند‪ ،‬انتساب سازگار نام دارد‬
‫‪‬انتساب کامل آن است که هر متغینی در آن باشد‬
‫‪ ‬راه حل ‪ CSP‬ي انتساب امل است اگر تمام محدودين ا را برآورد کند‬
‫‪‬بعض ا ‪CSP‬ها به را ملهایي نيا دارند که تابع هدف را بيشينه کنند‬
‫‪136‬‬
‫مسائل ار ای محدوديت‬
‫مثال ‪ :CSP‬رنگ آمیزی نقشه‬

‫متغینها‪WA, NT, Q, NSW, V, SA, T :‬‬

‫دامنه‪{ :‬آبم‪ ،‬سعز‪ ،‬مرمز} = ‪Di‬‬

‫محدودين ا‪ :‬دو منطقه مجاور‪ ،‬همرنگ نيستند‬


‫مثال‪ WA ≠ NT :‬يعن )‪ (WA,NT‬عضو‬

‫{(مرمز‪,‬سعز(‪),‬مرمز‪,‬آبم(‪),‬سعز‪,‬مرمز)‪،‬‬
‫(سعز‪,‬آبم(‪),‬آبم‪,‬مرمز(‪),‬آبم‪,‬سعز)}‬

‫‪137‬‬
‫مسائل ار ای محدوديت‬

‫را مل انتساب مقاديری است که محدودين ا را ار ا کند‬


‫‪138‬‬
‫مسائل ار ای محدوديت‬
‫گراف محدوديت‬

‫‪‬در گراف محدوديت‪:‬‬


‫‪‬گر ها‪ :‬متغینها‬
‫‪‬يالها‪ :‬محدودين ا‬

‫‪‬گراف برای ساد تر کردن‬


‫جست و جو بکار مینود‬

‫‪139‬‬
‫مسائل ار ای محدوديت‬
‫مثال ‪ :CSP‬رمزن اری‬

‫دامنه‪9{:‬و‪8‬و‪7‬و‪6‬و‪5‬و‪4‬و‪3‬و‪2‬و‪1‬و‪}0‬‬ ‫متغینها‪F,T,U,W,R,O,X1,X2,X3:‬‬

‫محدودين ا‪ F,T,U,R,O,W :‬مخالفند ‪... - O+O=R+10.X1 -‬‬


‫‪140‬‬
‫مسائل ار ای محدوديت‬

‫‪‬نماي مالن ا در ‪ CSP‬ا ال وی استانداردی پینوی ميکند‬


‫‪‬برای ‪ CSP‬ميتوان فرمول بندی افزايش ي ارائه کرد‪:‬‬
‫‪‬مالت اوليه‪ :‬انتساب خالن{} که در آن‪ ،‬هيچ متغینی مقدار ندارد‬
‫‪‬تابع جا شین‪ :‬انتساب ي مقدار به هر متغین فامد مقدار‪ ،‬به شرطم که با‬
‫متغینهایي که مبال مقدار گرفتند‪ ،‬متضاد نباشند‬
‫‪‬آ مون هدف‪ :‬انتساب فعلن امل است‬
‫‪‬هزينه مسین‪ :‬هزينه ثابت برای هر مرمله‬
‫‪141‬‬
‫مسائل ار ای محدوديت‬
‫جست و جوی عقبگرد برای ‪CSP‬‬
‫‪‬جست و جوی عمقي‬
‫‪‬انتخاب مقادير ي متغین در هر مان و عقبگرد در صورت عدم وجود‬
‫مقداری معتعن برای انتساب به متغین‬
‫‪‬ي ال وريتگ ناآگاهانه است‬
‫‪‬برای مس له های بزرگ ارآمد نيست‬

‫‪142‬‬
‫مسائل ار ای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬

‫‪143‬‬
‫مسائل ار ای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬

‫‪144‬‬
‫مسائل ار ای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬

‫‪145‬‬
‫مسائل ار ای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬

‫‪146‬‬
‫مسائل ار ای محدوديت‬
‫کمينه(‪)MRV‬‬ ‫مقادير باميماند‬

‫‪‬انتخاب متغینی با کمتنين مقادير معتعن‬


‫‪‬متغینی انتخاب ميشود که به امتمال ياد‪ ،‬بزودی با شکست مواجه شد و درخت جست و‬
‫جو را هرس ميکند‬

‫‪147‬‬
‫مسائل ار ای محدوديت‬
‫اکتشاف درجه ای‬

‫‪‬س ن ميکند فاکتور ا شعاب را در انتخاب آيند کگ کند‬


‫‪‬متغینی انتخاب ميکند که در بزرگتنين محدودين ای مر و به متغینهای بدون انتساب مرار‬
‫دارد‬

‫‪148‬‬
‫مسائل ار ای محدوديت‬
‫اکتشاف مقداری باکمتنين محدوديت‬

‫‪‬اين روش مقداری را ترجيح ميدهد که در گراف محدوديت‪ ،‬متغینهای همسايه به ندرت آن را‬
‫انتخاب ميکنند‬
‫‪‬س ن بر ايجاد بيشتنين مابليت ا عطاف برای انتساب بعدی متغینها‬
‫‪149‬‬
‫مسائل ار ای محدوديت‬
‫بررس پيشرو‬

‫ومت انتساب به ‪ X‬صورت ميگیند‪ ،‬فرايند بررس پيشرو‪ ،‬متغینهای بدون‬


‫انتساب مثل ‪ Y‬را در نظر ميگیند که ا طريق ي محدوديت به ‪ X‬متصل‬
‫است و هر مقداری را که با مقدار انتخاب شد برای ‪ X‬برابر است‪ ،‬ا دامنه‬
‫‪ Y‬م ف ميکند‬

‫‪150‬‬
‫مسائل ار ای محدوديت‬
‫بررس پيشرو‬

‫‪151‬‬
‫مسائل ار ای محدوديت‬
‫بررس پيشرو‬

‫‪152‬‬
‫مسائل ار ای محدوديت‬
‫بررس پيشرو‬

‫‪153‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬

‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{1,2,3,4‬‬ ‫}‪{1,2,3,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫}‪{1,2,3,4‬‬ ‫}‪{1,2,3,4‬‬
‫‪154‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{1,2,3,4‬‬ ‫}‪{1,2,3,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫}‪{1,2,3,4‬‬ ‫}‪{1,2,3,4‬‬
‫‪155‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{1,2,3,4‬‬ ‫}‪{ , ,3,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫}‪{ ,2, ,4‬‬ ‫} ‪{ ,2,3,‬‬
‫‪156‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{1,2,3,4‬‬ ‫}‪{ , ,3,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫}‪{ ,2, ,4‬‬ ‫} ‪{ ,2,3,‬‬
‫‪157‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{1,2,3,4‬‬ ‫}‪{ , ,3,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{ , , ,‬‬ ‫} ‪{ ,2,3,‬‬
‫‪158‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{1,2,3,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫}‪{1,2,3,4‬‬ ‫}‪{1,2,3,4‬‬
‫‪159‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{ , , ,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{1, ,3,‬‬ ‫}‪{1, ,3,4‬‬
‫‪160‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{ , , ,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{1, ,3,‬‬ ‫}‪{1, ,3,4‬‬
‫‪161‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{ , , ,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{1, , ,‬‬ ‫} ‪{1, ,3,‬‬
‫‪162‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{ , , ,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{1, , ,‬‬ ‫} ‪{1, ,3,‬‬
‫‪163‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{ , , ,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{1, , ,‬‬ ‫} ‪{ , ,3,‬‬
‫‪164‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬مس له ‪-4‬و ير‬
‫‪X1‬‬ ‫‪X2‬‬
‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫}‪{ ,2,3,4‬‬ ‫}‪{ , , ,4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪X3‬‬ ‫‪X4‬‬
‫} ‪{1, , ,‬‬ ‫} ‪{ , ,3,‬‬
‫‪165‬‬
‫مسائل ار ای محدوديت‬
‫پخ محدوديت‬
‫پخ الزام محدودين ای ي متغین به متغینهای ديگر‬
‫‪‬مثال‪ :‬پخ محدودين ای ‪ WA‬و ‪ Q‬به ‪ NT‬و ‪SA‬‬

‫‪166‬‬
‫مسائل ار ای محدوديت‬
‫سا گاری يال‬
‫‪‬روش سری ن برای پخ محدود و مويتن ا بررس پيشرو‬
‫‪‬يال؛ يال جهت دار در گراف محدوديت‬
‫‪‬بررس سا گاری يال‬
‫‪‬ي مرمله پي پردا ش‪ ،‬مبل ا شروع جستجو‬
‫‪‬ي مرمله پخش پس ا هر انتساب در مین جستجو‬

‫‪167‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬سا گاری يال‬

‫‪ SA  NSW‬سا گار است اگر‬


‫‪SA=blue and NSW=red‬‬
‫‪168‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬سا گاری يال‬

‫‪ NSW  SA ‬سا گار است اگر‬


‫‪SA=blue and NSW=red‬‬
‫???=‪NSW=blue and SA‬‬
‫‪ ‬يال ميتواند سا گار شود با م ف ‪ blue‬ا ‪NSW‬‬
‫‪169‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬سا گاری يال‬

‫‪ ‬يال ميتواند سا گار شود با م ف ‪ blue‬ا ‪NSW‬‬


‫‪ ‬م ف ‪ red‬ا ‪V‬‬

‫‪170‬‬
‫مسائل ار ای محدوديت‬
‫مثال‪ :‬سا گاری يال‬

‫‪ ‬يال ميتواند سا گار شود با م ف ‪ blue‬ا ‪NSW‬‬


‫‪ ‬م ف ‪ red‬ا ‪V‬‬
‫‪ ‬تکرار تا هيچ ناسا گاری باقن نماند‬
‫‪171‬‬
‫مسائل ار ای محدوديت‬
‫سا گاری ‪K‬‬

‫‪‬سا گاری يال تمام ناسا گاري ای ممکن را مش م نميکند‬


‫‪‬با روش سا گاری‪ ،K‬شکلهای مويتنی ا پخ را ميتوان تعري کرد‬
‫‪‬در ص ممورتم ‪ CSP‬س مما گاری‪ K‬اس ممت‪ ،‬ک ممه بم مرای ه ممر ‪ k-1‬متغی ممن و بم مرای ه ممر‬
‫انتسمماب سمما گار بمما آن متغینهمما‪ ،‬يم مقممدار سمما گار‪ ،‬هميشممه بتوانممد بممه متغیممن ‪k‬ام‬
‫سدت داد شود‬

‫‪172‬‬
‫مسائل ار ای محدوديت‬
‫سا گاری ‪K‬‬
‫‪‬بطور مثال‪:‬‬
‫‪‬سا گاری‪ :1‬هر متغین با خودش سا گار است(سا گاری گر )‬
‫‪‬سا گاری‪ :2‬مشابه سا گاری يال‬
‫‪‬سا گاری‪ :k‬بسط هر جفت ا متغینهای همجوار به سومین متغین همسايه(سا گاری مسین)‬

‫‪ ‬گراف در صورتم مويا سا گار‪ K‬است که‪:‬‬


‫‪‬سا گار‪ k‬باشد‬
‫‪‬همچنین سا گار‪ k-1‬و سا گار‪ k-2‬و‪ ...‬سا گار ‪ 1‬باشد‬

‫‪‬در اين صورت‪ ،‬مس له را بدون عقبگرد ميتوان مل کرد‬


‫‪‬پيچيدگم ما م آن )‪ O(nd‬است‬
‫‪173‬‬
‫مسائل ار ای محدوديت‬
‫جست و جوی محلن در مسائل ار ای محدوديت‬
‫‪‬بسياری ا ‪CSP‬ها را بطور ارآمد مل ميکنند‬
‫‪‬مالت اوليه‪ ،‬مقداری را به هر متغین سدت ميدهد‬
‫‪‬تابع جا شین‪ ،‬تغيین مقدار ي متغین در هر مان‬

‫‪‬انتخاب مقدار جديد برای ي متغین‬


‫‪‬انتخاب مقداری که کمتنين برخورد را با متغینهای ديگر ايجاد کند(اکتشاف برخورد کگ)‬
‫‪ ‬مان اجرای برخورد کگ مستقل ا اندا مس له است‬
‫‪‬برخورد کگ‪ ،‬برای مس له های س ت نیز ار ميکند‬

‫‪‬جست و جوی محلن ميتواند در صورت تغيین مس له‪ ،‬تنظيمات ‪ Online‬را‬


‫انجام دهد‬
‫‪174‬‬
‫مسائل ار ای محدوديت‬
‫مثال‬
‫را مل دو مرمله ای برای مس له ‪8‬و ير با استفاد ا کمتنين برخورد‬

‫‪‬در هر مرمله‪ ،‬ي و ير برای انتساب مجدد در ستون خودش انتخاب ميگردد‬
‫‪‬تعداد برخوردها در هر مربع شان داد شد است‬
‫‪‬ال وريتگ و ير را به مرب با کمتنين برخورد انتقال ميدهد‪ ،‬بطوريکه گر ها را بطور تصادفن ميشکند‬
‫‪175‬‬
‫هوش مصنوعي‬
‫فصل ششگ‬
‫جستجوی خصمانه‬
‫‪176‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬
‫فهرست‬
‫‪‬بازيها چيستند و چرا مطالعه ميشوند؟‬
‫‪‬انواع بازيها‬
‫‪‬الگوريتم ‪minimax‬‬
‫‪‬بازيهای چند نفره‬
‫‪‬هرس آلفا‪-‬بتا‬
‫‪‬بازيهای قطعی با اطالعات ناقص‬
‫‪‬بازيهايي که حاوی عنصر شانس هستند‬
‫‪177‬‬
‫جستجوی خصمانه‬
‫با ی ها ديستند و درا مطالعه ميشوند؟‬
‫‪‬با ي ا مالت ا محيطهای دند عامل هستند‬
‫‪‬هر عامل نيا به در نظر گرفتن ساير عاملها و د ون م تأثین آن ا دارد‬
‫‪‬تمايز بین محيطهای دند عامل رمابتي و همکار‬
‫‪‬محيطهای رمابت ‪ ،‬که در آن ا اهداف عاملها با يکديگر برخورد دارند‪ ،‬منجر به مس له های خصمانه‬
‫ميشود که به عنوان با ی شناخته ميشوند‬

‫‪‬درا مطالعه ميشوند؟‬


‫‪‬مابلين ای هوشمندی ا سان ا را به ار ميگینند‬
‫‪‬ماهيت انتزاعن با ی ها‬
‫‪‬مالت با ی را به رامت ميتوان نماي داد و عاملها معموال به مجموعه ودکم ا فعالين ا محدود‬
‫هستند که نتايج آن ا با موانین دميقي تعري شد اند‬

‫‪178‬‬
‫جستجوی خصمانه‬
‫انواع با ی ها‬

‫قطعی‬ ‫تصادفی‬
‫شطرنج‬ ‫تخته نرد‬
‫اطالعات کامل‬
‫ريورس‬

‫پوکر‬
‫اطالعات ناقص‬

‫‪179‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬
‫‪‬با ی دو نفر ‪ Min :‬و ‪Max‬‬
‫‪‬اول ‪ Max‬مرکت ميکند و س س به نو ت با ی ميکنند تا با ی تمام شود‬
‫‪‬در پايان با ی‪ ،‬برند جايز و با ند جريمه ميشود‬

‫‪‬با ی به عنوان ي جستجو‪:‬‬


‫‪‬مالت اوليه‪ :‬مومعيت صفحه و شناسه های مابل مرکت‬
‫‪‬تابع جا شین‪:‬ليست ا (مالت‪,‬مرکت) که معرف ي مرکت معتعن است‬
‫‪‬آ مون هدف‪:‬پايان با ی ده مومع است؟(مالن ای پايانه)‬
‫‪‬تابع سودمندی‪ :‬برای هر مالت پايانه ي مقدار عددی را ارائه ميکند‪ .‬مثال برند (‪ )+1‬و با ند (‪)-1‬‬

‫‪‬مالت اوليه و مر ات معتعن برای هر با يکن‪ ،‬درخت بازی را برای آن با ی ايجاد ميکند‬

‫‪180‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬
‫ال وريتگ؛‬
‫‪‬ب ـ ـ ـ ـ ــازيکن‪ :‬انتخ م م م م مماب بهت ـ ـ ـ ـ ــرين‬
‫حالت‬
‫‪‬حري ـ ـ ـ ـ ــف‪ :‬انتخ م م م م مماب ت م م م م ممنين‬
‫مومعي م م م ممت بم م م م مرای خ م م م ممودش ي م م م مما‬
‫بدترين وضعيت برای با يکن‬

‫با يکن‪ :‬ماکزيمگ مالت‬


‫مري ‪ :‬مينيمگ مالت‬
‫‪181‬‬
‫جستجوی خصمانه‬
‫ال وريتگ ‪minimax‬‬

‫‪182‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬

‫‪183‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬

‫‪184‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬

‫‪185‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬

‫‪186‬‬
‫جستجوی خصمانه‬
‫ي نمونه با ی‬

‫‪187‬‬
‫جستجوی خصمانه‬
‫ال وريتگ ‪minimax‬‬
‫امل بودن‪ :‬بله (اگر درخت محدود باشد)‬
‫ين ي‪ :‬بله‬
‫) ‪O(b‬‬ ‫‪m‬‬ ‫پيچيدگي ما م‪:‬‬
‫)‪O(bm‬‬ ‫پيچيدگم فضا‪:‬‬

‫‪188‬‬
‫جستجوی خصمانه‬
‫با ي ای دند نفر‬
‫‪‬تخصيم ي بردار به هر گر ‪ ،‬به جای ي مقدار‬
‫ً‬
‫‪‬با ي ای دند نفر معوال شامل اتحاد رسم يا غین رسمي بین با يکنان است‬
‫‪‬اتحاد با پيشروی با ی ايجاد و ا بین مینود‬
‫‪‬با يکنان بطور خود ار همکاری ميکنند‪ ،‬تا به هدف مطلوب انحصاری برسند‬

‫‪189‬‬
‫جستجوی خصمانه‬
‫هرس آلفا‪-‬بتا‬

‫در ال وريتگ ‪:MaxMin‬‬


‫‪‬تعداد مالن ای با ی که بايد بررس شوند‪ ،‬بر مس تعداد مرکن ا‪ ،‬توا م است‬
‫‪‬را مل‪ :‬محاسبه تصميگ ال وريتگ‪ ،‬بدون ديدن همه گر ها امکانپ ير است‬

‫هرس آلفا‪-‬بتا‪:‬‬
‫‪‬ا شعا ایي که در تصميگ ن ایي تأثین ندارند را م ف ميکند‬
‫‪‬آلفا‪ :‬مقدار تنين انتخاب در هر نقطه انتخاب در مسین ‪ Max‬تاکنون‬
‫‪‬بتا‪ :‬مقدار تنين انتخاب در هر نقطه انتخاب در مسین ‪ Min‬تاکنون‬
‫‪‬تعداد گر هایي که بايد بررس شوند به) ‪O(bd/2‬تقليل ميابد‬
‫‪‬فاکتور ا شعاب مؤثر به جای ‪ b‬برابر با ج ر‪ b‬خواهد بود‬
‫‪‬پي بيني آن سدت به ‪ minimax‬دو برابر است‬
‫‪190‬‬
‫جستجوی خصمانه‬
‫هرس آلفا‪-‬بتا‬
‫‪‬گر ‪ n‬که هر جای درخت ميتواند باشد‪ ،‬بررس ي‬
‫ميشود‬
‫‪‬اگر با يکن انتخاب تنی داشته باشد‬
‫‪‬در گر والد ‪n‬‬
‫‪‬يا هر انتخاب تنی تا کنون‬

‫‪ n‬هيچومت در با ی وام ن مابل دستنس نخواهد‬


‫بود‬
‫‪‬در نتيجه ‪ n‬هرس ميشود‬
‫‪191‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫محدوده مقادير ممکن‬


‫]∞‪[-∞,+‬‬

‫]∞‪[-∞, +‬‬

‫‪192‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]∞‪[-∞,+‬‬

‫]‪[-∞,3‬‬

‫‪193‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]∞‪[-∞,+‬‬

‫]‪[-∞,3‬‬

‫‪194‬‬
‫جستجوی خصمانه‬

‫]∞‪[3,+‬‬

‫]‪[3,3‬‬

‫‪195‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]∞‪[3,+‬‬

‫اين گره برای ‪ Max‬مناسب نيست‬

‫]‪[3,3‬‬ ‫]‪[-∞,2‬‬

‫‪196‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]‪[3,14‬‬ ‫‪,‬‬

‫]‪[3,3‬‬ ‫]‪[-∞,2‬‬ ‫]‪[-∞,14‬‬

‫‪197‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]‪[3,5‬‬ ‫‪,‬‬

‫]‪[3,3‬‬ ‫]‪[−∞,2‬‬ ‫]‪[-∞,5‬‬

‫‪198‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]‪[3,3‬‬

‫]‪[3,3‬‬ ‫]‪[−∞,2‬‬ ‫]‪[2,2‬‬

‫‪199‬‬
‫جستجوی خصمانه‬
‫مثال‪ :‬هرس آلفا‪-‬بتا‬

‫]‪[3,3‬‬

‫]‪[3,3‬‬ ‫]‪[-∞,2‬‬ ‫]‪[2,2‬‬

‫‪200‬‬
‫جستجوی خصمانه‬
‫با ي ای مط با اطالعات نامم‬
‫معاي ال وريتگ های پيشین‬
‫‪‬ال وريتگ ‪ minimax‬ل فضای جست و جوی با ی را توليد ميکند‬
‫‪‬ال وريتگ آلفا‪-‬بتا با وجود هرس درخت‪ ،‬اما ل مسین مالن ای پايانه‪ ،‬مدامل برای بخش ي ا‬
‫فضای مالت‪ ،‬بايد جست و جو شود‬
‫‪‬اين عمق عمل نيست‪ ،‬يرا مر ات بايد در ما م معقول انجام شود‬

‫شانون(‪)1950‬‬
‫برای کمتن شدن مان جست و جو و اعمال تابع ار يابي اکتشافن به مالن ای جستجو‪ ،‬تن است‬
‫ا گر های غین پايانه به گر های پايانه پرداخته شود‬
‫‪201‬‬
‫جستجوی خصمانه‬
‫با ي ای مط با اطالعات نامم‬

‫‪‬در شانون‪ minimax ,‬و آلفا‪-‬بتا به دو روش بطور متناوب عمل ميکنند‬
‫‪‬جايگزيني تابع سودمندی با تابع ار يابم اکتشافن بنام ‪EVAL‬‬
‫‪‬تخمين ا سودمندی مومعيت ارائه ميکند‬

‫‪‬جايگزين تست پايانه با تست توم‬


‫‪‬تصميگ ميگیند ‪ EVAL‬ده مومع اعمال شود‬

‫‪202‬‬
‫جستجوی خصمانه‬
‫تابع ار يابي اکتشافن ‪EVAL‬‬
‫‪‬تابع ار يابم‪ ،‬ارائه تخمين ا سودمندی مورد انتظار با ی ا ي مومعيت خاص‬
‫‪‬توابع اکتشافن‪ ،‬تخمين ا فاصله تا هدف را بر ميگرداندند‬

‫‪‬اغل توابع ار يابي‪ ،‬خواص گوناگو م ا مالن ا را محاسبه ميکنند‬


‫‪‬خواص روی هگ رفته‪ ،‬کالسهای هگ ار ی يا دسته های مختلفم ا مالن ا را تعري ميکنند‬
‫‪‬مالن ای هر دسته‪ ،‬برای تمام خواص مقدار يکسا م دارند‬

‫‪‬هر دسته ماوی دند مالت است که‬


‫‪‬موج برند شدن‬
‫‪‬موج رسگ شدن‬
‫‪‬منجر به باختن‬

‫‪‬تابع ار يابم نميداند کدام مالت منجر به ده دیزی ميشود‪ ،‬اما ميتواند مقداری برگرداند که‬
‫‪203‬‬
‫تناس مالن ا را با هر نتيجه شان دهد‬
‫جستجوی خصمانه‬
‫مثال‪ :‬تابع ‪EVAL‬‬

‫‪‬اغلم م م م تواب م م ممع ار ي م م ممابم‪ ,‬مق م م ممدار ع م م ممددی‬


‫جداگان م ممه ای ب م مرای ه م ممر خاص م مميت محاسم ممبه‪،‬‬
‫سم م س آن مما را ترکيم م ميکنن ممد ت مما مق ممدار ممل‬
‫بدست آيد‬
‫‪fi‬‬

‫‪fi‬‬ ‫مثال در تابع با ی شطرنج‪:‬‬

‫‪wi‬‬ ‫تعداد هر نوع مطعه در صفحه‬


‫مقمادير آن مطعمات(‪ 1‬بمرای پيماد ‪ 3 ،‬بمرای‬
‫اس يا فيل‪ 5،‬برای رخ و ‪)...‬‬

‫)‪Eval(s) = w1 f1(s) + w2 f2(s) + … + wnfn(s‬‬ ‫‪204‬‬


‫جستجوی خصمانه‬
‫مثال‪ :‬تابع ‪EVAL‬‬
‫ار يابم تابع ‪ EVAL‬ا مقدار پینو ی در دو مومعيت امال متفاوت‬

‫الف) سفيد حرکت ميکند‬ ‫ب) سفيد حرکت ميکند‬


‫ال ) سيا ‪ ،‬مزيت اس و دو پياد دارد و با ي را ميعند‬
‫ب) پس ا اينکه سفيد‪ ،‬و ير را در اختيار ميگیند‪ ،‬سيا ميبا د‬ ‫‪205‬‬
‫جستجوی خصمانه‬
‫اثر افق‬
‫‪‬ومت م بوجممود مممي آيممد کممه برنامممه بمما اثممری ا‬
‫رميم مواجممه شممود کممه منجممر بممه خرابممم جممدی‬
‫گشته و اجتناب پ ير است‬

‫‪‬مثال‪ :‬شکل مقابل؛‬


‫س مميا در اص ممل جلوس ممت‪ ،‬ام مما اگ ممر س ممفيد پي مماد‬
‫اش را ا س ممطر هف ممتگ ب ممه هش ممتگ بع ممند‪ ،‬پي مماد ب ممه‬
‫و يممر تبممديل ميشممود و مومعيممت بممرد ب مرای س مفيد‬
‫بوجود مي آيد‬

‫‪206‬‬
‫جستجوی خصمانه‬
‫با ي ایي که ماوی عنصر شا س هستند‬

‫شانس‬

‫شانس‬

‫پايانه‬
‫‪207‬‬
‫هوش مصنوعي‬
‫فصل هفتگ‬
‫عامل های منطقم‬
‫‪208‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬
‫فهرست‬
‫‪‬عاملهای مبتنی بر دانش‬
‫‪‬منطق‬
‫‪‬منطق گزاره ای‬
‫‪‬الگوهای استدالل در منطق گزاره ای‬
‫‪‬الگوريتم ‪resolution‬‬
‫‪‬زنجير پيشرو و عقبگرد‬
‫‪209‬‬
‫عاملهای منطقم‬
‫عاملهای مبتن بر دا‬
‫‪ ،‬پاي اه دانش آن است‬ ‫‪‬مؤلفه اصل عامل مبتن بر دا‬
‫‪‬پاي ا دا ‪ :‬مجموعه ای ا جمالت‬
‫‪‬جمله‪ :‬زبان نمايش دانش و بيان ادعاهایي در مورد جهان‬

‫بخش استنتاج‬ ‫محدوده الگو ِريتمهای مستقل‬


‫‪tell‬‬ ‫‪ask‬‬
‫پاي اه دانش‬ ‫خاص‬
‫خاص‬‫اطالعات‬
‫اطالعات‬‫محدوده‬
‫محدوده‬
‫و درخواست دا سته ها‬ ‫‪‬برای ا افه کردن جمالت به پاي ا دا‬
‫‪TELL ‬و ‪ASK‬‬
‫‪‬هر دو ممکن است شامل استنتاج باشند‬

‫پینوی‪:‬انجام فرايند استنتاج تحت مقررات خاص‬


‫‪210‬‬
‫‪‬‬
‫عاملهای منطقم‬
‫عاملهای مبتن بر دا‬
‫بايد بتواند‪:‬‬ ‫‪ ‬عامل مبتن بر دا‬
‫‪‬نماي ماالت و فعالين ا‬
‫‪‬ترکي ادرا ات جديد‬
‫‪‬برو کردن تصور داخلن خود ا جهان‬
‫‪‬استنبا خصوصيات مخفم جهان‬
‫‪‬استنتاج فعالين ای مناس‬

‫خيلن شديه به عاملهایي با مالت درو م است‬ ‫‪ ‬عامل پاي ا دا‬


‫‪‬عاملها در دو سطح متفاوت تعري ميشوند‪:‬‬
‫‪‬سطح دا ‪ :‬عامل ده دیزی ميداند و اهداف آن کدامند؟‬
‫‪‬سطح پياد سا ی‪ :‬ساختمان داد اطالعات پاي ا دا و د ون م دستکاری آن ا‬
‫‪211‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬
‫‪‬معيار ارایي‪:‬‬
‫‪ +1000‬انتخاب طال‪ -1000 ،‬افتادن در گودال يا خورد شدن‪،‬‬
‫‪ -1‬هر مرمله‪ -10 ،‬برای استفاد ا تین‬

‫‪‬محيط‪:‬‬
‫‪‬بوی تعفن در مربعهای همجوار ‪WUMPUS‬‬
‫‪ ‬سيگ در مربعهای همجوار گودال‬
‫‪‬درخش در مربع ماوی طال‬
‫‪‬کشته شدن ‪ WUMPUS‬با شلي در صورت مقابله‬
‫‪‬تین فقط مستقيگ عمل ميکند‬
‫‪‬برداشتن و انداختن طال‬

‫‪‬مسگرها‪:‬‬
‫‪‬بو تعفن‪ ،‬سيگ‪ ،‬تاب ‪ ،‬ر ه‪ ،‬جيغ دن‬

‫‪‬محرکها‪:‬‬
‫‪‬گردش به دپ‪ ،‬گردش به راست‪ ،‬جلو رفتن‪ ،‬برداشتن‪ ،‬انداختن‪،‬‬
‫‪212‬‬
‫شلي کردن‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬
‫امل‪ :‬خین‪ ,‬فقط ادراک محل‬ ‫مابل مشاهد‬
‫ن‪ :‬بله‪ ،‬نتيجه دميقا مش م است‬ ‫مط‬
‫رويدادی‪ :‬خین‪ ،‬ترتيبي ا فعالين است‬

‫ايستا‪ :‬بله‪ WUMPUS ,‬و گودالها مرکت ندارند‬

‫گسسته‪ :‬بله‬

‫عامله‪ :‬بله‪ WUMPUS ،‬در اصل ي خصوصيت طبي است‬ ‫ت‬


‫‪213‬‬
‫عاملهای منطقم‬
‫اوش در جهان ‪WUMPUS‬‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪214‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪215‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪216‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪217‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪218‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪219‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪220‬‬
‫عاملهای منطقم‬
‫جهان ‪WUMPUS‬‬ ‫توصي‬

‫عامل = ‪A‬‬
‫نسيم = ‪B‬‬
‫درخشش‪،‬طال = ‪G‬‬
‫مربع امن = ‪OK‬‬
‫گودال = ‪P‬‬
‫تعفن = ‪S‬‬
‫مالقات شده = ‪V‬‬
‫‪W = Wumpus‬‬

‫‪221‬‬
‫عاملهای منطقم‬
‫منطق‬
‫ان رسمي‪:‬‬ ‫‪‬ي‬
‫‪‬ترکيب(نحو)‪ :‬ده لمه بندی صحيح است‪(.‬خوش فرم)‬
‫‪‬معناشناس ی‪ :‬ي لمه بندی صحيح ده معنایي دارد‬
‫‪‬در منطق‪ ،‬معنای ان‪ ،‬درست هر جمله را در برابر هر جهان ممکن تعري ميکند‬

‫‪‬مثال‪ ،‬در ان ريا يات‬


‫‪ X+2 >= y‬ي جمله اما ‪ x2+y‬جمله نيست‬
‫‪ X+2 >= y‬در جهان درست است اگر ‪ x=7‬و ‪y =1‬‬
‫‪ X+2 >= y‬در جهان غلط است اگر ‪ x=0‬و ‪y =6‬‬

‫‪222‬‬
‫عاملهای منطقم‬
‫استلزام‬
‫‪‬استلزام منطقي بین جمالت اين است که جمله ای بطور منطقي ا جمله ديگر پینوی‬
‫ميکند‬
‫‪a╞b‬‬
‫‪‬جمله ‪ a‬استلزام جمله ‪ b‬است‬
‫‪‬جمله ‪ a‬جمله ‪ b‬را ايجاد ميکند‬
‫‪‬اگر و فقط اگر‪ ،‬در هر مدل که ‪ a‬درست است‪ b ،‬نیز درست است‬
‫‪‬اگر ‪ a‬درست باشد‪ b ،‬نیز درست است‬
‫‪‬درست ‪ b‬در درستي ‪ a‬ن فته است‬

‫‪‬مثال‪ :‬جمله ‪ x+y=4‬مستلزم جمله ‪ 4=x+y‬است‬


‫‪223‬‬
‫عاملهای منطقم‬
‫مدلهای ‪Wumpus‬‬

‫‪224‬‬
‫عاملهای منطقم‬
‫مدلهای ‪Wumpus‬‬
‫‪KB‬‬

‫=‬
‫قوانين دنيای ‪Wumpus‬‬

‫‪+‬‬
‫مشاهدات‬
‫‪225‬‬
‫عاملهای منطقم‬
‫مدلهای ‪Wumpus‬‬

‫مشاهدات ‪ +‬دنياي ‪KB = wumpus‬‬


‫‪", KB ╞ α1‬امن است ]‪α1 = "[1,2‬‬ ‫‪226‬‬
‫عاملهای منطقم‬
‫مدلهای ‪Wumpus‬‬

‫مشاهدات ‪ +‬دنياي ‪KB = wumpus‬‬


‫‪227‬‬
‫عاملهای منطقم‬
‫مدلهای ‪Wumpus‬‬

‫مشاهدات ‪ +‬دنياي ‪KB = wumpus‬‬


‫‪", KB ╞ α2‬امن است ]‪α2 = "[2,2‬‬ ‫‪228‬‬
‫عاملهای منطقم‬
‫منطق گزار ای‬
‫‪‬نحو منطق گزار ای‪ ،‬جمالت مجا را تعري ميکند‬
‫‪‬جمالت اتمي (عناصر غین مابل تعميگ) تشکيل شد ا ي نماد گزار‬
‫‪‬هر ي ا اين نمادها به گزار ای درست يا نادرست اختصاص دارد‬
‫‪‬نمادها ا مروف بزرگ مثل ‪ 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‬دو شرطم نام دارد‬
‫‪229‬‬
‫عاملهای منطقم‬
‫منطق گزار ای‬

‫‪230‬‬
‫عاملهای منطقم‬
‫جدول درست پنج رابطه منطقم‬

P Q ┐P P ^ Q P ν Q P=>Q PQ

F F T F F T T
F T T F T T F
T F F F T F F
T T F T T T T
231
‫عاملهای منطقم‬
‫منطق گزار ای در دنيای ‪Wumpus‬‬

‫در ‪ B1,1‬سيمي وجود دارد‬


‫)‪B1,1  (P1,2 ν P2,1‬‬
‫در ]‪ [1,1‬گودالن وجود ندارد‬
‫‪R1: ┐P1,1‬‬

‫‪232‬‬
‫عاملهای منطقم‬
‫ال وهای استدالل در منطق گزار ای‬
‫‪‬موانین استنتاج‪ :‬ال وهایي استاندارد که نجین ای ا نتايج را برای رسيدن به هدف ايجاد‬
‫ميکند‬
‫را استنتاج کرد(يعن هر ومت‬ ‫‪‬مياس استثنایي‪ :‬با استفاد ا ترکي عطفم‪ ،‬ميتوان هر عط‬
‫جمله ای به شکل ‪ a=>b‬داد شود‪ ،‬جمله ‪ b‬را ميتوان استنتاج کرد‪).‬‬

‫‪   ,‬‬ ‫‪‬ميتوان ا‬


‫)‪(WumpusAhead ^ WumpusAlive‬‬
‫و‬

‫‪‬‬ ‫‪(WumpusAhead ^ WumpusAlive) => Shoot‬‬


‫‪ Shoot‬را استنتاج کرد‬

‫‪233‬‬
‫عاملهای منطقم‬
‫‪‬م ف ‪ :and‬هر عط را ميتوان ا ترکي عطفم استنتاج کرد‬

‫‪ ‬‬ ‫مثال‪ WumpusAlive :‬را ميتوان ا جمله ير استناج کرد‬


‫)‪(WumpusAhead ^ WumpusAlive‬‬

‫‪‬‬ ‫خاصيت يکنواخت‬


‫مجموعه ای ا جمالت استلزامم که فقط ميتواند در صورت ا افه شدن اطالعات به پاي ا‬
‫دا رشد کند‪.‬‬
‫‪KB |   KB   | ‬‬ ‫برای جمالت ‪ a‬و ‪ b‬داريگ‪:‬‬

‫‪234‬‬
‫عاملهای منطقم‬
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
235
‫عاملهای منطقم‬
‫ال وريتگ ‪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‬است‬
‫‪236‬‬
‫عاملهای منطقم‬
resolution ‫ال وريتگ‬:‫مثال‬

KB = (B1,1  (P1,2 P2,1))  B1,1 α = P1,2

237
‫عاملهای منطقم‬
‫نجین پيشرو و عقبگرد‬
‫‪‬عبارات هورن‪ :‬ترکي فصلن ليتنالهایي است که فقط يکي ا آن ا مثدت است‬
‫‪‬هر عبارت هورن را ميتوان به صورت ي استلزام نوشت که مقدمه آن ترکي عطفم ليتنالهای مثدت و‬
‫تالن آن ي ليتنال مثدت است‬
‫‪‬اين نوع عبارات هورن که فقط ي ليتنال مثدت دارند‪ ،‬عبارات معين ناميد ميشوند‬
‫‪‬ليتنال مثدت را رأس و ليتنالهای منفم را بدنه عبارت گويند‬
‫‪‬عبارت معيني که فامد ليتنالهای منفم باشد‪ ،‬گزار ای بنام حقيقت نام دارد‬
‫‪‬عبارات معين اساس برنامه نويس ي منطقی را ميسا د‬

‫‪‬استنتاج با عبارات هورن‪ ،‬ا طريق ال وريتگ های زنجير پيشرو و زنجير عقبگرد انجام ميگیند‬

‫‪238‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬
‫ال وريتگ نجین پيشرو تعيین ميکند آيا نماد گزار ای ‪(q‬تقا ا)‪ ،‬توسط پاي ا دا‬
‫عبارات هورن ايجاب ميشود يا خین‬

‫‪239‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪240‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪241‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪242‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪243‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪244‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪245‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪246‬‬
‫عاملهای منطقم‬
‫نجین پيشرو‬

‫‪247‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪248‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬
‫‪‬تغيینات عمد ‪ :‬خاتمه ودرس‪ ،‬اکتشاف نماد محض‪ ،‬اکتشاف عبارت وامد‬

‫‪249‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪250‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪251‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪252‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪253‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪254‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪255‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪256‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪257‬‬
‫عاملهای منطقم‬
‫ال وريتگ عقبگرد امل‬

‫‪258‬‬
‫هوش مصنوعي‬
‫فصل هشتگ‬
‫منطق رتبه اول‬
‫‪259‬‬
‫‪Artificial Intelligence‬‬ ‫هوش مصنوعي‬

‫فهرست‬
‫‪‬مروری بر منطق گزاره ای‬
‫‪‬منطق رتبه اول‬
‫‪‬انواع منطق‬
‫‪‬نحو و معنای منطق رتبه اول‬
‫‪‬مهندس ی دانش‬

‫‪260‬‬
‫منطق رتبه اول‬
‫مروری بر منطق گزار ای‬
‫‪‬ويژگي ا‬
‫‪‬ماهيت اعال م‬
‫ً‬
‫و استنتاج متمايزند و استنتاج امال مستقل ا دامنه است‬ ‫‪‬دا‬
‫‪‬مدرت بيان افن برای ادار کردن اطالعات جزئي‬
‫‪‬با استفاد ا ترکي فصلن و نقيض‬
‫‪‬مابليت ترکي‬
‫‪‬معنای جمله‪ ،‬تاب ا معنای بخشهای آن‬
‫‪‬معنا‪ ،‬مستقل ا متن است‬
‫‪‬بر خالف ان ای طبي که‪ ،‬معنای جمالت وابسته به متن است‬
‫‪‬معاي‬
‫‪‬فامد مدرت بيا ي برای تشريح دميق محيطم با اشياي مختل‬
‫‪‬بر خالف ان ای طبي ن‬ ‫‪261‬‬
‫منطق رتبه اول‬
‫منطق رتبه اول‬
‫‪‬اساس منطق گزار ای را پ يرفته و بر اساس آن ي منطق بيا م ميسا يگ‬
‫‪‬ا ايد های نمايش ي ان طبي استفاد کرد ‪ ،‬ا عيوب آن اجتناب ميکنيگ‬
‫‪ ‬ان ای طبي ن ا جهان طبقه بندی ير را دارند‬
‫ای ‪...‬فوتبال‪ ،‬آت و ‪...‬‬ ‫فوتبال‪،‬باآت ي و‬ ‫خانه‪،‬با ي ای‬
‫اعداد‪ ،‬رنگها‪،‬‬ ‫اعداد‪،‬اد‪،‬رنگها‪،‬‬ ‫اشياء‪ :‬افراد‪،‬خانه‪،‬‬
‫اشياء‪ :‬افر‬
‫رابطه ها‪ :‬رابطه ها‪:‬‬
‫مثلل و ‪...‬‬
‫مرمز‪ ،‬گرد‪ ،‬اول و ‪...‬‬ ‫گرد‪ ،‬او‬
‫خواص‬ ‫مرمز‪،‬‬
‫مثلي يا‬
‫خواص يکا‬
‫ابطه های‬ ‫رابطه های يکا‪‬ير يا‬
‫بخشو ‪...‬ا ‪ ،‬مالکيت و ‪...‬‬
‫مالکيت‬
‫گتن ‪،‬بودن‪،‬‬
‫بخشر ا‬ ‫ادربودن‪،‬‬
‫بودن‪ ،‬بز‬ ‫مثلربر‬
‫گتن‬ ‫بودن‪ ،‬بز‬ ‫هایرادر‬
‫دندتایي‬ ‫ابطهمثل ب‬
‫دندتایي‬
‫رابطه های ‪‬ر‬
‫دوست‪... ،‬يکي بيشتن ا و ‪...‬‬
‫بيشتن ا و‬
‫بودن‪ ،‬يکيتنين‬
‫تنينپدردوست‪،‬‬ ‫بودن‪،‬توابع‪:‬‬
‫توابع‪ :‬پدر ‪‬‬
‫‪‬منطق رتبه اول توسط اشيا و رابطه ها ساخته ميشود‬
‫‪262‬‬
‫منطق رتبه اول‬
‫انواع منطق‬
‫حقيقت شناس ی‬ ‫هستی شناس ی‬
‫زبان‬
‫(اعتقادات عامل راجع به حقايق)‬ ‫(آنچه در جهان هست)‬
‫درست‪/‬نادرست‪/‬نامش م‬ ‫مقايق‬ ‫منطق گزار ای‬
‫درست‪/‬نادرست‪/‬نامش م‬ ‫مقايق‪ ،‬اشيا‪ ،‬رابطه ها‬ ‫منطق رتبه اول‬
‫درست‪/‬نادرست‪/‬نامش م‬ ‫مقايق‪ ،‬اشيا‪ ،‬رابطه ها‪ ،‬مان‬ ‫منطق مومت‬
‫درجه ای ا اعتقاد متعلق به‬
‫مقايق‬ ‫نظريه امتمال‬
‫]‪[0,1‬‬
‫مقايق با درجه ای ا درست متعلق‬
‫در فاصله معین‬ ‫منطق فا ی‬
‫به ]‪[0,1‬‬ ‫‪263‬‬
‫منطق رتبه اول‬
‫نحو و معنای منطق رتبه اول‬
‫‪‬نمادهای ثابت؛ اشيا را شان ميدهد‪ .‬مثال‪ :‬علن‪ ،2 ،‬ر ا‪... ،‬‬
‫‪‬نمادهای محمول؛ رابطه ها را شان ميدهد‪ .‬مثال‪:‬برادر بودن‪ ،‬بزرگتن بودن ا‬
‫‪‬نمادهای تابع؛ توابع را شان ميدهند‪ .‬مثال‪ :‬تابع پای دپ(‪)LeftLeg‬‬
‫‪‬متغینها‪x , y , a ,b :‬‬
‫‪‬روابط منطقم‪, , , ,  :‬‬
‫‪‬تساوی‪= :‬‬
‫‪‬سورها‪,  :‬‬
‫‪264‬‬
‫منطق رتبه اول‬
‫جمالت اتمي‬
‫‪ ‬هر ترم ي عبارت منطقم است که به شيئ اشار ميکند‬
‫‪‬نمادهای ثابت ترم هستند‬
‫ء آسان نيست‬ ‫‪‬هميشه استفاد ا نماد متمايز برای نامگ اری‬
‫)‪LeftLeg(John‬‬ ‫‪‬پای دپ پای پادشا ‪John‬‬
‫يا )ترم‪ ،1‬ترم‪ ، ... ،2‬ترم‪(n‬تابع = ترم‬ ‫ثابت‬ ‫يا‬ ‫متغير‬ ‫‪.‬‬
‫‪‬جمالت اتمي ‪ :‬ترکي ترمهای اشياء و محولهای روابط‬

‫)ترم‪ ،1‬ترم‪ ، ... ،2‬ترم‪(n‬محمول = جمالت اتميک‬ ‫يا‬ ‫ترم‪ =2‬ترم‪1‬‬ ‫‪.‬‬
‫))‪Married(Father(Richard),Mother(John‬‬ ‫‪‬مثال‪:‬‬
‫پدر ريچارد با مادر جان ا دواج کرد است‬ ‫‪265‬‬
‫منطق رتبه اول‬
‫جمالت پيچيد‬
‫با ترکي جمالت اتمي و روابط منطقم ميتوان جمالت پيچيد تری‬
‫ساخت‬
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)
266
‫منطق رتبه اول‬

‫‪‬مثال‬
‫ء‪،‬‬ ‫مدلن با پنج‬
‫دو رابطه‬
‫دودویي‪ ،‬سه‬
‫رابطه يکا م و ي‬
‫تا يکا م به نام‬
‫پای دپ‬

‫‪267‬‬
‫منطق رتبه اول‬
‫سورها‬
‫‪ ‬کم ميکنند تا به جای شمارش اشيا ا طريق نام آن ا‪ ،‬خواص‬
‫لکسيون اشيا را بيان کرد‬
‫‪‬سور عمومی؛ ‪“ ‬برای همه”‬
‫‪‬سور وجودی؛ ‪ “ ‬وجود دارد مدامل‪”...‬‬

‫‪268‬‬
‫منطق رتبه اول‬
‫سور عمومم‬

‫>جمله< >متغینها<‪‬‬
‫‪ x P‬که در آن ‪ P‬ي عبارت منطقي است‪ ،‬بيان ميکند که‬
‫‪ P‬برای هر ء ‪ x‬درست است‬
‫)‪x King(x)  Person(x‬‬ ‫‪‬مثال‪:‬‬

‫‪269‬‬
‫منطق رتبه اول‬
‫سور وجودی‬

‫>جمله< >متغینها< ‪‬‬


‫‪  x P‬که در آن ‪ P‬ي عبارت منطقي است‪ ،‬بيان ميکند‬
‫ء ‪ x‬درست است‬ ‫که ‪ P‬مدامل برای ي‬
‫‪‬مثال‪ x Crown(x)  OnHead(x , John) :‬‬
‫‪270‬‬
‫منطق رتبه اول‬
‫خصوصيات سورها‬
‫‪  ‬رابط طبي برای ار با ‪ ‬و ‪ ‬رابط طبي برای ار با ‪ ‬ميباشد‬
‫‪‬استفاد ا ‪ ‬بعنوان رابط اصلن با ‪ ‬منجر به مکگ موی ميشود‬
‫‪‬استفاد ا ‪ ‬با ‪ ‬منجر به مکگ عيفي ميشود‬
‫‪x y ‬برابر است با‪ y x‬و ‪x y‬برابر است با ‪y x‬‬
‫‪x y ‬برابر نيست با‪y x‬‬
‫‪x y Loves(x,y)‬‬
‫‪‬مدامل ي نفر وجود دارد که همه دیز در جهان را دوست دارد‬
‫‪y x Loves(x,y)‬‬
‫‪‬همه در دنيا مدامل ي نفر را دوست دارند‬
‫‪271‬‬
‫منطق رتبه اول‬
‫خصوصيات سورها‬
‫‪“ ‬هر کس بستن را دوست دارد” به معنای اين است که “هيچ کس وجود ندارد‬
‫که بستن را دوست نداشته باشد”‬
‫‪ x Likes(x , IceCream)‬هگ ار )‪x Likes(x , IceCream‬‬

‫‪ x P ‬هگ ار ‪x P‬‬


‫‪ x P ‬هگ ار ‪x P‬‬
‫‪x P‬‬ ‫هگ ار‬ ‫‪x P ‬‬
‫‪x P‬‬ ‫هگ ار‬ ‫‪x P ‬‬
‫‪272‬‬
‫منطق رتبه اول‬
‫تساوی‬
‫ء اشار ميکنند‬ ‫‪ ‬با استفاد ا = دو ترم به ي‬
‫‪‬برای تعيین درست جمله تساوی بايد ديد که آيا ارجاع ها به دو ترم‪،‬‬
‫اشيای يکسا م اند يا خین‬
‫‪‬مثال‪ :‬ريچارد مدامل دو برادر دارد‬
‫)‪x,y Brother(x,Richard) ^ Brother(y,Richard) ^ (x=y‬‬

‫‪273‬‬
‫منطق رتبه اول‬
‫ادعاها و تقا اها‬
‫ا افه ميشوند‬ ‫‪‬جمالت ا طريق ‪ TELL‬به پاي ا دا‬
‫‪‬اين جمالت را ادعا گويند‬
‫‪TELL (KB , King(John))‬‬
‫‪TELL (KB , x King(x) => Person(x))‬‬
‫انجام ميدهيگ‬ ‫‪‬با استفاد ا ‪ ASK‬تقا اهایي را ا پلي ا دا‬
‫‪‬اين پرسشها‪ ،‬تقاضا يا هدف نام دارد‬
‫‪ASK (KB , Person(John))‬‬
‫‪ASK(KB , x Person(x)) ‬‬
‫‪‬ليست جا شيني يا انقياد‬
‫‪‬ليستي ا جا شيني ا در صورت وجود بي ا ي پاسخ‬
‫‪274‬‬
‫منطق رتبه اول‬
‫دامنه خویشاوندی‬
‫‪‬مادر هر فرد والد مؤنث آن فرد است‬
‫‪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) ‬‬
‫‪275‬‬
‫منطق رتبه اول‬
‫اعداد و مجموعه ها‬
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))]

276
s1,s2 s1  s2  (x x  s1  x  s2)
‫منطق رتبه اول‬
‫مهندس ي دا‬
‫که شامل مرامل ذيل ميباشد‪:‬‬ ‫‪‬فرايند کلن ساخت پاي ا دا‬
‫‪‬مش م کردن ار‬
‫مر وطه‬ ‫‪‬مونتاژ دا‬
‫‪‬تصميگ گینی در مورد واژ نامه محمولها‪ ،‬توابع و وراثت‬
‫‪‬کدگزاری دا کلن در مورد دامنه‬
‫‪‬کد گزاری توصي نمونه مس له خاص‬
‫‪ِ ‬اعمال تقا اها به رويه استنتاج و دريافت پاسخ‬
‫‪‬اشکال دایي پاي ا دا‬
‫‪277‬‬

You might also like