همانطور که در مطلب قبل بیان کردین حل مسئله کوتاه ترین مسیر در یک گراف با کمک كلوني مورچه ها و روش های که مورچه ها در حل کوتاه ترین مسیر در آزمایش های قبلی انجام می دادند امکان دارد باعث ایجاد یک چالش می شود. این چالش ایجاد حلقه در مسیر حرکت مورچه ها است. حلقه چگونه در حل مسئله کوتاه ترین مسیر در یک گراف رخ می دهد
شکل زیر را در نظر بگیرید
كلوني مورچه ها و چالش ایجاد حلقه در گراف
فرض کنید مورچه ها از نقطه شروع (لانه) خود حرکت را به برای پیدا کردن غذا آغاز میکنند. زمانی که مورچه های دارند مسیر ها را بررسی میکنند، ممکن است یک حلقه را ایجاد کنند، زمانی که حلقه ایجاد می شود، باعث می شود که مورچه ها همانطور که در این حلقه می چرخند میزان فرمون بیشتری در مسیر می پاشیند و به مرور میزان فرمون بیشتر و بیشتر خواهد شد و همه مورچه این حلقه را دور خواهند زد. در این صورت حتی اگر یک مورچه از حلقه خارج شود چون مورچه های بیشتری در حلقه در حال چرخش هستند حتی این انحراف های کوچک نیز باعث حل مشکل حلقه نمی شوند (مسئله احتمال انتخاب مسیر تصادفی را در این آزمایش به صورت کامل بررسی کردیم). در نتیجه این حلقه مانند یک تله عمل کند و همه مورچه ها را در خود گرفتار کند.
خوب چه راه حلی پیشنهاد میشه برای این مسئله؟
راه حل اینه که ما بیاییم و یک سری قابلیت جدید به مورچه های که داریم اضافه کنیم. به این مورچه های ، مورچه های مصنوعی می گوییم. به این معنا که اونها مهمترین ویژگی های مورچه های واقعی رو دارن بعلاوه یک سری قابلیت اضافه که باعث بهبود الگوریتم كلوني مورچه ها میشه.
قابلیتی که ما به مورچه های مصنوعی خودمون اضافه میکنیم، یک حافظه کوچیک هستش. این حافظه به مورچه های مصنوعی کمک میکنه تا بتونن به مشکل حلقه در پیدا کردن مسیر در یک گراف غلبه کنن.
مشکل ایجاد حلقه و راه حل آن را در این مطلب مورد بررسی قرار دادیم. در مطلب بعدی جزییات کاملتری را در مورد مورچه های مصنوعی ارائه خواهیم نمود.
منبع (اطلاعات بیشتر)
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]