حسين-حيدري-كلوني-مورچه
Download
Report
Transcript حسين-حيدري-كلوني-مورچه
کلونی مورچه
تصمیم گیری درمسائل مالی
استاد :حمیدرضا کردلویی
دانشجو:حسین حیدری
فهرست
مقدمه
درباره مورچگان
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
مسئله فروشنده دوره گرد
مزیتهایACO
کاربردهای ACO
نتیجه گیری
مقدمه
انسان همیشه برای الهام گرفتن به جهان زنده پیرامون خود نگریسته است .یکی از
بهترین طرح های شناخته شده ،طرح پرواز انسان است که ابتدا لئورناردو
داوینچی( )۱۵۱۹-۱۴۵۲طرحی از یک ماشین پرنده را بر اساس ساختمان بدن خفاش
رسم نمود .چهار صد سال بعد کلمان آدر ماشین پرنده ای ساخت که دارای موتور بود و
.بجای بال از ملخ استفاده می کرد
هم اکنون کار روی توسعه سیستم های هوشمند با الهام از طبیعت از زمینه های خیلی
پرطرفدار هوش مصنوعی است .الگوریتمهایی که با استفاده از ایده تکاملی داروینی و
انتخاب طبیعی مطرح شده ،روش بسیار خوبی برای یافتن مسائل بهینه سازیست .ایده
تکاملی داروینی بیانگر این مطلب است که هر نسل نسبت به نسل قبل دارای تکامل است
و آنچه در طبیعت رخ می دهد حاصل میلیون ها سال تکامل نسل به نسل موجوداتی مثل
مورچه است
درباره مورچگان
)1اجتماعی بودن
زندگی در کلونی 30میلیونی
رفتار در جهت بقاء کلونی نه درجهت بقاء یک جزء
)2رفتار جمعی مورچه
رفتار جستجوگرانه
تقسیم کار و تخصیص وظایف بون کنترل مرکزی
مراقبت از فرزندان
کوچکترها در مرکز و بزرگترها در اطراف
سنین مختلف در رینگهای متفاوت
درباره مورچگان
)3موجوداتی کور،بدون حافظه وبسیار کم هوش
)4اتنخاب کوتاهترین مسیر از النه تا غذا
)5ارتباط از طریق فرمون
)6هوشمندی توده ای
دارای رفتار تصادفی
بدون هیچگونه ارتباطی
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
مورچه ها هنگام راه رفتن از خود ردي ازماده شیمیایي فرومون
( )PHEROMONEبه جاي مي گذارند البته این ماده بزودي تبخیر مي
شود ولي در کوتاه مدت بعنوان رد مورچه بر سطح زمین باقي مي ماند.
یک رفتار پایه اي ساده در مورچه ها وجود دارد :
آنها هنگام انتخاب بین دو مسیر بصورت احتماالتي )) STATISTICAL
مسیري را انتخاب مي کنند که فرومون بیشتري داشته باشد یا بعبارت دیگر
مورچه هاي بیشتري قبال از آن عبور کرده باشند .حال می بینیم که همین
تمهید ساده چگونه منجر به پیدا کردن کوتاهترین مسیر خواهد شد :
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
همانطور که در شکل مي بينيم مورچه ها روي مسير
در حرکت اند (در دو جهت مخالف)
اگر در مسير مورچه ها مانعي قرار دهيم مورچه ها
دو راه براي انتخاب کردن دارند.
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
اولین مورچه از Aمي آید و به Cمي رسد ،در مسیر هیچ فروموني نمي بیند بنابر این
براي مسیر چپ و راست احتمال یکسان مي دهد و بطورتصادفي و احتماالتي مسیر
CEDرا انتخاب مي کند.
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
مورچه ها در حال برگشت و به مرور زمان یک اثر بیشتر فرومون را روي CED
حس مي کنند و آنرا بطور احتمالي و تصادفي ( نه حتما و قطعا) انتخاب مي کنند.
در نهایت مسیر CEDبعنوان مسیر کوتاهتر برگزیده مي شود .در حقیقت چون
طول مسیر CEDکوتاهتر است زمان رفت و برگشت از آن هم کمتر مي شود و در
نتیجه مورچه هاي بیشتري نسبت به مسیر دیگر آنرا طي خواهند کرد چون فرومون
بیشتري در آن وجود دارد.
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
نکته بسیار با اهمیت این است که هر چند احتمال انتخاب مسیر پر فرومون تر توسط مورچه
ها بیشتر است ولي این کماکان احتمال است و قطعیت نیست .یعني اگر مسیر CED
پرفرومون تر از CFDباشد به هیچ عنوان نمي شود نتیجه گرفت که همه مورچه ها از
مسیر CEDعبور خواهند کرد بلکه تنها مي توان گفت که مثال %90مورچه ها از مسیر
کوتاهتر عبور خواهند کرد .اگر تصادفا اولین مورچه مسیر( CFDمسیر دورتر) را
انتخاب مي کرد و ردي از فرومون بر جاي مي گذاشت آنگاه همه مورچه ها بدنبال او
حرکت مي کردند و هیچ وقت کوتاهترین مسیر یافته نمي شد .بنابراین تصادف و احتمال
نقش عمده اي در ACOبر عهده دارند.
مورچه ها چگونه کوتاهترین مسیر را انتخاب میکنند
نکته دیگر مسئله تبخیر شدن فرومون بر جاي گذاشته شده است .برفرض اگر
مانع در مسیر ABبرداشته شود و فرومون تبخیر نشود مورچه ها همان
مسیر قبلي را طي خواهند کرد .ولي در حقیقت این طور نیست .تبخیر شدن
فرومون و احتمال به مورچه ها امکان پیدا کردن مسیر کوتاهتر جدید را مي
دهند.
بهینه سازی مسایل بوسیله کلونی مورچه
همانطور که مي دانیم مسئله یافتن کوتاهترین مسیر ،یک مسئله بهینه سازیست که گاه حل آن
بسیار دشوار است و گاه نیز بسیار زمانبر .بعنوان مثال مسئله فروشنده دوره گرد))TSP
،در این مسئله فروشنده دوره گرد باید از یک شهر شروع کرده ،به شهرهاي دیگر برود
و سپس به شهر مبدا بازگردد بطوریکه از هر شهر فقط یکبار عبور کند و کوتاهترین
مسیر را نیز طي کرده باشد .اگر تعداد این شهرها Nباشد در حالت کلی این مسئله
(N-1( !/2حالت متفاوت خواهد داشت که محاسبه هریک از این حاالت بسیار وقت گیر
است.
با انجام یک الگوریتم برنامه سازي پویا مانند الگوریتم کلونی مورچه ()ACOبراي این
مسئله میتوان باصرف زمان کمتر آنرا حل کرد .
مارکو دوریگو در تز دکتری خود برای اولین بار از این روش استفاده نمود .
مزیتهای ACO
همانطور که گقته شد «تبخیر شدن فرومون» و «احتمال-تصادف» به مورچه ها
امکان پیدا کردن کوتاهترین مسیر را مي دهند .این دو ویژگي باعث ایجاد انعطاف
در حل هرگونه مسئله بهینه سازي مي شوند .مثال در گراف شهرهاي مسئله
فروشنده دوره گرد ،اگر یکي از یالها (یا گره ها) حذف شود الگوریتم این توانایي
را دارد تا به سرعت مسیر بهینه را با توجه به شرایط جدید پیدا کند .به این ترتیب
که اگر یال (یا گره اي) حذف شود دیگر الزم نیست که الگوریتم از ابتدا مسئله را
حل کند بلکه از جایي که مسئله حل شده تا محل حذف یال (یا گره) هنوز بهترین
مسیر را داریم ،از این به بعد مورچه ها مي توانند پس از مدت کوتاهي مسیر
بهینه(کوتاهترین) را بیابند.
کاربردهای ACO
از کاربردهاي ACOمي توان به بهینه کردن هر مسئله اي که نیاز به یافتن
کوتاهترین مسیر دارد ،اشاره نمود :
مسير يابي داخل شهري و بين شهري
.1
مسیر یابي بین پست هاي شبکه هاي توزیع برق ولتاژ باال
.2
مسیر یابي شبکه هاي کامپیوتري
.3
نتیجه گیری
توجه به كولونی مورچهها و نیز استفاده وسیع ازآن بیشتر ناشی از توجه خاصی بوده كه
پیشتر ،بیولوژیستها به كولونی مورچهها داشتهاند .چه بسا سیستمهای دیگر طبیعی نیز
باشند كه تاكنون مورد مطالعه قرار نگرفتهاند یا اگرهم مطالعه شدهاند با دید معطوف به
هوشمندی و بهینهسازی نبوده است.
بنابراین میتوان تصوركرد كه در سالهای آینده روشهای زیاد دیگری جهت بهینهسازی و
نیز كنترل هوشمند با استفاده از سیستمهای طبیعی پیشنهاد شوند .تا به حال به كرات به
مزایای این نوع هوشمندی اشاره كردهایم اما اكنون بار دیگر تأكید میكنیم كه این نوع از
هوشمندی عالوه بر تمامی مزایای مهندسی ،یك مزیت عمده و اصلی دارد :تمامی این
روشها قابلیت تعمق زیستی دارند( ) )BIOLOGICALY PLUSIBLEبه این معنی كه
طبیعت آنها را در طی میلیونها سال به عنوان روش بهینه انتخاب كرده است .پس این
سؤال پیش میآید كه آیا ما میتوانیم روشی بهتر از روشهای طبیعت ارائه دهیم؟