پروژه کار با الگوریتم ژنتیک را در نرم افزار متلب
چکیده
دراین پروژه میخواهیم کار با الگوریتم ژنتیک را در نرم افزار متلب یاد بگیریم. به اینصورت که یک تابع را با پارامترهای مختلف تست کرده و نتایج آن را بهدست میآوریم. پارامترهاییکه باید تست شوند عبارتند از: تعداد اعضای جمعیت٬ تعداد تکرارها٬ انتخاب جمعیت٬ تعداد نخبهها٬ نوع جهش٬ نوع Crossover
واژههای کلیدی:
جمعیت٬ تکرار٬ نخبه٬ جهش٬ Crossover٬ انتخاب٬ best fitness ٬ چرخ رولت٬ tournament
مقدمه
در این پژوهش از تابع powersum جهت کار با الگوریتم ژنتیک در نرمافزار متلب استفاده شده است. هدف ما یافتن کمینه این تابع است. برای انجام این مسئله باید از تولباکس الگوریتم ژنتیک استفاده کنیم. درابتدا بعد مسئله را بطور پیشفرض برابر با 4 قرار میدهیم. مسئله را باید با پارامترهای مختلف تست کنیم . به اینترتیب که تعداد اعضای جمعیت را یکبار٬20 بار دیگر 50 ٬ بار دیگر 75 وبه همین ترتیب 100و200 درنظر میگیریم. به ازای هرکدام از این پارامترها نمودار best fitness را رسم میکنیم. هرکدام از این تعداد اعضای جمعیت که fitness بهتری داشته را پیدا کرده سپس با استفاده از این بهترین تعداد اعضای جمعیت به مرحله بعد یعنی تست پارامتر تعداد تکرارها میرویم. در این مرحله تعداد تکرارها را یکبار٬20 بار دیگر 50 ٬ بار دیگر 100 وبه همین ترتیب 200و500 درنظر میگیریم. به ازای هرکدام از این پارامترها نمودار best fitness را رسم میکنیم. هرکدام از این تعداد تکرارها که fitness بهتری داشته را پیداکرده سپس با استفاده از این بهترین تعداد تکرار به مرحله بعد یعنی نحوه انتخاب جمعیت میرویم. در مرحله انتخاب جمعیت ٬ جمعیت را یکبار از روش چرخ رولت و بار دیگر از روش tournament انتخاب کرده وهر روش انتخابی که fitness بهتری را نشان میدهد برمیگزینیم و با استفاده از این بهترین روش انتخاب به مرحله بعد یعنی تست تعداد نخبهها میرویم.در این مرحله تعدادنخبهها را یکبار٬1 بار دیگر 2 ٬ بار دیگر 5 درنظر میگیریم. هرکدام از این تعداد نخبه ها که fitness بهتری داشته را انتخاب کرده سپس با استفاده از این بهترین تعداد نخبه به مرحله بعد یعنی تست نوع جهش میرویم. مانند مراحل قبل با تست انواع جهش و پیداکردن بهترین نوع جهش که fitness بهتری را نشان میدهد به مرحله آخر یعنی تست انواع Crossover میرویم و بهترین نوع Crossover را پیدا مینماییم.
فایل دریافتی شامل فایل ورد گزارش و فایل متلب تابع است