پایان نامه بررسی کاربردهای الگوریتم ژنتیک
پایان نامه کاربردهای الگوریتم ژنتیک در 110 صفحه ورد قابل ویرایش با فرمت doc |
![]() |
دسته بندی | مهندسی کامپبوتر و فناوری اطلاعات |
فرمت فایل | doc |
حجم فایل | 2709 کیلو بایت |
تعداد صفحات فایل | 110 |
پایان نامه کاربردهای الگوریتم ژنتیک در 110 صفحه ورد قابل ویرایش با فرمت doc
فهرست
فصل اول.
1-1- مقدمه.
فصل دوم.
مقدمه ای بر الگوریتم ژنتیک…
2-1- مقدمه.
2-2- پیشینه.
2-3- اصطلاحات زیستی..
2-4- تشریح کلی الگوریتم ژنتیک…
2-5- حل مساله با استفاده از الگوریتم های ژنتیک…
2-6- اجزای الگوریتم ژنتیک…
2-6-1- جمعیت..
2-6-2- کدگذاری..
کدگذاری دودویی..
کدگذاری مقادیر.
2-6-2-3- کدگذاری درختی..
2-6-3- عملگرهای الگوریتم ژنتیک…
2-6-3-1- Fitness ( برازش ).
2-6-3-2- selection (انتخاب).
انتخاب چرخ رولت..
انتخاب ترتیبی..
انتخاب بولتزمن..
انتخاب حالت پایدار.
نخبه سالاری..
انتخاب رقابتی..
2-6-3-3- Crossover (ترکیب).
ترکیب تک نقطه ای..
ترکیب دو نقطه ای..
ترکیب n نقطه ای..
ترکیب یکنواخت..
ترکیب حسابی..
2-6-3-4- Mutation(جهش).
وارونه سازی بیت..
تغییر ترتیب قرارگیری..
تغییر مقدار.
2-7- مفاهیم تکمیلی..
2-7-1- برتری ها و ضعف های الگوریتم ژنتیک…
2-7-2- نکات مهم در الگوریتم های ژنتیک…
2-7-3- نتیجه گیری..
فصل سوم.
کاهش اثرات زیست محیطی آلاینده های..
Cox ، NOx و SOx در کوره ها
3-1- مقدمه.
3-2- احتراق.
3-2-1- روش محاسبه ترکیب ترکیبات تعادلی با استفاده از ثابت تعادل.
3-2-2- روش محاسبه دمای آدیاباتیک شعله.
3-2-3- انتخاب سیستم شیمیایی..
3-2-4- تاثیر دمای هوا و هوای اضافی بر تولید محصولات..
3-3- بهینه سازی..
3-3-1- روش های حل مسائل بهینه سازی..
3-3-2- روش تابع پنالتی..
3-3-3- الگوریتم حل تابع پنالتی..
3-4- برنامه کامپیوتری و مراحل آن.
3-5- تشکیل تابع هدف..
3-6- تشکیل مدل مسئله بهینه سازی..
3-7- روش حل..
فصل چهارم.
توضیحاتی در رابطه با gatool نرم افزار مطلب
4-1- gatool
4-2- تنظیم گزینه ها برای الگویتم ژنتیک
4-3- Plot Options.
4-4- Population Options.
4-5- Fitness Scaling Option.
4-6- Selection Option.
4-7- Reproduction Options.
4-8- Mutation Options.
4-9- Crossover Options.
4-10- Migration Options.
4-11- Output Function Options.
4-12- Stopping Criteria Options.
4-13- Hybrid Function Options.
4-14- Vectorize Options.
فصل پنجم.
نتایج..
5-1- نتایج حاصل از تابع پنالتی و الگوریتم ژنتیک…
5-2- نتیجه گیری..
فهرست مراجع.
2-1- مقدمه
الگوریتم های ژنتیک یکی از الگوریتم های جستجوی تصادفی است که ایده ی آن برگرفته از طبیعت می باشد . الگوریتم های ژنتیک در حل مسائل بهینه سازی کاربرد فراوانی دارند . به عنوان مثال می توان به مسئله فروشنده دوره گرد اشاره کرد . در طبیعت از ترکیب کروموزوم های بهتر ، نسل های بهتری پدید می آیند . در این بین گاهی اوقات جهش هایی نیز در کروموزوم ها روی می دهد که ممکن است باعث بهتر شدن نسل بعدی شوند. الگوریتم ژنتیک نیز با استفاده از این ایده اقدام به حل مسائل می کند .
در الگوریتم های ژنتیک ابتدا به طور تصادفی یا الگوریتمیک ، چندین جواب برای مسئله تولید می کنیم . این مجموعه جواب را جمعیت اولیه می نامیم . هر جواب را یک کروموزوم می نامیم . سپس با استفاده از عملگرهای الگوریتم ژنتیک پس از انتخاب کروموزوم های بهتر ، کروموزوم ها را باهم ترکیب کرده و جهشی در آنها ایجاد می کنیم . در نهایت نیز جمعیت فعلی را با جمعیت جدیدی که از ترکیب و جهش در کروموزوم ها حاصل می شود ، ترکیب می کنیم . موارد فوق را با جزئیات بیشتری مورد بررسی قرار می دهیم
2-2- پیشینه
پیشینه ی الگوریتم ژنتیک به سال های حدود 1960 برمی گردد. در دهه های 50 و 60 تحقیقات متعددی برای استفاده از نظریه تکامل در بهینه سازی مسائل مهندسی به طور مستقل صورت گرفت. ایده ی اصلی در همه این سیستم ها، رشد یک جمعیت از پاسخ های اولیه یک مساله به سمت پاسخ بهینه با الهام گیری از عملگرهای انتخاب و تغییر ژنتیک طبیعی بود. در سال های 1965 تا 1973 رکنبرگ(Rechenberg ) کتاب خود را به نام تکنیک های تکامل (Evolution strategies (Evolutionsstrategie in original) ) در زمینه محاسبات تکاملی منتشر کرد و در سال های بعد نظریه او توسط محققین دیگر توسعه یافت. الگوریتم ژنتیک نخستین بار توسط جان هلند ( John Holland ) مطرح و به وسیله خود او و دانشجویان و همکارانش گسترش یافت. تلاش های او و اطرافیانش در این زمینه در نهایت به نشر کتاب سازگاری در طبیعت و سیستم های مصنوعی (Adaption in Natural and Artificial Systems ) انجامید. پس از آن تحقیقات گسترده ای توسط افراد مختلف در این زمینه انجام شد (به عنوان مثال در سال 1992 جان کزا (John Koza ) الگوریتم ژنتیک را به صورت عملیاتی در برنامه نویسی به کار برد و برنامه نویسی ژنتیک (genetic programming(GP) ) را به عنوان روش خود مطرح ساخت.) و الگوریتم ژنتیک به صورت امروزی خود رسید.
2-3- اصطلاحات زیستی
در راستای فهم کامل الگوریتم ژنتیک، ابتدا بهتر است با برخی از اصطلاحات زیستی به کار رفته در تئوری این الگوریتم آشنا شویم. همه موجودات زنده از واحدهای کوچکی به نام سلول تشکیل شده اند. هر سلول نیز به نوبه خود از مجموعه ای از یک یا چند کروموزوم (chromosome ) تشکیل شده است. کروموزوم ها رشته هایی از مولکول DNA می باشند که در حقیقت برنامه کاری موجود زنده را در خود ذخیره می کنند. هر کروموزوم شامل چندین ژن( gene ) می باشد، که هر ژن بلوکی از مولکول DNA می باشد که پروتئین خاصی را کدگذاری می کند. به طور کلی می توان گفت که هر ژن یک خصیصه (trait ) از موجود زنده (مانند رنگ چشم) را کد گذاری می کند. حالت های ممکن برای یک خصیصه را (allele ) می گویند. هر ژن موقعیت مخصوص خود را در کروموزوم دارد که به آن (locus ) می گویند. بسیاری از موجودات زنده در هر سلول چندین کروموزوم دارند. مجموعه کامل مواد ژنتیکی در سلول (مجموعه همه کروموزوم ها) (genome ) نامیده می شوند. اصطلاح (genotype ) به مجموعه خاصی از کروموزوم های موجود در genome اتلاق می شود. Genotype ها در پی تحولات و تغییر، به phenotypeها خصوصیات فیزیکی و ذهنی موجود زنده (مانند رنگ چشم، بلندی، اندازه مغز و یا میزان هوش) تبدیل می شوند.
در طی تولید مثل جنسی(reproduction )، در اثر الحاق(recombination or crossover ) ژن ها از کروموزوم های والدین(parents ) با یکدیگر ترکیب شده تا کروموزوم کامل جدیدی را تشکیل دهند. در طی این تغییرات، ممکن است تغییرات کوچکی در برخی از بخش های DNA ژن های فرزند، بوجود آمده و فرزند دچار جهش (mutation ) گردد. در نهایت تناسب (fitness ) یک موجود زنده با توجه به احتمال زیستن آن برای تکثیر(زیست پذیری(viability ) ) یا برحسب تابعی از تعداد فرزندان آن گونه (باروری(fertility )) تعیین می گردد.
2-4- تشریح کلی الگوریتم ژنتیک
یک تشریح کلی از الگوریتم ژنتیک را میتوان به صورت زیر در نظر گرفت :
-1 جمعیتی از رشتهها را به صورت تصادفی بسازید.
-2 هررشته داخل جمعیت را ارزیابی کنید.
-3 رشتههای جدید را با ترکیب رشتههای جاری ایجاد کنید. برای ترکیب رشتههای والد از عملگرهای جهش و تبادل استفاده کنید.
-4 اعضایی از جمعیت را برای ایجاد فضایی برای رشتههای جدید حذف کنید.
-5 رشتههای جدید را ارزیابی نموده و آنها را داخل جمعیت قرار دهید.
-6 اگر زمان اجرا تمام شده است توقف نمایید و بهترین رشته را باز گردانید. در غیر این صورت به مرحله سه بازگردید.
روند ذکر شده در بالا متداولترین روش الگوریتم ژنتیک را تشریح میکند. اما محققین مختلف، آن را به روشهای متفاوت پیاده سازی کردهاند.
دو روش متداول دیگر برای اختتام: (همگرا شدن الگوریتم، تولید تعداد خاص نسل میباشد).