اصلی زبان به جدید رهیافتی مصنوعی هوش روش
Artifical Intelliyence A Modem ApPr Bach = Russel
Midterm %30 Final Exam %40 Progect %30 Research %15
سایت وب از Iam . Arain word . comکتاب
. کرد ترجمه باید را اصلی زبان کتاب یک از فصل یک تحقیقهوشمند : های سیستم با مصنوعی هوش
: مصنوعی هوش تعاریف
1 ____ عامل_ کامپیوتری مدل طریق از ذهنی های توانایی ی مطالعه. است ذهن هوشمند
2. میگردد_ , عمل و استدالل درک به منجر که محاسباتی ی مطالعه
هوش . علم هنوز که است ال ایده به رسیدن هدف درس این دراست . رسیده ال ایده این به مصنوعی
. کنید _ تحقیق فازی مورد المعارف Fuzzyدر دایرةبین پیوسته دنیای در است 1,0علمی
فازی , , , تصویر پردازش ماشین بینایی مصنوعی هوش های گرایشمرحله سه دانش پایگاه
1
سراغ استدالل برای و شود می انجام درک ی مرحله فازی ی مرحله تاکه داد انجام باید کار چه که شود گرفته تصمیم که میرود دانش پایگاه
اسم به هلی Learningبخشی راه چه حالت این در میدانیم که داریمبودن تاریک صورت در اتاق کردن روشن برای برق کلید مثل دارد وجود
. میگرد صورت رباتیک شاخه توسط که است عمل هم آخر ی مرحله
بتوانند_ 3 که کامپیوترهایی ساخت جهت انگیز هیجان و نوین تالشی. باشند داشته احساس و کنند فکر
فرایندهایی_ 4 عنوان تحت که هوشمند رفتارهای ی مطالعه از بخشی. گیرد قرار برسی مورد کامپیوتری
: هوشمند های سیستم1. کنند_ می فکر منطقی که هایی سیستم2. کنند_ می عمل منطقی که هایی سیستم3. میکنند_ فکر انسان مانند که هایی سیستم4. کنند_ می عمل انسان مانند که هایی سیستم
مورد آسیمو در (ربات هوندا ) سایت هوندا شرکت از کنید تحقیقی شاخه و میپردازد ذهن عملیات دهی سازمان به کردن فکر منطقی
. میکند گذاری پایه را منطق
2
می رسمی منطق تولید موجب فرم این به ذهن عملیات دهی سازمانشود.
1. میرند_ می ها انسان ی همهاست_ .2 انسان سقراط3. مرد_ خواهر سقراط
: کردن فکر منطقی مورد در عمده مشکالترسمی_ 1 غیر دانش دانش informal lojicدریافت به آن تبدیل و
. باشد نمی پذیر امکان خاص عالئم محدود تعدادی توسط رسمیاست سرد هوا وقتی باشد سرد نسبتا هوا امروز شاید مثال عنوان به
باید که دهد نمی را نتیجه این منطق جا این پوشید گرم لباس باید. میدهد انجام را احتیاط این ذهن ولی بپوشید گرم لباشس
2. دارد_ وجود مسئله حل و بودن مسئله حل به قادر بین زیادی تفاوتکهکشان_ _ از قسمتی خورشید کند سفر کهکشان به میتواند انسان
نیست شدنی و است اشتباه خورشید به انسان سفر نتیجه اما استبا _ منطق نیست شدنی حل اما است حل به قادر منطق نظر از یعنی
. شود می روبرو تناقص
کنند 1 می پرواز پرندگان اما 2همهی است پرندگان جز پنگوئن . این که شود می روبرو تناقص با منطق و کند پرواز تواند نمی پنگوئن
استثناء و دانش پایگاه در نقص یعنی است اطالعاتی کم دلیل به تناقص. است غلطی ی کلمه
3
4. شود_ می حل ها گذاره بعضی فقط کردن فکر منطقی در
های زبان از هوشمند های سیستم نویسی برنامه prologو lispبرای. شود می استفاده
یک_ 2 داشتن با که است نیاز مفهوم بدین کردن عمل منطقی جهت . که هایی محدودیت برسیم یکتا هدف یک به فرد به منحصر ی ایده
صورت به مثال نسستند منطقی ها عمل همه که است این دارد وجود . شود نمی محدود منطق به انسان هوشمندی لذا هستند غریزی
. کرد فکر انسان مثل بتوان که ست سیستمی هوشمند سیستم
برای_ . 3 خوبی تعریف انسان است هوشمند سیستم تعریف تصحیحممکن انسان فکر به نفوذ و درک و فهمیدن است هوشمند های سیتم
نیست قطعی اما رفت پیش شود می حدی تا روانشناسی با نیستکارهای تقلید باشد نداشته را قبلی های مشکل که دیگری روش پس
نتیجه : در میگیرد صورت سازی سبیه طریق از که است انسانی
آسمیو_ 4 ربات مثل کنند می عمل انسان مثل که هایی سیستم
تا دهند پاسخ را تورنیگ تست بتوانند باید ها سیستم این شده ساخته
. شوند شناسایی هوشمند موجودی
تورنیگ : و 4تست اصلی .2شرط دارد فرعی شرط4
آن با ارتباط به تایپ تله طریق از و دارد قرار فردی دیوار سوی یک در
دهد تشخیص بتواند نباید فرد تست اتکام از پس میپردازد دیوار طرف
. هوشمند سیستم یک یا داشته قرار دیوار سوی آن که
طبیعی_ 1 زبان Natural Languageپردازش
Processing
دانش_ 2 Knowledgeنمایش
Representation
خودکار_ 3 Automated Reasoningاستدالل
ماشین_ 4 Machine learningیادگیری
Robaticرباتیک_ 1
ماشین_ 2 Machine visionبینایی
طبیعی_ :1 زبان پردازش
5
کامل صورت به را زبان یک پردازش باید ارتباط یک برای حالت این در
. . باشد بلد کامل را مقابل طرف زبان دهد انجام بتواند
دانش_ :2 نمایش
انجام یادگیری و استدالل طریق از که اطالعات سازی ذخیره توانایی
. . دهد نمایش نیاز مواقع در بتواند تا باشد موجود است شده
3: خودکار_ استدالل
حال , گذشته های دانسته با تا باشد داشته استدالل توانایی حتما باید
. دهد انجام آینده برای هایی استدالل بتواند
ماشین_ :4 یادگیری
آن با هوشمند سیستم آن و گرفت یاد کار انجام برای را روشی بتواند
. باز پارک از بعد که ماشین کردن پاک دهد انجام را عملی بتواند روش
میگردد.
رباتیک_ :1
هوشمند های سیستم در است حرکت اعمال و حرکت رباتیک از منظور
. باشد داشته را کار یک انجام توانایی یعنی
2: ماشین_ بینایی
تصاویر پردازش هم بعد و محیط درک برای هوشمند سیستم بینایی
محیط.
6
تورنیگ: تست است نتوانسته سیستمی هیچ کنون تا اینکه دالیل سوال
چیست؟ امروز به تا دهد انجام کامل موفقیت با های_ 1را زبان
دارای زبان اینکه و است کلمات در زیادی بسیار تنوع دارای طبیعی
چارچوب , یک در که ها کنایه و ها اصالح اسثناء است هایی پیشگویی
. زبان دریک باشد ماشین یک برای پردازش قابل که نمیگیرد قرار
. دارد وجود مختلف مفاهیم با یکسان کلمات
و محیط تا شود داده افزایش باید سیستم آن دانش بستر جا این در
مفهوم ابزار با کار ضمن در تا کند درک را ها همان نیاز را تسحیر
بهمند آالت داد_ 2. تسحیر ها سیستم به توان نمی را اطالعات ی همه
سازی ذخیره قابلیت ضمن در کنیم می کسب خودمان که تجارب مثل
. نداریم هم را اطالعات همه این
چندان نه آینده تا که هرچند نداریم امروز را حد این در هایی حافظه
. شود ساخته دور
های_ 3 گذاره مورد در و شود روبرو تناقص با است ممکن استدالل
روبرو منطقی مشکالت با و است منطق مثل نیست پذیر امکان پیچیده
. . میمیرد سپس انسان سقراط میمیرند ها انسان مثل شوند می
اما_ 4 میرود یادگیری بخش به ندارند آن مورد در اطالعاتی که عملی
پارک مختلف های روش مثل دارد وجود زیادی بسیار تنوع کار هر برای
سیستم خود بعد ی دفعه الگو بار چندین دیدن با که ماشین کردن
7
انجام در مختلف روشهای وجود اما کند می تکرار را کا باالیی قابلیت
. شود می مشکل باعث کارها
فرعی:
و_ 1 ضعیفند خیلی و ندارد باالیی دقت و توانایی با فیزیکی قطعات
. میکند محدود را ها سیستم
محیط_ 2 به ی شدید ی وابسته و میخواهیم دیدن برای ال ایده محیط
دقت با را محیط نور باید کار این برای که محیط نور مخصوصا است
. بگیرند را مناسب تصویر ها دوربین تا کنیم تنظیم باالیی
این از صد در صد موفقیت با هوشمند سیستم باال دالیل تمام خاطر به
موفقیت فقط حاال تا و است نیامده بیرون درصدی 30قسمت
داشتیم.
گویند_ می نویس برنامه که کارهایی فقط هوشمند های سیستم اینکه
. دارند را یادگیری قدرت زیرا است اشتباه میدهد انجام را
: دوم Agentفصل
8
Agent . خود پیرامون محیط درک به قادر که چیزی هر است عامل یک
) اثر ) توسط محیط روی بر گذاری اثر و سنسور حسگرها طریق از
ها ) کردن( effectorsکننده حس برای شوند می نامیده عامل باشند
و , , , ها دوربین رباتیک عامل ها اندام دیگر و بینی گوش چشم دست
. کنند اثر را ها موتور انواع و ها حسگر را قرمز مادون های یابنده
تقسیم افزاری نرم و افزار سخت دسته دو به هوشمند های عامل. است. مهم ما برای ها عامل در اساسی اصلی رامتر یا دو میشوند
آیی_ 1 کار Performance Measureمعیار
مختاری_ 2 Autonomyخود
9
1 . ی_ درجه است بهتر کی کارایی ببیند میکند نگاه کارآیی معیارو امکانات و ها قابلیت یعنی میکند مشخص را عامل یک کارایی
سیستم . یک هوشمندیهایدستور مثل کارهایی طبیعی و خوب حرکات غیراز که آسیمو ربات مثل . گرد زمین مکش عاملی مثل میدهد انجام نیز را آوردن و گرفتن در
. سازه این میزان کارایی معیار دارد را اغراق Aوخاک کارایی از ساعتمتکی_ 2 خود درونی دانش به تنها اداراکات و نتایج کسب منظور به
. شده مختاری خود فاقد عمل میگوییم باشد
یک که صورتی در ساعت ساعت GPSمثل شود نصب ساعت رویمی مختاری خود دارای و میدهد تشخیص را مکان و زمان همان
بدون. ساعت . GPSشود انقدر سازنده اگر مثال نیست مختار خودخواهد یعنی تاریخ در استرالیا به ساعت مالک بداند که باشد پیشگو
به ها عقربه تا کرد خواهد تهیه را مکانیزمی آن داخل در آنگاه رفت. باشد خودکار طرز
عامل_ یک معموال دارند خاصی ارتباط برنامه و عامل یک معموال
. ) است ) معماری افزار سخت و برنامه از ترکیبی
عامل + = برنامه معماری
ربات_ برای نقاله نوار مثل است مهم بسیار عامل یک برای محیط
. میخورد بهم کار شود کمتر یا بیشتر سرعت اگر چون
عاملها : تاکسی Agentsانواع راننده مثال
10
سالو واکنشی های simple Reflex- 1علل
Agent
های Agent that Keep track of world_2علل
گرا هدف های Gool based agent s_ 3عامل
سودمند های utility based agent s_ 4عامل
یادگیرنده های Learning Agent_ 5عامل
2. ) میکنند_ ) حفظ را محیط دنیا اثرات که عاملهایی
ساده_ : واکنش عاملهای
11
طدق فعلی شرایط با آن شرایط که قانون یک یافتن از پس عاملها این
. کرد خواهند عمل قانون آن براساس کند می
Condition _ action
If then
در خروجی عنوان به آن نتایج شد یکی فعلی شرایط با شرایط یک اگر
. شود می گرفته نظر
) شود ) می روشن شرط گرفتن ترمز با که ماشین ترمز چراغ مثل
) عمل)
به معموال و دارند زیادی کاربرد سادگی دالیل به ها عامل این که
در زیادی کاربرد و ساده صورت به نه دارند کاربر ترکیبی صورت
مهم خیلی ها سیستم این در زمان چون دارند پیچیده های سیستم
است.
پیچیده های سیستم در است کم ساده های عامل در اجرا زمان چون و
. بردارند کار
action Function Simple Reflax _ Agent (Percepts)خروجی
State____ Interpret _Input (percept)
Rule____ Rule _ Match (state _ rules)
12
دارد تطبیق که را قانون اولین و میکند چک قبل از قانون با وضعیت
برمیگرداند.
شد یکی Action ____ Rule _ Action (rule)اگر
return actionخروجی.
یا ورودیها
Percepts توسط شده وارد آرگومنت عنوان به که هستند موادی ها
هم خروجی و اول_ 1است actiaسنسورها ی مرحله در جا این در
. دهیم تشخیص را وضعیت تا ورودیها اساس بر میکنیم در_ 2تفسیر
ما حالت با که وظایف ی همه و قوانین اساس بر دوم ی مرحله
. میگردانیم بر خروجی صورت به را نتیجه تطبیق بود تابعی_ 3سازگار
) فعایت کاراست عملگرد و ( ruleکه میدهد انجام نتیجه actionرا
میدهد
عامل ضعف این و هستند محدودیت در قوانین لحاظ از ها عامل این
هاست.
State. جاری : شده درک وضعیت از انتظاری توصیف یک
با : Rule _ Matchتاج شرایطش که را جاری قوانین از قانون اولین
. . میگرداند بر را میکند تطبیق جاری شرایط
2:. میکنند_ حفظ را دنیا اثرات که هایی عامل
13
چند ی عالوه مراحلند همان با قبلی های عامل مشابه ها عامل این
سالو . های عامل از تر پیچیده و قدرتمندتر درجه یک دیگر پارامتر
از. اینکه برای ماشین یک مثال به line2به line3هستند ابتدا باید برود
تقسیم اطالعات آن طبق تا کند نگاه خود اطراف محیط
. باید اطالعات این و بگیرد هر updateمراحل با لحظه هر در و شوند
. کنند می حفظ را دنیا اثرات که اینگونه و متفاوتند دیگر ی لحظه
Fuction Agent _ with State (Percept)
. میکند چک را اطراف State ____ up date _ state (stateوضعیت
percept) برگرداند شد می rul____ Rule _Matchاگر
(state_vales )
کنیم اعمال را عملی action _____ Rule _ Action (rule)چه
state ____ update _ state (state _ action)
Return action
تابع با اطالعات که است .updateنیاز شوند نگری باز
14
state :دوباره شود انجام باید که عملی نتیجه شدن مشخص از بعد آخر
تابع ی up dateبا اجازه ببینیم تا میدهد نه؟ actionتطبیق یا داریم را
یا_ : 3 گرا هدف عامل سوم goL Agentعامل
. هستند مقصد به رسیدن ی کننده تضمین دارند زیادی بسیار کاربرد
دانستن که میکنند عمل ترتیب این به نیستند بهینه و سودمند لزوما
. است الزم نیست کافی عامل این بروی همواره محیط جای وضیعت
فرد به منحصر هدفمندی یک به نیاز بهتر گیری تصمیم جهت عامل لذا
. است راننده مثال واضح خیلی مثال دارد اختصاصی یا
یا چپ به کنیم گیری تصمیم ما که شود می باعث راه چهار به رسیدن
. است مقصد به رسیدن اصلی هدف و برویم راست
. کند_ مشخص را گرایی هدف که شود می اضاف قبلی کد شبه به تابع
. مثل هدف یک انجام برای ها عامل ی همه کردن جهت یک و یکسو
. کن خاموش آتش
. رسیدن کننده تضمین و دارند زیادی بسیار کاربرد گرا هدف آنها عامل
. هستند مقصد به
عمل ترتیب بدین ها عامل اینگونه نیستند بهینه یا و سودمند لزوما ولی
کافی عامل این برای همواره محیط جاری وضعیت دانستن که میکنند
15
منحصر مندی هدف یک یه نیاز بهتر گیری تصمیم جهت عامل لذا نیست
. دارد اختصاصی یا فرد به
4: سودمند_ های عامل
عامل کارایی و کیفیت با هستند مناسب و کامل گرا هدف های عامل
. باشد می ارزش با بسیار سودمند های
. انتخاب مسیرند بهترین یافتن برای مسیریابی های الگوریتم شامل که
. سوخت تر کم مصرف برای تر نزدیک یا تر ترافیک کم یا امن مسیر
منطقه _ فقط یعنی بودن من سود حریق اتفای های سیستم مورد در
و , ... مواد در جویی صرفه یا کن فعال را حریق معرض یا حریق دچار
سودمند_ الزاما گرا هدف ولی هستند گرا هدف حتما ها عامل این
نیستند.
. کوتاه_ __ زمان در گرا هدف کند راحل ای مسئله بخواهد که عاملی
. __ سودمند کند حل
یادگیرنده : های عامل پنجم ی Elearning Agentدسته
و دارند دریافت و ادراک یعنی دارند یادگیری توانایی ها عامل این
یادگیری برای میکنند استخراج را عمل و میگیرند یاد و میکنند استدالل
. میرویم عصبی های شبکه سراغ
16
واقع . actionو ruleو stateدر نیاز دوباره اگر میدارد نگه خود در را
. کند استفاده بتواند شد
ها : Envivonmentمحیط
. از یکی محیط ویژگیهای میگیرند قرار بررسی مورد دیدگاه چند از
کار برای مهم عوامل
. عامل : یک برای محیط بودن مهم علت سئوال
محیط : properties of Environmentویژیگیهای
بودن دسترس Accessible_ 1قابل
بودن Deteministic_ 2قطعی
بودن شانسی یا Episodic_ 3تصادف
بودن Static_ 4ایستا
بودن Discrete_ 5گسسته
ندیدن , با زیرا است گسسته شلوغ محیط مثال باال های ویژگی نبودن و
. نفهمد عامل که میشود ایجاد آن در تغییری محیط لحظه یک
قابلیت : عامل یک گرهای حس یا سنسور اگر بودن دسترس قابل
باشند داشته را محیط یک های حالت تمام یه آشکار و کامل دسترسی
. است دسترس قابل عالم یک برای محیط گوییم
17
طور به بتوانند حسگرها اگر است دسترس قابل کامل طور به محیط
( Deteetکامل نظر ) مورد های حالت و دهند تشخیص را محیط تغییرات
. کنند گیری تصمیم آن برای را
حالت : توسط محیط بعدی حالت اگر بودن قطعی غیر یا بودن قطعی
گاه آن کند گیری تصمیم بتواند عامل و شود داده تشخیص محیط جاری
. شطرنج مثل است قطعی محیط گوییم
و : تجزیه تصادفی محیط یک در بودن تصادفی غیر یا بودن تصادفی
. هستند ساده ها عامل است شانس و تصادف بر مبتنی عملکردهای
. نداریم تشخیص به نیازی چون
تشخیص : هنگام در کند تغییر بتواند محیط اگر بودن پویا و بودن اسیتا
. غیر , در دارد قرار پویا محیط یک در عامل گوییم عامل طرف از محیط
. کنیم تعریف اسیتا عامل برای را محیط صورت این
و نباشد زمان شدن سپری به نسبت عامل برای محیط تغییرات اگر
. اگر پویاست نمیه محیط گوییم شود محیط تغییر باعث دیگری عوامل
) پویا ) نیمه کند تغییر کارایی امتیاز اما نیابد تغییر زمان گذر با محیط
محدودیت : دچار محیط تشخیص در اگر بودن پیوسته و بودن گسسته
) گوییم ) آنگاه کنیم درک را محیط آن لحظه هر در نتوانیم و باشیم تعداد
. است, گسسته محیط محیط
. ها: حالت تعداد دارد وجود بازی نوبت هر در ثابتی تعداد یعنی گسسته
. است محدود
کارها: و شود می خوب که ای تازه بیمار نمیدانیم ما بیمار بدن پیوسته
. محدود نا یعنی شده عوض محیط بار چند نمیدانیم شود می تمام
18
: : جستجو های تکنیک با مسائل حل سوم فصل
شطرنج : 8مسئله ی صفحه به 8.8وزیر را وزیر خواهیم می داریم
. نکنند تهدید را همدیگر ها وزیر از هیچکدام که بچینیم نقاط در ای گونه
برای مسئله :4همین وزیر
برای 4برای دارد وجود حالت دو دارد 96وزیری 8وزیری وجود حالت
تهدید که های خانه بعد گذاشت خواه دل جایی در را اول وزیر باید ابتدا
تهدیدهای تعداد ترتیب همین به دوم وزیر بعد کرد مشخص را میکنید
جای باشد صفر آن تهدید تعداد که ای خانه کنیم می مشخص را خانه
تهدید تعداد که نباشد ای خانه هیچ اگر و است بعد خانه 0وزیر باشد
تهدید که را .1هایی کرده انتخاب است
جستجو : انواع
ی مسئله داریم مصنوعی هوش در ناآگاهانه و آگاهانه جستجو نوع دو
ی BFSقنل جستجو و است آگاهانه نا جستجو است سطحی پایش که
Djkstra ) آگاهانه ) جستجو وزن داشتن دلیل به و مسیر نزدیکترین
است.
19
راه تا میگردد بر عقب به مرحله یک پس نمیدهد جواب شاخه این از
. شاخه کنیم انتخاب را بر 8دیگری دو سطح به آخر تا نمیدهد جواب هم
به نمیدهد جواب و کنیم می امتحان را ها شاخه ی همه هم باز میگردیم
ای خانه و برگشته اول .2سطح کنیم می انتخاب وزیر اولین برای را
مسئله 1پروژه : حل ی برنامه
8 ) بدست ) باید را ممکن حالتها تمام دیگر هفته سه بنویسید را وزیر
آورد.
را آرایه که میگیریم نظر در بیت یک را خانه هر برنامه این نوشتن برای
نوع از آرایه یک یا و کنیم تعریف بیت نوع یک intاز باید .Structureبعد
خانه هر برای اگر نیاز مورد فضای که ساخت را درخت بایت 1کل
ما : نیاز مورد حافظه کل باشد
باشد پاسخگو توان نمی اصلی ی حافظه و است زیاد بسیار فضا این
از جستجو ساختار مشکل این حل به BFSبرای که DFSرا میدهیم تغییر
. ندارد فضا مشکل اما میکند مصرف زیاد زمان
20
پروژه : ادامه
های_ 4 زدن صدا یعنی نیاز مورد جستجوهای . DFSتعداد بشمارد _5را
(. میشود که کند چاپ هم را معرفی فضای میزان جواب مرحله هر در
ی (DFS.16شمارنده
ی_ دادن 8مسئله قرار برای کاربرد مثال است سبلیک 1000000وزیر
ی تراشه در سیتور ترانز cm4.4ترانز این بین ارتباط برقراری و
سیستورها.
های خانه با باید خالی مربع که است ای گونه به مسئله این حل راه
. شود جا جابه خودش اطراف
: همای ی مسئله در سئوال عنوان چقدر 8به مسئله عمق حداکثر
بود؟ خواهر
انتهای : به ابتدا از را راه باید که است ای پیچیده مسیر موش ی مسئله
. باشند بسیار توانند می مسیرها این که کرد پیدا
21
: جستجو های تکنیک مسائل حل کارایی مغایر
مصرفی Time complexity. 1زمان
مصرفی Space complexity. 2فضای
بودن Completens. 3کامل
بودن Optimality. 4بهینه
ناپذیری Irevocability. 5بازگشت
مسئله:
ماتریس صورت به و کرده بندی نقش را شهری ی در 5.5نقشه برو رو
. است محل هر در سوزیها آتش تهداد ها خانه داخل اعداد و آوریم
22
نقطه در خطر پر محل به نزدیکترین را آتشنشانی محل میخواهیم و
دیگر. نقاط تمام با اش فاصله نظر مورد ی نقطه این که Minبگیریم
باشد.
ماتریس_ اعداد که بنویسید ای مثل 5.5برنامه خانه یک و گرفته و3راخطربودن 2 پر به نسبت فاصله که ثقل مرکز عنوان به کند معرفی را
ها .Minمحل باشد
. : مسئله حل جهت نیاز مورد زمان مقدار مصرفی زمان پیچیدگی
. مسئله : حل جهت نیاز مورد فضای میزان مصرفی فضای پیچیدگی
: موجود صورت در کند می تضمین آن در که است معیاری بودن کامل
حداقل معرفی 11بودن مسئله پاسخ عنوان به را آن جواب یا حل راه
میکند.
: بهینه جستجو الگوریتم یک که آن به دارد اشاره معیار این بودن بهینه
عبارت به کند می پیدا را حل راه بهترین که نماید تضمین اگر است
می شامل را مراحل کمترین که بدهد هدف وضعیت به را مسیری دیگر
شود.23
: های روش عقب به بازگشت های روش معموال ناپذیری بازگشت
می زیادی مصرفی زمان دارای که شوند می نامیده خطا و صحیح
به معموال و کنند نمی استفاده پذیری بازگشت که هایی روش و باشند
بازگشت های روش میپردازند پاسخ به رسیدن جهت مسیر یک آزمایش
. شوند می نامیده ناپذیر
ها : جستجو انواع
1 : تابع_ جز به دیگری اطالعات که هایی روش ناآگاهانه جستجوی
. درخت مثل ندارند مسئله طرح و هدف
2 : و_ مسئله طرح بر عالوه که جستجویی های روش آگاهانه جستجوی
این دیگر مدار و مسیر هر ی هزینه نظیر دیگری اطالعات به هدف تابع
. شوند می گفته آگاهانه جستجوهای باشد داشته دسترسی نیز چنینی
دیکسترا الگوریتم Dijkstraمثل
باید زیرا هستند جامعی های الگوریتم آگاهانه نا های الگوریتم معموال
. کنند پیمایش هارا راه ی همه
: سطحی Breathed First Search (BFS)جستجوی
یکنواخت ی هزینه با Uniforx cst Searchجستجو
عمقی : جستجوی Depth First Search (DFS)جستجوی
24
شده : محدود عمقی Depht lixited Searchجستجوی
: : تکراری ی کننده عمیق جستجوی آگاهانه Deepeepening Searchنا
: طرفه دو Bidirectixal Searchجستجوی
BFS , , :اط ریشه فرزندان سپس ریشه ابتدا جستجو روش این در
. میگیرند , ... قرار جستجو مورد و ریشه فرزندان بعد چپ سمت
با که ها شاخه زیر همان یا ها انشعاب تعداد روش این Branch ___ Bدر
. میدهیم نشان
. بسیار الگوریتم مصرفی زمان نرخ ودر برخوردارند زیادی اهمیت از
به. تر پایین سطوح در ای گره پر ساختار چنین وجود چنین هم موثرند
طور به میگذارد تاثیر الگوریتم مصرفی ی حافظه میزان در شدت
مثال:
گره تعداد ی محاسبه برای داشتیم دودویی جستجوی درخت زمانیکه
ها.
25
ی_ مسئله حدود 8در در وزیر چهارمین موقعیت کردن پیدا برای وزیر
از .1بیشتر داریم نیاز حافظه بایت گیگا
. پیدا نظر از و است بودن کامل الگوریتم این ی عمده خصوصیات از
. نیست ای صررفه به مصرفی فضای کردن
. میدهد را جوابها ی همه زیرا است بهینه است هم بهینه الگوریتم این
. دهد می را بهتر جواب زودتر اما
با : میباشد سطحی جستجوی شبیه بسیار یکنواخت هزینه با جستجو
) را ) گره ترین عمق کم نه ترین هزینه کم مرحله هر در که تفاوت این
. میدهد بسط
DFS. : میدهد بسط موجود عمق آخرین تا را گره یک عمقی جستجوی
با مقایسه در روش . BFSاین روش این دارد نیاز کمتری ی حافظه به
. چنان روش این در است مفید جوابند چندین دارای که مسائلی برای
. داشت نخواهیم بازگشت توانایی کنیم پیمایش را شاخه یک عمق چه
. اگر شود می حل مشکل بنویسیم بازگشتی صورت به را برنامه اگر
را درخت mعمق
26
را انشعاب فاکتور الگوریتم bو زمانی ی مرتبه گاه آن دهیم DFSنشان
m (b)O. بود خواهد
. برنامه اساس بر اگر بود نخواهد هم بهینه قطعا و نیست کامل الگوریتم
. میکند گیر عمق در الگوریتم نرویم بازگشتی
: بدام از اما است عمقی جستجوی همان کننده محدود عمقی جستجوی
. برای سطح تعیین که کند می جلوگیری شاخه یک عمق در افتادن
. است مشکل بسیار کردن محدود
به بسته الگوریتم یا Lاین باشد کامل تواند می شده محدود سطح یعنی
اگر ) درخت Lنباشد عمق از کوچکتر محدود عمق در D>Lباشد dیا
. اگر و است کامل .( D < Lنتیجه هیچ در اصال و نیست کامل باشد
. تر پایین و کرده امتحان را ها راه ی همه چون نیست بهینه شرایطی
. Lاط هم اگر و باشد داشته وجود تری کوتاه مسیر است L > Dممکن
. نیست هم بهینه نیست کامل چون
: ی محدوده بهترین انتخاب جستجو این تکراری کننده عمیق جستجوی
میکند پیشنهاد و کرده مطرح را ها محدوده تمام بررسی توسط عمقی
می : منتهی مقصد به که است مناسبی حدود عمقی ی محدوده و
. است.____ بهینه و کامل شود
27
طرفه : دو جستجوی
و مقصد سمت به مبدا طرف دو هر از حرکت جستجو روش این در
تواند می برخورد ی نقطه اولین میگیرد صورت مبدا سمت به مقصد
. کند مسیر یک ایجاد
حرکت ویم داریم انتها سمت به ابتدا از حرکت یک موش مسئله مثل
. این میدهد را مسیر کوتاهترین برخورد اولین و ابتدا به انتها از هم
. است بهینه و کامل الگوریتم
: تکراری کننده عمیق جستجوی
: : آگاهانه جستجوهای انواع چهارم فصل
28
مسئله خصوص در دانشی وجود به توجه با آگاهانه جستجوهای در
. این در میگردد حاصل ناآگاهانه جستجوی به نسبت بهتری کارایی
این تا فاصله نظیر اطالعات به مسئله اطالعات بر عالوه ها جستجو
. داریم قرار که نقطه
: آگاهانه جستجوی انواع
1 _BFS جستجو بهترین اول2 _Creedy Search حریصانه
3 _Search *A
4 _Search * IDA
5 _Search *SMA
در: BFSجستجوی توضیحاتی وجود با جستجو روش این در
توسعه را آن گره بسط نبودن یا بودن مطلوب خصوص
. روش. و میگیرد صورت ارزیابی تاج توسط کار این میدهد
ارزیابی تاج پاسخ اولین انتخاب به اشاره بهترین اول جستجوی
های. حالت در و میکند کار مختلف های صورت به که دارد
uniform se. است آن حالت ترین ساده
29
می ما اگر زیرا باشد می نادرست اما است خوب بهترین اول نام
عمل این نام دیگر دهیم بسط را گره بهترین واقعا توانستیم
. باشد می پاسخ سمت به صحیح ای شاخه بلکه نبود جستجو
ارزیابی_ تاج گرفتن تصمیم اشتباه یا بودن خراب صورت در
. شود دور هدف از جستجو شود می باعث
عملیات و شود اشتباه دچار اوقات گاهی است ممکن ازریابی تاج
. کند گمراه را جستجوالگوریتم در موضوع . BFSاین است ناپذیر اجتناب آگاهانه
. است شده چیز ترین هزینه کم انتخاب روش جا این در
) اکتشافی ) تابع ای مکاشفه Heursl Functionتابع
مسیر ی هزینه از هایی تخمین انتخاب جستجو های معیار از یکی
. است موفق هدف نزدیکترین به رسیدن در که نحوی باشدبه می
یا ) اکتشافی که : N)hتابع روشی متداولترین و ترین مرسوم
تابع میدهد انتقال جستجو عملیات به را مسئله همراه دانش
با ) معموال که شود می گفته .n)hاکتشافی شود می داده نشاننقطه از هدف به رسیدن جهت مسیر ترین هزینه کم nتخمین
___(n)h.
30
کد شبه :BFSطراحی
Function Best _first _ Search (Problem_ Eval_FN):a Soltion
sequence
Inputs : Problem _ a Problem Eval _ Fn _ an Evalation
Function
Queueing _ Fn ____ a Function That Orders rodes by Eval_
Fn
Return General _ Search (Problem_ Queueing _ Fn)
به ارزیابی تاج تصمیم اساس بر و کرده تعریف ارزیابی تاج یک
. میدهیم قرار صف یک در را ها اولیت این و میدهیم اولیت ها راه( : حریصانه .n)hجستجوی دایره داخل میکنیم نگاه فقط
عنصر بهترین جستجوی در ساده های استراتژی از دیگر یکی
ترین . نزدیک میکند سعی جستجو این است حریصانه جستجوی
. تاج ارزیابی با عمل این چنانچه دهد بسط را هدف به گره
. میگیرد صورت تخمین ترین هزینه کم کردن پیدا جهت Aاکتشافی
C D E H
31
حالت cابتدا فضای چون نمیرسد جواب به و میشود انتخاب
بعد ندارد را باالخره Dممکن به Bو تا میکند انتخاب .Hرا برسیم از_ روش این یک Aبه Bو Bبه Aمشکل در می loopبریم ها
افتد.
اضافه هزینه و است درست پیمایش حال در میکند فکر دائم و
. کمی ی هزینه چون است خوب روشی روش این غیر در شود می
. چون است خطرناک مشکل این اما است بهینه هدف و دارد
. روش این در نیست روش این حل به قادر حریصانه جستجوی
سبب اکتشافی تابع صحیح نا انتخاب شد گفته قبال که طور همان
مشاهده شکل در چه چنان میگردد مسئله پاسخ از شدن دور
در که ای مرحله در ناصحیح Bمیشود انتخاب یک داریم قرار
گره انتخاب ایی Aمیتواند هزینه متحمل صورت این در که باشد
این است دورگردانیده هدف به رسیدن از را ما که ایم شده
. نیست کامل و بهینه روش
. در آن مصرفی زمان و میشود کامل الگوریتم مشکل این حل با و
برابر mحالیکه باشد جستجو فضای عمق خواهد m(b)oحداکثر
بود.
های : Aالگوریتم * الگوریتم بهترین و مرغوبترین از یکی
جستجو روش دو از ایده از استفاده با که است آگاهانه جستجوی
یکسان هزینه انجام uchبا را خود کار حریصانه جستجوی و
32
را. ) گره یک تا رسیدن هزینه که چنان رسیدن n)gمیدهد هزینه و
را ) هدف گره تا گره آن تا n)hاز میکند سعی و(n)h +) n)g =(n)F. کند کهنه را
(n)g , (n)h متفاوت نوع دو از توانند می و نیستند نوع یک از الزاما
را مجموع باید فقط .minباشند کنیم
برای ) خاص شرایطی اعمال با الگوریتم و n)hاین است بهینه هم
. کامل همتابع ) که است این شرط این که n)hو شود انتخاب ای گونه به
تابع تابعی چنین به نباشد زده تخمین ی هزینه از بیشتر آن مقدار
. شود می گفته قبول قابلOdmis Sibleheurstic Funetion
را اطالعاتی های داده سری یک و است آگاهانه الگوریتم این
.h(nهمان ) داریم قبل از را * الگوریتم .( Aایراد این ) کارامد هم و بهینه هم است کامل هم که
. مصرفی زمان نتیجه در میکند مصرف را زیادی حافظه که است
. شود می زیاد
.IDA : *A +IDSالگوریتم * تکراری ی کننده عمیق
33
از میتوان مصرفی فضای مشکل حل جهت شد مشاهده سوم فصل در
تکنیک این اهمیت کرد استفاده تکراری ی کننده عمیق همچون تکنیکی
. دیدیم چهار فصل در همچنین بود نیاز مورد حافظه میزان کاهش در
روش * به Aکه باشد می آگاهانه جستجوی جهت مناسب الگوی یک
مشکالت * از اما بهینه هم و بود کامل هم روش آن که ای Aگونه
از استفاده با کنیم می سعی لذا بود آن زیاد درخواستی ی حافظه
تکراری ی کننده عمیق جستجوی را Aجستجوی *IDSالگوریتم روشی
* . کیفیت هم که کنیم مصرفی Aمطرح ی حافظه هم و باشد داشته را
کمی.
. گرفتن نظر در بدون روش این دارد گمراهی که میشود حالت بدترین
. است تخمین تابع
بین از اضافه . 2و 1جواب اینها بین حالتی است ممکن و است
. آوردیم. بدست ما که جوابی مثل 3شود
به زودتر که را مقصدی باشد داشته مقصد یا هدف تا چند مسئله اگر
. کمتر هزینه با میکنیم انتخاب برسیم آن
الگوریتم * یک Aهمون *ADI : A+IDSادامه که تفاوت این با اما است
. میکنیم چک فقط را محدوه آن در که میدهد را محدوده
تفاوت اندکی با اما است عمقی جستجوی در هرتکراری روش این در
عمقی ی محدوده هزینه تابع طوریکه به میکند عمل عمقی جستجوی
یه عمق یک جستجوی جای به تکرار هر ترتیب این به و میکند تعیین را
شده مصرفی هزینه تابع توسط که عمقی ی محدوده یک جستجوی
. را محدوده داخل های گره ی همه تکرار هر بنابراین پردازد می است
34
. میدهد *IDAبسط زمان Aهمانند و فضا مشکل که تفاوت این با است
. است شده حل
*IDA* چون هم جستجوهایی صورتیکه دهد Aدر قرار توجه مورد را
عمق ی اندازه به فقط مصرفی فضای لحاظ به اما است بهینه و کامل
زمان دارد نیاز فضا است جواب دارای که مسیری ترین طوالنی
الگوریتم * وابسته IDAمصرفی کننده کشف تابع مقدار به شدت به
است.
*IDA. روش دو تلفیق اثر در دارد هم ایرادهایی سری یک
مسئله *IDAایراد* یک در که جاست تعداد Aاین بسط nبه را گره
که * جا آن از مورد IDAمیدهد را شده داده بسط های گره ی همه
ی اندازه به میدهد قرار برای nجستجو نیاز nتکراری زمان عنصر
یعنی. مانند n2دارد مسائل برخی چنین (TSPهم گرد ) دوره فروشنده
* میدهد افزایش اش غربی نواحی به ناحیه یک حداقل مرحله هر در کهIDA. آید بر هایی روش چنین عهده از نمیتواند
.IDAالگوریتم * کنید مطالعه کتاب از را
.SMAالگوریتم * میشود : محدود حافظه روش این در
(Simpolified Memory Bounde A) *
35
مشکالت * از یا IDAیکی تکراری ی کننده عمیق از از گرفته منشات که
ID میباشد قبل مراحل در جستجو مقادیر نگهداری عدم بود
روش ساختار ی IDزیرا تاریخچه میتوانست که بود ای گونه به
مسیرهای انتخاب دلیل همین به کند نگهداری جایی در را جستجوها
به را مصرفی زمان البته که میباشد متداول روش این در تکراری
. میدهد افزایش شدت
حافظه : دارای که ایی گونه به است آگاهانه جستجوی روش یک تعریف
موجود فضاهای ی کلیه از جستجو عمل در چنانکه میباشد محدود ی
میکند استفاده
.
در که علت این به خوب بد هم و است خوب هم محدود ی حافظه این
100P . که علت این به بد و میشود تمام باالخره و افتد نمی بزرگ ها
. کند پیمایش تواند نمی را حاالت تمام
36
کشیم : می را ریشه های فرزند تمام ابتدا یکنواخت ی هزینه با جستجو
کنیم می جمع هم با را ها هزینه بعد میدهیم بسط را ترین هزینه کم بعد
تا کرده مقایسه هم با را ها گره تمام شود مشخص جدید گره هرینه که
بعد تا کرده پیدا به minببینیم مسیر ترین هزینه کم با تا دهیم بسط
. برسیم هدف
مینویسیم : را پیمایش عادی یافتیم که را مسیر ترین بهینه آن پیمایش
.Aمثل *
آگاهانه :BFSجستجوی
کشیده باید هم فرزندها ریشه کشیدن محض به و کشیده را ریشه ابتدا
ترین ) هزینه کم بعد و .) n)gشوند ترتیب به آن فرزندان میدهیم بسط را
( ). جا این در میدهیم بسط الفبا شوند n)gحروف جمع یکدیگر با نباید ها
مرحله ) هر در بعد n) gبعد کرده مقایسه ها گره سایر با را گره هر
هدف ترین بهینه همان هدف اولین برسیم هدف به تا میدهیم ادامه
است.
نوشتن
37
کم : ترتیب به البته ریشه فرزندان ریشه نوشتن از بعد پیمایش روش
) از ) را فرزندها دوم سطح از بعد نویسیم می اول سطح در ترین هزینه
. مینویسیم ترتیب به راست به چپ
همان : مثل درخت کشیدن حریصانه که )BFSروش تفاوت این با استn)h(. میکنیم مقایسه را نمی n)hها حساب هیچگاه مبدا گره در را
کنیم.
: پیمایش در گره ترین هزینه کم فقط گره هر از بعد پیمایش روش
می نوشته پیمایش در بازهم رسیدیم بست بن به اگر و شود می نوشته
. میدهیم بسط را بعدی هزینه تا میگردیم بر و شود
فرزند : : Aروش * های گره سریع مبدا از بعد درخت کشیدن روش
. شوند می کشیده
باید ) جا این بعد )n)g +(n)h =(n)Fدر و کرده حساب که n)Fرا را minی
را است
باید ) فقط بعد سطوح برای داد و )n)gبسط قبل را n)Fهای جاری گره
کرد جمع هم با
38
جایی ) اگر می n)Fو نگاه الفبا حروف ترتیب به شدند برابر هم با ها
. میدهیم بسط و کنیم
: پیمایش نوشتن روش
. بنویسیم عادی کردیم پیدا که را بهینه مسیر باید فقط
(n)h . باشد نگذاشته شرطی اگر هدفند هستند صفر که هایی
. شود رعایت الفبا حروف ترتیب یکسان شرایط در باید
باید به Cاالن نداریم حافظه ولی دهیم پیمایش است بهتر که را
پدر گره در آن تاریخچه کرد بایدحدف را حالت بدترین علت همین
. شود می ذخیره
از بزرگتر یکی تعداد به حداقل و کرد بررسی باید را فرزندها تمام
. داد اختصاص حافظه فرزندها تعداد
جا این با 12در چون است بوده رفت Cبه 13اشتباه توان می
میزنیم .12پس خط را
39
.13با Aپس رسد می هدف به تا
و دهیم بسط که نداریم دیگر حافظه زیرا شد تمام جا این مسئله
نرسیده هم هدف به
توان نمی دیگر باشد هم تر پایین های شاخه در جواب اگر وقتی
برای پس برسد
. میرود بین از همیشه
اینکه با است شده تمام و برویم دیگر فرزندان سراغ باید سپس
چپ فرزند پس نرسیدیم هدف . Cبه به پس شود نمی داده بسط
A (. را بوده بهتر کردیم پیمایش که مسیری ی تاریخچه میگردیم بر
). کنیم می ذخیره
نداریم نتیجه 15<24حافظه تاریخچه Cدر در و شود می حذف
. شود می ذخیره
40
محدود علت به اما هست هم باشد بهتری جواب است ممکن
آن به حافظه بودن
خیلی ها برگشت و رفت تعداد عوض در ولی رسیم نمی جواب
. شود می کمتر
کارایی شود اضافه دادیم تخصیص الگوریتم به که ای حافظه اگر
. شود می بهتر. شود می زیاد زمان اما
ها : نکته
1. کند: زیاد را روش این کارایی میتواند حافظه میزان افزایش
اجازه: 2 حافظه که جایی تا تکراری های حالت از روش این در
. شود می جلوگیری بدهد
ی: 3 اندازه به حافظه بودن موجود صورت در الگوریتم این
. است بهینه و کامل گاه آن کافی
41
نگهداری: 4 مسیر بهترین مورد در اطالعاتی همراه روش این در
. شود می
مسائلی: 5 است ممکن داشت توجه ظریف نکته این به باید
که باشد داشته وجود.Aبا * شود حل قبول قابل زمان در و سادگی به
توسط * مسئله همان حالیکه محدود SMAدر نا ی حافظه یک با و
. شود حل قابل غیرو رفت به نکته این شود حل تری طوالنی زمان در اینکه یا و
زیاد * های .SMAبرگشت دارد اشاره
آمد ناکار بزرگ نسبتا ی حافظه یک با را الگوریتم تواند می که
کند.
42
کردن ) هرس ( :B_Xمدل
شرط صورت در را زوج سطوح و ماکسمیم را فرد سطوح
گذاریم . minنگذاشتن میمثال اگر کرده مقایسه خودش عموی اولین با را گره minهر
. کنیم می هرس بررسی بدون را بعد ی شاخه تر
ندارد خود برای عمویی چون شود نمی هرس هیچگاه اول سطر
.maxفقط نویسیم می مستقیما را
کرده مقایسه عمو با را گره اولین بعدی ی شاخه بود Maxدر تر
غیر در شود می هرس بعدی ی شاخه و میرود پدرش به همان
. شود نمی هرس بعدی شاخه صورت این
باید فرزندان بین .Maxاز داد انتقال فقط پدرش به را تر
43