دانلود فایل ها با موضوع : سیستم برنامه ریزی و … – منابع مورد نیاز برای مقاله و پایان نامه : دانلود پژوهش های پیشین |
تکنیکهای شرکت کننده در الگوریتمهای فرااکتشافی، در محدوده رویههای ساده جستجوی محلی تا فرایندهای یادگیری پیچیده قرار میگیرند.
الگوریتمهای فرااکتشافی، تقریبی و عمدتاً غیرقطعی[۱۲۴] هستند.
ممکن است مکانیزم هایی برای اجتناب از به دام افتادن در نواحی محدود[۱۲۵] فضای جستجو به کار ببرند.
( اینجا فقط تکه ای از متن فایل پایان نامه درج شده است. برای خرید متن کامل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )
مفاهیم پایه فرااکتشافات، اجازه توصیف در سطح تجریدی[۱۲۶] را میدهد.
فرااکتشافات، مخصوص مسئله خاصی نیستند.
ممکن است از دانش خاص دامنه[۱۲۷] مسئله به شکل توابع اکتشافی که با استراتژی های سطح بالاتر کنترل میشوند، استفاده کنند.
امروزه، فرااکتشافات پیشرفتهتر، تجربه جستجو را برای هدایت جستجو به کار میبرند.
به طور کلی میتوان گفت فرااکتشافات، استراتژی های سطح بالا برای کاوش فضای جستجو با بهره گرفتن از روشهای متفاوت هستند. مسئله مهم این است که توازن مناسبی بین متنوعسازی و متمرکزسازی وجود داشته باشد. به طور کلی لغت متنوعسازی به کاوش فضای جستجو اطلاق میگردد در حالیکه لغت متمرکزسازی به کاوش تجربه جستجوی جمعآوری شده گفته می شود. این لغات از حوزه جستجوی ممنوع وام گرفته شده اند و لازم است توجه شود که لغات «کاوش»[۱۲۸] و «استخراج»[۱۲۹] گاهی بهجای هم به کار میروند، در واقع کلمات استخراج و کاوش، اغلب به استراتژی های نسبتاً کوتاه مدت وابسته به تصادفی بودن اطلاق می شود، در حالیکه متنوعسازی و متمرکزسازی، به استراتژی های میان مدت یا بلند مدت که مبنی بر استفاده از حافظه هستند، گفته می شود. به کاربردن لغات متنوعسازی و متمرکزسازی در معنی اصلیشان، در کل زمینه فرااکتشافات پذیرفته شدهتر است. از یک سو به دلیل شناسایی سریع مناطقی از فضای جستجوی دارای راه حلهای با کیفیت بالا و از سوی دیگر برای هدر ندادن زمان طولانی در مناطقی از فضای جستجو که قبلاً کاوش گردیده و یا راه حل با کیفیت بالایی فراهم نکرده اند، توازن بین متنوعسازی و متمرکزسازی دارای اهمیت بسیار زیادی است.
در ادامه این فصل برای آشنایی بیشتر، برخی روشهای فرااکتشافی مهم و پرکاربرد، در قالب سه دسته کلی روشهای فرااکتشافی معرفی میشوند.
۴-۳- روشهای مبتنی بر مسیر
عبارت روشهای مبتنی بر مسیر به این دلیل مورد استفاده قرار میگیرد که فرایند جستجوی انجام شده با این روشها، با یک خط سیر در فضای جستجو، مشخص می شود. در این روش یک راه حل جانشین ممکن است به همسایگی راه حل فعلی تعلق داشته یا نداشته باشد.
در این روش، الگوریتم از یک حالت اولیه (راه حل اولیه) شروع می کند و یک خط سیر را در فضای جستجو توصیف می کند. استراتژی مورد استفاده وابسته به پویایی سیستم است، الگوریتمهای ساده یک خط سیر شامل دو بخش تولید می کنند که شامل یک فاز گذر است که به دنبال یک جاذب (یک نقطه ثابت، یک چرخه یا جذبکننده پیچیده) می آید. الگوریتمهای دارای استراتژی پیشرفته، خط سیرهای پیچیدهتری تولید می کنند که به سادگی نمی توان آنها را به دو فاز تقسیم بندی کرد. ویژگیهای خط سیر، اطلاعاتی در رابطه با رفتار الگوریتم و تأثیر آن با توجه به نمونه مورد نظر فراهم می کند. در واقع، نمایش مسئله همراه با ساختارهای همسایگی ، فضای جستجو را تعریف می کنند، الگوریتم، استراتژی مورد استفاده برای کاوش فضای جستجو را فراهم می کند و سرانجام ویژگیهای فضای جستجوی واقعی، با نمونه مسئلهای که باید حل شود، تعریف میگردد.
در ادامه این بخش به معرفی چند نمونه از روشهای فرااکتشافی مبتنی بر مسیر پرداخته شده است.
۴-۳-۱- جستجوی محلی ساده (بهبود تکراری)
جستجوی محلی ساده، اغلب بهبود تکراری نامیده می شود، زیرا هر حرکت در صورتی انجام می شود که راه حل نتیجه، بهتر از راه حل فعلی باشد. به محض یافتن کمینه محلی، الگوریتم پایان مییابد. شبه کد این الگوریتم در شکل ۴-۱ دیده می شود.
تابع ، می تواند برگرداننده اولین بهبود یا بهترین بهبود یا هر گزینه بین این دو باشد. اولی، همسایگی را بررسی کرده و اولین راه حلی را که بهتر از است انتخاب می کند، دومی کاملاً همسایگی را کاوش کرده و راه حل با کمترین مقدار تابع هدف را برمیگرداند. هر دو روش در کمینههای محلی متوقف میشوند. پس کارایی آنها به شدت وابسته به تعریف ، و میباشد. کارایی رویههای بهبود تکراری در مسایل بهینهسازی معمولاً اصلاً رضایتبخش نیست! درنتیجه تکنیکهای زیادی برای ممانعت از گرفتار شدن الگوریتمها در کمینههای محلی توسعه یافتند، که این کار را با اضافه کردن مکانیزم هایی انجام می دهند که به آنها توانایی گریز از کمینههای محلی را می دهند. این مسئله همچنین باعث می شود شرایط خاتمه الگوریتمهای فرااکتشافی، پیچیدهتر از رسیدن ساده به کمینه محلی باشد. درواقع، شرایط خاتمه می تواند شامل موارد زیر باشد: حداکثر زمان CPU ، حداکثر تعداد تکرار، پیدا شدن راه حل با کمتر از مقدار آستانه تعریف شده یا حداکثر تعداد تکرار بدون بهبود.
شکل ۴-۱: الگوریتم بهبود تکراری
۴-۳-۲- گداخت شبیهسازی شده
گداخت شبیهسازی شده، قدیمیترین فرااکتشاف است و مطمئناً یکی از اولین الگوریتمهایی است که استراتژی صریحی برای گریز از کمینههای محلی دارد. ایده اصلی این است که برای فرار از کمینههای محلی اجازه حرکتهایی داده شود که منجر به راه حلهایی با کیفیت پایینتر از راه حل فعلی میگردند. احتمال انجام چنین جا به جایی در طول جستجو، کاهش مییابد. شبه کد الگوریتم گداخت شبیهسازی شده در شکل ۴-۲ نشان داده شده است.
شکل ۴-۲: الگوریتم گداخت شبیهسازی شده
الگوریتم با تولید حالت اولیه که به صورت تصادفی یا اکتشافی ساخته می شود و مقداردهی اولیه به پارامتر دمایی ، شروع می شود. سپس در هر تکرار یک راه حل به طور تصادفی نمونهبرداری شده و بسته به ، و ، به عنوان راه حل جاری جدید پذیرفته می شود. اگر باشد، یا در حالت عکس با احتمالی که تابعی از و است، جایگزین می شود. این احتمال می تواند مقدار توزیع باشد.
دمای در طول فرایند جستجو کاهش مییابد، پس در ابتدای جستجو، احتمال پذیرش حرکات به سمت بالا (رو به قله) بالاست و به تدریج کاهش مییابد و به یک الگوریتم بهبود تکراری ساده همگرا می شود. با توجه به الگوریتم مشخص میگردد که الگوریتم نتیجه دو استراتژی ترکیبی است: گام برداشتن تصادفی و بهبود تکراری. در فاز اول جستجو، تمایل[۱۳۰] به بهبود پایین است و اجازه کاوش فضای جستجو داده می شود. این مؤلفه نامنظم[۱۳۱] ، به آرامی در طول اجرای الگوریتم کاهش مییابد بنابراین منجر به هدایت جستجو به یک کمینه (محلی) می شود.
احتمال پذیرش حرکات رو به بالا، با دو فاکتور کنترل می شود: تفاضل توابع هدف و دما. از یک سو در دمای ثابت هر چه اختلاف بیشتر باشد، احتمال پذیرش حرکت از به کمتر است. از سوی دیگر، بالاتر، منجر به افزایش احتمال حرکت رو به بالا می شود.
انتخاب زمانبندی سرد کردن مناسب، برای کارایی الگوریتم، مهم است. زمانبندی سرد کردن، مقدار را در هر تکرار ، به صورت تعیین می کند، که تابعی از دما و شماره تکرار است. نتایج نظری بر روی زنجیره مارکوف ناهمگون[۱۳۲] بیان می کند که تحت شرایط خاص در زمانبندی سردکردن، برای احتمالاً الگوریتم به کمینه سراسری همگرا می شود. بدبختانه زمانبندیهای دمای سردکردن که همگرایی به کمینه محلی را تضمین می کنند در کاربردهای واقعی، عملی نیستند چون برای اهداف عملی خیلی کند هستند. بنابراین، زمانبندیهای سردکردن سریعتر در کاربردها بیشتر مورد استفاده قرار میگیرند.
قانون سردکردن می تواند، با هدف سازگار کردن توازن بین متنوعسازی و متمرکزسازی، در طی جستجو، تغییر کند. روشهای موفقتر در این زمینه، زمانبندیهای سردکردن غیریکنوا[۱۳۳] هستند. در این روشها تغییر فازهای سردکردن و گرم کردن مجدد، بطور دورهای اتفاق میافتد پس توازن نوسانی بین متنوعسازی و متمرکزسازی، فراهم میگردد.
یک روش ساده برای تعیین دمای اولیه ، این است که ابتدا با یک گامبرداری تصادفی، از فضای جستجو نمونهبرداری کنیم تا بتوانیم به طور کامل میانگین و واریانس مقادیر تابع هدف را ارزیابی نماییم.
فرایند پویای توصیف شده توسط گداخت شبیهسازی شده یک زنجیره مارکوف است، به این صورت که این فرایند یک خط سیر را در فضای جستجو دنبال می کند که در آن وضعیت بعدی فقط وابسته به وضعیت فعلی است، یعنی گداخت شبیهسازی شده ساده، بدون حافظه است. ولی استفاده از حافظه، رویکردهای مفیدی در آن ارائه می کند.
گداخت شبیهسازی شده در مورد مسائل بهینهسازی زیادی اعمال می شود مانند مسئله انتساب درجه دوم و مسئله زمانبندی کار کارگاهی[۱۳۴]. اما امروزه در اغلب تحقیقات گداخت شبیهسازی شده به عنوان یک مؤلفه از فرااکتشافات مورد استفاده قرار میگیرد نه به صورت یک الگوریتم جستجوی مستقل.
۴-۳-۳- جستجوی ممنوع
جستجوی ممنوع از جمله فرااکتشافات پر مراجعه و پر مصرف در مسائل بهینهسازی میباشد. جستجوی ممنوع صریحاً از سابقه جستجو، هم برای گریز از کمینههای محلی و هم برای پیادهسازی یک استراتژی کاوشی بهره میبرد. الگوریتم جستجوی ممنوع ساده، در جستجوی محلی، بهترین بهبود را به عنوان عنصر[۱۳۵] پایه اعمال می کند و از حافظه کوتاه مدت برای فرار از کمینههای محلی و اجتناب از افتادن در چرخهها استفاده می کند. حافظه کوتاه مدت به صورت یک لیست ممنوع است که راه حلهای اخیر را نگهداری کرده و حرکت به سمت آنها را ممنوع می کند. پس همسایگی راه حل فعلی، به راه حلهایی محدود می شود که به لیست ممنوع تعلق ندارند. این مجموعه را مجموعه مجاز مینامیم. در هر تکرار بهترین راه حل متعلق به این مجموعه (معمولاً به ترتیب FIFO) حذف می شود. در نتیجه این محدودیت پویا برای راه حلهای مجاز، میتوان جستجوی ممنوع را تکنیک جستجوی پویای همسایگی دانست. با رسیدن به شرط خاتمه، الگوریتم پایان مییابد، یا در زمانی که مجموعه مجاز تهی شود یعنی کلیه راه حلهای موجود در توسط لیست ممنوع، قدغن شده باشند.
استفاده از جستجوی ممنوع مانع از بازگشت به راه حلهای اخیر میگردد، پس از چرخه بی پایان جلوگیری شده و جستجو مجبور می شود فقط حرکت رو به بالا را بپذیرد. طول لیست ممنوع یعنی ، حافظه فرایند جستجو را کنترل می کند. هر چه این مقدار کمتر باشد جستجو بر روی نواحی کوچک متمرکز میگردد و برعکس هر چه این مقدار بیشتر باشد، فرایند جستجو نواحی بزرگتری را مورد کاوش قرار میدهد چون بازدید مجدد از تعداد بیشتری راه حل، قدغن میگردد. این مقدار می تواند برای رسیدن به الگوریتمهای قویتر، در طول جستجو تغییر یابد، مثلا به طور متناوب یک مقدار تصادفی در یک محدوده خاص را به دست آورد. روش پویاتری برای تغییر آن، این است که اگر دلیلی[۱۳۶] برای تکرار راهحلها وجود داشته باشد (یعنی متنوعسازی بیشتری لازم باشد)، این مقدار افزایش یابد و اگر بهبودی رخ ندهد (متمرکزسازی باید افزایش یابد) کاهش یابد. پیادهسازی حافظه کوتاه مدت به صورت لیستی از راه حلهای کامل، عملی نیست زیرا مدیریت چنین لیستی بسیار ناکاراست. پس به جای خود راه حلها، معمولاً خصوصیات آنها نگهداری می شود. خصوصیات عمدتاً مؤلفه هایی از راه حلها، حرکتها یا تفاوت راه حلهاست. چون میتوان بیش از یک ویژگی را در نظر داشت، یک لیست ممنوع برای هر کدام در نظر گرفته می شود. مجموعه خصوصیات و لیستهای ممنوع متناظر، شرایط ممنوعیتی را تعریف می کنند که برای فیلتر کردن همسایگی راه حل و تولید مجموعه مجاز به کار میروند. ذخیره خصوصیات به جای راه حلهای کامل، کاراتر است ولی باعث از دست رفتن اطلاعات می شود چون ممنوعیت یک ویژگی، احتمالاً به معنی انتساب وضعیت ممنوع به بیش از یک راه حل است. پس، ممکن است راه حلهای کیفیت بالای دیده نشده، در مجموعه مجاز قرار نگیرد. برای غلبه براین مشکل، مقیاس تنفس[۱۳۷] تعریف می شود که اجازه میدهد یک راه حل در مجموعه مجاز قرار بگیرد حتی اگر به دلیل شرایط ممنوع، قدغن شده باشد. معمولترین مقیاس تنفس، راه حلهایی را که بهتر از بهترین راه حل جاریست، انتخاب می کند.
لیستهای ممنوع تنها راه ممکن برای بهره برداری از سابقه جستجو نیست. آنها معمولاً با بهره گرفتن از حافظه کوتاه مدت شناخته میشوند. اطلاعات جمع آوری شده در طول کل فرایند جستجو نیز می تواند بسیار مفید واقع شود. این نوع حافظه طولانی مدت معمولاً با در نظر گرفتن چهار اصل به جستجوی ممنوع اضافه میشوند: تأخر[۱۳۸]، فرکانس، کیفیت و تأثیرگذاری. حافظه اخیر برای هر راه حل (یا خصوصیت) آخرین تکراری را که در آن شامل بوده ثبت می کند. حافظه مبنی بر فرکانس، تعداد تکرار هر راه حل (خصوصیت) را نگه میدارد. این اطلاعات، نواحی (یا زیرمجموعههایی) از فضای راه حل را که جستجو در آنها محدود شده یا به تعداد دفعات زیاد در آنجا ماندهاند شناسایی می کند. این نوع اطلاعات مربوط به گذشته، معمولاً برای تنوع بخشیدن به جستجو، استخراج میگردند. اصل سوم (یعنی کیفیت) به جمع آوری استخراج اطلاعات از سابقه جستجو برای شناخت مؤلفه های راه حل خوب است. فرااکتشافات دیگر (مانند بهینهسازی گروه مورچهها) صریحاً از این اصل برای یادگیری ترکیبات خوب مؤلفه های راه حل استفاده می کنند. سرانجام، تأثیرگذاری، ویژگی توجه به انتخابهای انجام شده در طی جستجوست و می تواند برای نشان دادن اینکه کدام انتخابها بحرانیترین هستند، مورد استفاده قرار گیرد.
جستجوی ممنوع به بیشتر مسائل بهینهسازی ترکیبی اعمال می شود، مانند جستجوی ممنوع قوی برای QAP، جستجوی ممنوع واکنشی برای مسئله MAXSAT و مسائل انتسابی.
۴-۴- روشهای جستجوی محلی کاوشگرانه[۱۳۹]
در این بخش، چند روش مبتنی بر مسیر که بر اساس جستجوی محلی کاوشگرانه کار می کنند، معرفی میگردند. این روشها شامل رویه جستجوی تطابقی تصادفی حریصانه (GRASP)، جستجوی همسایگی متغیر(VNS)، جستجوی محلی هدایت شده (GLS) و جستجوی محلی تکراری است.
۴-۴-۱- GRASP
این روش، یک روش فرااکتشافی ساده است که اکتشافات ساختاری و جستجوی محلی را ترکیب می کند. ساختار آن، رویهای تکراری شامل دو فاز است: ساخت راه حل و بهبود راه حل. در زمان اتمام رویه جستجو، بهترین راه حل یافتهشده برگردانده می شود. مکانیزم ساخت راه حل با دو جزء اصلی مشخص میگردد. تابع اکتشافی سازنده[۱۴۰] پویا و تصادفی کردن. فرض کنیم راه حل s شامل زیرمجموعهای از مجموعه عناصر (اجزای راه حل) است، راه حل با اضافه کردن مرحله به مرحله یک عنصر جدید در هر زمان، ساخته می شود. انتخاب عنصر بعدی با برداشتن تصادفی عنصر به صورت یکنواخت از لیست کاندیداها انجام می شود. عناصر براساس مقیاس اکتشافی، رتبه بندی شده اند که به آنها امتیازی میدهد که تابعی از مزیت درج این عنصر در راه حل جزئی فعلی است. لیست کاندیداها از عنصر ساخته شده است. مقادیر اکتشافی در هر مرحله بهروزرسانی میشوند پس امتیاز عناصر برحسب انتخابهای ممکن، در طی فاز ساخت، تغییر می کند. برخلاف انواع ایستای توابع اکتشافی که فقط یکبار در زمان شروع ساخت، به عناصر امتیازات را نسبت می دهند، این تابع اکتشافی ساختاری، پویاست. به عنوان مثالی از تابع اکتشافی ایستا، در مسئله TSP، هر یالی که هزینه کمتری دارد امتیاز بیشتری دارد. در مورد حالت پویا، تابع اکتشافی درج ارزانترین عنصر، می تواند به این صورت باشد که امتیاز هر عنصر بر اساس راه حل جزئی فعلی ارزیابی گردد.
طول تاثیر زیادی بر قدرت تابع اکتشافی دارد. اندازه آن می تواند ثابت باشد یا با هر تکرار تغییر یابد. فاز دوم الگوریتم، فرایند جستجوی محلی است که می تواند یک جستجوی محلی پایه یا تکنیک پیشرفتهای مثل گداخت شبیهسازی شده یا جستجوی ممنوع باشد. GRASP در صورت برقراری دو شرط زیر، می تواند مؤثر واقع شود:
مکانیزم ساخت راه حل از امیدوارکنندهترین مناطق فضای جستجو نمونهبرداری کند.
راه حلهای ساخته شده توسط تابع اکتشافی سازنده، به درّههای راه حلهای کمینه محلی متفاوت تعلق داشته باشند.
شرط اول از طریق انتخاب توابع اکتشافی ساختاری مؤثر و طول لیست کاندید مناسب برقرار میگردد ولی دومی با انتخاب تابع اکتشافی ساختاری و جستجوی محلی به شکلی که با هم مناسبت داشته باشند، برقرار می شود. این الگوریتم از حافظه جستجو استفاده نمیکند ولی به دلیل سادگی، عمدتاً بسیار سریع است و در زمان کوتاه راه حلهای نسبتاً خوبی ارائه می کند. به علاوه می تواند با موفقیت در کنار سایر تکنیکهای جستجو، بصورت ترکیبی مورد استفاده قرار بگیرد.
۴-۴-۲- جستجوی همسایگی متغیر
این روش از استراتژی تغییر پویای ساختار همسایگی بهره میبرد. الگوریتم بسیار کلی است و درجات آزادی زیادی برای طراحی تغییرات و مقداردهیهای خاص دارد. در مرحله مقدار دهی اولیه، مجموعه ای از ساختارهای همسایگی تعریف میگردد. این همسایگیها میتوانند به طور اختیاری انتخاب گردند ولی اغلب به نحوی تعریف میشوند که تعداد اعضای آنها دارای ترتیب صعودی باشد. سپس یک راه حل اولیه تولید میگردد، اندیس همسایگی مقدار دهی شده و الگوریتم تا زمان رسیدن به شرط خاتمه، ادامه مییابد. چرخه اصلی الگوریتم شامل سه فاز است: آشفتگی[۱۴۱]، جستجوی محلی و جا به جایی. در فاز آشفتگی، راه حل در امین همسایگی از راه حل جاری ، به طور تصادفی انتخاب میگردد. سپس، نقطه شروع جستجوی محلی می شود. جستجوی محلی می تواند از هر ساختار همسایگی استفاده کند. در انتهای این مرحله، راه حل جدید با مقایسه گشته و در صورت بهتر بودن جایگزین آن شده و الگوریتم دوباره با شروع می شود. در غیر این صورت افزایش یافته و فاز جدید آشفتگی با بهره گرفتن از همسایگی متفاوت آغاز میگردد. هدف از فاز آشفتگی ایجاد نقطه شروع بهتر برای جستجوی محلی است و انتخاب همسایگیها با تعداد اعضای صعودی منجر به بهبود متنوعسازی میگردد.
۴-۴-۳- جستجوی محلی هدایت شده
در روشهای جستجوی ممنوع و جستجوی همسایگی متغیر، از همسایگیهای پویا برای جستجوی کارا و مؤثر استفاده میگردد. رویکرد متفاوتی برای هدایت جستجو، تغییر پویای تابع هدف میباشد. جستجوی محلی هدایت شده از این روش استفاده می کند.
اصل پایهای جستجوی محلی هدایت شده، کمک به عمل جستجو برای حرکت تدریجی از کمینههای محلی با تغییر چشم انداز[۱۴۲] جستجوست. در جستجوی محلی هدایت شده فضای جستجو مجموعه راه حلها و ساختار همسایگی، ثابت است در حالیکه تابع هدف ، به این منظور تغییر می کند که بهینه محلی فعلی را نامطلوب سازد. شکل ۴-۳ این مطلب را نشان میدهد.
شکل ۴-۳: ایده جستجوی محلی هدایت شده؛ گریز از دره های چشم انداز
فرم در حال بارگذاری ...
[سه شنبه 1401-04-14] [ 06:22:00 ق.ظ ]
|