Ant Colony Algorithm
description
Transcript of Ant Colony Algorithm
Ant Colony AlgorithmACA
SamanehsadeghZeynab Haji
Hadi
1389پاييز
عناوين مطالب
2
درباره مورچه ها
کل�ونی س�ازی بهین�ه مکاش�فه ف�را مورچ�ه
ای
گورس�تان سازماندهی و مراقبت از بچه ها
Ant Colony AlgorithmACA
�ه ای �مقايس �ی �بررس�ونی ���کل �وريتم ���الگالگ�وريتم و مورچه ه�ا مس�ئله ح�ل در ژنتي�ک
فروشنده دوره گرد
�وريتم ����الگ کاربرد در �ا �مورچه ه �ونی �کلح�ل مس�ائل مس�يريابی
وسايل نقليه(MACS-VRPTW)
درباره مورچه ها
3
Ant Colony AlgorithmACA
اولین پیشگامان
4
Eug´ene Marais (1872-1936) روی �ات �مطالع اولین ،کلونی موریانه ها
Maurice Maeterlinck (1862–1949) دگی���زن �ار ��،انتش اس�تفاده ک�رده Maraisمورچ�ه س�فید ک�ه بس�یار از مق�االت
بودPierre-Paul Grass´e (1959) ه�،مطالع�ات روی س�اخت الن
موریانه هاGrass ام� :تع�یین ف�رم ارتب�اط غ�یر مس�تقیم بین اف�راد ب�ه ن
stigmergyDeneubourg( اران�( ، مطالع�ه روی ارتب�اط 1990 و همک
stigmergyاز طریق فرومون بعنوان مثالی از Dorigo ار�رفت از الگ�وریتمی م�دل اولین س�ازی پی�اده ،
1992تالشگرانه در سال Ant Colony AlgorithmACA
رفتار تالشگرانه مورچه ها
5
چگونگی پیدا نمودن کوتاهترین مسیربدون بیناییمرکزیتمکانیسم همکاری فعال
:نتایج مطالعات اولیهدر ابتدا ، مکانیسم تصادفی برای پیدا نمودن غذا ه�بع�د از پی�دا ش�دن منب�ع غ�ذا ، ط�رح فع�الیت س�ازمان یافت
ترپیروی مورچه های بیشتر و بیشتر از مسیر یکسانجادویی و خودکار،کوتاهترین مسیر انتخاب شده
رفتار پدید آمده نتیجه رد فرومون
Ant Colony AlgorithmACA
رفتار تالشگرانه مورچه ها)ادامه(
6
:رفتار هرج و مرج گرایانه – بازخورد مثبتترشح فرومون توسط مورچه های تالشگر ون�ب�ا غلظت فروم ب�رای مس�یر انتخ�اب بیش�تر احتم�ال
بیشتر یره�مطل�وبیت بیش�تر مس�یر بوس�یله تق�ویت فروم�ون ذخ
شدهتابعیت سایر مورچه ها برای انتخاب مسیر یاد شده
Stigmergy ح��ترش �یله �بوس �ط �محی �یر ��تقیم،تغی�مس �یر �غ �اط �ارتب
فرومون، تاثیر روی رفتار سایر مورچه ها
Ant Colony AlgorithmACA
رفتار تالشگرانه مورچه ها)ادامه(
7
:آزمایش پل
احتمال انتخاب مسیرA:برای مورچه بعدی
nA(t)و nB(t) تعداد مورچه ها روی مسیر:A و B در لحظه tcتر� ، مق�دار c درج�ه ج�ذب ی�ک مس�یر ناش�ناخته : مق�دار بیش
انتخ�اب نیازبیش�تر ب�رای ع�دم فروم�ون رس�وب ش�ده م�ورد مسیر تصادفی
α د�فراین در از فروم�ون رس�وب ش�ده اس�تفاده ت�اثیر تحت مورچ�ه عب�ور ب�رای بیش�تر ،احتم�ال ب�االتر مق�دار تص�میم:
بعدی از مسیر با غلظت فرومون باالترAnt Colony AlgorithmACA
رفتار تالشگرانه مورچه ها)ادامه(
8
:توسعه پل باینری
ول�اف�زایش احتم�ال انتخ�اب مس�یر کوت�اه ت�ر متناس�ب ب�ا طبین دو مسیر
Ant Colony AlgorithmACA
رفتار تالشگرانه مورچه ها)ادامه(
9
شبیه سازی مورچه ها بعنوان عاملهای مصنوعی ايت�نه در ولي ميده�د، انج�ام اي س�اده عم�ل مورچ�ه هر
کلوني مورچه ها مسأله اي پيچيده را حل مي کنند.:تفاوت های مورچه های واقعی با مصنوعی
ه�مورچ ب�راي ي�ک حافظ�ه: ت�وان مي مص�نوعي ه�اي حافظ�ه در نظ�ر گ�رفت ک�ه مس�يرهاي ح�رکت را در خ�ود
نگه دارند. راي�ب مس�أله جزئي�ات دادن تغي�ير س�اختگي: موان�ع
بررسي الگوريتم و رسيدن به جواب هاي متنوع. نمي واقعي ه�اي مورچ�ه گسس�ته: محي�ط در حي�ات
توانند جدا از کلوني به حيات خود ادامه دهند.
Ant Colony AlgorithmACA
الگوریتم های مورچه
10
ار�رفت از گرفت�ه اله�ام جمعیت ب�ر مبت�نی ه�ای الگ�وریتم مشاهده شده بوسیله مورچه ها
م�همک�اری بین اف�راد در این الگ�وریتم ه�ا ب�ر مبن�ای مکانیسکل�ونی مورچ�ه ه�ای stigmergicارتب�اط در مش�اهده ش�ده واقعی
ه�:بهین ه�ا مورچ�ه تالش�گرانه رفت�ار مبن�ای ب�ر ه�ا الگ�وریتم سازی فرا مکاشفه ای کلونی مورچه
Ant Colony AlgorithmACA
، بهینه سازی کلونی مورچه سادهSACO
11
یک پیاده سازی الگوریتمی از آزمایش پل باینری یر�در نظ�ر گ�رفتن مس�ئله عم�ومی پی�دا ک�ردن کوت�اهترین مس
بین دو ند
Ant Colony AlgorithmACA
SACO ، الگوریتم
12Ant Colony AlgorithmACA
SACO ساخت مسیر در
14
مي افزايش�ي مس�ير ي�ك مورچ�ه ه�ر تك�رار ه�ر براي سازد)راه حل(
د� را برمبن�اي احتم�ال زي�ر j ، ن�د بع�دي k ، مورچ�ه iدر نانتخاب مي كند
د�ن ب�ه متص�ل دس�ترس در ن�دهاي :مجموع�ه i راي�ب kمورچه
وقتي به مقصد برسيم حلقه ها پاك مي شوند
Ant Colony AlgorithmACA
تبخیر فرومون
14
برای بهبود اکتشاف و جلوگیری از همگرایی زودرس
Pنرخ تبخیر فرومون :باعث می شود مورچه ها تصمیمات قبلی را فراموش کنندP کنترل تاثیر تاریخچه جستجو : تجوی�برای مق�ادیر بزرگ�تر : تبخ�یر س�ریعتر فروم�ون ، جس
تصادفی
Ant Colony AlgorithmACA
بروز رسانی فرومون
15
:که
ه� در k ط�ول مس�یر س�اخته ش�ده بوس�یله مورچtزمان
Nk تعداد مورچه ها :
Ant Colony AlgorithmACA
نکات مهم
16
ار�نتیج�ه رفت�ار همکاران�ه ایس�ت ک�ه از رفت ساخت راه ح�ل ساده افراد مورچه پدید آمده است
ه�پیون�د بع�دی ب�رای ه�ر مورچ�ه از مس�یر بوس�یله دیگ�ر مورچها فراهم می شود
از طریق فرومون رسوب شده يري�ام�ر تص�ميم گ ب�راي كم�ك در اطالع�ات اس�تفاده ش�ده
بوسيله محيط محلي مورچه ها محدود شده است
Ant Colony AlgorithmACA
سیستم مورچه
17
اولین الگوریتمACO توسط Dorigo است شده ابداعاحتمال گذر
کهԏij د� ب�ر اس�اس ش�دت j ب�ه i اث�ر بخش�ی بع�دی از ح�رکت از ن
فرومونηij تاثیر قبلی از حرکت از ند ،i به jمطلوبیت حرکت –
Ant Colony AlgorithmACA
سازش بین اکتشاف و بهره برداری
18
تعادل بین شدت فرومون τij اطالعات هیوریستیک ηij اگرα= 0 یعنی
ی�هیچ اطالع�ات فروم�ون اس�تفاده نش�ده و چش�م پوشاز نتیجه جستجوی قبلی
تبدیل جستجو به جستجوی تصادفی حریصانه اگرβ= 0یعنی جذابیت حرکت چشم پوشی شده الگوریتم جستجوی شبیهSACO ذابترین�اطالع�ات مکاش�فه ای ی�ک بای�اس ص�ریح ب�ه س�مت ج
راه حل :مثال
Ant Colony AlgorithmACA
AS بروز رسانی فرومون در
19Ant Colony AlgorithmACA
ده�ش اب�داع فروم�ون رس�وب ب�ه ب�رای مختل�ف روش سه است
AS:چرخه- مورچه
AS:تراکم – مورچه
AS:کیفیت - مورچه
AS الگوریتم
20Ant Colony AlgorithmACA
سیستم کلونی مورچه
21
ACS در چهار جنبه با AS:متفاوت است قانون انتقال استفاده شدهقانون تعريف شده براي بروز رساني فرومون ده�تعري�ف ش روز رس�اني فروم�ون محلي ب�ه آن در
است ه�يك ليس�ت كاندي�د ب�راي ن�دهاي مخص�وص م�ورد توج
تعريف ميشود
Ant Colony AlgorithmACA
سیستم کلونی مورچه
22
ACS در چهار جنبه با AS:متفاوت است قانون انتقال استفاده شدهقانون تعريف شده براي بروز رساني فرومون
غلظت تق�ویت اج�ازه سراس�ري مورچ�ه به�ترين فرومون روي لينكهاي متناظر با بهترين مسير
ده�در آن ب�ه روز رس�اني فروم�ون محلي تعري�ف شاست
ه�يك ليس�ت كاندي�د ب�راي ن�دهاي مخص�وص م�ورد توجتعريف ميشود
Ant Colony AlgorithmACA
سازماندهی گورستان و مراقبت از بچه ها :مورچه های
واقعی
23
:سازماندهی گورستان ه ای�در بس�یاری از گون�ه ه�ا نم�ایش رفت�ار اجس�اد خوش
را برای تشکیل گورستان ،د�به نظ�ر می رس�د ه�ر مورچ�ه انف�رادی رفت�ار می کن
ح�رکت تص�ادفی در فض�ا ب�رای برداش�تن و ی�ا گذاش�تن اجساد
تصمیم به بلند کردن یا رها کردن جسد در محلیمبتنی براطالعات مربوط به موقعیت فعلی مورچه ها
رفتار خیلی ساده فردی و پیدایش یک رفتار پیچیده ازتشکیل خوشه
:مراقبت از فرزندان الروها مرتب می شوند ، طبقات مختلف با حلقه های
متحد المرکزالروهای کوچکتر در مرکز و بزرگترها در حاشیهAnt Colony Algorithm
ACA
الگوریتم خوشه بندی مورچه پایه
24
:رفتارهای محلیآیتم ها در نواحی با تراکم کمتر برداشته می شوند د�آیتم ه�ا در مح�ل ه�ایی ک�ه از هم�ان ن�وع وج�ود دارن
گذاشته می شوند:فرضیات
تنها یک نوع آیتم وجود دارد دی�آیتم ه�ا ب�ه ص�ورت تص�ادفی روی ی�ک گری�د دو بع
قرار می گیرندهر نقطه گرید تنها شامل یک آیتم است رار�مورچ�ه ه�ا هم ص�ورت تص�ادفی ب�ر روی ش�بکه ق
داده شده ان�مورچ�ه ه�ا در جهت تص�ادفی ی�ک س�لول در ی�ک زم
حرکت می کنند Ant Colony AlgorithmACA
الگوریتم خوشه بندی مورچه پایه)ادامه(
25Ant Colony AlgorithmACA
ک آیتم�یک مورچ�ه ب�ر اس�اس احتم�ال تص�میم ب�ه برداش�تن یمی کند
ʎ ایگی اش می� بخش�ی از آیتم هاس�ت ک�ه مورچ�ه در همسبیند
>01Ƴاحتمال انداختن بار توسط مورچه دارای بار
>01Ƴ
الگوریتم خوشه بندی مورچه پایه)ادامه(
26
:محاسبه فراوانی آیتم ودی�نگ�ه Tهر مورچ�ه موج را زم�ان آخ�رین مرحل�ه
می داردسپس
nλ تعداد آیتم های مورد مواجهه :توسعه برای بیش از یک آیتم
A,Bرا بعنوان دو نوع آیتم در نظر می گیریم ر می�احتم�ال برداش�تن و گذاش�تن را مش�ابه ب�اال در نظ
گیریم جایگزینیʎ ا�ب ʎA و ʎB ورد�م آیتم ن�وع ب�ه وابس�ته
مواجههAnt Colony AlgorithmACA
Lumer-Faieta الگوریتم
27
ر�یک م�دل عم�ومی ب�رای برداره�ای داده خوش�ه ای ب�ا عناصیا مقدار حقیقی
، اندازه گیری شباهت d(ya, yb) فاصله اقلیدسی -چگونگی گروه بندی آیتم ها ه�ك مع�ني اين باش�د.به كمين�ه ه�ا خوش�ه داخ�ل فاص�له
مس�افت بين برداره�اي داده ب�ا ي�ك خوش�ه باي�د كوچ�ك ب�ا ش�د تا يك خوشه متراكم و جمع و جور تشكيل شود.
ف�مس�افت بين خوش�ه ه�ا بيش�ينه باش�د ك�ه خوش�ه ه�اي مختلبه خوبي از هم جدا باشند.
Ant Colony AlgorithmACA
:Lumer-Faieta الگوریتم
28Ant Colony AlgorithmACA
تخمین تراکم
تخمین تراکم محلی با توجه به بردارya:
0>𝜸 ای� را تعري�ف yb و ya مقي�اس ع�دم تش�ابه بين آیتم همي كند
ثابت𝜸 ديگر� تع�يين مي كن�د ك�ه چ�ه موق�ع دو آيتم باي�د كن�ار يكباشند و يا نباشند
دار� خيلي ب�زرگ :ممكن اس�ت آيتم ه�اي خوش�ه 𝜸مقب�ه ي�ك ب�ا هم ادغ�ام ش�وند در ص�ورتي ك�ه متعل�ق ه�ا
خوشه نيستند𝜸 مي تش�كيل بس�ياري ه�اي :خوش�ه كوچ�ك خيلي
ش�ود يع�ني آيتم ه�ا متعل�ق ب�ه ي�ك خوش�ه هس�تند ولي در خوشه هاي جداگانه طبقه بندي مي شوند
:Lumer-Faieta الگوریتم
29
:احتمال برداشتن
:احتمال گذاشتن
Ant Colony AlgorithmACA
احتماالت
:Lumer-Faieta الگوریتم
30Ant Colony AlgorithmACA
:Lumer-Faieta الگوریتم
31
:سایز گرید تر�بیش داده برداره�ای تع�داد از بای�د ه�ا تع�داد س�ایت
باشداگر تعداد سایتها و بردارهای داده برابر باشند؟
:تعداد مورچه هاباید تعداد مورچه ها کمتر از بردارهای داده باشداگر تعداد مورچه ها بیشتر از بردارهای داده باشد؟
Ant Colony AlgorithmACA
نکات
GA و ACAمقايسه
32
ط��توس �رد �دوره گ �نده �فروش �ئله �مس حل الگوريتم کلونی مورچه ها
Ant Colony AlgorithmACA
)1(
τij(t+1) = (1-ρ) τij(t) + Δ τij(t) )2(
)3(
GA و ACAمقايسه
33Ant Colony AlgorithmACA
: Ant-cycleدر سيستم
:Ant-quantityدر سيستم
: Ant-densityدر سيستم
)4(
)5(
)6(
GA و ACAمقايسه
34Ant Colony AlgorithmACA
شروع
پارامترها، تعريفاوليه مقداردهی
فرمول ) به توجه رأس( 1با به مورچه هر نيافته است اتمام سيکل تاوفتی ،. می کند حرکت بعدی
بهترين ثبت و مسير طول مورچه؟ هر محاسبهحل راه
فرمول به توجه با فرومون 4-2بروزرسانی
اجرا آخرين بهرسيده است؟
خير
جواب بهترين پاياننمايش
GA و ACAمقايسه
35
ط�توس دوره گ�رد فروش�نده مس�ئله حل الگوريتم ژنتيک
در دادن مس�ير نش�ان : نم�ايش حالت (7,4,9,5,6,1,2,8,10)هر عضو :
برازندگی : طول مسير طی شده
Ant Colony AlgorithmACA
GA و ACAمقايسه
36Ant Colony AlgorithmACA
شروع
پارامترها، تعريفاوليه مقداردهی
عضو هر برازندگی محاسبه
0 ← k
K ≥ Nبله
بهترين نمايشجواب
پايان
شده برآورده پايان شرطخيراست؟
بله
t+1 ← t
اعضا برازندگی اساس بر والد دو انتخاب
خير
round[0,1] < pc?بله
دو جفت گيری عملياتوالد
نسل در حاصل فرزندان درجP(t+1) تغيير از پس
نسل در والدهها درجP(t+1) تغيير از پس
K+1 ← k
GA و ACAمقايسه
37Ant Colony AlgorithmACA
GA و ACAمقايسه
38
ل�هر دو الگ�وريتم ب�ه همگ�رايی زودرس تمايدارند
ده�انتخ�اب مق�ادير پارامتره�ا از نظ�ر تئ�وری ث�ابت نشي�ک ب�ه می ت�وان تجرب�ه از اس�تفاده ب�ا تنه�ا و اس�ت
ترکيب بهينه دست يافت هيچ الزام برای جستجوی فضا وجود
نداردخاصی
Ant Colony AlgorithmACA
GA و ACAمقايسه
39
ه�ام�ا فق�دان فروم�ون در مق�داردهی اولي�ه منج�ر بسرعت کمتر در همگرايی می شود
وريتم�الگ باش�د، زي�اد بس�يار ش�هرها تع�داد وق�تی ژنتي�ک نمی توان�د در تع�داد تک�رار متن�اهی ب�ه ج�واب
بهينه برسد
Ant Colony AlgorithmACA
ری�سراس جس�تجوی انج�ام توان�ايی ژنتي�ک الگ�وريتم سيس�تم اطالع�ات ب�ازخورد از ام�ا دارد، را س�ريع
استفاده نمی گردد
کلونی مورچه ها بهتر عمل می کند
MACS-VRPTW
40
دادی از� مجم�وعه ای از وس�ايل نقلي�ه بايس�تی ب�ه تعمشتريان سرويس دهند
تفاده و هد�تع�داد وس�ايل م�ورد اس ف کمين�ه س�ازی مسافت طی شده است
دکه در�جواب مس�ئله مجم�وعه ای از مس�يرها می باشآن هرکدام از مشتريان فقط يکبار مالقات شده اند
Ant Colony AlgorithmACA
MACS-VRPTW
41Ant Colony AlgorithmACA
MACS-VRPTW
42Ant Colony AlgorithmACA
ACS-VEI فرها�س تع�داد نم�ودن کمين�ه ← )وسايل نقليه(
ACS-TIMEکمينه نمودن زمان کل سفر ←
MACS-VRPTW
43Ant Colony AlgorithmACA
MACS-VRPTW
44Ant Colony AlgorithmACA
MACS-VRPTW
42Ant Colony AlgorithmACA
MACS-VRPTW
43Ant Colony AlgorithmACA
منابع
44
MACS-VRPTW: A Multiple Ant Colony System for Vehicle Routing Problems with Time Windows , In D. Corne, M. Dorigo and F. Glover, 1999
Comparative Analysis of Genetic Algorithm and Ant Colony Algorithm on Solving Traveling Salesman Problem , Kangshun Li, Lanlan Kang, Wensheng Zhang, Bing Li, 2008
Ant Colony AlgorithmACA
Computational Intelligence, Second Edition, Andries P. Engelbrecht,2007
Ant Colony Optimization, Marco Dorigo and Thomas Stützle,2003
Ant-based Clustering Algorithms: A Brief Survey, O.A. Mohamed Jafar and R. Sivakumar,2010
Thanks For Your Patience!
يک امروز ارزش دو فردا را دارد
دکتر ميرزايی
با تشکر از