the bee colony optimization (persian)

31

Upload: mortezat

Post on 30-Jun-2015

857 views

Category:

Education


4 download

DESCRIPTION

هوش مصنوعی: بهینه سازی به روش کلونی زنبور عسل Artificial intelligence: The bee colony optimization

TRANSCRIPT

Page 1: The bee colony optimization (Persian)
Page 2: The bee colony optimization (Persian)

The Bee Colony Optimization

به روش کلونی زنبوربهینه سازی

Page 3: The bee colony optimization (Persian)
Page 4: The bee colony optimization (Persian)

:زنبور در طبیعت

استدهشبناحشراتخارجییسادهقوائدسرییکاساسبرزنبورهاسازمانیسیستم.

خودکهاینتاکنددنبالراخودکندویهمزنبورقبلیراهکهدهدمیترجیحزنبورهر

.بگرددجدیدگلدنبالبه

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

منبع) .کندیداپجدیدمنبعیبتواندتابگرددرقصانیزنبوردنبالبهدوبارهوکندرهاراغذا1

خود) .بگرددجدیدغذاییمنابعدنبالبه2

در) .بکشاندخوددنبالبهراجدیدیزنبورهایوکردهرقصیدنبهاقدامکندو3

Page 5: The bee colony optimization (Persian)

انواع رویه های زنبوری

BS (Bee System)

BCO (Bee Colony Optimization)

ABC (Artifitial Bee Colony)

FBS (Fuzzy Bee Colony)

Page 6: The bee colony optimization (Persian)

بهینه سازی فوق ابتکاری کلونی زنبور عسل(The Bee Colony Optimization Metaheuristic)

مامورهااجتماع(Agents)مشکلترمسائلحلبرایمصنوعیزنبورعنوانتحت

دارندقرارکندودرابتدازنبورهاکلیه.

یکدیگربازنبورهامستقیمارتباط.

مأمورهرتوسطمخصوصحرکاتانجام.

زیرپایه ایوکمکیحلهایراهایجاد.

ترکیبیمسألهحلبرایاصلیحلراهایجادوحلهاراهادغام.

Page 7: The bee colony optimization (Persian)

روند یافتن راه حل

سرهمپشتتکرارهای.

زنبوراولینتوسطزیرپایهحلراهارائهبااولمرحلهپایان.

مرحلهاولینخاللدرپایهزیرحلراهبهترینانتخاب.

هزیرپایمسألهبرایجدیدحلیراهیافتنجهتقبلمرحلهتکراربادوممرحلهدر.

ودمی شمشخصآنالیستتوسطآنمقادیرکهمرحلههردرحلراهچندیایکایجاد.

Page 8: The bee colony optimization (Persian)

حرکت زنبورها در فضا

جلوسمتبهحرکت:

مسألهحلبرایجدیدحلراهیافتن:

فردیجستجوی

(وفاداری)قبلیشدهکسباطالعات

(کندوبهبازگشت)عقبسمتبهحرکت:

گیریتصمیمفرآینددرشرکت

داردکیفیتاساسبررادیگرزنبورهایاطالعاتدریافتودرکتواناییزنبورهر:فرض

زنبورهاتوسطمسألهحلبهترراههایکردنپیدادرقابلیت

Page 9: The bee colony optimization (Persian)

مدهتصمیمهای زنبور براساس اطالعات جدید بدست آ

بعیمنکهبگرددکسیدنبالبهرقصسالندروکردهرهاراخودحلراهمنبع

.دارداختیاردربیشترکیفیتبا

برودخودحلراهمنبعسراغبهدوباره,کندجذبراکسیاینکهبدون.

رهایزنبوکردنجمعدرسعی(رقصیدن)خاصحرکاتیانجامبارقصسالندر

.باشدداشتهخوددوربهدیگر

Page 10: The bee colony optimization (Persian)

فاکتور وفاداری

آوردمیتدسبهخودمنبعاززنبورکهکیفیتیمیزاناساسبرفاکتوریایجاد.

کردهپیدازنبورخودکهراهیبهوفادارییعنی.

ایتکرارهدرجلوسمتبهحرکتهایدرجدیدحلراهکردنپیدادرآنتأثیر

.بعدی

سویبهحرکت»و(جدیدحلراهیافتن)«جلوسویبهحرکت»مراحلتکرار

.مسألهبرایکاملتقریباًجوابیافتنتا(بحثدرشرکت)«عقب

Page 11: The bee colony optimization (Persian)

(BCO pseudo code)شبه کد الگوریتم بهینه کلونی زنبور

شروع:

زنبورهاتعدادکردنمشخص(B)تکرارهاتعدادو(I)مراحلتعدادنمودنمشخص(ST)هرکردنپیدا

(انتخابحلراهاولینوبهترین).مسئلهازxحلقابلنتیجهگونه

Set i:=1 , Until i=I رابعدیمراحلکنتکرارو

Set j:=1, Until j=m رابعدیمراحلکنتکرارو

انتخاب:(رفت)جلوسمتبهحرکتBزیرپایهحلهایراهمجموعهازراحلراهSjدرمرحلهstj.

(برگشت)عقبسمتبهحرکت:

