«هوش ازدحامی» (Swarm Intelligence – SI)، یک زمینه از «هوش محاسباتی» (Computational Intelligence – CI) است که برای ساخت و توسعه سیستمهای هوشمند چندعامله الهام گرفته از زیست، استفاده میشود. این رویکرد از رفتار تجمعی عاملهای طبیعی مانند دسته پرندگان و ماهیها برای ساخت الگوریتمها الگوبرداری کرده است.
اثبات شده که چنین الگوریتمهایی در حل مسائل جهان واقعی عملکرد بسیار موثری دارند. از جمله مسائلی که با استفاده از الگوریتمهای هوش ازدحامی قابل حل هستند میتوان به خوشهبندی، نگاشت سیارهای، کنترل نانو رباتها و گسترهای از مسائل دادهکاوی مانند انتخاب ویژگی و دستهبندی اشاره کرد.
به بیان ریاضی، برای حل مسائل بهینهسازی جهان واقعی با استفاده از الگوریتمهای محاسباتی هوشمند، نیاز به یک ارائه ریاضیوار از مساله وجود دارد که به آن «تابع هدف» (Objective Function) گفته میشود. تابع هدف در واقع قواعد ریاضی است که مساله و همه متغیرهای تصمیم آن را تشریح میکند.
الگوریتم بهینه سازی کلونی زنبورهای مصنوعی
الگوریتم کلونی زنبور عسل مصنوعی (ABC)، یک راهکار بهینهسازی است که رفتار یک کلونی زنبور عسل را شبیهسازی میکند و برای اولین بار در سال ۲۰۰۵ توسط «کارابوگا» (Karaboga)، برای بهینهسازی پارامتر واقعی ارائه شد.
در این مدل ریاضی، کلونی زنبور عسل مصنوعی دارای سه نوع زنبور است. زنبورهای کارگر روی گردآوری غذا و آوردن آن به کندو از یک منبع غذایی خاص کار میکنند. زنبورهای ناظر در میان کارگرها گشت میزنند تا تشخیص دهند یک منبع غذایی همچنان ارزش استفاده دارد یا خیر و در نهایت زنبورهای دیدهبان که بهدنبال کشف منابع غذایی جدید هستند.
در الگوریتم ABC، یک منبع غذایی به عنوان حالتی در فضای جستوجو تعریف میشود (یک راهکار برای مساله بهینهسازی)، و تعداد منابع غذایی در ابتدا برابر با تعداد زنبورهای موجود در کندو است. کیفیت منابع غذایی توسط مقدار تابع هدف در آن موقعیت (مقدار تناسب) تعیین میشود.
رفتار هوشمند ناپایدار زنبورهای عسل را میتوان در چند گام زیر خلاصه کرد:
۱- زنبورها تلاش میکنند تا به صورت تصادفی در محیط بهدنبال منابع غذایی خوب بگردند (مقدار تناسب).
۲- پس از یافتن یک منبع غذایی، آنها تبدیل به زنبورهای کارگر میشوند و شروع به استخراج غذا از منبع یافت شده میکنند.
۳- زنبور کارگر با شهد به کندو باز میگردد و بار شهد خود را خالی میکند. پس از خالی کردن آن، میتواند مستقیما به منبع کشف شده خود باز گردد یا اطلاعاتی که درباره منبع غذاییش دارد را با اجرای یک رقص گردون در ناحیه رقص به اشتراک بگذارد.
۴- اگر یک منبع غذایی خالی شد، زنبوران کارگر به دیدهبان مبدل شده و به جست و جوی تصادفی برای منابع غذایی میپردازند.
۵- زنبورهای ناظر در کندو منتظر مانده و زنبورهای کارگر را در منابع غذایی گردآوری کردهشان مورد نظارت قرار میدهند و از میان منابع غذایی موجود با بیشترین سود، یک منبع را انتخاب میکنند.
۶- انتخاب منابع غذایی متناسب با کیفیت آن منبع (مقدار تناسب) است.
با اینکه سه نوع از زنبورهای عسل موجود در کلونی معرفی شدند، در مرحله پیادهسازی تنها دو نوع زنبور وجود دارد که زنبورهای کارگر و ناظر هستند. در واقع زنبور دیدهبان یک رفتار اکتشافی است که میتواند توسط زنبورهای کارگر و ناظر انجام شود. اکنون کد این الگوریتم به صورت کامل برای استفاده شما دوستان گرامی آماده و ارائه شده است.
دوستان گرامی توجه فرمایید که: این کد به صورت اختصاصی توسط گیل پروژه ارائه شده است و مورد تائید ما می باشد.
There are no reviews yet.