الگوریتم بهینه سازی جهش قورباغه

امتیاز 5.00 ( 1 رای )

الگوریتم جهش قورباغه مخلوط شده یا Shuffled Frog Leaping Algorithm (به اختصار SFLA)، یکی از الگوریتم های بهینه سازی فرا ابتکاری است که از رفتار اجتماعی قورباغه ها الهام گرفته شده است، و از نظر طبقه بندی، در میان الگوریتم های رفتاری یا الگوریتم های ممتیک (Memetic Algorithms) قرار می گیرد. از نام های دیگر این الگوریتم که در ایران مصطلح و رایج است، می توان به الگوریتم قورباغه و الگوریتم جهش قورباغه اشاره نمود.

الگوریتم جهش قورباغه مخلوط شده یا Shuffled Frog Leaping Algorithm (به اختصار SFLA)، یکی از الگوریتم های بهینه سازی فرا ابتکاری است که از رفتار اجتماعی قورباغه ها الهام گرفته شده است، و از نظر طبقه بندی، در میان الگوریتم های رفتاری یا الگوریتم های ممتیک (Memetic Algorithms) قرار می گیرد. از نام های دیگر این الگوریتم که در ایران مصطلح و رایج است، می توان به الگوریتم قورباغه و الگوریتم جهش قورباغه اشاره نمود.

الگوریتم جهش قورباغه، نسخه توسعه یافته الگوریتم تکامل مجتمع های مخلوط شده یا Shuffled Complex Evolution (به اختصار SCE و یا SCE-UA) است، که یکی از الگوریتم نسبتا با سابقه در حوزه بهینه سازی هوشمند است. الگوریتم SCE-UA در واقع از ترکیب قابلیت های تکاملی الگوریتم ژنتیک و قابلیت جستجوی تصادفی الگوریتم جستجوی تصادفی کنترل شده یا CRS ایجاد شده است و می توان آن را نیز، تا حدودی در دسته الگوریتم های ممتیک (Memetic Algorithms) طبقه بندی کرد

با افزوده شدن قابلیت های نخبه گرایی (Elitism) و هوش جمعی (Swarm Intelligence) به الگوریتم SCE، الگوریتم جهش قورباغه به دست آمده است که از نظر ساختاری، اشتراکات بسیار زیادی را با الگوریتم SCE دارد. این شباهت و ارتباط به اندازه ای است، که در هنگام پیاده سازی هر یک از این دو الگوریتم، با تغییراتی که چند دقیقه بیشتر زمان نمی برد، می توان برنامه کامپیوتری و پیاده سازی یک الگوریتم را به دیگری تبدیل نمود.

همان طور که گفته شد، الگوریتم جهش قورباغه یا SFLA، از جمله الگوریتم های رفتاری یا ممتیک (Memetic Algorithms) است. در مقابل الگوریتم های ژنتیک که در آن صفات و قابلیت ها، توسط والدین برای فرزاندان به ارث گذاشته می شود، در الگوریتم های ممتیک، هر فردی (با توجه به نظریه تکاملی لامارک) صفات و ویژگی های مفید را، با جستجو در اطراف خود (به صورت جستجوی محلی) به دست می آورد. یعنی، علاوه بر تکامل در جمعیت، تکامل به صورت فردی نیز به پیش می رود. به همین دلیل، بعضا از الگوریتم های ممتیک، به عنوان الگوریتم های ترکیبی (Hybrid Algorithms) و یا الگوریتم های ژنتیک محلی (Local Genetic Algorithms) شناخته می شوند.

658 بازدید