کندوبهبازگشت

شدهارائهحلهایراهکیفیتمورددراطالعاتاشتراک

Page 12: The bee colony optimization (Persian)

(BCO pseudo code)شبه کد الگوریتم بهینه کلونی زنبور

بعدمرحلهحرکتبرایگیریتصمیم:

افتادنکندوییهمیکدنبالبهومنبعکردنرها

رفتنجدیدمنبعدنبالتنهاییبه

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

Set j:=j+1

حلراهبهتریناگرxiدرکهiرااخیرراه حلآنگاهاست،اخیرحلراهازبهترآمدهبدستتکرارامین

x)می کنیمروزبه = xi)

Set i:=i+1

Page 13: The bee colony optimization (Persian)

The Fuzzy Bee System

حلراهبهترینکردنپیدادرزنبورهابیندررایجمشکالتبرخی:

؟چیستشوداضافهاصلیحلراهبهبایدکهبعدیزیرپایهحلراه

؟رفتجدیدیزیرپایهحلراهدنبالبهوکردرهارافعلیزیرپایهحلراهبایدآیا

؟نرفتزنبورهادیگربدنبالفعالولیدادادامهفعلیزیرپایهحلراهگسترشبهبایدآیا

Decision Maker Agents

هستنداطالعاتبیشترینداشتنبامامورانی.

می گیرندنظردرمسئلهحلبهدادنپایانبرایراحلراهبهترینهمیشه.

مختلفمسئلهحلمدلهایایجادبرایبی قاعده ترراههایازاستفاده.

Page 14: The bee colony optimization (Persian)

The Fuzzy Bee System

فازیمنطق

زادهعسکرعلیلطفیپروفسورتوسطتعریف(بهمعروفZadeh).

قطعیتعدمبامسائلتوضیحدرقابللیتایجاد.

دهشارائهجدیدزیرپایهحلهایراهمورددرزنبورهاگیریتصمیممنطقبعنوانفازیمنطقانتخاب:

جذابخیلیوجذابجاذبه،کم

،بلندومتوسطکوتاه

،گرانومتوسطارزان

Page 15: The bee colony optimization (Persian)

The Fuzzy Bee System

مجوعه های فازی توصیف فاصله

Page 16: The bee colony optimization (Persian)

ذابیتجالگوریتم منطق تقریبی برای حل کردن مسئله

ستاجذابخیلیآمدهبدستحلراهباشدآنگاهخوبخیلیپایهزیرحلراهازآمدهبدستمقادیراگر.

(تمالگوریاینازاستفادهاصلیامتیازوهدف)تقریبیاطالعاتازاستفادهباراه حلجذابینمیزانتعیین

پایهزیرحلراهمثالi:

پایهزیرحلراهالحاقاحتمالiجذابیتهایتمامیبرآنجذابیتمیزاننسبتبااستبرابراصلیحلراهبه

:دیگرزیرپایهراه حلهای

روشازاستفادهRoulette Wheel Selection(رولتچرخانتخاب)جدیدحلراهکردناضافهبرای.

Page 17: The bee colony optimization (Persian)

Bee's Partial Solutions Comparison Mechanism

(زیرپایه)جزئیراه‌حلهایمقایسهمکانیزم

زیرپایهحلراهبدیمفهوم:

Lk بدی راه حل زیرپایه به وسیله یkامین زنبور

L(k) مقادیر تابع مفعولی از راه حل زیرپایه ایی که به وسیله یkامین زنبور کشف شده

Lminو تاکنونمقادیر تابع مفعولی از بهترین راه حل زیرپایه ی کشف شده از ابتدای روند جستج

Lmaxو تاکنونمقادیر تابع مفعولی از بدترین راه حل زیرپایه ی کشف شده از ابتدای روند جستج

بودخواهدکمترنیزآنبهوفاداریباشدبدترآمدهبدستحلراههرچه.

Page 18: The bee colony optimization (Persian)

Bee's Decision About Recruiting The Nestmates( کندویی هاتصمیم زنبور عسل برای جذب هم )

هستنداجتماعیبشدتحشراتزنبورها.

همراهجذببدونقبلیدرمسیرحرکتتکراررخداداحتمال(p*)می گیریمنظردرپایینبسیار:

(p*<<1)

جمعیهوشایجادنتیجهدربرابراحتمالبارقصیدنورقصمحلبهپرواز

خواهدبعیتتدیگرزنبوریازورفتهسالنبهباشدنداشتهراخودقبلیمسیردرپروازقصدزنبوراگر

نمود

Page 19: The bee colony optimization (Persian)

Calculating the number of bees changing the path(محاسبه تعداد زنبورهایی که تغییر مسیر می دهند)

استداشتهاصلیویژگیدوباید,شدهاعالنرقصیناحیهدرکهزیرپایهحلراههر:

مفعولیتابعمقادیر

اندکردهاعالنرازیرپایهحلراهآنکهزنبورهاییتعداد

شدهاعالنیزیرپایهحلراهجذابیتکردنمعینبرایتقریبیمنطقالگوریتم

