Download presentation
Presentation is loading. Please wait.
1
هوش مصنوعی Artificial Intelligence
1
2
فصل چهارم: جستجوی آگاهانه و اکتشاف
راهبرد جستجوی آگاهانه از دانش مربوط به مساله استفاده می کند
3
راهبرد جستجوي بهترين اين راهبرد به اين صورت بيان ميشود که در يک درخت، زماني که گرهها مرتب ميشوند، گرهاي که بهترين ارزيابي را براساس یک تابع ارزیابی f(n) داشته باشد، قبل از ديگر گرهها بسط داده ميشود. هدف: يافتن راهحلهاي کمهزينه است، اين الگوريتمها عموماً از تعدادي معيار تخمين براي هزينه راهحلها استفاده ميکنند و سعي بر حداقل کردن آنها دارند.
4
جستجوي حريصانه به حداقل رساندن هزينه تخمين زده شده براي رسيدن به هدف.
بسط نزديکترین گره به هدف تابع کشفکننده: هزينه رسيدن به هدف از يک حالت ويژه ميتواند تخمين زده شود اما دقيقاً تعيين نميشود. تابعي که چنين هزينههايي را محاسبه ميکند تابع کشفکننده h ناميده ميشود. F(n) = h(n) جستجوي حريصانه: جستجوي بهترين که h را به منظور انتخاب گره بعدي براي بسط استفاده ميکند، جستجوي حريصانه (greedy search) ناميده ميشود.
5
جستجوي حريصانه روش اکتشافی فاصله خط مستقیم hSLD
6
جستجوي حريصانه
7
ويژگيهاي جستجوي حريصانه
جستجوي حريصانه از لحاظ دنبال کردن يک مسير ويژه در تمام طول راه به طرف هدف، مانند جستجوي عرضی است، اما زماني که به بنبست ميرسد، برميگردد. اين جستجو بهينه نيست و ناکامل است. پيچيدگي زماني در بدترين حالت براي جستجوي حريصانه O(bm)، که m حداکثر عمق فضاي جستجو است. جستجوي حريصانه تمام گرهها را در حافظه نگه ميدارد، بنابراين پيچيدگي فضاي آن مشابه پيچيدگي زماني آن است. ميزان کاهش پيچيدگي به مسئله و کيفيت تابع h بستگي دارد.
8
جستجوي A*: کمینه کردن هزینه کلی راه حل
با ترکيب دو تابع ارزيابي داريم: f(n) = g(n) + h(n) :g(n) هزينه مسير از گره آغازين به گره n را به ما ميدهد. h(n): هزينه تخمين زده شده ارزانترين مسير از n به هدف است و ما داريم: هزينه تخمين زده شده ارزانترين راه حل از طريق n = f(n)
9
جستجوي A*
10
جستجوي A*
11
جستجوي A* کشفکنندگي قابل قبول:
تابع hاي را که هزينهاي بيش از تخمين براي رسيدن به هدف نداشته باشد، يک کشفکنندگي قابل قبول (admissible heuristic) گويند. جستجوي A*: جستجوي بهترين که f به عنوان تابع ارزياب و يک تابع h قابل قبول استفاده ميکند، به عنوان جستجوي A* شناخته ميشود.
12
جستجوي A* رفتار جستجوي A* نگاهي گذرا به اثبات کامل و بهينه بودن A*:
مشاهده مقدماتي: تقريباً تمام کشفکنندگيهاي مجاز داراي اين ويژگي هستند که در طول هر مسيري از ريشه، هزينه f هرگز کاهش پيدا نميکند. اين خاصيت براي کشفکنندگي، خاصيت يکنوايي (monotonicity) گفته ميشود. اگر يکنوا نباشد، با ايجاد يک اصلاح جزئي آن را يکنوا ميکنيم.
13
جستجوي A* بنابراين هر گره جديدي که توليد ميشود، بايد کنترل کنيم که آيا هزينة f اين گره از هزينه f پدرش کمتر است يا خير. اگر کمتر باشد، هزينة f پدر به جاي فرزند مينشيند: بنابراين: f هميشه در طول هر مسيري از ريشه غيرکاهشي خواهد بود، مشروط بر اينکه h امکانپذير باشد. A* معمولاً قبل از اينکه دچار کمبود زمان شود، دچار کمبود فضا ميشود. زيرا اين جستجو تمام گرههاي توليد شده را در حافظه ذخيره ميکند.
14
توابع اکتشافی معماي 8 يکي از مسائل اوليه اکتشاف بود.
هدف: لغزاندن چهارخانهها به طور افقي يا عمودي به طرف فضاي خالي است تا زماني که ساختار کلي مطابق با هدف (goal) باشد. فاکتور انشعاب در حدود 3 است. 7 2 4 5 6 8 3 1 1 2 4 3 5 6 7 8 Start State Goal State
15
توابع اکتشافی مربع 8 h1 = تعداد چهارخانههايي که در مکانهاي نادرست هستند. h1 قابل قبول است، زيرا واضح است که هر چهارخانهاي که خارج از مکان درست باشد حداقل يکبار بايد جابجا شود. h2 = مجموع فواصل چهارخانهها از مکانهاي هدف صحيحشان است. مجموع فواصل عمودي و افقي است که بعضي وقتها city block distance و يا Manhattan distance ناميده ميشود h2 قابل قبول است، زيرا هر جابجایی که می تواند انجام پذیرد یک مرحله به هدف نزدیک می شود
16
توابع اکتشافی h1 = 8 h2 = 18 (3+1+2+2+2+3+3+2) 7 2 4 5 6 8 3 1 1 2 4 3
Start State Goal State h1 = 8 h2 = 18 ( )
17
اثر دقت اکتشاف بر کارايي
يک راه براي تشخيص کيفيت اکتشاف فاکتور انشعاب مؤثر b* است. اگر مجموع تعداد گرههاي بسط داده شده توسط A* براي يک مسئله ويژه N باشد و عمق راه حل d، سپسb* فاکتور انشعابي است که يک درخت يکنواخت با عمق d خواهد داشت تا حاوی N+1 گره باشد. بنابراين: N+1 = 1+ b*+( b*)2…+( b*)d معمولاً فاکتور انشعاب مؤثر که توسط اکتشاف نمايش داده ميشود، مقدار ثابتي دارد. / طراحي شده، b* در حدود 1 دارد.
18
مقایسه هزینه جستجو و فاکتور انشعاب موثر
19
ابداع توابع اکتشافی قابل قبول
مساله راحت (Relaxed problem): مساله ای که فعالیتهایش محدودیتهای کمتری داشته باشد. هزینه حل بهینه مساله راحت، اکتشاف قابل قبولی برای مساله است. فعالیتهای معمای 8 کاشی می تواند از مربع A به مربع B حرکت کند اگر A همجوار افقی یا عمودی B باشد و B خالی باشد. مساله های راحت: الف: کاشی می تواند از مربع A به مربع B منتقل شود اگر A همجوار B باشد ب: کاشی می تواند از مربع A به مربع B منتقل شود اگر B خالی باشد پ: کاشی می تواند از مربع A به مربع B منتقل شود
20
الگوريتمهاي اصلاح تکراري
بهترين راه براي فهم الگوريتمهاي اصلاح تکراري درنظر داشتن تمام حالاتي است که روي سطح يک دورنمايي در معرض ديد قرار داده شده است. ارتفاع هر نقطه در دورنما مطابق با تابع ارزياب حالت آن نقطه است. ايده اصلاح تکراري، حرکت کردن در اطراف دورنما و سعي بر يافتن قلههاي مرتفع است، که همانا راهحلهاي بهينه هستند. الگوريتمهاي اصلاح تکراري معمولاً اثر حالت جاري را فقط حفظ ميکنند، و توجهي فراتر از همسايگي آن حالت ندارند.
21
الگوريتمهاي اصلاح تکراري
evaluation Current state الگوريتمهاي اصلاح تکراري سعي بر يافتن قلههايي بروي سطح حالات دارند، جائي که ارتفاع توسط تابع ارزيابي تعريف ميشود.
22
الگوريتمهاي اصلاح تکراري
اين الگوريتمها به دو گره اصلي تقسيم ميشوند. الگوريتمهاي تپهنوردي (Hill-climbing) Simulated annealing
23
الگوریتمهای جست وجوی محلی و مسئله های بهینه سازی
اگر مسیر رسیدن به هدف مهم نباشد الگوریتهای جست و جوی محلی با استفاده از حالت فعلی عمل می کنند و فقط به همسایه های آن حالت منتقل می شوند. الگوریتمهای جست و جوی محلی علاوه بر یافتن هدف برای حل مسئله های بهینهسازی نیز مفیدند. در این مسئله ها هدف یافتن بهترین حالت بر اساس تابع هدف است. جست و جوی تپه نوردی (جست و جوی محلی حریصانه) این الگوریتم حلقه ای است که در جهت افزایش مقدار حرکت می کند وقتی به قله ای رسید که هیچ همسایه ای از آن بلند تر نیست خاتمه می یابد.
24
جست و جوی تپه نوردی (جست و جوی محلی حریصانه)
Apply the rule that increases the most the current state value Move in the direction of the greatest gradient f-value f-value = max(state) states while f-value(state) > f-value(best-next(state)) state := next-best(state)
25
جست و جوی تپه نوردی (جست و جوی محلی حریصانه)
اين سياست ساده، سه زيان عمده دارد: Local Maxima : يک ماکزيمم محلي، برخلاف ماکزيمم عمومي، قلهاي است که پائينتر از بلندترين قله درفضاي حالت است. زماني که روي ماکزيمم محلي هستيم، الگوريتم توقف خواهد نمود. اگرچه راه حل نيز ممکن است دور از انتظار باشد. Plateau : يک فلات محوطهاي از فضاي حالت است که تابع ارزياب يکنواخت باشد. جستجو يک قدم تصادفي را برخواهد داشت. Ridges : نوک کوه، داراي لبههاي سراشيب است. بنابراين جستجو به بالاي نوک کوه به آساني ميرسد، اما بعد با ملايمت به سمت قله ميرود. مگر اينکه عملگرهايي موجود باشند که مستقيماً به سمت بالاي نوک کوه حرکت کنند. جستجو ممکن است از لبهاي به لبه ديگر نوسان داشته باشد و پيشرفت کمي را حاصل شود.
26
جست و جوی تپه نوردی (جست و جوی محلی حریصانه)
شانه بیشینه عمومی بیشینه محلی هموار فضای حالت تابع هدف حالت فعلی
27
جست و جوی تپه نوردی (جست و جوی محلی حریصانه)
در هر مورد، الگوريتم به نقطهاي ميرسد که هيچ پيشرفتي نيست. اگر اين اتفاق بيفتد، تنها کار ممکن براي انجام دادن آغاز مجدد از نقطه شروع ديگري دوباره آغاز ميشود. موفقيت hill-climbing خيلي به ظاهر فضاي حالت «سطح» بستگي دارد: اگر فقط ماکزيممهاي محلي کمي وجود داشته باشد، تپهنوردي با شروع تصادفي خيلي سريع راهحل خوبي را پيدا خواهد کرد.
28
مساله 8 وزیر با استفاده از جست و جوی تپه نوردی
استفاده از فرمول بندی کامل هر حالت 56 جانشین دارد تابع اکتشافی h تعداد جفت هایی از وزیران است که به طور مستقیم و غیر مستقیم به یکدیگر گارد می دهند.
29
مساله 8 وزیر با استفاده از جست و جوی تپه نوردی
h = 17 h = 1
30
جست و جوی شبیه سازی حرارت (Simulated annealing)
تپه نوردی مرکب با حرکت تصادفی است حرارت دادن فرایندی است که فلزهای سخت و شیشه را تا درجه بالایی حرارت می دهند و به تدریج سرد می کنند. مثال : توپ پینگ پنگ در سطح ناصاف در اين گروه از الگوريتمها به جاي شروع دوباره به طور تصادفي، زماني که در يک ماکزيمم محلي گير افتاديم، ميتوانيم اجازه دهيم که جستجو چند قدم به طرف پائين بردارد تا از ماکزيمم محلي فرار کند.
31
جست و جوی شبیه سازی حرارت (Simulated annealing)
Proceed like hill climbing, but pick at each step a random move If the move improves the f-value, it is always executed Otherwise, it is executed with a probability that decreases exponentially as improvement is not found Probability function: T is the number of steps since improvement is the amount of decrease at each step
32
جست و جوی شبیه سازی حرارت (Simulated annealing)
پارامترهاي مؤثر به شرح زير ميباشند: : چگونگي ارزيابي. 2- T: تعيين احتمال. الگوريتم شباهت صريحي با annealing (پردازشي که به طور آهسته مايعي را تا زماني که يخ ببندد سرد ميکند)، گسترش يافته است. مقدار تابع مطابق با انرژي ورودي اتمهاي ماده است، و T با دما مطابقت دارد. جدول ميزان دما را در جايي که پائين آمده است، تعيين ميکند.
33
جست و جوی پرتو محلی نگهداری K حالت به جای یک حالت
تولید تمام جانشین های همه حالتها انتخاب بهترین جانشین تا رسیدن به هدف جست و جوی پرتو غیر قطعی به جای انتخاب بهترین k از جانشین ها، k جانشین به طور تصادفی انتخاب می شود. احتمال انتخاب یک جانشین، تابع صعودی از مقدار آن است.
34
الگوریتم های ژنتیک 1) شروع الگوریتم با مجموعه ای از k حالت تصادفی به نام جمعیت نمایش هر حالت یا رشته یا فرد (chromosome) به صورت رشته ای بر روی الفبای متناهی نمایش مساله هشت وزیر
35
الگوریتم های ژنتیک 2) انتخاب (Selection):
استفاده از تابع ارزیابی یا تابع برازش (fitness function) انتخاب بر اساس بهترین ها یا به طور تصادفی
36
الگوریتم های ژنتیک 3) تقاطع یا تولید (Generation):
انتخاب تصادفی نقاط تقاطع و تولید دو فرد جدید از دو فرد موجود
37
الگوریتم های ژنتیک 4) جهش (Mutation):
احتمال جهش در یک مکان تصادفی در هر رشته تولید شده به طور مستقل
38
الگوریتم های ژنتیک نسل اولیه نسل بعدی
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.