خلاصه :
این مقاله یک الگوریتم ژنتیکی سازگار (AGA) را همراه با تابع لیاقت دینامیکی، برای مسائل چند هدفه (MOPs) در محیط دینامیکی تشریح می کند.
به منظور دیدن اجرای الگوریتم، این روش برای دو نوع از مسائل MOPs بکار گرفته شده است.
اولا این روش برای پیدا کردن آرایش نیروهای نظامی برای شبیه سازی رزمی بکار گرفته شده است.
این مقاله در مورد چهار تابع هدف بحث می کند که باید بهینه شوند و یک واسطه فازی را ارئه می دهد که طرح جامعی را از چهار تابع هدف می سازد.
دومین واسطه فازی برای کنترل نرخ عملکردهای تقاطع (Crossover) و جهش (Mutation) بکار گرفته می شود که بر اساس خواص آماری لیاقت (Fitness) جامع می باشد.
علاوه بر مسئله آرایش نیروهای نظامی یک مثال ساده از بهینه سازی چند هدفه که توسط فرینا و همکارانش گشته نیز ارائه شده است و توسط این الگوریتم پیشنهادی حل شده است.
نتایج بدست آمده در اینجا نشان می دهد که الگوریتم ژنتیکی افزایش یافته، نسبت به الگوریتم ژنتیکی معمولی، عملکرد بهتری در مورد همگرائی دارد.
کلمات کلیدی:
الگوریتم ژنتیکی سازگار یافته ، منطق فازی ، آرایش نیروهای نظامی ، شبیه سازی رزمی و بهینه سازی چند هدفه .
1- مقدمه
بدیهی است که حالتهای متعددی برای مسائل عملی بهینه سازی وجود دارد که در ابتدا، بهینه سازی چندین اندازه گیری اجرا (MOP) یا محک ، غیر قابل اجتناب است و این اندازه گیری ها ممکن است که با هم تداخل هم داشته باشند.
مسائل مربوط به MOPsمی توانند استاتیکی یا دینامیکی باشند.
مهمترین موضوع در حل این گونه از مسائل عبارت از مشخص کردن توابع هدف طراحی، برای اینکه خوبی (Goodness) یک حل مشخص بر آورد شود.
در مسائل MOPs بجای یک حل بهینه ، یک مجموعه از حل های بهینه ( مجموعه بهینه پارتو )، بسته به وجود چند تابع هدف، رخ می دهد.
بدون تنزل یکی از جوابها ، هیچ بهبودی برای هر یک از حلهای بهینه پارتو وجود ندارد.
هیچ حل پارتو نمی تواند از حل دیگری بهتر باشد مگر اطلاعات بیشتری را در اختیار داشته باشیم .
برای اینکه انتخاب نهایی بهتری داشته باشیم ، بهترین راه این است که تا جایی که ممکن است حلهای مختلف بهینه پارتو را بدست آوریم.
در بعضی از کاربردهای جهانی نظیر حمل ونقل باربا روباتها ، مشخص کردن مدل و طراحی کنترل کننده ها ، مسائل محیطی و نیازهای MOPs بصورت دینامیکی تغییر می کنند و برای اینگونه کاربردها ، بهینه سازی چند هدفه وابسته به زمان، نیاز است .
در این گونه از مسائل ، توابع هدف مربوطه و قیود و پارامترهای مسئله یا همه اینها، ممکن است لحظه به لحظه تغییر کنند.
این گونه از مسائل MOPs دینامیکی نامیده می شوند.
در این حالتها ، بهینه سازی تابع باید در بازه های زمانی خیلی محدود شده انجام پذیرد.
الگوریتمهای ژنتیکی معمولا بهترین وسیله جستجو در فضاهای بزرگ در طی یک زمان قابل قبول می باشند و نیازی به تحدب، تقعر و یا پیوستگی توابع بهینه ندارند.
این موضوع منجر به دامنه وسیعی از کاربردها برای این الگوریتم در مسائل بهینه سازی بزرگ درگستره های مختلف می گردد مانند تحلیل سریع تاکتیکهای جنگی برای دفاع و حلهای انعطاف پذیر برای مدیریت زنجیره ای.
این انواع مسائل پیچیده معمولا شامل آشوبناکی ، اتفاقی و مسائل دینامیکی پیچیده غیر خطی می شوند.
غیر ممکن است که این طیف از مسائل را بتوان با روش قدیمی الگوریتم ژنتیکی حل نمود.
الگوریتمهای ژنتیکی، تحلیل مجموعه ها را بصورت موازی انجام می دهند و تشابه این حلها را توسط ترکیب آنها برجسته می کنند.
این موضوع باید تذکر داده شود که از آن جا که این گونه الگوریتمها تعداد زیادی از حلها را در مجموعه های بهینه پارتو پیدا می کنند، برای حل مسائل چند هدفه بسیار خوب می باشند .
به هر حال، در الگوریتم ژنتیکی ساده، پارامترهای ثابت، مستقیما اجرای الگوریتم را تحت تاثیر قرار می دهند.
معمولا پارامترهای بدون آهنگ منجر به مسائل متعددی نظیر همگرایی زودرس می شوند.
بنابراین تعدادی از تکنیک های سازگار یافته برای این گونه از پارامترها پیشنهاد شده است.
همانند جهش احتمالاتی ، تقاطع احتمالاتی ، اندازه جمعیت [1] و ]2[ و عملکرد تقاطع ]3[.
یکی از مهمترین راهبردها برای مسائل بهینه سازی چند هدفه ، الگوریتم ژنتیکی چند هدفه (MOGA) می باشد.
مطالعات زیادی در مورد MOGA در منابع موجود می باشد [5]، [6]، [7]، [9]، [10]، [11]، [12]، [13]، [14]، [15]، [16]، [17]، [18]، [19]، [20].
مخصوصا دب (Deb) [20] یک MOGA عالی را ارائه داده است .
یک الگوریتم ژنتیکی با بر آورد برداری (VEGA) [9] نسبت به یک الگوریتم ژنتیکی ساده متفاوت می باشد چون در این روش جدید، از یک عملگرا انتخاب اصلاح شده استفاده می شود و در هر نسل، تعدادی از زیر جمعیتها توسط اجرای انتخاب خطی تولید می شوند.
مهمترین نقص این روش آن است که قادر به تولید حلهای بهینه پارتو برای فضاهای جستجویی غیر محدب نمی باشد.
در تکنیک مرتبه لغت نویسی (lexicographic ordering ) [14]، حلهای طراح مرتبه ها، بر اساس خواص مهم توابع می باشد.
سپس حل بهینه توسط مینیم سازی توابع هدف بدست می آید که بر اساس مهم بودن آنها، از مهمترین آنها شروع می شود.
مهمترین ضعف این روش این است که ممکن است منجر به بدست آوردن توابع هدف جانبدارانه شود و این موضوع ممکن است باعث بدست آمدن یک سری از توابع هدفی گردد که باعث ازدیاد توابع هدف و اتفاقی بودن آنها ، هنگام انجام فرایند بهینه سازی شود.
الگوریتم ژنتیکی هاجِلا و لین (HLGA) از روش مجموع وزن دار برای انتصابها استفاده می کند.
ضرایب وزنی در هر تابع هدف، درکروموزمها نهفته می باشد.
واگرایی ترکیب وزنها توسط روش Phenotypic fitness sharing ارتقا داده می شود و الگوریتم ژنتیکی بصورت همزمان، حلها و ترکیب وزنی ها را تکامل می بخشد.
این روش دارای مزیتهای بخصوصی است : این روش دارای کارایی کامپیوتری خوبی است، و حلهای غیر غالب ( غیر مشرف) را بصورت قوی تولید می کند.
هر چند برای مشخص کردن وزنهای مناسب در این روش به راحتی نمی توان از بهینه سازی جعبه سیاه (black – box) استفاده نمود که هیچ دانسته ای را در مورد دامنه نیاز ندارند.
الگوریتم ژنتیکی مرتب کردن غیر مشرف (NSGA)، [11] بر اساس کلاس بندی لایه ها برای افراد می باشد.
قبل از اینکه مکانیزم انتخاب اجرا شود ، جمعیت بر اساس غیر مشرف بودن مرتب می شود بدین صورت که همه افراد در یک گروه دسته بندی می شوند.
( با یک تعداد لیاقت فرضی که متناسب با اندازه جمعیت است ).
برای باقی ماندن واگرایی جمعیت، این کلاس افراد با مقدار لیاقت فرضی آنها شریک می شود .
سپس این گروه از افراد کلاس بندی شده در نظر گرفته نمی شوند
مخصوصا دب (Deb) [20] یک MOGA عالی را ارائه داده است .
سپس این گروه از افراد کلاس بندی شده در نظر گرفته نمی شوند و لایه بعدیِ افراد غیر مشرف فرض می شود.
این فرایند ادامه می یابد تا تمام افراد داخل جمعیت، کلاس بندی شوند.
زیتزِلر و تیل، روش Strength Pareto (SPEA) [16] را گسترش دادند.
در این الگوریتم، چندین خاصیت مطلوبِ توابع چند هدفه EA اولیه ترکیب می شوند که این خواص نظیر ارتقاء پیوسته جمعیت، نگهداری واگراییِ جمعیت و بر آورد لیاقت افراد می باشند.
روشهای SPEA ، PAES [18] و NSGAII [19] بر اساس حلهای پارتو می باشند که در آنها اندازه گیری لیاقت افراد بر اساس خواص مشرفی آنها می باشد.
افراد غیر مشرف در داخل جمعیت، بعنوان لایق ترین افراد در نظر گرفته می شوند و افراد مشرف بعنوان کمترین مقدار لیاقت فرض می شوند .
روش PAES یکی از روشهای MOGA است که از استراتژی یک والد و یک فرزند استفاده می کند.
در روش NSGA، در هرتکثیر نسل، اپراتورهای تقاطع و جهش برای تولید فرزندی استفاده می شوند که تا حد ممکن در داخل نسل والدها باشد.
بهینه سازی چند هدفه بصورت گسترده ای در مراجع مختلف مورد مطالعه قرار گرفته است.
اما مطالعات مربوط بهینه سازی چند هدفه دینامیکی (DMO) خیلی کم می باشد و در مراجع [21] و [22] به آن پرداخته شده است : در مرجع [21] پنج مسئله بهینه سازی دینامیکی چند هدفه با پیچیدگیهای مختلف ( از قبیل محدب بودن ، پیوسته نبودن و وابسته بودن به زمان ) ارائه شده است و یک روش پایه ای جستجوی مستقیم در آن مرجع برای هر پنج نوع مسئله بکار گرفته شده است .
فرینا و همکارانش در مرجع [21] بیان نموده اند که الگوریتمهای بهینه سازی دینامیکی چند هدفه تکاملیِ کارایی برای اجرای خوب، مورد نیاز است و مطالعات شبیه سازیهای سخت گیرانه ای نیز لازم است.
معرفی ها یک بهینه سازی چند هدفه با قیود نامساوی می تواند به زبان ریاضی توسط یک تابع برداری f معرفی شود که یک مجموعه از m پارامتر ( متغیر های تصمیم گیری ) را به n تابع هدف می نگارد .
این موضوع می تواند مانند زیر بیان شود.
که x عبارت است از مجموعه بردارهای تصمیم گیری و X عبارت است از فضای پارامترها و y نیز بردار هدف می باشد و Y فضای تابع هدف است.
حقیقت مورد ملاحظه در مورد این گونه حلها این است که هنگامی که تمام توابع هدف در نظر گرفته شوند، هیچ کدام از حلها در فضای جستجو نسبت به بقیه برتری ندارد.
مجموعه حلهای یک مسئله بهینه سازی چند هدفه تشکیل شده است از همه پارامترهای تصمیم گیری بنحوی که بردارهای هدف آنها نتوانند بدون تنزلِ بقیه، بهبود یابند.
یک چنین حلهایی، حلهای بهینه پارِتو نامیده می شوند.
یک حل بهینه پارتو یکتا نیست اما عضوی از مجموعه نقطه هایی می باشد که هر کدام به تنهایی و با درنظرگرفتن بردارهدف، خوب می باشد.
2-1- نسبت دهی لیاقت و ماندگاری واگرایی نسبت دهی لیاقت و استراتژی ماندگاری واگرایی، دو موضوع مهم در MOPs می باشند.
برای نسبت دهی لیاقت، تعداد زیادی MOGA می توانند در دو گروه رده بندی کرد که عبارتند از حلهای پارتو و حلهای غیر پارتو.
روشهای غیر پارتو [9]، [10]، [13] مستقیما از مقادیر تابع هدف برای تصمیم گیری برای باقی ماندن یا حذف شدن افراد استفاده می کنند.
در حالی که روشهای پارتو [6]، [11]، [16]، [18]، [19] لیاقت یک فرد را در رابطه با خواص مشرف بودن آن اندازه گیری می کنند.
افراد غیر مشرف در جمعیت، بعنوان افراد با لیاقت بالاترین در نظر گرفته می شوند و افراد مشرف بعنوان افراد با لیاقت کمترین فرض می شوند.
یکی دیگر از مشخصه های MOGAs ها عبارت است ازاستراتژی ماندگاری واگرایی.
این موضوع باعث می شودکه حلها بصورت خیلی یکنواخت در تمام مجموعه بهینه پارتو پخش شوند بجای اینکه در یک ناحیه کوچک مجتمع شوند.
به اشتراک گذاشتن، لیاقت افرادی که کاندیدای یک لیاقت باشند را کم می کند و یکی از تکنیکهای خیلی جدید می باشد .
اخیرا بعضی از تکنیکهای مستقل از پارامتر نظیر SPEA و NSGA نیز پیشنهاد شده اند.
در این مطالعه، یک تکنیک مبتنی بر منطق فازی برای انجام بهتر نسبت دهی لیاقت و ماندگاری واگرایی بکار گرفته شده است.
روشهای قدیمی نظیر روش مجموع وزنها یا روش قیدهای [4] در هر بار اجراء فقط می توانند یک حل بهینه پارتو را پیدا کنند.
همچنین این روشها وابسته به مسئله مورد حل می باشند و ممکن است ساده سازیهای بسیار زیادی را انجام دهند.
در اکثر برنامه های بازیها، لیاقت استاتیکی زیر برای پیدا کردن جهت جستجو بکار برده می شود.
که fi ها feature ها هستند و wi ها وزنهای مربوطه می باشند که میزان مهم بودن feature ها را نشان می دهند.
مشخص کردن این feature ها و وزنها برای یک جستجوی کار آمد در یک مسئله بهینه سازی چند هدفه بسیار مهم می باشند.
انتخاب وزنها در یک فضای دینامیکی چند معیاری سخت می باشد و انتصاب مقادیر وزنها اغلب بصورت سعی و خطا انجام می گیرد .
این فرایند بسیار زمانبر می باشد.
به منظور غالب آمدن بر مشکل بالا ، یک تابع لیاقت با پایه منطق فازی مورد استفاده قرار می گیرد.
بهینه سازی به روش فازی بجای اینکه بر یک مدل ریاضی بنا شود بر یک مدل فازی بنا می شود.
مهمترین مزیت های این روش بهینه سازی این است که توابع هدف فازی، ماهیت غیر قابل دیفرانسیل گیری دارند و نظریه مجموعه های فازی یک روش بسیار جذاب را برای جداسازی اطلاعات از داده های نا مشخص دینامیکی و غیر مدل شده بدست می دهد.
تابع لیاقت دینامیکی زیر برای بدست آوردن وزنهای هدف در منطق فازی بکار می رود.
که ها تابع عضویت هستند که از مشخصه های fi (feature)می باشند.
3-1- توضیح صورت مسئله نرم افزار THUNDER یک نرم افزار خیلی بزرگ شبیه سازی مدل است که بر اساس شبیه سازی مونت کارلو کار می کند.
این نرم افزار یک نرم افزار شبیه سازی تئوری