استوسطمتزیرپایهحلراهجذابیتباشد،کمکنندهاعالنزنبورهایتعدادوباشدکوتاهشدهاعالنراهطولاگر.

[0,1]بازهمقادیردردارایجذابیت.

Page 20: The bee colony optimization (Persian)

Calculating the number of bees changing the path(محاسبه تعداد زنبورهایی که تغییر مسیر می دهند)

مثال:

PiوPjفرضیمسیردو

NijکهزنبورهاییتعدادPiبهوکردهترکراPjاندپیوسته.

فازیمنطقالگوریتم:

باشد، آنگاه تعداد باال Pjپایین باشد و جذابیت راه Piراه وفاداری زنبورها به اگر »

«.باال استPjبه راه Piراه زنبورهای جابجا شده از

Page 21: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

Page 22: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

به اشتراک گذاری ماشیناستفاده مشترک چند نفر با دو یا چند مبدأ و مقصد از یک وسیله نقلیه

کاهش هزینه برای افراد

کاهش ترافیک

اطالعات دریافتی از شرکت کنندگان در طرح:(.سه و یا چهار نفر, دو )ظرفیت وسیله ی نقلیه ( الف

روزهایی از هفته که هر فرد برای شرکت در ( بRS استحاضر.

مبدا سفر برای هر روز هفته( ج.

مسافت سفر برای هر روز هفته( د.

هفتهیا زمان رسیدن برای هر روز /مقصد مورد نظر و(ه

Page 23: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

تعریف مسأله:

ش ممکنبهترین رو»مسیریابی و زمان بندی وسایل نقلیه و مسافران برای تمامی هفته در» .

توابع پتانسیل مفعولی:

کردن کل مسافتی که توسط تمامی اعضای شرکت کننده پیموده میشودکمینه.

کردن وقفه ی کلکمینه.

کردن نسبی بهره برداری از وسایل نقلیهبرابر.

(راننده مرحله اول، سرنشین دوم مرحله دوم و )هر مسافر یک گره : فرض...

Page 24: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

اعمال زنبور:

بازدید از تعداد معینی از گره ها

ایجاد راه حل جزئی

بازگشت به کندو( گرهO)

گیریشرکت در روند تصمیم

مقایسه راه حلهای ارائه شده

تصمیم گیری براساس کیفیت راه حلهای جزئی تولید شده:

مسیر تولید شده را رها کرده و تبدیل به یک دنبال کننده شود.

به تنهایی در مسیر تولید شده حرکت کند.

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

Page 25: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

د شدهایجاد وفاداری در زنبور نسبت به راه قبلی با توجه به کیفیت راه حل جزئی تولی.

مثال:

Page 26: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

زنبورهایB1 وB2 وB3 فرایند تصمیم گیری شرکت می کننددر .

زنبور , از مقایسه تمام راه حلهای زیرپایه تولید شدهپسB1 تصمیم می گیرد راه فعلی را ترک

. ملحق شود B2کرده و به زنبور

زنبورهایB1 وB2 هم در طول مسیری که به وسیله ی زنبور باB2 پرواز می کنند, شدهتولید.

بعدی که هنگامی که به انتهای مسیر رسیدند آنها آزاد هستند تا تصمیمی فردی درباره ی گره

. باید بازدید شود بگیرند

Page 27: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

زنبورB3 می دهدپرواز در طول مسیر بدون گرفتن همراه ادامه به

دوباره عمل رفت را انجام می دهندزنبورها .

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

جراارابرگشتعملدوبارهآنازپسومی دهندتوسعهراقبلیشدهتولیدزیرپایهحلهای

.بازمی گردند(Oگره )کندوبهومی کنند

رارفتسومین,می گیرندتصمیم,می کنندشرکتگیریتصمیمفراینددرزنبورهادوبارهکندودر

...ومی کننداجرا

Page 28: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

Page 29: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

تکرار هنگامی تمام می شود که زنبورها تمامی گره ها را بازدید کرده باشند .

کمتر»وانبعنراخاصیگرهزنبورشود،بازدیدبعدیرفتدربایدکهبعدیگرهانتخابهنگام

دوبینزمانییامکانینزدیکیبهوابستهکهمی گیردنظردر«جذابخیلی»و«جذاب»،«جذاب

.استمسافردوازدرخواست

مکانیفاصلهبندیتقسیم:

مقصدبهورودمسافتمبدأ

طوالنیمتوسطکوتاه

Page 30: The bee colony optimization (Persian)

(Ride-matchinng)حل مسأله یافتن هم مسیر Fuzzy Bee Systemبکمک

گرهمنطق تقریبی جذابیت قانون الگوریتم:

ود کوتاه باشد، اگر فاصله ی مکانی در مبدا کوتاه باشد و فاصله ی مکانی در مسافت کوتاه باشد و فاصله ی زمانی ور

. آنگاه جذابیت گره باال است

مسیرالگوریتم منطق تقریبی جذابیت قانون:

اه جذابیت آن اگر طول مسیر پیشنهادی کوتاه باشد و تعداد زنبورهایی که آن راه را پیشنهاد داده اند کم باشد، آنگ

.راه متوسط است

Page 31: The bee colony optimization (Persian)