سيستم هاي طبيعي مختلف به ما ياد مي دهند كه ارگانيسم هاي خارجي بسيار ساده اي توان توليد سيستم هايي با قابليت انجام كارهاي بسيار پيچيده به كمك بر هم كنش هاي پويا را دارند. كلوني مصنوعي زنبورها در پاره اي نزديك به هم و در مقايسه با كلوني زنبورهاي طبيعي ، متفاوت عمل مي كنند.الگوريتم كلوني مورچه ها به همان ميزان كه قابليت حل مسائل تركيبي قطعي را دارند ، قادر به حل مسائل تركيبي است كه داراي عدم قطعيت نيز مي باشند.

توسعه الگوريتم كشف كننده جديد براي حل مساله Ride-matching به كمك راه پيشنهاد شده ( استفاده از كلوني زنبورها ) راهي روشنگر براي نشان دادن قابليت هاي اين روش محسوب مي شود.

سيستم سازماني زنبورها بر اساس يك سري قوائد ساده ي خارجي حشرات بنا شده است . با اينكه نژادهاي بسياري از حشرات مختلف بر روي كره زمين موجود هستند و همين باعث تفاوتهايي در الگوي رفتاري آنها مي شود،ولي با اين حال اين سري از حشرات اجتماعي را مي توان داراي قابليت حل مسائل پيچيده دانست . بهترين مثال براي اين حالت روند توليد نكتار محسوب مي شود . هر زنبور ترجيح مي دهد كه راه قبلي زنبور هم كندوي خود را دنبال كند تا خود به دنبال گل جديد بگردد . هر كندوي زنبور عسل داراي مكاني معروف به سالن رقص است كه در آنجا زنبورها با انجام حركتي خاص ، هم كندوييهاي خود را راضي مي كنند تا راه آنها را براي رسيدن به گلها بر گزينند . اگر يك زنبور تصميم بگيرد كه به دنبال نكتار برود ، با انتخاب زنبور هم كندوي رقاص خود ، راه قبلي را دنبال مي كند تا :

الف : منبع غذا را رها كند و دوباره به دنبال زنبور رقصاني بگردد تا بتواند منبعي جديد پيدا كند .

ب : خود به دنبال منابع غذايي جديد بگردد .

ج : در كندو اقدام به رقصيدن كرده و زنبورهاي جديدي را به دنبال خود بكشانند .

بر اساس احتمالات اندازه گيري شده ، زنبور اقدام به يكي از حالات بالايي مي كند . در مكان رقص ، زنبورها اقدام به پيشنهاد مكانهاي مربوط به جمع آوري نكتار به ديگران مي كنند . مكانيزم انتخاب يك زنبور توسط زنبوري ديگر هنوز شناخته شده نيست ولي تا به امروز روشن شده است كه اين امر بيشتر مربوط به كيفيت نكتار پيدا شده توسط زنبور رقاص است .

لوسيچو تدروويچ اولين كساني بودند كه از رويه هاي پايه و ساده زنبوري براي حل كردن مسائل تركيبي بهينه سازي استفاده كردند . آنها سيستم زنبوري (BS) را معرفي كردند و از آن براي حل مساله معروف Travelling Salesman استفادهكردند . در الگوريتم بهينه سازي زنبور عسل ماّمورهايي كه ما به آنها زنبور مصنوعي مي گوييم با همديگر اجتماع مي كنند تا بتوانند قادر به حل مسائل مشكلتر باشند . تمامي زنبور هاي مصنوعي در ابتداي فرآيند جستجو ، در كندوي اصلي قرار دارند. در فرآيند جستجو نيز زنبور هاي مصنوعي به طور كاملا مستقيم با يكديگر ارتباط برقرار مي كنند . هر زنبور مصنوعي يك سري حركات محلي خاص انجام داده و به كمك آنها قادر خواهد بود تا راه حلي را براي مشكل فعلي خود پيدا كند .

اين زنبورها تك تك راه حلهاي كمكي و زير پايه ايي را ارائه مي دهند تا در آخر با ادغام اين راه حل ها ، راه حل اصلي براي حل مساله تركيبي به دست بيايد . روند جستجو از تكرارهاي پشت سر هم تشكيل شده است . اولين تكرار زماني پايان مي يابد كه اولين زنبور را حل اصلي براي حل مساله تركيبي به دست بيايد . روند جستجو از تكرار هاي پشت سر هم تشكيل شده است . اولين تكرار زماني پايان مي يابد كه اولين زنبور راه حل زير پايه خود را براي حل مساله اصلي ارائه دهد . بهترين راه حل زير پايه در خلال اولين تكرار انتخاب شده و پس از آن ، تكرار دوم شروع خواهد شد . در تكرار دوم ، زنبور هاي مصنوعي شروع به پيدا كردن راه حلي جديد براي مساله زير پايه مي كنند . در پايان هر تكرار حد اقل يك و يا چند راه حل ارائه شده وجود دارد ، كه آناليست مقدار همگي آنها را مشخص مي كنند . به هنگام حركت در فضا ، زنبور هاي مصنوعي ما يكي از دو حركت ؛ حركت به سمت جلو و يا حركت به سمت عقب را انجام مي دهند .به هنگام حركت به سمت جلو زنبورها راه و روش هاي جديدي را براي حل مساله پيدا مي كنند . آنها اين كار را به كمك يك سري جستجوهاي شخصي و اطلاعات بدست آمده ي گذشته انجام مي دهند . بعد از آن زنبورها عمل حركت به سمت عقب را انجام مي دهند كه همان ، برگشتن به كندوي اصلي است . در كندو همگي زنبورها در يك فرآيند تصميم گيري شركت مي كنند . ما در نظر مي گيريم كه هر زنبور ي قابليت درك و دريافت اطلاعات زنبورهاي ديگر را بر اساس كيفيت دارد . به كمك اين روش ، زنبور ها اين قابليت را دارند كه با استفاده از اطلاعات ديگران ، راههاي بهتر حل مساله را پيدا كنند . بر اساس اطلاعات جديدي كه در مورد كيفيت راه حل به دست مي آيد ، زنبور مي تواند تصميم بگيرد كه :

