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

طبق تعریف متن سوال ،مساله فروشنده دوره گرد(Traveling Salesman Problem )، کوتاهترین مسیر را برای یک فروشنده دوره گرد می یابد به طوریکه از یک شهر شروع بشود از تمامی سایر شهرها به یک ترتیب خاص عبور کند و سرانجام به شهر مقصد برگردد با این شرط که از هر کدام از شهرها فقط و فقط یک بار عبور کند. هدف این مساله بهینه سازی هزینه ها می باشد. مشخص است مسافتی که این فروشنده دوره گرد می پیماید بستگی به ترتیبی دارد که از شهرها عبور می نماید. بنابراین هدف این مساله، یافتن یک ترتیب بهینه برای عبور از شهرها است، به گونه ای که اهداف هزینه ای در نظر گرفته شده، بهینه سازی شوند.
به طور کلی مراحل الگوریتم ژنتیک به صورت زیر می باشد:
۱- انتخاب جمعیت اولیه
۲- محاسبه ی توابع برازندگی هر فرد در جمعیت کنونی
۳- انتخاب افراد برتر براساس برازندگی به عنوان والدین
۴- تولید نسل بعدی توسط عمل گرهای ژنتیکی
۵- محاسبه ی تابع برازندگی
۶- اگر شرایط خاتمه حاصل شده است پایان الگوریتم وگرنه برو به ۳
ادامه شرح برنامه را در فایل پیوست شده بیابید.
تماس با نویسنده مطلب: sazizianamiri[at]yahoo.com
نسخه ی دیگری از حل مسئله فروشنده دوره گرد پیش از این در سایت قرار گرفته بود که می توانید آن را از اینجا دریافت کنید.
توجه: این مطلب تنها جنبه ی آموزشی دارد. هرگونه استفاده ی به منظور اهداف تجاری، پروژه های درسی آماده و موارد مشابه موجبات کدورت خاطر و نارضایتی نویسنده است.