
در این پست کد الگوریتم بهینه سازی قورباغه در متلب ( کد الگوریتم SFLA در متلب ) قرار داده شده است. الگوریتم بهینه سازی جهش قورباغه یا Shuffled Frog Leaping Algorithm (به اختصار SFLA)، یکی از الگوریتم های بهینه سازی فرا ابتکاری است که از رفتار اجتماعی قورباغه ها در طبیعت الهام گرفته شده است، و از نظر دسته بندی، در میان الگوریتم های رفتاری یا الگوریتم های ممتیک (Memetic Algorithms) قرار می گیرد.
از نام های دیگر الگوریتم بهینه سازی جهش قورباغه، می توان به الگوریتم قورباغه و الگوریتم جهش قورباغه و الگوریتم SFLA اشاره نمود. این الگوریتم در ابتدا توسط Eusuff و Lansey در سال 2003 مطرح شد هر چند مقالات زیادی پس از برای بهبود این الگوریتم ارائه شده است. در پایین لینک دانلود مقاله اصلی الگوریتم بهینه سازی قورباغه قرار داده شده است.
الگوریتم SFLA چیست؟
الگوریتم SFLA یک الگوریتم مبتنی بر ممتیک متأهيوريستیک است. الگوریتم ممتیک، یک الگوریتم مبتنی بر جمعیت است که برای مسائل بهینه سازی پیچیده و بزرگ مورداستفاده قرار می گیرد. ایده اصلی این الگوریتم، به کار گیری یک روش جستجوی محلی در درون ساختار الگوریتم ژنتیک برای بهبود کار آبی فرآیند تشدید هنگام جستجو است.
الگوریتم ممتیک در ابتدا مجموع جوابهای اولیه را رمزگذاری می کند، آنگاه ابن الگوریتم میزان مطلوبیت هر یک از جوابها را بر اساس یک تابع برازندگی را محاسبه کرده و جواب های جدیدی را تولید می کند.
الگوریتم SFLA از نحوه جستجوی غذای گروه قورباغه ها الهام می گیرد. این الگوریتم برای جستجوی محلی میان زیر گروه قورباغه ها از روش نموممتیک استفاده می کند. الگوريتم جهش ترکیبی قورباغه از استراتژی ترکیب استفاده می کند و امکان مبادله پیام در جستجوی محلی را فراهم می سازد. این الگوریتم مزایای الگوریتم نموممتیک و بهینه سازی گروه ذرات را ترکیب می کند. در الگوریتم جهش ترکیبی قورباغه نه تنها در جستجوی محلی بلکه در جستجوی سراسری نیز پیامها مبادله می شوند.
بدین ترتیب جستجوی محلی و سراسری به خوبی در این الگوریتم ترکیب می شوند. الگوریتم جهش ترکیبی قورباغه قابلیت بالایی برای جستجوی سراسری دارد و پیاده سازی آن آسان است. الگوريتم جهش ترکیبی قورباغه می تواند بسیاری از مسائل غیر خطی، غیرقابل تشخیص و چند حالته را حل کند.
کد الگوریتم بهینه سازی قورباغه در متلب
سورس کد الگوریتم قورباغه در متلب شامل توابعی است که اسکریپت main در واقع کد اصلی برنامه می باشد و بقیه فراخوانی ها از آنجا انجام می شود. همچنین این برنامه داری 7 تابع تست می باشد که در زیر مشاهده می کنید.
- تابع SPHERE
- تابع ACKLEY
- تابع SUM SQUARES
- تابع ROSENBROCK
- تابع SUM OF DIFFERENT POWERS
- تابع ZAKHAROV
- تابع Rastrigin
توابع تست برای ارزیابی الگوریتم های بهینه سازی بکار می روند که در این سایت برای توضیحات بیشتر در مورد توابع تست الگوریتم های بهینه سازی مقاله ای آماده کردیم. توابع زیادی برای تست عملکرد الگوریتم های بهینه سازی وجود دارد که در اینجا ما به این 7 تابع اکتفا کرده ایم و همچنین لازم به ذکر است که برای اجرای الگوریتم بهینه سازی روی مسئله مورد نظر تابع هزینه یا Cost Function آن تغییر خواهد کرد و بقیه الگوریتم دست نخورده باقی می ماند بنابراین برای اجرای الگوریتم SFLA در متلب برای بهینه سازی مسئله خودتان تابع هزینه خود را بر اساس پارامترهای مسئله خود تعریف کنید.
قسمتی از سورس کد الگوریتم SFLA در متلب
%% SFLA Main Loop for it = 1:MaxIt fla_params.BestSol = BestSol; % Initialize Memeplexes Array Memeplex = cell(nMemeplex, 1); % Form Memeplexes and Run FLA for j = 1:nMemeplex % Memeplex Formation Memeplex{j} = pop(I(j,:)); % Run FLA Memeplex{j} = RunFLA(Memeplex{j}, fla_params); % Insert Updated Memeplex into Population pop(I(j,:)) = Memeplex{j}; end % Sort Population pop = SortPopulation(pop); % Update Best Solution Ever Found BestSol = pop(1); % Store Best Cost Ever Found BestCosts(it) = BestSol.Cost; % Show Iteration Information disp(['Iteration ' num2str(it) ': Best Cost = ' num2str(BestCosts(it))]); end
برای دانلود سورس کامل محصول را خریداری فرمایید.
تصویر خروجی محصول
درباره محصول
سورس کد الگوریتم بهینه سازی قورباغه در متلب در محیط Matlab 2017b نوشته و اجرا شده است این سورس کد توسط تیم پشتیبانی پی استور تست و اجرا شده است. کیفیت محصول توسط پی استور تضمین می شود و محصول دارای نشان تضمین کیفیت پی استور می باشد. برای دانلود محصول آن را خریداری فرمایید به محض خرید لینک دانلود در دسترس خواهد بود.
تاریخ انتشار: | 15 بهمن 1398 |
---|---|
تاریخ بروزرسانی: | 25 مرداد 1399 |
حجم فایل: | 3.8 کیلو بایت |
فرمت فایل | m. در قالب Matlab |
نسخه: | 1.0 |
لایسنس: | ندارد |
هماهنگی با: | Matlab 2009 و بالاتر |
نظرات و دیدگاه ها
قوانین ثبت دیدگاه
- دیدگاه های فینگلیش تایید نخواهند شد.
- دیدگاه های نامرتبط به مطلب تایید نخواهد شد.
- از درج دیدگاه های تکراری پرهیز نمایید.
- امتیاز دادن به محصول فقط مخصوص اعضای سایت می باشد.
قیمت 29,000 تومان
این فایل به زبان Matlab و بصورت zip شده قابل دانلود است. بلافاصله پس از خرید، لینک دانلود محصول در اختیار شما قرار خواهد گرفت.
با خرید این محصول از مزایای زیر بهرهمند میشوید:
- دسترسی به فایل محصول به صورت مادامالعمر
- ۶ ماه پشتیبانی کاملا رایگان و تضمین شده
تاریخ انتشار: | 15 بهمن 1398 |
---|---|
تاریخ بروزرسانی: | 25 مرداد 1399 |
حجم فایل: | 3.8 کیلو بایت |
فرمت فایل | m. در قالب Matlab |
نسخه: | 1.0 |
لایسنس: | ندارد |
هماهنگی با: | Matlab 2009 و بالاتر |
قیمت: 29,000 تومان
امین جلیل زاده
نظرات و پیشنهادات خود را با ما در میان بگذارید.