الف : منبع راه حل خود را رها كرده و در سالن رقص به دنبال كسي بگردد كه منبعي با كيفيت بيشتر در اختيار دارد .

ب : بدون اين كه كسي را جذب كند ، دوباره به سراغ منبع راه حل خود برود .

ج : در سالن رقص با انجام حركاتي خاص سعي در جمع كردن زنبور هاي ديگر به دور خود داشته باشد .

بر اساس ميزان كيفيتي كه زنبور از منبع خود به دست مي آورد ، فاكتوري به نام وفاداري در وي به وجود مي آيد كه در واقع همان وفاداري به راهي است كه خود زنبور انتخاب كرده است .

بار دومي كه زنبورهاي مصنوعي براي پيدا كردن راه حل مساله به حركت در مي آيند ، اين بار سعي در پيدا كردن راههاي جديدي براي حل محموله دارند و بعد از اين كار دوباره عمل حركت به سمت عقب را انجام داده و به كندو بر مي گردند ، و دوباره در كندو در بحثي كه در مورد پيدا كردن بهترين راه شكل گرفته ، شركت مي كنند . اين روند زماني پايان مي پذيرد كه يك راه حل تقريبا كامل براي مساله پيدا شود .

مثال برنامه نويسي پوياي بهينه سازي كلوني زنبورها ، مسائل تركيبي بهينه سازي را در هر مرحله به ميزاني حل كند . هر كدام از مراحل مشخص شده داراي يك مقدار بهينه سازي خاص است . به اين صورت كه :

St = {St1 + St2+ … +Stm}

همانطور كه مي بينيد هر مرحله شامل يك سري مراحل از قبل انتخاب شده است .

در ادامه نشان مي دهيم كه به كمك كميت B ما تعداد زنبور هايي را كه در اين فرآيند شركت مي كنند را مشخص مي كنيم ، و به كمك i تعداد كل مراحلي را كه انجام مي پذيرند را نشان مي دهيم . مجموعه ي تمامي راه حل هاي زير پايه را نيز به كمك Sj نشان مي دهيم كه در آن j داراي مقادير 1 تا m مي باشد . در زير كد پيش ساخته بهينه سازي كلوني زنبورها را مشاهده مي كنيد :

1- شروع

مشخص كردن تعداد زنبورها (B) و تعداد تكرارها (i) ،مشخص كردن تعداد مراحل (St) ، پيدا كردن هر گونه راه حل قابل حل x از مساله .اين راه حل در واقع بهترين و اولين راه حل انتخاب توسط ما خواهد بود .

2- until i=I و 1set I :=

و تكرار كن مراحل بعدي را . . .

3 – until j=m و set j: =m

و تكرار كن مراحل بعدي را . . .

حركت به سمت جلو ( رفت ) : به زنبورها اين امكان را مي دهد كه از كندو بيرون آمده و قابليت انتخاب B راه حل را از مجموعه ي راه حل هاي زير پايه sj و Stj داشته باشند .

حركت به سمت عقب (برگشت ) : تمامي زنبور ها را به كندو بر مي گرداند . به زنبور ها اين اجازه را مي دهد كه اطلاعات خود را در مورد كيفيت راه حل هاي ديگران و خود به اشتراك بگذارند و بدين طريق تصميم بگيرند كه منبع خود را رها كرده يا به دنبال كسي ديگر بيفتند يا به تنهايي به منبع خود بر گردند و يا با رقصيدن ، ديگران را مشتاق دنبال كردن منبع خود كنند .

Set j := j+1

4- اگر بهترين راه حل (xi) كه در i امين تكرار به دست آمده ، بهتر از بهترين راه اخير به دست آمده بود ، آنگاه فاكتور بهترين راه حل را به روز مي كنيم .

X := xi

5- set I : = i+1

به طور كل حركت هاي جلويي و عقبي در بهينه سازي كلوني زنبورها مي تواند نقش فرعي را بگيرند به اين معني ، تا زماني كه يكي از فاكتورهاي مهم كامل نشده است ، اين دو به كار خود ادامه دهند . اين فاكتور مهم به عنوان مثال مي تواند بيشترين مقدار رفت و برگشت ها ويا برخي ديگر از موارد مورد نظر توسط خود اپراتور باشد .

در الگوريتم بهينه سازي كلوني زنبورها زير مدل هاي مختلفي كه به توصيف چگونگي حالات زنبورها مي پردازد ويا منطق گرايي آنها را مشخص مي كند به راحتي قابليت توسعه و تست شدن را دارند . به اين معني كه الگوريتم هاي متفاوتي از بهينه سازي زنبور ها طراحي كرد .

اين مدل ها مي توانند به توصيف چگونگي ترك كردن منبع اوليه توسط زنبوها ، ادامه دادن رفت و برگشت بين كندو و منبع توسط زنبور و يا چگونگي رقصيدن زنبور براي جمع كردن ديگر زنبور ها را به دور خود توضيح مي دهد .