Artificial Bee Colony Algorithm Faegheh Javadi Elham Seifossadat Fall 2010
Contents Intelligent Swarm-Based Optimisation Algorithms (SOAs) Bees in Nature Artificial Bee Colony Algorithm Conclusion References
Intelligent Swarm-Based Optimisation Algorithms (SOAs) Definition: Swarm-based optimisation algorithms (SOAs) mimic nature’s methods to drive a search towards the optimal solution. The difference between SOAs and direct search algorithms is that SOAs use a population of solution for every iteration. Examples: bee colony, ant colony, particle swarm optimization, artificial immune system,…
Swarm Intelligent Swarm Intelligent has two fundamental concepts: 1- self organizing: Positive feedback Negative feedback Fluctuations Multiple interactions 2- division of labour: Simultaneous task performance by cooperating specialized individuals Enables the swarm to respond to changed conditions in the search space. الف) بازخورد مثبت رفتار ساده تخمینی است که باعث پیشرفت ایجاد ساختار مناسب میشود. الف) بازخورد مثبت: هرچه مقدار منابع غذایی افزایش یابد، تعداد زنبورهای ناظر که آن را ملاقات میکنند نیز افزایش مییابد. ب) بازخورد منفی: و به تثبیت الگوی جمعی کمک میکند,فرآیند اکتشاف منبع غذایی که توسط زنبورها ترکشده متوقف میشود. ج) نوسانات: زنبورهای پیشاهنگ فرآیند جستجوی تصادفی را برای کشف منابع غذایی جدید انجام میدهند. د) تعامل چندتایی: زنبورها اطلاعات خود در مورد محل منابع غذایی را با هم کندوییهای خود به اشتراک میگذارند. در درون دسته کارهای مختلفی وجود دارد که به طور همزمان توسط افراد متخصص انجام میشوند. این پدیده تقسیم کار نامیده میشود. اعمالی که بصورت همزمان توسط افراد متخصص انجام میشوند کارایی بیشتری نسبت به کارهایی که پشتسرهم توسط افراد غیرمتخصص انجام میگیرد دارد. دو مفهوم اساسی بیان شده در بالا، خود سازماندهی و تقسیم کار، خواص اساسی و کافی برای دست یابی به هوش جمعی است.
Bees in Nature Food Sources: Employed Bees: Unemployed Bees: Proximity to the nest Richness Ease of extracting Employed Bees: Associated with a particular food source Carry and share information about it Unemployed Bees: Looking for a food source to exploit Scouts Onlookers مدل کمینه انتخاب کاوشگران که منجر به ظهور هوش جمعی دستههای زنبورعسل میشوند شامل سه قسمت عمده است: منابع غذایی، کاوشگران کارگر و کاوشگران آزاد. منابع غذایی: ارزش منابع غذایی به فاکتورهای زیادی بستگی دارد، مثل نزدیک بودن منبع به کندو، تمرکز انرژی و سهولت استخراج این انرژی. برای سهولت، سودمندی را میتوان با کمیت واحدی نمایش داد. کاوشگران کارگر: آنها به منابع غذایی ویژهای که فی الحال بهرهبرداری میشود یا منبعی که در آن استخدام شدهاند وابسته اند. کاوشگران کارگر اطلاعاتی در مورد آن منبع مشخص را دارند. این اطلاعات شامل فاصله منبع از کندو، سودمندی منبع و ... میباشد، که این اطلاعات را با سایرین به اشتراک میگذارند. کاوشگران آزاد: آنها به دنبال منابع غذایی برای بهرهبرداری هستند. کاوشگران آزاد دو نوع میباشند: پیشاهنگها، که محیط اطراف کندو را برای پیدا کردن و زنبورهای ناظر، که در کندو منتظرند و با استفاده از اطلاعاتی که کاوشگران کارگر در مورد منابع به اشتراک گذاشته اند، منبع غذایی را پیدا میکنندمنبع غذایی جدید با استفاده از اطلاعاتی که زنبورهای کارگر منتقل کردهاند، جستجو میکنند.
Bees in Nature A colony of honey bees can extend itself over long distances in multiple directions. Hive A C Here is the demostration of foraging field of a bee colony. A, B, and C are flower patches. A colony of honey bees can be seen as a diffuse creature which can extend itself over long distances in multiple directions in order to exploit a large number of food sources at the same time. In principle, flower patches with plentiful amounts of nectar or pollen that can be collected with less effort should be visited by more bees, whereas patches with less nectar or pollen should receive fewer bees. B 10 Km
Bees in Nature Scout bees search for food randomly from one flower patch to another. A C B Hive The foraging process begins in a colony by scout bees being sent to search for promising flower patches. Scout bees search randomly from one patch to another. During the harvesting season, a colony continues its exploration, keeping a percentage of the population as scout bees.
Bees in Nature The bees evaluate the different patches according to: The exchange of information among bees is the most important occurrence in the formation of the collective knowledge. Communication among bees related to the quality of food sources occurs in the dancing area. The related dance is called waggle dance. The bees evaluate the different patches according to: The quality of the food The amount of energy usage تبادل اطلاعات بین زنبورها اتفاق مهمی در بوجود آمدن دانش جمعی است. مهمترین قسمت کندو برای تبادل اطلاعات، محل رقص است.
Bees in Nature Bees communicate through a waggle dance which contains information about: The direction of flower patches (Angle between the sun and patch) The distance from the hive (Duration of the dance) The quality rating (Frequency of the dance)
An Example: S – Scout R- Onlooker UF-Uncommitted Follower EF1-Sharing information EF2- Continue work alone برای درک بیشتر رفتار طبیعی کاوشگران غذا شکل2 را بررسی میکنیم. فرض کنید در شکل مربوطه دو منبع غذایی کشف شده موجود باشد: منبع A و B. در ابتدا کاوشگر بالقوه کار خود را به عنوان کاوشگر آزاد شروع میکند. زنبور مذکور هیچ دانشی نسبت به منابع غذایی اطراف خود ندارد. این زنبور دو حق انتخاب به صورت زیر دارد: میتواند به عنوان پیشاهنگ به جستجوی غذا در اطراف کندو بپردازد. جستجو بصورت خودبخودی بسبب غریزه یا سرنخ های خارجی صورت میگیرد.(S) میتواند پس از تماشای رقص فرفرهای نیروی جدید جمع کند و شروع به جستجوی منبع غذا نماید.(R) پس از یافتن منابع غذایی، زنبور از تواناییهای خود جهت به یادسپاری محل غذا بهره میبرد و سپس به بهرهبرداری از آن میپردازد. ازاین رو زنبور به کاوشگر کارگر تبدیل میشود. زنبور کاوشگر مقداری از شهد منبع غذایی را به کندو میبرد و آن را در انبار غذا میگذارد. پس از تخلیه بار (غذا) زنبور انتخابهای زیر را میتواند داشته باشد: میتواند پس از ترک منبع غذایی پیرو ناوابسته شود.(UF) میتواند رقص انجام دهد و بعد قبل از بازگشت به همان منبع غذایی هم کندویی های خود را به کار گیرد.(EF1) میتواند به کاوش خود در همان منبع غذایی بدون کمک گرفتن از زنبورهای دیگر ادامه دهد.(EF2) الف : منبع غذا را رها کند و دوباره به دنبال زنبور رقصانی بگردد تا بتواند منبعی جدید پیدا کند. ب : خود به دنبال منابع غذایی جدید بگردد. ج : در کندو اقدام به رقصیدن کرده و زنبورهای جدیدی را به دنبال خود بکشاند.
Artificial Bee Colony(ABC) Algorithm Proposed by Karaboga – 2005 ABC is developed based on inspecting the behaviors of real bees on finding nectar and sharing the information of food sources to the bees in the hive. Solving multidimensional and multimodal optimisation problems.
Artificial Bee Colony(ABC) Contains three groups of bees: The Employed Bee(50%): It stays on a food source and provides the neighborhood of the source in its memory. The Onlooker Bee (50%): It gets the information of food sources from the employed bees in the hive and select one of the food source to gathers the nectar. The Scout (5-10%): It is responsible for finding new food, the new nectar, sources.
Artificial Bee Colony(ABC) The employed bee whose food source has been exhausted by the bees, becomes a scout. Scouts are the colony’s explorers. The number of employed bees = the number of food source Food source position = possible solution to the problem The amount of nectar of a food source=quality of the solution
Artificial Bee Colony(ABC) The main steps of the algorithm are given below: هر چرخه جستجو شامل سه مرحله است: انتقال زنبورهای کارگر و ناظر بسمت منابع غذایی و محاسبه مقدار شهد آنها، تعیین پیشاهنگها و ارسال آنها بصورت تصادفی به منبع غذایی ممکن . منبع غذایی راه حل مناسبی برای هر مسئله بهینه سازی را نشان میدهد. میزان شهد هر منبع با کیفیت راهحلی که بیان میکند رابطه مستقیم دارد. ناظرها با استفاده از روش انتخاب چرخه رولت در محل غذاها جای میگیرند. هر کلونی زنبور دارای زنبورهای پشاهنگ است که جستجوگران کلونی هستند. جستجوگران هیچ راهنمایی در هنگام گشتن منابع غذایی نداند.آنها معمولآ علاقمند به پیداکردن هر نوع منبع غذایی هستند. در نتیجه چنین عملی پیشاهنگها بصورت اتفاقی منابع غذایی غنی و کاملا نامعلوم را کشف میکنند. در مورد زنبورهای مصنوعی، پیشاهنگ مصنوعی میتواند کشفی بسیار سریع از گروه راههای ممکن داشته باشد .اگر جوابی که یک منبع مشخص میکند توسط تعداد از پیش تعیین شده ازتلاشها بهبود نیابد، آن منبع غذایی ترک خواهد شد. در صورتی که یک منبع پایان پذیرد و یا کیفیت یک منبع غذایی مناسب نباشد، زنبور کارگر آن را رها کرده و به یک پیش آهنگ تبدیل میشود. این رفتار بدین صورت مدل میگردد که اگر شایستگی یک نمایش می- limit نقطه بعد از چندین تکرار (که تعداد آن را با پارامتر دهیم) بهبود نیابد، بدین معنی است که در یک بهینه محلی قرار داریم بنابراین آن نقطه حذف می شود و یک نقطه جدید به صورت تصادفی تولید میگردد
Movement of the Onlookers Probability of Selecting a nectar source: (1) Pi : The probability of selecting the ith employed bee S : The number of employed bees θi : The position of the ith employed bee : The fitness value ، میزان برتری یک منبع غذایی برای ناظر بستگی به مقدار شهد F() آن منبع غذایی دارد. هرچه میزان شهد منبع غذا بیشتر باشد احتمال تقدم آن منبع برای ناظر بیشتر است. بنابراین احتمال اینکه منبع غذایی در مکان iθ
Movement of the Onlookers (2) Calculation of the new position: (2) : The position of the onlooker bee. t : The iteration number k : The randomly chosen employed bee. j : The dimension of the solution : A series of random variable in the range . پس از مشاهده رقص زنبورهای کارگر، زنبور ناظر به ناحیه منبع غذایی در محل iθ با این احتمال میرود و منبع غذایی همسایه را به وسیله اطلاعات بصیری مثل علامتهای موجود در آن ناحیه تعیین میکند تا شهد آن گرفته شود. به بیان دیگر زنبور ناظر پس از مقایسه منابع اطراف منبع iθ یکی را انتخاب میکند. محل همسایگی مبنع غذایی انتخاب شده به صورت زیر محاسبه میشود: . یک عدد تصادفی بین [-1,1] است که تولید محل منبع غذای همسایه را اطراف کنترل می کند و تغییرات نشان دهنده ی مقایسه ی محل های منابع غذایی همسایه به صورت بصری توسط زنبور است. معادله ی فوق نشان می دهد که با کاهش اختلاف بین پارامترهای ij(c)∅ و kj(c)∅ انحراف (اخلال) در مکان نیز کاهش می یابد
Movement of the Scouts The movement of the scout bees follows equation (3). (3) r : A random number
Artificial Bee Colony (ABC) (3) Record the best solution found so far The Employed Bee The Onlooker Bee The Scout
Different selection process in ABC A global probabilistic selection process used by the onlooker bees. A local probabilistic selection process carried out in a region by the employed bees and the onlookers. A local selection called greedy selection process carried out by onlooker and employed bees. A random selection process carried out by scouts 1) انتخاب سراسری که توسط زنبورهای ناظر برای کشف محل های امید بخش استفاده می شود. (2) انتخاب محلی که توسط زنبورهای کارگر و ناظر که بر اساس اطلاعات محلی استفاده می شود.(در واقعیت این اطلاعات شامل رنگ، شکلو عطر گل هاست.) ( زنبورها قادر به تشخیص منبع شهد نخواهند بود تا زمانیکه به مکان شایسته برسند و بین منابعی در آن ناحیه رشد کرده اند یکی را تمییز دهند.) (3) برای مشخص کردن منبع غذایی در همسایگی اطراف منبع موجود در حافظه یک روش انتخاب محلی که انتخاب حریصانه نامیده می شود توسط زنبورها انجام می شود که اگر منبع جدید (کاندید)بهتر از منبع فعلی باشد، زنبور حالت فعلی را فراموش کند و منبع کاندید را در حافظه ثبت کند. در غیر این صورت منبع فعلی در حافظه باقی می ماند. (4) انتخاب تصادفی توسط پیشاهنگ ها صورت می گیرد.
Conclusion Population-based algorithm. Robust search process: exploration and exploitation processes must be carried out together. Solving multi-dimensional and multimodal numeric problems. . در روشهای جستجو توانمند اکتشاف و بهرهبرداری باید همراه با هم صورت پذیرد. در الگوریتم ABC زمانیکه زنبورهای کارگر و ناظر درحال انجام فرآیند بهرهوری از فضای جستجو هستند، زنبورهای پیشاهنگ اکتشاف را کنترل میکنند.
References D. Karaboga, B. Basturk, “on the performance of artificial bee colony (ABC) algorithm”, journal of Applied Soft Computing 8 (2008) 687–697. D. Karaboga, “An idea based on honey bee swarm for numerical optimization”, Technical Report, October 2005. D. Karaboga, B. Basturk, “A powerful and efficient algorithm for numerical function optimization: Artificial bee Colony (ABC) algorithm”, J Glob Optim (2007) 39:459-471. D. Karaboga, B. Akay, “Artificial Bee Colony (ABC), Harmony Search and Bees Algorithms on Numerical Optimization”, Erciyes University, The Dept. of Computer Engineering, 38039, Melikgazi, Kayseri, Turkiye
Thanks For Your Attention Questions/Comments