مقدمه:
حمل و نقل جادهای عامل اصلی انتشار گاز کربن دی اکسید است که مستقیما از مصرف سوخت ایجاد میشود. مصرف سوخت به پارامترهای متفاوتی مانند سرعت، بار و شتاب وسیله نقلیه وابسته است. مسئله مسیریابی آلودگی (PRP) نوع توسعه یافته مسئله مسیریابی وسیله نقلیه (VRP) با پنجره زمانی است که به دنبال مسیریابی تعدادی وسیله نقلیه برای ارائه خدمات به مجموعهای از مشتریان دارای پنجره زمانی میباشد. در این نوع مسائل هدف تعیین سرعت بهینه در هر مسیر، کاهش مصرف سوخت و هزینههای راننده میباشد. اینگونه مسائل Np-hard هستند و روشهای دقیق قادر به حل آنها نیست به همین علت این مقاله الگوریتم جستجوی بزرگ همسایگی انطباقی که یک روش ابتکاری است را پیشنهاد داده است. تفاوت الگوریتم به کار رفته در این مقاله با حالت کلاسیک آن استفاده از الگوریتم بهینهسازی سرعت (SOA) است که در آن سرعت بهینه (در مسیر داده شده) محاسبه میشود؛ این عمل باعث کاهش مصرف سوخت، انتشار گازهای سمی و هزینههای راننده میشود. همچنین این الگوریتم میتواند به تنهایی در مسائل مسیریابی وسیله نقلیه با پنجره زمانی برای بهینهسازی سرعت استفاده شود.
مسئله مسیریابی آلودگی در یک گراف کامل G=(N,A) تعریف میشود. N مجموعه مشتریان و A مجموعه کمانها است و انبار با صفر مشخص میشود. فاصله گرهها (d)، تعداد (K) و ظرفیت وسایل نقلیه (Q) و تقاضای مشتریان (q) و بازه زمانی سرویسدهی به آنها [a,b] مشخص شده اند.
برای کاهش انتشار CO2 در محیط و کاهش مصرف سوخت نیاز به روشی برای محاسبه میزان مصرف سوخت وسایل نقلیه وجود دارد که انواع متفاوتی از مدلهای مصرف سوخت در ادبیات موجود است. برای محاسبه نرخ مصرف سوخت از فرمول (۱) استفاده می شود. که در آن k عامل اصطکاک موتور (کیلوژول بر دور بر ثانیه)، V میزان جابهجایی موتور (لیتر) و N دور موتور (رادیان بر ثانیه) هستند. رابطه (۲) توان خروجی موتور را محاسبه میکند. برای محاسبه توان موتور (موجود در فرمول ۲) از فرمول (۳) استفاده میشود. در فرمول (۳) v سرعت وسیله نقلیه (متر بر ثانیه)، M وزن وسیله نقلیه (کیلوگرم)، g ثابت گرانشی زمین (متر بر مجذور ثانیه)، تتا شیب جاده (رادیان)، A ناحیه سطح رو به روی وسیله نقلیه (متر مکعب) میباشد.
شکل ۱ منحنی مصرف سوخت مربوط به فرمول (۶) را در سرعت ۲۰ تا ۱۰۰ کیلومتر بر ساعت در ۱۰۰ کیلومتر مسیر را نشان میدهد. این شکل جمع ۲ جز را نشان میدهد که شامل منحنی خط چین شده که از معادله (۴) که در آن K ضریب اصطکاک موتور، N دور موتور و V حجم جابهجایی موتور میباشد. همچنین منحنی نقطه چین که از رابطه (۵) به دست آمده اند، میباشد. جز اول تابع (KNV) مختص سطوح پایین سرعت (کمتر از ۴۰ کیلومتر بر ساعت) و جز دوم تابع یاP(t) مختص سطوح بالا سرعت (بیشتر از ۴۰ کیلومتر بر ساعت) میباشد. در این مقاله وسیله نقلیه با سرعت کم در نظر گرفته شده است که مصرف سوخت زیاد را به همراه دارد پس از معادله (۶) به عنوان فرمول نرخ مصرف سوخت استفاده شده است. فرمول (۶) نرخ مصرف سوخت به صورت زیر محاسبه میشود. در این فرمول لاندا، الفا، گاما و بتا ضرایب ثابت مخصوص وسیله نقلیه و مسیر (مانند: شتاب، موتور، شیب و ...) هستند که در فاصله بین گرهها ضرب و بر سرعت خودرو تقسیم میشوند.
فرمولنویسی برنامهریزی عدد صحیح:
تابع هدف: به دنبال کمینه کردن هزینههای مربوط به مصرف سوخت، بار و حقوق رانندگان میباشد. عبارات (۷) تا (۱۰) تابع هدف مربوط به حداقل کردن مصرف سوخت با استفاده از فرمول ۶ است. عبارت (۷) مربوط به سرعت ۴۰ کیلومتر بر ساعت و کمتر میباشد. عبارات (۸) و (۹) مربوط به هزینههای ناشی از وزن خالص وسیله نقلیه و وزن بار آن میباشد. عبارت (۱۱) مربوط به هزینه حقوق رانندگان میباشد.
محدودیت (12): بیان میکند که همه وسایل نقلیه باید انبار را ترک کنند. محدودیت (13) و (14): مشخص میکند که همه مشتریان باید تنها یکبار دیده شوند. محدودیت (15) و (۱۶): مربوط به جریان موجود در کمانها هستند. محدودیت (۱۷) و (۱۹): پنجره زمانی ملاقات مشتریان را مشخص میکنند. هر مشتری باید در بازه زمانی مربوط به خودش دیده شود و با در نظر گرفتن مدت سرویس دهی به مشتری i ملاقات مشتری بعدی مشخص شود. محدودیت (20): این اطمینان را میدهد که فقط یک سطح سرعت (سرعت کم یا زیاد) برای هر کمان انتخاب شده است. محدودیت (21) تا (24): نامنفی بودن متغیرها و همچنین متغیرهای دودویی را نشان میدهند.
الگوریتم جستجوی بزرگ همسایگی انطباقی در مسئله مسیریابی آلودگی:
الگوریتم پیشنهاد داده شده در این مقاله دارای ۲ فاز است. فاز اول الگوریتم ابتکاری به نام جستجوی بزرگ همسایگی انطباقی یا ALNS و فاز دوم الگوریتم بهینه سازی سرعت یا SOA میباشد. الگوریتم ALNS حالت توسعه یافتهی جستجوی بزرگ همسایگی یا LNS است که شامل یک سری از حرکات برداشت و گذاشت در جستجوی همسایگی است؛ اما الگوریتم ALNS شامل چندین عملگر برداشت و گذاشت مشتریان در حین جستجوی همسایگی است. برای حل مدل در ابتدا یک جواب اولیه ایجاد شده و با استفاده از الگوریتمهای بهبود دهنده به جستجوی جوابهای همسایه برای رسیدن به جواب بهینه پرداخته میشود. انتخاب عملگر گذاشت و برداشت با مکانیزم چرخ رولت ایجاد میشود. برای ۱۲ عملگر برداشت و ۵ گذاشت احتمالها به ترتیب 1/12 و 1/5 در نظر گرفته شده است و در طول الگوریتم به صورت زیر به روز رسانی میشوند. که در آن r پارامتر چرخ رولت، عدد پی امتیاز عملگر i و w تعداد دفعاتی است که از آن استفاده شده است.
امتیاز هر عملگر نشان میدهد که چقدر هر عملگر در هر تکرار خوب عمل کرده است. اگر بهترین جواب به دست بیاید امتیاز عملگر به اندازه (s(1 (در این مقاله مقدار ۱) افزایش مییابد. اگر جواب بهتر از جواب جاری باشد امتیاز به اندازه (s(2 (در این مقاله مقدار 0) افزایش مییابد و اگر جواب از جواب جاری بدتر باشد امتیاز به اندازه (s(3 (در این مقاله مقدار ۵) افزایش مییابد.
عملگرهای برداشت:
در این مقاله ۱۲ عملگر برداشت معرفی شده و در الگوریتم از آنها استفاده شده است. ورودی این عملگرها جواب جاری مسئله است که تعدادی گره از آن برداشت شده و یک جواب کاهش یافته و لیستی از مشتریان برداشته شده از جواب به عنوان خروجی این عملگر ایجاد میشود.
عملگرهای گذاشت:
در این بخش ۵ عملگر گذاشت در الگوریتم ALNS معرفی شده است. عملگرهای گذاشت برای ساخت دوباره مسیر از لیست مشتریان برداشت شده به کار می روند.
بهینهسازی سرعت:
در این بخش تاثیر بهینهسازی سرعت بر هزینه مسیر و انتشار گازهای سمی در محیط زیست بررسی میشود. در هر کمان بین دو گره برای کمینه کردن مصرف سوخت وسیله نقلیه، سرعت بهینه محاسبه میشود.
تابع هدف: به دنبال کمبنه کردن کل هزینه مصرف سوخت و درآمد راننده میباشد.
محدودیت (۲۶): این اطمینان را میدهد که زمان رسیدن به گره i+1 برابر جمع زمان رسیدن به گره i، زمان سرویسدهی به گره i و زمان سفر تا گره i است.
محدودیت (۲۷): تضمین میکند که خدمات مربوط به گره i در بازه a تا b انجام شود.
محدودیت (۲۸): حد بالا و پایین سرعت را تعریف میکند.
محدودیت (۲۹) تا (۳۱): نامنفی بودن متغیرها را بیان میکند.
در ابتدای الگوریتم، سرعتها برای هر کمان با در نظر گرفتن پنجره زمانی و کل زمان در دسترس محاسبه میشوند. مقادیر سرعت برای پیدا کردن خطاها استفاده میشوند. به این صورت که اگر زمان ارسال کمتر از جمع a و t در گره i باشد و یا زمان رسیدن به گره i بزرگتر از b باشد خطا به حساب میآید. در غیر این صورت خطا صفر است. اگر حداقل سرعت ممکن بیشتر از سرعت بهینه باشد، سرعت بهینه به حداقل سرعت ممکن افزایش مییابد و اگر سرعت فعلی کمتر از مقدار بهینه باشد آن را به مفدار بهینه تغییر میدهد. الگوریتم در هر فاز، کمان با بیشترین خطا در پنجره زمانی را انتخاب کرده و خطای آن را حذف میکند.
نتایج محاسباتی:
در این بخش نتایج محاسباتی مربوط به اجرای الگوریتم ALNS ارائه شده است. در ابتدا نمونه های تعریف شده در مسئله توضیح داده شده سپس نتایج بیان میشوند.
9 مجموعه که هر کدام دارای ۲۰ نمونه هستند تولید شده است. نمونهها به صورت تصادفی از شهرهای انگلستان انتخاب شدهاند. فاصلههای در نظر گرفته شده بین شهرها مقدار واقعی آنها هستتند. پنجره زمانی و زمان سرویسدهی به صورت تصادفی تولید شده است. این نمونه ها برای تعداد مشتریان ۱۰، ۱۵، ۲۰،۲۵، ۵۰، ۷۵، ۱۰۰، ۱۵۰ و ۲۰۰ تولید شده است. الگریتم ارائه شده شامل ۱۵ پارامتر است که در ۳ گروه دستهبندی شده اند.
گروه اول روند انتخاب را با مکانیزم چرخ رولت تعریف انجام میدهد.
گروه دوم از پارامترها برای تنظیم کردن شبیهسازی تبرید استفاده میکند و دما و نرخ سرد شدن الگریتم را تعریف میکند. شکل ۵ رفتار رویکرد ابتکاری ۱۰۰ گرهی نمونه را نشان میدهد. با توجه به شکل بهترین جواب، جواب فعلی و جواب جدید در بیش از ۲۵۰۰۰ تکرار تغییر میکنند. در این شکل نمودار نقطه چین شده جواب جدید، نمودار خط چین شده جواب فعلی و خط ممتد بهترین جواب را نشان میدهد.
گروه سوم: از پارامترهای مختص عملگرهای برداشت و گذاشت تشکیل شده است.
اثرات بهینه سازی سرعت:
الگوریتم بهینهسازی سرعت یا SOA بسیار سریع است و قابلیت بهبود نتایج حاصل از الگوریتم ALNS را دارد. برای مثال شکل ۶ بهبود جوابهای ایجاد شده در الگوریتم ALNS را در ۱۰۰ گره نشان میدهد. نتایج نشان میدهد که در کل الگوریتم SOA، جوابهای به دست آمده از ALNS را به اندازه ۲ تا ۴درصد بهبود بخشیده است.
نتیجه گیری:
در این مقاله یک الگوریتم ابتکاری برای حل مسئله مسیریابی آلودگی پیشنهاد شده است. این الگوریتم در مسئله مسیریابی وسیله نقلیه با پنجره زمانی و مسئله بهینهسازی سرعت تکرار میشود. در الگوریتم ALNS از عملگرهای گذاشت و برداشت موجود در ادبیات و جدید استفاده شده است که باعث افزایش کیفیت جواب میشود. این عملگرها میتوانند در ALNS برای حل انواع دیگر مسائل استفاده شوند. SOA باعث بهبود جواب به دست آمده از ALNS و کاهش هزینههای مصرف سوخت و حقوق راننده وسیله نقلیه میشود. SOA زمان اجرای کوتاهی دارد و میتواند به تنهایی در انواع دیگر مسائل مسیریابی و بهینه سازی سرعت استفاده شود. برای ارزیابی کامل الگوریتم ابتکاری، دستههای متفاوتی نمونه از دادههای جغرافیایی واقعی تولید شده است. نتایج محاسباتی نشان میدهد که الگوریتم پیشنهادی برای پیدا کردن جوابهای با کیفیت در مسائل دارای نمونههایی که تعداد آنها نا ۲۰۰ گره باشد، بسیار کارآمد است.