آموزش الگوریتم بهینه سازی زنبور عسل Bee Algorithm

matlab_dyیکی از الگوریتم های بهینه سازی بسیار توانمند در انجام بهینه سازی ها الگوریتم بهینه سازی زنبور عسل است.این الگوریتم بهینه سازی بر اساس رفتار تجمعی زنبورها ایجاد شده است. سرعت و دقت آن از الگوریتم ژنتیک بسیاربالاتر است. یکی از مبتکران الگوریتم بهینه سازی زنبور عسل نیز از هموطنان خودمان است. مزیت عمده ی این الگوریتم نسبت به اگلوریتم های مشابه مانند الگوریتم ژنتیک سرعت و دقت بالای آن است. طبق توضیحاتی که درمقاله ی اصلی این الگوریتم آمده است . این الگوریتم توانسته برای تمامی توابع معروف بهینه سازی خوب عمل کرده وبدون کوچکترین اشتباهی مقادیر بهینه توابع معروف را بدست آورد.  درادامه مطلب روش بهینه سازی زنبور عسل کامل توضیح داده شده است و همچنین لینک مربوط به مقالات این روش در گوگل اسکولار نیز قرار داده شده است.

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

 

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

از این اساس و روند زندگی زنبور عسل در این الگوریتم الهام گرفته شده تا نقاط بهینه توابع یافت شوند. روند کلی این الگوریتم به صورت زیر است.

۱-ایجاد جمعیت اولیه(n) یا زنبورهای پیش آهنگ به صورت اعداد رندوم یکنواخت

۲-یافتن ارزش تابعی هر کدام از زنبورهای جمعیت اولیه

۳-با توجه به ارزش تابع m مکان به عنوان نقاط بهتر که از میان آن e  نقطه به عنوان نقاط بهترین و m-e  مکان به عنوان سایر نقاط بهتر از بین مکان­هایی که زنبورها یافته اند انتخاب می­شود.

۴-مشخص کردن کردن همسایگی این مکان­ها برای اعزام نقاط جدید (ngh)

۵-فرستادن زنبورها به نقاط انتخاب شده، البته زنبورهای بیشتری باید برای نقاط بهترین فرستاده شود.

۶-مشخص کردن ارزش تابعی زنبورها در هر همسایگی یا گلستان و اطراف آن، برای مشخص کردن زنبورهای پیش آهنگ جدید، m)) زنبور پیش اهنگ جدید.

۷-فرستادن زنبورهای جدید به(n-m)نقطه باقیمانده.

۸-رفتن به مرحله ۲ و انجام مجدد کلیه روند تا زمانی که شرط توقف اعمال شود

عکس زیر روند این الگوریتم در مقاله ی اصلی آن را نشان می‏دهد.

Untitled

این مقاله به صورت مجانی در گوگل اسکولار موجود است که دو لینک آن در زیر قرار داده شده است

لینک دانلود مقاله

لینک دوم دانلود مقاله

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

محسن رضایی

کارشناسی : مهندسی مکانیک جامدات، کارشناسی ارشد: مهندسی مکانیک طراحی کاربردی، دکتری: دانشجوی دکتری مکانیک گرایش دینامیک کنترل و ارتعاشات دانشگاه شیراز زمینه های تحقیقاتی: دینامیک، کنترل، ارتعاشات، دینامیک پرواز، دینامیک خودرو، آیروالاستیسته، بهینه سازی زمینه های کاری صنعتی: طراحی مکانیزم های خطوط تولید،طراحی جرثقیل ها،طراحی ماشین الات صنعتی،بررسی عیوب و بهینه سازی ماشین الات صنعتی نرم افزارهای مسلط: متلب-سیمولینک- سیم مکانیک-انسیس - انسیس ورکبنچ-آدامز-سالیدورکس-آباکوس سوابق کاری:استاد سابق دانشگاه ازاد اسلامی، دانشگاه علمی کاربردی،مدرس نرم افزارهای مکانیک مجتمع فنی تهران (شعبه ی شیراز) و آموزشگاه فواد، مشاور مهندسی و طراح در یک شرکت معتبر تلفن تماس: 09369074440 ایمیل : mechanic.soft[at]yahoo.com , info[at]mechanicsoft.ir نوشته‌های تازه

پاسخ دهید

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