دانلود کد متلب هارمونی سرچ جهت مسایل بهینه سازی - harmony search for optimization problems
دانلود کد متلب هارمونی سرچ جهت مسایل بهینه سازی - harmony search for optimization problems
دانلود کد متلب هارمونی سرچ جهت مسایل بهینه سازی - harmony search for optimization problems
الگوریتم مورچگان برای حل مسائل بهینه سازی ترکیبی
فایل ورد قابل ویرایش
82صفحه
فقط 8000تومان
چکیده
الگوریتم مورچگان روشی است که برای حل مسائل بهینه سازی ترکیبی مختلف مورد استفاده قرار می گیرد. این روش ابتدا برای حل مسئله فروشنده دوره گرد به کار گرفته شد. این الگوریتم بر پایه این منطق بنا نهاده شده که مورچه ها در مسیر خود برای یافتن غذا مقداری از یک ماده به نام فرمون بر جای می گذارند که بستگی به طول مسیر و کیفیت ماده غذایی یافته شده دارد. بقیه مورچه ها نیز بوی فرمون را احساس کرده و جذب مسیر مورد نظر می شوند و مقدار فرمون را در آن مسیر تقویت می کنند. مسیرهای کوتاهتر (از لانه تا منبع غذا) فرمون بیشتری گرفته و بدین ترتیب کوتاهترین مسیر توسط مورچه ها انتخاب می شود. رفتار توصیف شده لانه های مورچه واقعی می تواند برای حل مسائل ترکیبی شبیه سازی شود. سیاست PM(نگهداری پیشگیرانه) موضوع مطالعات بسیاری در سال های اخیر بوده است. این مطالعات معیارهای مختلفی از هزینه ، عمر اقتصادی، ریسک یا ترکیبی از این ها را مد نظر قرار داده اند. نگهداری پیشگیرانه شامل یکسری از فعالیت های تکنیکی، اجرایی و مدیریتی برای بهینه سازی طول عمر اجزاء به منظور بهبود در دسترس بودن و قابلیت اطمینان سیستم می باشد.
واژه های کلیدی : الگوریتم لانه مورچه، فرمون (pheromone)، مسئله فروشنده دوره گرد، الگوریتم ژنتیک، هزینه بهینه
فهرست مطالب
چکیده
6
مقدمه
15
فصل اول - معرفی الگوریتم ها و سیستم مورچه
18
1- تعریف الگوریتم
19
2- تفاوت هوشمندی توده ای (کلونی) و هوشمندی اجتماعی
21
3- مورچه ها چگونه می توانند کوتاه ترین مسیر را پیدا کنند؟
23
3-1 تعریف ریاضی الگوریتم مورچگان و بهره گیری از مسأله فروشنده دوره گرد جهت مسأله سازی
26
4- از مورچه های طبیعی تا مورچه های مصنوعی
29
4-1 به سمت مورچه های مصنوعی
31
4-2 تعداد مورچه ها
33
5- الگوریتم سیستم مجتمع مورچه
35
5-1 عوامل منتهی به کوتاه ترین مسیر
36
5-2 الگوریتم بهینه سازی مجتمع مورچه
37
5-3 ACO و جستجوی مبتنی بر الگو
39
5-4 ملزومات الگوریتم ACO
41
5-5 الگوریتم ACO
41
5-6 الگوریتم بروزرسانی فرومون
43
5-7 گام های حل مسأله توسط ACO
44
5-8 الگوریتم متاهیورستیک ACO
45
6- مزیت های ACO
48
7- کاربردهای ACO
49
فصل دوم – مسیریابی شبکه توسط الگوریتم ACO
51
1- مسیریابی شبکه های کامپیوتری با استفاده از ACO
52
2- الگوریتم ACO برای مسیریابی شبکه
53
3- شبکه مورچه
54
3-1 مشکل مسیریابی
54
3-2 مراحل مختلف الگوریتم Ant Net
55
3-3 الگوریتم Ant Net و خصوصیات اصلی آن
56
3-4 ساختارهای داده ای در شبکه مورچه
58
3-5 الگوریتم شبکه مورچه
60
3-5-1 ساختمان راه حل
62
3-5-1-1 نحوه ساختن مسیر توسط مورچه
63
3-5-2 بروزرسانی ساختار داده ای
64
3-6 مزایای الگوریتم Ant Net
65
3-7 نقاط ضعف Ant Net
65
4- تاریخچه برقراری توازن بار شبکه با استفاده از الگوریتم Ant Net
67
5- الگوریتم های مسیریابی
69
5-1 معرفی شبکه مورچه
69
6- برنامه طراحی شده برای شبیه سازی
71
6-1 مشخصات برنامه
71
6-2 اجزاء برنامه
72
7- شبیه سازی
74
فصل سوم – خلاصه گیری و نتیجه گیری
75
خلاصه
76
نتیجه گیری
78
پیوست الف
80
مراجع
82
فهرست جداول
جدول 1-1 کاربردهای الگوریتم های ACO
50
فهرست اشکال و تصاویر
شکل 1-1 رفتار مورچه ها در پیدا کردن مسیر بهینه
24
شکل 1-2 رفتار بهینه کلونی مورچه
25
شکل 1-3 حل مسئله فروشنده دوره گرد توسط الگوریتم بهینه سازی مورچگان
26
شکل 1-4 حل مسئله فروشنده دوره گرد توسط الگوریتم کلونی مورچگان
27
شکل 1-5 گراف الگوریتم ساز آزمایش دوم دوپل با بال هایی با طول متفاوت
31
شکل 1-6 گراف الگوریتم ساز آزمایش دوم دوپل با بال هایی با طول یکسان
33
شکل 1-7 نمایش توصیفی MBS
40
شکل 1-8 فلوچارت الگوریتم ACO
42
شکل 2-1 نحوه حرکت مورچه های پیشرو و مورچه های عقب گرد
57
شکل 2-2 ساختارهای داده ای گره iام در شبکه مورچه یا ni همسایه
60
شکل 2-3 روند حرکت مورچه ها
67
شکل 2-4 رابطه بین اجزاء برنامه
73
فصل های اصلی پایان نامه
فصل اول - معرفی الگوریتم ها و سیستم مورچه
18
فصل دوم – مسیریابی شبکه توسط الگوریتم ACO
51
فصل سوم – خلاصه گیری و نتیجه گیری
75
عنوان مقاله :تعیین موقعیت بهینه دیوار برشی در سازه های بلند قاب دیوار در پلان , و ارتفاع
محل انتشار: دهمین کنگره بین المللی مهندسی عمران تبریز
تعداد صفحات:8
نوع فایل : pdf
بهینهسازی گروه مورچهها یا ACO همانطور که می دانیم مسئله یافتن کوتاهترین مسیر، یک مسئله بهینه سازیست که گاه حل آن بسیار دشوار است و گاه نیز بسیار زمانبر. برای مثال مسئله فروشنده دوره گرد را نیز میتوان مطرح کرد. در این روش(ACo)، مورچههای مصنوعی بهوسیلهٔ حرکت بر روی نمودار مسئله و با باقی گذاشتن نشانههایی بر روی نمودار، همچون مورچههای واقعی که در مسیر حرکت خود نشانههای باقی میگذارند، باعث میشوند که مورچههای مصنوعی بعدی بتوانند راهحلهای بهتری را برای مسئله فراهم نمایند. همچنین در این روش میتوان توسط مسائل محاسباتی-عددی بر مبنای علم احتمالات بهترین مسیر را در یک نمودار یافت.
روش که از رفتار مورچهها در یافتن مسیر بین محل لانه و غذا الهام گرفته شده؛ اولین بار در ۱۹۹۲ توسط مارکو دوریگو (Marco Dorigo) در پایان نامهٔ دکترایش مطرح شد.
الگوریتم کلونی مورچه الهام گرفته شده از مطالعات و مشاهدات روی کلونی مورچه هاست. این مطالعات نشان داده که مورچهها حشراتی اجتماعی هستند که در کلونیها زندگی میکنند و رفتار آنها بیشتر در جهت بقاء کلونی است تا درجهت بقاء یک جزء از آن. یکی از مهمترین و جالبترین رفتار مورچهها، رفتار آنها برای یافتن غذا است و بویژه چگونگی پیدا کردن کوتاهترین مسیر میان منابع غذایی و آشیانه. این نوع رفتار مورچهها دارای نوعی هوشمندی تودهای است که اخیراً مورد توجه دانشمندان قرار گرفته است در دنیای واقعی مورچهها ابتدا به طور تصادفی به این سو و آن سو میروند تا غذا بیابند. سپس به لانه بر میگردند و ردّی از فرومون(Pheromonee) به جا میگذارند. چنین ردهایی پس از باران به رنگ سفید در میآیند و قابل رویت اند. مورچههای دیگر وقتی این مسیر را مییابند، گاه پرسه زدن را رها کرده و آن را دنبال میکنند. سپس اگر به غذا برسند به خانه بر میگردند و رد دیگری از خود در کنار رد قبل میگذارند؛ و به عبارتی مسیر قبل را تقویت میکنند. فرومون به مرور تبخیر میشود که از سه جهت مفید است:
لذا وقتی یک مورچه مسیر کوتاهی (خوبی) را از خانه تا غذا بیابد بقیهٔ مورچهها به احتمال زیادی همان مسیر را دنبال میکنند و با تقویت مداوم آن مسیر و تبخیر ردهای دیگر، به مرور همهٔ مورچهها هم مسیر میشوند. هدف الگوریتم مورچهها تقلید این رفتار توسط مورچههایی مصنوعی ست که روی نمودار در حال حرکت اند. مسئله یافتن کوتاهترین مسیر است و حلالش این مورچههای مصنوعی اند.
از کابردهای این الگوریتم، رسیدن به راه حل تقریباً بهینه در مسئله فروشنده دورهگرد است. به طوری که انواع الگوریتم مورچهها برای حل این مسئله تهیه شده. زیرا این روش عددی نسبت به روشهای تحلیلی و genetic در مواردی که نمودار مدام با زمان تغییر کند یک مزیت دارد؛ و آن این که الگوریتمی ست با قابلیت تکرار. و لذا با گذر زمان میتواند جواب را به طور زنده تغییر دهد. که این خاصیت در روتینگ شبکههای کامپیوتری و سامانه حمل و نقل شهری مهم است.
در مسئله فروشنده دوره گرد باید از یک شهر شروع کرده، به شهرهای دیگر برود و سپس به شهر مبدا بازگردد بطوریکه از هر شهر فقط یکبار عبور کند و کوتاهترین مسیر را نیز طی کرده باشد. اگر تعداد این شهرها n باشد در حالت کلی این مسئله از مرتبه (n-1)! است که برای فقط ۲۱ شهر زمان واقعاً زیادی میبرد:
روز۱۰۱۳*۷/۱ = S۱۰۱۶*۴۳۳/۲ = ms۱۰*۱۰۱۸*۴۳۳/۲ =!۲۰
با انجام یک الگوریتم برنامه سازی پویا برای این مسئله، زمان از مرتبه نمایی بدست میآید که آن هم مناسب نیست. البته الگوریتمهای دیگری نیز ارائه شده ولی هیچ کدام کارایی مناسبی ندارند. ACO الگوریتم کامل و مناسبی برای حل مسئله TSP است.