: مسافت بین دو مشتری i وj
: ضریب احتمال تقاضای مشتری
: میزان جریمه
از آنجا که مسافت بین دو مشتری را با بیان کردهایم، با توجه به ماهیت ماتریس مسافت، درصورتیکه مقدار باشد ماتریس از نوع متقارن و در نتیجه مسأله از نوع متقارن خواهد بود در غیر اینصورت مسأله از نوع نامتقارن میباشد. در حالت متقارن، فاصلهی دو شهر به جهت حرکت بستگی ندارد.
تعریف تابع هدف
در Shanmugam et al. (2011) تابع هدف به صورت یک تابع دو بخشی تعریف شده است که جواب نهایی، از انتخاب کمترین بخش آن بدست می آید. ولی در روش پیشنهادی، تابع هدف به صورت سه بخش تعریف شده است که جواب نهایی مینیمم مجموع این سه بخش میباشد.
تابع هدف روش پیشنهادی به شرح زیر معرفی می شود:
(۴-۲)
که در ارتباط با آن:
(۴-۳)
(۴-۴)
(۴-۵)
تحلیل تابع هدف
: هزینه مورد انتظار در مورد رفتن به مشتری بعدی
: هزینه مورد انتظار برای بارگیری مجدد
: هزینه مورد انتظار در مورد تقاضاهای سرویس داده نشده
با توجه به علائم، پارامترها و متغیرهای تعریف شده، مدل ریاضیِ روش پیشنهادی، متشکل از یک تابع هدف سه بخشی است. تابع هدف مدل فوق از ۳ جزء تشکیل گردیده است:
جزء اولِ تابع هدف، در راستای کاهش مسیرهای (مسافت) طی شده از یک مشتری به مشتری دیگر میباشد و جزء دومِ تابع هدف نیز سعی در کم کردن مسیر (مسافت) طی شده از مشتری کنونی به انبار و از انبار تا مشتری بعدی را دارد که هر دو جزء، مربوط به هزینه های سفر میباشند. جزء سومِ تابع هدف، که با توجه به شرایط مسأله (پویا بودن) به مدل اضافه گردیده است، سعی در کاهش میزان جریمه ناشی از عدم برآورده کردن میزان تقاضای مشتری دارد که این جزء مربوط به هزینه های عدم سرویس به مشتریان میباشد.
تشریح اجزای الگوریتم ژنتیک بر حسب روش پیشنهادی
برای حل مسأله VRPSD در یـافتن بهینهترین مسیر، از الگوریتم ژنتیک استفـاده شده است. همانطور که در فصل دوم نیز ذکر شد، یکی از انواع الگوریتمهای ژنتیک، الگوریتم ژنتیک جایگشتی میباشد که توسط آن میتوان مسائل جایگشتی را حل نمود.
در ادامه مراحل الگوریتم ژنتیک را با روش پیشنهادی تطبیق میدهیم.
کدگذاری
همانطور که در فصل دوم گفته شد، هر کـدام از راهحلهـای موجود که ارائـه دهنده حلی برای مسأله هستند، کـروموزوم نامیده میشوند. قبل از این که الگوریتم ژنتیک برای یک مسأله اجرا شود، باید یک روش برای کد کردن ژنومها به زبان کامپیوتر بهکار رود.
هر کروموزوم نشان دهنده یک راه حل میباشد که نحوه قرارگیری این راهحلها به گونه ای است که عضو تکراری در آنها دیده نمی شود؛ همچنین به دلیل مواجه شدن با جایگشتهای مختلف از مجموعه راهحلها و مهم بودن ترتیب قرارگیری اعـداد، ما در این مسـأله از کـدینگ جایگشتی برای کدگـذاری هر کروموزوم استفـاده میکنیم به اینصورت که هر کروموزوم توالی گرههای تقاضا (مشتریان) در مسیرها را نشان میدهد. شکل (۴-۱) بیانگر این مطلب میباشد.
۶ | ۵ | ۸ | ۷ | ۴ | ۲ | ۱ | ۳ | ۹ |
شکل(۴-۱): نمونه ای از کروموزومها در روش پیشنهادی
جمعیت
همانطور که در فصل دوم گفته شد، الگوریتم ژنتیک یک تکنیک بهینهسازی تصادفی است که با یک مجموعه اولیه از راه حلهای تصادفی شروع می شود که به آن جمعیت گفته می شود. در روش پیشنهادی، جمعیت اولیه به صورت تصادفی و با بهره گرفتن از «تابع تولید اعداد تصادفی جایگشتی(randperm(n))» تولید شده است. اندازه جمعیت برابر با ۱۰ درنظر گرفته شده است. در شکل (۴-۲) نمونههایی از اعضای جمعیت (یعنی کروموزومها) نشان داده شده اند.
درVRP باید به این نکته توجه کرد که هر کدام از راهحلها باید از انبار شروع و به انبار ختم شوند. در شکل (۴-۲) این نکته به تصویر کشیده شده است به طوریکه ابتدا و انتهای هر کروموزوم، عنصر انبار (D) قرار گرفته است. همچنین ملاحظه می شود که ژنهای میانی نیز میتوانند حاوی مقدار D باشند و این بیانگر تعداد رفت و برگشتهای وسیلهنقلیه به انبار میباشد.