آشنایی با الگوریتم جهش قورباغه SFAL
روال الگوریتم جهش قورباغه بصورت زیر می باشد
1) ابتدا پارامترهاي اولیه الگوریتم مقداردهی میشوند
2) جمعیت اولیه (قورباغه ها) به صورت تصادفی تولید میشود.
3) شایستگی هر عضو محاسبه میشود
4) تمام قورباغه ها بر اساس میزان شایستگی شان به صورت نزولی، مرتب می شوند
5) قورباغه ها به چند گروه (MemePlex) تقسیم می شوند به این صورت که قورباغه با بهترین شایستگی در گروه اول ، قورباغه دوم در گروه دوم ،و قورباغه m ام در گروه m ام قرار میگیرد به همین ترتیب قورباغه m+1 ام در گروه اول و .. قرار میگیرند همانند شکل زیر
6) جستجوي محلی براي جهش قورباغه هايی با بدترین شایستگی به سمت قورباغه هايی با بهترین شایستگی صورت می پذیرد. این جهش مطابق روابط ( 1) و ( 2) می باشد.
که در رابطه فو قxb و xw به ترتیب قورباغه هاي با بدترین و بهترین شایستگی در گروه خود می باشند. Dمقدار جهش ضعیف ترین قورباغه به سمت بهترین عضو گروه ،و Dmaxبیشترین حد مجاز براي جهش قورباغه و rand ،عددي تصادفی در بازه [ 1 و 0] می باشد. پس از اعمال تغییرات فوق در صورتی که قورباغه جدید داراي پاسخ بهتري نسبت به بدترین قورباغه گروه داشته باشد، جایگزین آن می گردد . در غیر این صورت همین اعمال باجایگزینی Xg با Xbتکرار می گردد. اگر با اعمال تغییر فوق پاسخ مناسب تري یافت نگردید، یک جواب به صورت تصادفی تولید کرده و آن را جایگزین بدترین عضو گروه می نماییم . این روند براي تعداد تکرار مشخص شده ادامه می یابد تا در نهایت شرایط اتمام الگوریتم حاصل گردد.
جهت دریافت کد متلب الگوریتم جهش قورباغه SFLA از بخش زیر اقدام کنید و بصورت آنلاین کد را خریداری و دانلود کنید
[parspalpaiddownloads id=”94″]
ایمیل : matlab24ir@gmail.com و یا info@matlab24.ir
شماره تماس : 09120563264
فایل های تحویلی: متلب الگوریتم جهش قورباغه با توضیحات کد