جزئیات الگوریتم بهینه سازی فاخته

 جزئیات الگوریتم بهینه سازی فاخته

در شکل زیر فلوچارت الگوریتم بهینه سازی فاخته رسم شده است. همانند سایر الگوریتم های تکاملی الگوریتم بهینه سازی فاخته  هم با یک جمعیت اولیه کار خود را شروع می کند. جمعیتی متشکل از فاخته ها. این جمعیت از فاخته ها تعدادی تخم دارند که آن ها را در لانه تعدادی پرنده میزبان خواهند گذاشت. تعدادی از این تخم ها که شباهت بیشتری به تخم های پرنده میزبان دارند شانس بیشتری برای رشد و تبدیل شدن به فاخته بالغ خواهند داشت. سایر تخم ها توسط پرنده میزبان شناسایی شده و از بین می روند. میزان تخم های رشد کرده مناسب بودن لانه های آن منطقه را نشان می دهند. هر چه تخم های بیشتری در یک ناحیه قادر به زیست باشند و نجات یابند به  همان اندازه تمایل (سود) بیشتری به آن منطقه اختصاص می یابد. بنابراین موقعیتی که در آن بیشترین تعداد تخم ها نجات یابند پارامتری خواهد بود که الگوریتم بهینه سازی فاخته قصد بهینه سازی آن را دارد.

الگوریتم بهینه سازی فاخته
فلوچارت الگوریتم فاخته

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

منبع:http://artificial-intelligence.ir/subjects/optimization/cuckoo-optimization-algorithm.html

نظر خود را اینجا بنویسید!

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

telegramchanel کانال تلگرام  با عضویت در کانال تلگرام از مطالب آموزشی و مطالب جدید وب سایت مطلع شوید

@matlab24Dotir

جهت عضویت کلیک کنید