الگوریتم کلونی زنبور عسل

کلونی زنبور مصنوعی (ABC)، یک الگوریتم فرا ابتکاری مبتنی بر زندگی اجتماعی زنبورهای عسل است که در سال ۲۰۰۵ توسط کارابوگا به منظور بهینه سازی مسائل عددی معرفی شد.

الگوریتم کلونی زنبور مصنوعی شامل سه مولفه اساسی است: زنبور های کارگر، غیر کارگر و منابع غذایی. در این مدل دو روش هدایت‌گر رفتار وجود دارد که شامل به خدمت گرفتن زنبور جدید کاوشگر برای منابع غذایی غنی با دریافت باز خورد مثبت و ترک منابع غذایی ضعیف، توسط زنبورها با دریافت باز خورد منفی می‌باشد.

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

در الگوریتم کلونی زنبور عسل مصنوعی، کلونی شامل سه گروه از زنبورها می‌باشد که عبارتند از: زنبوران کارگر مرتبط به منابع غذایی مشخص، زنبوران ناظر که رقص زنبوران کارگر را در داخل کندو برای انتخاب منابع غذایی نظاره می‌کنند و زنبوران پیشاهنگ که به صورت تصادفی به دنبال منابع غذایی می‌گردند.

زنبوران ناظر و پیشاهنگ هر دو زنبورهای غیر کارگر نامیده می‌شوند. ابتدا مکان تمامی منابع غذایی توسط زنبوران پیشاهنگ کشف می‌شود سپس شهد منابع غذایی توسط زنبوران کارگر و ناظر استخراج می شوند. این بهره‌برداری پیوسته نهایتا منجر به تهی‌شدن آن منابع می‌گردد. بعد از آن زنبوران کارگر به زنبوران پیشاهنگی تبدیل می شوند تا دوباره به جستجوی منابع غذایی بیشتری بپردازند. به عبارت دیگر زنبور کارگری که منبع غذایی آن تمام شده به زنبور پیشاهنگ تبدیل می‌شود.

در واقع الگوریتم کلونی زنبور مصنوعی چهار فرآیند انتخاب متفاوت زیر را بکار می‌گیرد:

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

یک انتخاب تصادفی توسط زنبورهای پیشآهنگ انجام می شود.

کد متلب الگوریتم کلونی زنبور عسل را می توانید از لینک زیر دانلود نمایی.

ABC Matlab Codes

دانلود

دیدگاه ها:



درج دیدگاه