سلام
بعید میدانم این برنامه با این شکل پیاده سازی، جواب درستی برای جدول بدست آورد. (یعنی خطای کروموزوم دقیقا صفر بشود)
مشکلات زیادی در طراحی آن به چشم میخورد مثلا:
1. اصلا ژنتیک برای حل این مسئله مناسب نیست.
2. انتخاب ساختار ماتریس برای کروموزوم، کاملا اشتباه است. زمان دسترسی به درایههای ماتریس، خیلی بیشتر از دسترسی به درایههای لیست (یک بعدی) است.
3. تعریف تابع Fitness کاملا غلط است. باید خطاها شمارش بشوند، نه سطر و ستونهای صحیح. این کار به سرعت باعث بوجود آمدن SuperSubject در جمعیت میشود.
4. نخبه گرایی با 10 کروموزوم، صحیح نیست. با توجه به تعداد جمعیت، 10 کروموزوم خیلی زیاد است.
موفق باشید
|