Matlab

حل مسئله n وزیر با استفاده از الگوریتم ژنتیک

حل مسئله n وزیر با استفاده از الگوریتم ژنتیک

وضعیت : موجود

برند :Matlab

تعداد بازدید: 14
0 0

در این بخش، مسئله n وزیر را با استفاده از الگوریتم ژنتیک حل میکنیم.

مسئله n وزیر به این صورت است که میخواهیم n وزیر را در یک صفحه شطرنج n*n قرار دهیم به گونه ای که هیچکدام از وزیرها، دیگری را تهدید نکند. روش های متعددی برای حل این مسئله وجود دارد. به عنوان مثال روش های جستجوی عقبگرد و یا ژنتیک.

در این پیاده سازی که با کدنویسی متلب انجام شده است از روش ژنتیک برای پیدا کردن چینش وزیرها استفاده کرده ایم. مراحل پیاده سازی برای رسیدن به جواب مسئله به شرح زیر است

1. مقداردهی اولیه

شامل مقدار دادن به پارامترهای مسئله. به عنوان مثال تعداد وزیرها، تعداد تکرار الگوریتم ژنتیک. تعداد جمعیت و غیره

2. تولید جمعیت اولیه

در این قسمت، جمعیت اولیه به صورت یک آرایه n تایی متشکل از اعداد 1 تا n تولید میشود

3. محاسبه شایستگی جمعیت

بعد از تولید جمعیت اولیه، شایستگی افراد جمعیت را بررسی میکنیم. منظور از شایستگی این است که چینش مورد نظر چند تهدید را داراست. چینشی که کمترین تهدید بین وزرا را داشته باشد، بهترین چینش و دارای شایستگی بیشتر است.

4. مرتب سازی بر حسب شایستگی

مرتب کردن جمعیت اولیه برای انتخاب بهترین ها

5. انتخاب والدین و بازترکیبی

در این قسمت عملیات ترکیب والدین انجام میشود تا نسل بعدی تولید شود

6. عملیات جهش

در بعضی از مقادیر جمعیت فرزندان تولید شده، مقادیر را جابجا میکنیم که به این عمل جهش میگویند.

7. انتخاب بازماندگان

این عمل انتخاب نسل باقی مانده است برای تولید نسل بعدی. در این بخش میتوان بر حسب شایستگی بیشتر اقدام به انتخاب بازماندگان کرد.

8. تکرار مراحل 4 تا 7 ، تا زمانی که شرایط پایان ارضا شود. شرایط پایان شامل تعداد نسلهای تولید شده، رسیدن به جواب و یا تغییر نکردن شایستگی ها در چندین نسل باشد.

 

ویدیوی زیر نحوه اجرای این پیاده سازی را نشان میدهد.

ویدیو نحوه اجرای کد و نمایش خروجی

 

توجه : فایل دانلودی، حاوی کدها متلب به همراه گزارش مربوط به کدهاست.

 

در صورت هر گونه سوال نسبت به کالای مورد نظر، با ایمیل msd.abasian@gmail.com  یا شماره 09132324263 و یا آیدی تلگرام masoudabasian مکاتبه نمایید.

همچنین در صورت دانلود فایل و مشاهده هر گونه مشکل در کدها و گزارش، میتوانید در قسمت تماس با ما مشکل را اعلام فرمایید تا در اسرع وقت پشتیبانی لازم را انجام دهیم.

با تشکر از حسن اعتماد شما

مسعود عباسیان

حل مسئله n وزیر با استفاده از الگوریتم ژنتیک

10،000 تومان افزودن به سبد خرید

محل نوشتن دیدگاه شما


تعداد نظرات : 0