330 likes | 621 Views
الگوريتم هاي تكاملي. نعيمه خاكزاد سودابه سليماني خدايار خليلي استاد مربوطه: مهندس گ رجي زاده. مقدمه :.
E N D
الگوريتمهايتكاملي نعيمه خاكزاد سودابه سليماني خدايار خليلي استاد مربوطه: مهندس گرجي زاده
مقدمه: ايده استفاده از قوانين زيستي و تكامل طبيعي در سيستمهاي هوش مصنوعي به بيش از سه دههپيش ميرسد و به نظر ميرسد كه در چند سال اخير، اهميت آن بيش از پيش آشكار شدهاست و تحقيقات در اين زمينه به ميزان بسيار زيادي افزايش يافتهاست از الگوريتمهاي تكاملي براي مسايل متنوعي با دامنههاي متفاوت مانند بهينهسازي، برنامهنويسي خودكار، يادگيري ماشين، اقتصاد، تحقيقات عملياتي، اكولوژي، ژنتيك افراد و مطالعه بر روي سير تكاملي تغييرات استفاده ميشود.
كلاسهاي بزرگ و گسترده الگوريتمهاي تكاملي عبارتند از : • الگوريتمهاي ژنتيكي • برنامهنويسي تكاملي • استراتژيهاي تكاملي • سيستمهاي دستهبندي • برنامهنويسي ژنتيك
تاريخچه: الگوريتمهاي ژنتيکي با توجه به نظريه داروين در مورد تکامل رونق گرفتند و سپس ايده محاسبه تكامليدر سال 1960 توسط I.Rechenberg تحت عنوان استراتژيهاي تكامليمعرفي شد. نظريه او توسط پژوهشگران ديگر گسترش يافت. الگوريتمهاي ژنتيكي توسط فردي به نام John. Holland بنيانگذاري شد
ديد کلي از الگوريتمهايژنتيكي فرايند حيات جمعيت از ديد ژنتيكي
يک شبه کد برايالگوريتمهايژنتيكي شبه کدبراي الگوريتمهاي ژنتيكي به صورت زير است: نمايش و کدکردن[Encoding] شروع [Start] ارزشدهي [Fitness] جمعيت جديد [New population] انتخاب [Selection] تقاطع [Crossover] جهش [Mutation] پذيرش [Accepting] جايگزيني [Replace] بررسي [Test] حلقه [Loop]
- کدکردن رشته باينري رشتههايي از حروف الفباء جايگشت درخت - ارزشدهي - ايجاد جمعيت جديد انتخاب روش انتخاب تصادفي روش چرخ رولت روش رتبهبندی روشRank Power تقاطع جهش
چند نکته راجع به الگوريتمهاي ژنتيکي در جريان الگوريتمهاي ژنتيکي اين احتمال وجود دارد که از يک نوع کروموزوم به تعداد بسيار زيادي توليد شود و سبب اين امر شود که جمعيت ما از تنوع جواب کمتري نسبت به ميزان جمعيت برخوردار باشد و سبب ايجاد مشکل در الگوريتم شود. براي حل اين مشکل روشهاي زيادي مطرح شدهاست که يکي از اين روشها روش Windowing ميباشد.
الگوريتمهاي ژنتيكي زماني موثر و كارا هستند كه : فضاي جستجوي مساله بزرگ يا پيچيده است و فهم ما از ﺁن كم است. هيچ تجزيه و تحليل رياضي براي مسأله در دسترس نيست. الگوريتمهاي سنتي با شكست مواجه مي شوند.
مسائلي كه مي توان باالگوريتمهاي ژنتيکي حل كرد: مسائلي از قبيل مسأله N وزير، رنگآميزي گراف، زمانبنديها، زمانبندي امتحانات، زمانبندي مسابقات ورزشي، زمانبندي سيستمهای چندپردازنده، واگذاري مشاغل، فروشنده دورهگرد ، بستهبنديو هر مساله که بتوان آن را به صورت ژنتيکي کد کرد
بهينه سازي هنگاميکه مساله بهينهسازي تنها شامل يک تابع هدف باشد عمل يافتن جواب بهينه، بهينهسازي تک هدفه ناميده ميشود هنگاميکه يک مساله بهينهسازي شامل بيش از يک تابع هدف باشد عمل يافتن يک يا چندين جواب بهينه را بهينهسازي چندهدفه مينامند از آنجايي که بهينهسازي چندهدفه شامل چندين هدف است بديهي است که بهينهسازي تکهدفه در واقع حالت خاصي از بهينهسازي چندهدفه ميباشد.
تفاوتهاي بنيادي جوابهای فرضی برای يک مساله تصمیمگیری خرید ماشین
مقدمه دراينجا به مسائل مربوط به مساله فروشنده دورهگرد از قبیل روشهای حل، کسانی که این گونه مسائل را حل کردند و...مى پردازیم.
مسائل مربوط به مساله فروشنده دورهگرد از قبیل: تعريف علت نامگذارى تاریخچه اهميت مطالعه مساله
كاربردهاى عملى TSP • كاربرد TSP براى پيدا كردن تور • كاربرد TSP براى كنترل بازوى رباتيكى • كاربرد TSP براى مسيريابى وسايل نقليه • كاربرد TSP در شبكه هاى com
TSP مسالهانواع TSP متقارن TSP نامتقارن TSPچند فروشنده اى
چند روش مساله فروشنده دورهگرد • حل TSP به روش توليد همه حالات ممكن • حل TSP به روش جستجوى حريصانه • حل TSP به الگوریتم نزديكترين همسايه • حل TSP به الگوریتمهای ژنتیک
تعاريف رسمى از TSP به عنوان يك گراف TSP به عنوان يك جايگشتTSP
الگوریتم های ژنتیکی و مساله فروشنده دوره گرد در این قسمت می خواهیم به این مساله از دید ژنتیک نگاه کنیم و روش حل آن با الگوریتمهای ژنتیکی و همچنین مسائل مربوط به الگوریتمهای ژنتیکی که در مورد مساله فروشنده دورهگرد باید دقت شود و مسائل دیگر بپردازیم.
کدکردن مساله فروشنده دوره گرد کدکردن ماتریسی کدکردن به صورت جایگشت
1- تقاطع در مساله فروشنده دوره گرد 1-1- روش PMX (Partially Mapped Crossover) انتخاب یک نقطه تصادفی در کروموزوم در روش PMX تعویض اعداد موجود در محل انتخاب
1- تقاطع در مساله فروشنده دوره گرد 1-2- روش OX Ordered Crossover))
1- تقاطع در مساله فروشنده دوره گرد 1-3- روش CX (Cycle Crossover)
1- تقاطع در مساله فروشنده دوره گرد 1-4- روش MX (Merging Crossover)
1- تقاطع در مساله فروشنده دوره گرد (Modified Ordered Crossover) 1-5- روش MOX
1- تقاطع در مساله فروشنده دوره گرد 1-6- روش Greedy Subtour تقاطع
جهش در مساله فروشنده دوره گرد مشکل عدم حالت جایگشتی پس از جهشمعمولی
انواع روشهای جهش: 1- روش Insert جهش روشSwap جهش -2
انواع روشهای جهش: 3- روشInversion جهش 4-روشScramble جهش
انواع روشهای جهش: 5- روش 2-opt جهش 6- روش 3-opt جهش
نتيجه گيري پيشنهادات