چکیده
محیطهای پویا محیطهایی هستند که قابلیت تغییرات در طول زمان را به خود اختصاص میدهند. این تغییرات میتواند به طرق مختلف از جمله تغییر در پارامترها، توابع هدف یا محدودیتهای مسئله اتفاق افتد. در این راستا حوزهی وسیعی از علوم مختلف مانند مدیریت، اقتصاد، رایانه، ریاضیات و غیره با این تغییرات روبرو بوده که هم در بخش تئوری و هم به صورت عملی در جهان واقعی مطرح میشوند. به همین دلیل حل مسائل مربوط به محیطهای پویا که به حل مسائل بهینه سازی پویا معروفند از چند دهه ی گذشته تا به امروز مطرح بودهاند. مهمترین چالش در حل این گونه مسائل مربوط به نحوهی سازگاری با محیط تغییر یافتهی جدید میباشد. بنابراین نیاز به ردیابی و دنبال کردن نقطهی (نقاط) بهینهی جدید در فضای مسئله احساس میشود. برای برخورد با این چالش محققان بر آن شدند تا از الگوریتمهای تکاملی که الهام گرفته از فرآیندهای تکاملیاند و افزودن یکسری مکانیزمهای خاص بهرهگیرند. چالش دیگری که این مسائل با آن روبرو میشوند، یافتن بهینه(ها) به طور هر چه دقیقتر میباشد که برای این امر بایستی حتی الامکان از الگوریتمهایی با سرعت همگرایی و توانایی جستجوی محلی بالا استفاده کرد. الگوریتم بهینهسازی فاخته یکی از الگوریتمهای تکاملی است که در محیطهای ایستا سرعت همگرایی و توانایی جستجوی محلی بالایی از خود نشان داده است. از سویی پویاسازی این الگوریتم تاکنون بررسی نشده است. لذا هدف از این پژوهش پویاسازی و ارائهی نسخهی جدیدی از این الگوریتم میباشد. برای تحقق این موضوع ابتدا تغییراتی در ساختار اصلی الگوریتم استاندارد ایجاد شده و با بهرهگیری از یک مکانیزم
خود-تطبیقی در شعاع تخمگذاری فاختهها، تلاش در افزایش سرعت همگرایی و توانایی جستجوی محلی صورت گرفته است. سپس جهت ردیابی بهینه(ها) بعد از تغییرات محیطی، از یک الگوریتم چند-دستهای، مکانیزم ایجاد دستهی آزادو نیز مکانیزم انحصار بهره گرفته میشود. همچنین جهت رویارویی با چالشهای مربوط به از دست دادن تنوع و حافظهی نامعتبر در دستههای همگرا شده، فاختههای هر دسته در شعاعی (که بر اساس طول گام حرکتی قلهها تعیین میگردد) اطراف بهترین فاختهی آن دسته پخش و مورد ارزیابی قرار میگیرند. در دستههای غیر همگرا نیز تنها شایستگی موقعیت فاختههای آن دسته مجدداًمحاسبه میشود. مکانیزم غیرفعالسازی از دیگر مکانیزمهایی است که جهت افزایش کارآیی الگوریتم در محیطهای پویا مطرح شده است. در نهایت بر اساس نتایج به دست آمده، الگوریتم پیشنهادی در مقایسه با اکثر الگوریتمها کارآیی بهتری از خود نشان داده است.
واژههای کلیدی:مسائل بهینه سازی پویا، الگوریتم های تکاملی و الگوریتم بهینه سازی فاخته
فهرست مطالب
فصل اول: مقدمه 1
فصل دوم: شرح مسئله 4
2-1 محیطهای پویا و مسائل بهینهسازی پویا 5
2-2 تغییرات پیوسته و ناپیوسته 5
2-3 تغییرات سراسری و مقطعی 6
2-4 اهدف 6
2-5 خلاصه فصل 6
فصل سوم: مفاهیم پایهای 7
3-1 الگوریتم بهینه سازی فاخته 8
3-1-1 روش زندگی و تخمگذاری فاخته ها 8
3-1-2 جزئیات الگوریتم بهینهسازی فاخته 9
3-2 تابع محک قلههای متحرک 12
3-3 معیار کارآیی 13
3-4 خلاصه فصل 14
فصل چهارم: راهکارهای پیشین 15
4-1 ایجاد تنوع 16
4-1-1 اعمال مهاجران تصادفی، مهاجران بر پایهی نخبه و ابر جهش به راه اندازی شده در الگوریتم ژنتیک در محیط پویا 16
4-1-2 به کارگیری الگوریتم ممتیک بر اساس جستجوی محلی تپهنوردی در محیط پویا 18
4-1-3 استفاده از الگوریتم ایمنی مصنوعی بر پایهی خودکار یادگیرنده در محیط پویا 19
4-1-4 اعمال مکانیزم خود-سازگار در نرخ جابجایی روی الگوریتمهای تکاملی در محیط پویا 21
4-1-5 چگونگی به کارگیری خودکار سلولی در الگوریتمهای تکاملی در محیطهای پویا 22
4-2 به کارگیری حافظه 24
4-2-1 حافظهی ضمنی 24
4-2-2 حافظهی صریح 24
4-3 روش چند-جمعیتی بودن 27
4-3-1 به کارگیری الگوریتم بهینهسازی چند-جمعیتی ذرات سریع درمحیط پویا 28
4-3-2 الگوریتم بهینهسازی تجمعی ذرات با رویکرد افزودن گروه فرزند در محیط پویا 30
4-3-3 به کارگیری الگوریتم بهینهسازی تجمعی ذرات با رویکرد وزن تطبیقی و خوشهبندی فازی در محیط پویا 31
4-3-4 به کارگیری الگوریتم گروه ماهیهای مصنوعی با رویکرد چند-جمعیتی در محیط پویا 32
4-3-5 به کارگیری الگوریتم کرم شبتاب با رویکرد ایجاد گروه در محیط پویا 36
4-4 خلاصهی فصل 40
فصل پنجم: راهکار پیشنهادی و ارزیابی نتایج 42
5-1 الگوریتم MCOA 43
5-1-1 مکانیزم خود-تطبیقی شعاع تخمگذاری 44
5-2 الگوریتم پیشنهادی MMCOAجهت بهینهسازی در محیطهای پویا 46
5-2-1 بررسی همگرایی دسته ها 46
5-2-2 مکانیزم انحصار 47
5-2-3 کشف تغییرات محیط 48
5-2-4 رفع مشکل حافظهی نامعتبر و تنوع از دست رفته 48
5-2-5 مکانیزم غیرفعالسازی 49
5-3 تحلیل و ارزیابی نتایج 50
5-3-1 تحلیل نتایج الگوریتم MMCOAدر فرکانس تغییرات و تعداد قلههای مختلف و مقایسه با دیگر الگوریتمها 50
5-3-2 تحلیل نتایج الگوریتم MMCOAدر طول گام حرکتی مختلف قلهها و مقایسه با دیگر الگوریتمها 75
5-3-3 تحلیل نتایج الگوریتم MMCOAبا تعداد ابعاد مختلف مسئله و مقایسه با دیگر الگوریتمها 77
5-4 جمعبندی نتایج 79
5-5 خلاصهی فصل 80
فصل ششم: نتیجهگیری و راهکارهای آتی 82
6-1 نتیجهگیری 83
6-2 راهکارهای آتی 84
مراجع 85
واژه نامه 89