تخفیف نوروزی پی استور
هزینه سفارش:
۲۴۹,۰۰۰ تومان قیمت اصلی: ۲۴۹,۰۰۰ تومان بود.۹۹,۶۰۰ تومانقیمت فعلی: ۹۹,۶۰۰ تومان.
سورس کد الگوریتم شعله پروانه در پایتون به زبان پایتون Python برای الگوریتم شمع و پروانه نوشته شده است. این سورس کد بر اساس 12 توابع تست الگوریتم پروانه آتش را اجرا میکند. برای اینکه بتوانید مسئله الگوریتم شمع و پروانه را واضح و کامل درک کنید مقالهای کامل با عنوان الگوریتم شعله پروانه MFO در همین سایت آماده کردهایم که میتوانید مطالعه کنید.
در این پست سورس کد الگوریتم شعله – پروانه (شمع و پروانه) در پایتون Python قرار گرفته شده است. این سورس کد به زبان پایتون Python برای الگوریتم شمع و پروانه نوشته شده است. سورس کد الگوریتم شعله پروانه در پایتون بر اساس ۱۲ توابع تست الگوریتم پروانه آتش را اجرا میکند. برای اینکه بتوانید مسئله الگوریتم شمع و پروانه را واضح و کامل درک کنید مقالهای کامل با عنوان الگوریتم شعله پروانه MFO در همین سایت آماده کردهایم که میتوانید مطالعه کنید. در ادامه مختصری از الگوریتم برای درک کد الگوریتم MFO در پایتون بیان میشود.
الگوریتم شعله پروانه یا الگوریتم Moth-flame optimization algorithm که به اختصار الگوریتم MFO نیز نامیده میشود یکی از الگوریتم های بهینه سازی و فراابتکاری است که از رفتار پروانهها در کنار شعله یا آتش روشی برای حل مسئله پیدا میکند. این الگوریتم در سال ۲۰۱۵ توسط سید علی میر جلیلی در مقالهای تحت عنوان:
Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm
در ژورنال Knowledge-Based Systems مطرح شد. الگوریتم شعله پروانه با نامهای دیگری همچون الگوریتم پروانه آتش، الگوریتم MFO، الگوریتم پروانه شعله نیز شناخته میشود. این الگوریتم یک الگوی اکتشافی نوین الهام گرفته از طبیعت و رفتار پروانهها و علاقه مندی آنها به شعله یا آتش است.
الهام بخش اصلی این بهینه ساز روش ناوبری پروانهها در طبیعت به نام جهت گیری عرضی (Transverse Orientation) است. پروانهها با حفظ یک زاویه ثابت با توجه به ماه، پرواز در شب را برای مسافتهای طولانی انجام میدهند. ولی این حشرات فانتزی در یک مسیر مارپیچی بی فایده و کشنده در اطراف چراغهای مصنوعی به دام میافتند. در الگوریتم پروانه آتش به صورت ریاضی از این رفتار پروانهها برای انجام بهینه سازی استفاده میشود.
الگوریتم MFO با سایر الگوریتمهای شناخته شده الهام گرفته از طبیعت شباهتهای زیادی دارد و نتایج آماری در مورد توابع معیار نشان میدهد که این الگوریتم قادر به ارائه نتایج بسیار امیدوارکننده و رقابتی است.
در الگوریتم MFO، فرض بر این است که راه حلهای کاندید پروانهها هستند و متغیرهای مسئله موقعیت پروانهها در فضا است. بنابراین، پروانهها با تغییر بردارهای موقعیتی خود میتوانند در فضای یک بعدی، دو بعدی یا سه بعدی پرواز کنند. از آنجا که الگوریتم MFO یک الگوریتم مبتنی بر جمعیت است، مجموعه پروانه در یک ماتریس (مثلاً M) نمایش داده میشوند. آرایهای نیز برای تمامی پروانهها برای ذخیره مقادیر تناسب (OM) وجود دارد. یکی دیگر از مؤلفههای اصلی در الگوریتم یک ماتریس شبیه به ماتریس پروانهها است که ماتریس شعله یا آتش (F) است و یک آرایه نیز با نام OF برای ذخیره کردن مقدار تابع تناسب آن استفاده میشود.
در اینجا لازم به ذکر است که پروانهها و شعلهها هر دو راه حل هستند. تفاوت بین آنها نحوه برخورد و بروزرسانی آنها در هر تکرار است. پروانهها عوامل جستجوی واقعی هستند که در فضای جستجو حرکت میکنند، در حالی که شعلههای آتش بهترین موقعیت پروانه ای هستند که تاکنون بدست آمده است. به عبارت دیگر ، شعلهها را میتوان پرچمها یا پینهایی دانست که هنگام جستجوی فضای جستجو ، توسط پروانهها فرو میروند.
سورس کد الگوریتم MFO در پایتون شامل توابعی است که اسکریپت MFO.py در واقع کد اصلی برنامه میباشد و بقیه فراخوانیها از آنجا انجام میشود. توابع تست برای این الگوریتم ۱۲ تابع میباشد که از معروفترین آنها در زیر تعدادی را مشاهده میکنید.
توابع تست برای ارزیابی الگوریتم های بهینه سازی بکار میروند که در این سایت برای توضیحات بیشتر در مورد توابع تست الگوریتم های بهینه سازی مقاله ای آماده کردیم. توابع زیادی برای تست عملکرد الگوریتم های بهینه سازی وجود دارد که در اینجا ما به این ۷ تابع اکتفا کردهایم ولی در سورس کد با ۱۲ نوع تابع مختلف (همانند مقاله) ارزیابی شده است همچنین لازم به ذکر است که برای اجرای الگوریتم بهینه سازی روی مسئله مورد نظر تابع هزینه یا Cost Function آن تغییر خواهد کرد و بقیه الگوریتم دست نخورده باقی میماند.
بنابراین برای اجرای الگوریتم MFO در پایتون برای بهینه سازی مسئله خودتان تابع هزینه خود را بر اساس پارامترهای مسئله خود تعریف کنید.
import CostFun as fit import random import math import numpy import matplotlib.pyplot as plt Max_iteration=500 lb=-100 ub=100 dim=30 N=50 # Number of search agents if not isinstance(lb, list): lb = [lb] * dim if not isinstance(ub, list): ub = [ub] * dim #Initialize the positions of moths Moth_pos = numpy.zeros((N, dim)) for i in range(dim): Moth_pos[:,i] = numpy.random.uniform(0, 1, N) * (ub[i] - lb[i]) + lb[i] Moth_fitness=numpy.full(N,float("inf")) #Moth_fitness=numpy.fell(float("inf")) Convergence_curve=numpy.zeros(Max_iteration) sorted_population=numpy.copy(Moth_pos) fitness_sorted=numpy.zeros(N) ##################### best_flames=numpy.copy(Moth_pos) best_flame_fitness=numpy.zeros(N) #################### double_population=numpy.zeros((2*N,dim)) double_fitness=numpy.zeros(2*N) double_sorted_population=numpy.zeros((2*N,dim)) double_fitness_sorted=numpy.zeros(2*N) ######################### previous_population=numpy.zeros((N,dim)); previous_fitness=numpy.zeros(N)
قبل از اجرای سورس کد الگوریتم در محیط پایتون حتماً از نصب پکیج های مورد استفاده در این سورس کد در Python خود مطمئن شوید پکیج های استفاده شده در این سورس کد numpy و matplotlib می باشد که اولی پکیج مربوط به استفاده از آرایه ها و ماتریس ها در پایتون و دومی مربوط به عملیات های نموداری و Plot گرفتن می باشد. پیشنهاد ما نصب اسپایدر (Spyder (Python 3.7 می باشد که هم پایتون و پکیج های مختلف و هم IDE های مختلفی را همراه با امکان آپدیتشان نصب می کند.
سورس کد الگوریتم شعله – پروانه (شمع و پروانه) در پایتون Python عنوان اثری است که در این پست به آن پرداخته شده است. این اثر در پایتون و با IDE اسپایدر (Spyder (Python 3.7 نوشته شده و بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است. این سورس کد دارای نشان تضمین کیفیت پی استور میباشد. برای دانلود اثر آن را خریداری کنید.
تیم برنامه نویسی پی استور یکی از اولین گروههای تشکیل شده در مجموعه آموزشی پی استور میباشد. این تیم از اساتید مجرب و فارغ التحصیلان رشتههای فنی و مهندسی تشکیل شده که در زمینههای مختلف برنامهنویسی و تهیه سورس کد فعال هستند.
نام اثر: | کد الگوریتم شعله پروانه در پایتون (شمع و پروانه) Python |
نوع اثر: | سورس کد |
برنامهنویس: | تیم برنامهنویسی پیاستور |
زبان برنامه نویسی: | Python پایتون |
ویژگی: | قابل دانلود و ویرایش |
توجه: کیفیت این محصول توسط پی استور تضمین شده و در صورت عدم رضایت از محصول، به انتخاب شما:
هزینه سفارش:
۲۴۹,۰۰۰ تومان قیمت اصلی: ۲۴۹,۰۰۰ تومان بود.۹۹,۶۰۰ تومانقیمت فعلی: ۹۹,۶۰۰ تومان.
نظرات
ندا پیرزاده
بسیار عالی و کاربردی بود 👏👏
مدیریت و پشتیبانی
نظرات و پیشنهادات خود را با ما در میان بگذارید.