تغییر الگوریتم بهینه سازی فاخته جهت استفاده در محیط های پویا- قسمت …

که در آن همان طول گام حرکتی قلههاست. مقدار این شعاع بر اساس مقدار گام حرکت قلهها مشخص شده که میتوان آن را به راحتی بر اساس موقعیتهای بدست آمده در قلهها در دو محیط متوالی بدست آورد. بدین ترتیب تنوع از دست رفته به اندازهای که لازم است به دستهها باز
میگردد. پس از آن، مقدار شایستگی فاختهها در محیط جدید محاسبه شده و در حافظه جایگزین
میگردند. بنابراین مشکل حافظهی نامعتبر نیز از بین میرود. در نهایت مقدار برای تمام دستههای همگرا شده بر اساس همان گام حرکت قلهها تعیین میشود:

برای دانلود متن کامل این پایان نامه به سایت  pipaf.ir  مراجعه نمایید.

(۵‑۷)

شایان ذکر است، مطابق با آنچه پیش از این گفته شد، حداقل یک دستهی همگرا نشده که همان دستهی آزاد است در مسئله وجود دارد که اخیرا بوجود آمده است. برای این دسته تنها عملی که پس از کشف تغییر در محیط انجام میشود، محاسبهی مجدد مقدار شایستگی فاختههای آن برای رفع مشکل حافظهی نامعتبر است.

۵-۲-۵ مکانیزم غیرفعالسازی

در الگوریتم پیشنهادی، برای افزایش کارآیی از یک مکانیزم غیر فعالسازی نیز استفاده میشود. در واقع، تغییر در محیط بر اساس تعداد ارزیابی شایستگی انجام شده در محیط صورت میگیرد. بنابراین هرچه الگوریتمها بتوانند از تعداد ارزیابی شایستگی که تا تغییر محیط بعدی فرصت دارند بهتر استفاده کنند، نتیجهی بهتری حاصل میشود. در یک محیط، متناسب با تعداد قلههایی که باید تحت پوشش قرار بگیرند، دستههای فاخته وجود دارند. با این حال وظیفهی همهی آنها تعقیب قلهای است که تحت پوشش دارند. اما تنها دستهای که ساکن بهترین قله بوده، تعیین کنندهی کارآیی الگوریتم در محیط جاری است و هرچه جستجوی بهتری انجام دهد، نتیجهی بهتری کسب خواهد کرد. در نتیجه باید بهای بیشتری به آن داده شود. با توجه به این موضوع، پس از کشف تغییر در محیط و انجام اقدامات پس از آن، ابتدا مقدار شایستگی بهترین فاختههای دستهها محاسبه و سپس در محیط جاری n دسته که بهترین فاختهی آنها در موقعیتهای بهتری قرار دارند (در این الگوریتم ۲ دسته برای افزایش کارآیی در نظر گرفته شده است)، در محیط جاری فعال و دستههای دیگر غیر فعال خواهند شد. دستهی فعال دستهای است که محاسبات و روند MCOA را انجام داده و دستههای غیر فعال دستههایی هستند که در فضای مسئله بدون حرکت باقی میمانند. بدین ترتیب فرصت بیشتری در اختیار دستههای فعال برای رسیدن به نتایج بهتر وجود خواهد داشت.
شبه کد الگوریتم پیشنهادی در شکل ۵-۳ آمده است.

MMCOA Procedure
۱: Initialize Parameters
۲: Initialize first swarm
۳: Repeat: