هوش مصنوعي فصل سوم (ادامه) حل مسئله با جستجو
حل مسئله با جستجو انواع جستجو جستجوي آگاهانه (informed) يا اكتشافي (Heuristic) جستجويي كه در آن از اطلاعات اضافي در مورد چگونگي وضعيت هدف استفاده ميشود راهبردهايي که تشخيص ميدهد يک حالت غير هدف نسبت به گره غير هدف ديگر، اميد بخش تر است جستجوي ناآگاهانه (uninformed or blind) يا ضعيف جستجويي كه فاقد هر گونه اطلاعات اضافي است.
حل مسئله با جستجو جستجوي ناآگاهانه راهبردها جست و جوي هزينه يکنواخت ناآگاهي اين است که الگوريتم هيچ اطلاعاتي غير از تعريف مسئله در اختيار ندارد اين الگوريتمها فقط ميتواند جانشينهايي را توليد و هدف را از غير هدف تشخيص دهند راهبردها جست و جوي هزينه يکنواخت جست و جوي عمقي محدود جست و جوي دو طرفه جست و جوي عرضي جست و جوي عمقي جست و جوي عميق کننده تکراري
درخت جستجوي حل مسئله با جستجو
حل مسئله با جستجو درختهاي جستجوي b: ماكزيمم انشعاب هر گره m: ماكزيمم عمق فضاي حالت يا ماكزيمم عمق درخت (ميتواند بينهايت باشد.) d: عمق كم هزينهترين راهحل (عمق هدف)
الگوريتمهاي درخت جستجوي حل مسئله با جستجو الگوريتمهاي درخت جستجوي
حل مسئله با جستجو مثال: نقشه روماني
درخت جستجوي مسئله روماني حل مسئله با جستجو درخت جستجوي مسئله روماني
حل مسئله با جستجو جستجوي عرضي(BFS) A B C D E F G H I J K L N M O P Q
حل مسئله با جستجو جستجوي عرضي(BFS) معمولاً پيادهسازي اين جستجو با يك صف انجام ميشود. (پيادهسازي در تمرينها به عهدة دانشجوي محترم)
حل مسئله با جستجو جستجوي عرضي(BFS) کامل بودن: بهينگي: بله (مشروط) در صورتي بهينه است که هزينه مسير، تابعي غير نزولي از عمق گره باشد.(مثل وقتي که فعاليتها هزينه يکساني دارند) پيچيدگي زماني: پيچيدگي فضا:
حل مسئله با جستجو جستجوي عرضي(BFS) بهينگي: بله (مشروط) در صورتي بهينه است که هزينه هر گام يکسان باشد پيچيدگي زماني: پيچيدگي فضا:
جستجوي عرضي بهينه نيست: آراد- سيبيو- فاگاراس- بخارست در ابتدا پيدا خواهد شد. (فاصله=450) آراد- سيبيو- ريمنيكو ويلسيا - پيتتسي – بخارست، مسير بهينه است. (فاصله=418)
جستجوي هزينه يکنواخت(UCS) حل مسئله با جستجو جستجوي هزينه يکنواخت(UCS) اين جستجو گره n را با کمترين هزينه مسير بسط ميدهد A B C D E F G H I J K L N M O P Q 1 2 3
جستجوي هزينه يکنواخت(UCS) حل مسئله با جستجو جستجوي هزينه يکنواخت(UCS) کامل بودن: هزينه هر مرحله بزرگتر يا مساوي يک مقدار ثابت و مثبت ε باشد.(هزينه مسير با حرکت در مسير افزايش مي يابد) بهينگي: هزينه هر مرحله بزرگتر يا مساوي ε باشد پيچيدگي زماني: پيچيدگي فضا:
جستجوي هزينه يکنواخت(UCS) حل مسئله با جستجو جستجوي هزينه يکنواخت(UCS) کامل بودن: بله هزينه هر مرحله بزرگتر يا مساوي يک مقدار ثابت و مثبت ε باشد.(هزينه مسير با حرکت در مسير افزايش مي يابد) بهينگي: خير اگر دو گره هدف يكي در شاخه عميقي با هزينه هاي 1 و ديگري در شاخه كم عمقي با هزينه 2 باشد بهينه نيست. پيچيدگي زماني: پيچيدگي فضا: هزينه هر يال، حداقل ε و هزينه رسيدن از حالت اوليه به جواب C* است.
حل مسئله با جستجو جستجوي عمقي (DFS) 2 6 3 7 4 5 A B C D E F G H I J K L N M O P Q 2 6 3 7 4 5
حل مسئله با جستجو جستجوي عمقي(DFS) معمولاً پيادهسازي اين جستجو با يك پشته انجام ميشود. (يك نمونه شبه كد)
حل مسئله با جستجو جستجوي عمقي (DFS) کامل بودن: خير بهينگي: خير اگر زير درخت چپ عمق نامحدود داشت و فاقد هر گونه راه حل باشد، جستجو هرگز خاتمه نمي يابد. در صورت محدود بودن عمق، كامل است. بهينگي: خير پيچيدگي زماني: پيچيدگي فضا: پيچيدگي زماني بيشتر از BFS است. در مورد پيچيدگي فضا نيز، چون در هر شاخه، اطلاعات همان شاخه را نگه ميداريم، و m سطر و در هر سطر b انشعاب داريم o(bm) خواهد بود.
جستجوي عمقي محدود (DLS) حل مسئله با جستجو جستجوي عمقي محدود (DLS) مسئله درختهاي نامحدود ميتواند به وسيله جست و جوي عمقي با عمق محدود L بهبود يابد A B C D E F G H I J K L N M O P Q
جستجوي عمقي محدود(DLS) حل مسئله با جستجو جستجوي عمقي محدود(DLS) همان جستجوي عمقي است با يك تفاوت جزئي. (يك نمونه شبه كد)
جستجوي عمقي محدود (DLS) حل مسئله با جستجو جستجوي عمقي محدود (DLS) کامل بودن: خير اگر L<d و سطحي ترين هدف در خارج از عمق محدود قرار داشته باشد، اين راهبرد کامل نخواهد بود. بهينگي: خير اگر L>d انتخاب شود، اين راهبرد بهينه نخواهد بود. پيچيدگي زماني: پيچيدگي فضا:
جستجوي عمقي محدود (DLS) حل مسئله با جستجو جستجوي عمقي محدود (DLS) کامل بودن: خير اگر L<d و سطحي ترين هدف در خارج از عمق محدود قرار داشته باشد، اين راهبرد کامل نخواهد بود. بهينگي: خير اگر L>d انتخاب شود، اين راهبرد بهينه نخواهد بود. پيچيدگي زماني: پيچيدگي فضا:
جستجوي عميق کننده تکراري(IDS) حل مسئله با جستجو جستجوي عميق کننده تکراري(IDS) تركيبي از DFS و BFS مسئله يافتن بهترين L مناسب، با كمك اين روش، حل ميشود. L=1 A B C D E F G H I J K L N M O P Q
جستجوي عميق کننده تکراري (IDS) حل مسئله با جستجو جستجوي عميق کننده تکراري (IDS) L=2 A B C D E F G H I J K L N M O P Q
جستجوي عميق کننده تکراري (IDS) حل مسئله با جستجو جستجوي عميق کننده تکراري (IDS) A L=3 B C D E F G H I J K L M N O P Q R S
جستجوي عميق كننده تكراري(IDS) حل مسئله با جستجو جستجوي عميق كننده تكراري(IDS) همان جستجوي عمقي محدود است با يك تفاوت جزئي. (يك نمونه شبه كد)
جستجوي عميق کننده تکراري (IDS) حل مسئله با جستجو جستجوي عميق کننده تکراري (IDS) کامل بودن: بله در صورتي که فاکتور انشعاب محدود باشد بهينگي: بله وقتي که هزينه مسير، تابعي غير نزولي از عمق گره باشد پيچيدگي زماني: پيچيدگي فضا:
جستجوي عميق کننده تکراري (IDS) b گره در سطح1، d بار توسعه داده ميشوند. b2 گره در سطح 2، (d-1) بار توسعه داده ميشوند. ... bd گره در سطح d، 1 بار توسعه داده ميشوند. حل مسئله با جستجو جستجوي عميق کننده تکراري (IDS) کامل بودن: بله در صورتي که فاکتور انشعاب محدود باشد بهينگي: بله وقتي که هزينه مسير، تابعي غير نزولي از عمق گره باشد پيچيدگي زماني: پيچيدگي فضا:
مقايسه کارايي روش هاي جستجوي ناآگاهانه
حل مسئله با جستجو جستجوي دو طرفه انجام دو جست و جوي همزمان، يکي از حالت اوليه به هدف و ديگري از هدف به حالت اوليه تا زماني که دو جست و جو به هم برسند
حل مسئله با جستجو جستجوي دو طرفه کامل بودن: بله بهينگي: بله اگر هر دو جستجو، عرضي باشند و هزينه تمام مراحل يکسان باشد بهينگي: بله پيچيدگي زماني: پيچيدگي فضا:
حل مسئله با جستجو جستجوي دو طرفه کامل بودن: بله بهينگي: بله اگر هر دو جستجو، عرضي باشند و هزينه تمام مراحل يکسان باشد بهينگي: بله پيچيدگي زماني: پيچيدگي فضا:
اجتناب از حالتهاي تکراري حل مسئله با جستجو اجتناب از حالتهاي تکراري وجود حالتهاي تکراري در يک مسئله قابل حل، ميتواند آن را به مسئله غير قابل حل تبديل کند
اجتناب از حالتهاي تکراري حل مسئله با جستجو اجتناب از حالتهاي تکراري راه حل: نگهداري گرههاي توسعه داده شده در closed list مشكل: از بين رفتن بهينگي به علت نگهداري تمام گرهها در حافظه
حل مسئله با جستجو جستجو با اطلاعات ناقص مسئله هاي فاقد حسگر: اگر عامل فاقد حسگر باشد، ميتواند در يکي از چند حالت اوليه باشد و هر فعاليت ميتواند آن را به يکي از چند حالت جانشين ببرد مسئله هاي اقتضايي (شرايط عدم قطعيت): اگر محيط به طور جزئي قابل مشاهده نباشد يا اگر فعاليتها قطعي نباشد، ادراکات عامل، پس از هر عمل، اطلاعات جديدي را تهيه ميکنند. هر ادراک ممکن، اقتضايي را تعريف ميکند که بايد براي آن برنامه ريزي شود مسائل خصمانه: اگرعدم قطعيت در اثر فعاليتهاي عامل ديگري بوجود آيد، مسئله را خصمانه گويند مسئله هاي اکتشافي: وقتي حالتها و فعاليتهاي محيط ناشناخته باشند، عامل بايد سعي کند آنها را کشف کند. مسئله هاي اکتشافي را ميتوان شکل نهايي مسئله هاي اقتضايي دانست
مثال: دنياي جاروبرقي فاقد حسگر حل مسئله با جستجو مثال: دنياي جاروبرقي فاقد حسگر عامل جارو تمام اثرات فعاليتهايش را ميداند اما فاقد حسگر مكان است. حالت اوليه آن يکي از اعضاي مجموعه{1،2،3،4،5،6،7،8} ميباشد فعاليت ((Right {2،4،6،8} فعاليت (Right,Suck) {4،8} فعاليت (Right,Suck,Left,Suck) تضمين ميکند که صرف نظر از حالت اوليه، به حالت هدف، يعني 7 برسد
دنياي جاروبرقي فاقد حسگر حل مسئله با جستجو دنياي جاروبرقي فاقد حسگر عامل بايد راجع به مجموعههاي حالتي که ميتواند به آنها برسد استدلال کند. اين مجموعه از حالتها را حالت باور گوييم. اگر فضاي حالت فيزيکي داراي s حالت باشد فضاي حالت باور 2^s حالت باور خواهد داشت.