۳) عملگر جهش یکپارچه: در پیشرفت تکاملی الگوریتم ترکیبی، تنوع جمعیت ممکن است از بین برود و همیشه شاهد همگرایی زودرس باشیم. جهش در مواقعی که نیاز به بازگردانی تنوع جمعیت باشد بسیار مفید است. جهش شامل اضافه کردن مقدار تصادفی توزیع یکنواخت در دوره [-۱,۱] به متغیر مشخص در یک کلونی میباشد. کلونی با احتمال جهش از پیش تعیینشده (Pm)، انتخاب میشوند. در این الگوریتم هنگامیکه جهش باعث ایجاد کلونی بدی شد، میتوان به عقب بازگشت.
مرحله ۳. حرکت امپریالیستها:
در جهان واقعی، همه کشورها ازجمله امپریالیستها در تلاش برای بهبود وضعیت جاری خود میباشند. درحالیکه در الگوریتم ICA، امپریالیستها همواره ساکن هستند و حرکتی ندارند، این وضعیت ثابت، گاهی منجر به از دست دادن بهینه سراسری یا جلوگیری از رسیدن به بهترین موقعیت میشود. شکل ۴ این شرایط را نشان میدهد. نتیجه ۱ میتواند وضعیت نهایی الگوریتم ICA باشد چون امپریالیستها در این الگوریتم حرکتی ندارند. نتیجه ۲ وضعیت نهایی الگوریتم ترکیبی است و هزینه این مکان جدید محاسبه خواهد شد. اگر هزینه این محاسبهشده از هزینه مکان قبلی کمتر باشد، امپریالیست به مکان جدید منتقل خواهد شد. در غیر این صورت امپریالیست حرکت نخواهد کرد. همانطور که در شکل (۳-۱۱) میتوان دید، استفاده از این روش منجر به نتیجه ۲ خواهد شد که از نتیجه ۱ بهتر است.
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت nefo.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
شکل ۳-۱۱ : وضعیت نهایی الگوریتم ICA و ترکیبی [۱۴]
حرکت امپریالیستها در معادلات زیر نشان دادهشده است:
مکان جدید impi برابر است با مکان قبلی impi :
(۳-۷)
(۳-۸)
(۳-۹)
که در آن c3 یک مقدار مثبت کمتر از یک و r یک مقدار تصادفی بین صفر و یک میباشد. دومین معادله شکل فوق مشابه با بخش سوم از الگوریتم PSO میباشد.
مرحله۴: حرکت کشورهای مستقل:
هر کشور مستقل میتواند وضعیت جدیدی را با بهره گرفتن از الگوریتم ازدحام ذرات و مبتنی بر سه پارامتر زیر به خود بگیرد:
PPLL : بهترین تجربه مختص آن کشور
PPgg : بهترین PPLL در میان همه کشورهای مستقل
Vc : سرعت جاری کشورهای مستقل
همه این کشورها مبتنی بر معادلات زیر در فضای جستجو حرکت خواهند نمود:
(۳-۱۰)
(۳-۱۱)
که در آن wis وزن میباشد که تأثیر بردار سرعت قبلی روی یک بردار جدید را نشان میدهد. c1 و c2 ثابتهای شتاب هستند. r1 و r2 ارقام تصادفی بین صفر و یک میباشند. موقعیت جاری یک کشور مستقل با indin نشان دادهشده است. این عملیات در شکل (۳-۱۲) نشان دادهشده است .
-
- ابتدا برخی خانهها ( تقریباً ۴۰% ) ]۲[ از آرایه استعمارگر بهطور تصادفی انتخاب میشود. ( خانههای ۱ و ۴ و ۸ و ۹ در شکل )
-
- خانههای انتخابشده مستقیماً به درون آرایه مستعمره جدید با همان اندیس کپی میشوند.
-
- خانههای باقیمانده از آرایه مستعمره جدید، از آرایه مستعمره با همان اندیس کپی میشوند. ( خانههای ۲، ۳ ، ۵، ۶ و ۷ در شکل)
شکل ۳-۱۲ – تغییراتی که درحرکت مستعمره به سمت استعمارگر ایجاد میشود [۱۴]
مرحله ۴. تنظیم نرخ تحول
نرخ تحول یا انقلاب در الگوریتم (Pr) درصد کلونیهایی در هر امپریالیست میباشند که بهطور تصادفی موقعیت خود را تغییر خواهند داد. مقدار بسیار بالای این متغیر، نیروی بهرهبرداری الگوریتم را کاهش خواهد داد و نرخ همگرایی آن تنزل پیدا خواهد کرد. در الگوریتم ترکیبی، نرخ انقلاب همانند الگوریتم ICA مقدار ثابتی نیست، بلکه مقدار آن وابسته به تعداد متغیرهای Nvar میباشد. نتایج آزمایشها بهترین نرخ تحول را در جدول ۱ نشان میدهد.
جدول ۳-۱ – بهترین نرخ تحول در الگوریتم ترکیبی [۱۴]
مرحله ۵ : تعویض مکان امپریالیستها و کشورهای مستقل
درحالیکه کشورهای مستقل حرکت میکنند، ممکن است به موقعیتی برسند که کمتر از هزینه امپریالیستشان باشد. در مواقعی مشابه، امپریالیست حرکت کند و به موقعیتی دارای هزینه کمتر از کشور مستقل برسد و بالعکس. سپس الگوریتم با امپریالیست و کشورهای مستقل در موقعیت جدید ادامه پیدا میکنند.
در شکل (۳-۱۳) این فرایند را نشان میدهیم.
شکل ۳-۱۳ فرایند تعویض امپریالیستها و کشورهای مستقل [۱۴]
قدرت یک امپراطوری برابر است باقدرت کشور استعمارگر، بهاضافه درصدی از قدرت کل مستعمرات آن. بدین ترتیب برای هزینه کل یک امپراطوری داریم.
(۳-۱۲)
که در آن هزینه کل امپراطوری nام و عددی مثبت است که معمولاً بین صفر و یک و نزدیک به صفر در نظر گرفته میشود. کوچک در نظر گرفتن ، باعث میشود که هزینه کل یک امپراطوری، تقریباً برابر با هزینه حکومت مرکزی آن (کشور امپریالیست)، شود و افزایش نیز باعث افزایش تأثیر میزان هزینه مستعمرات یک امپراطوری در تعیین هزینه کل آن میشود. در حالت نوعی در اکثر پیادهسازی به جوابهای مطلوبی منجر شده است.
هر امپراطوریای که نتواند قدرت خود را زیاد کند، از رقابتهای امپریالیستی، حذف میگردد که این حذف شدن، بهصورت تدریجی انجام میشود. یعنی بهمرورزمان، امپراطوریهای ضعیف، مستعمراتشان را از دست میدهند و امپراطوریهای قویتر، این مستعمرات را صاحب میشوند و قدرت خود را زیاد میکنند.
شکل ۳-۱۴: شمای رقابت استعماری: که در آن امپراطوریهای بزرگتر، با احتمال بیشتری، مستعمرات امپراطوریهای دیگر را تصاحب میکنند. [۱۴]
با توجه به شکل empireشماره یک ،ضعیفترین امپراطوری است که درنتیجه یکی از مستعمرات آن در معرض یک رقابت امپریالیستی قرار دارد و empire های ۲ تا N برای تصاحب مستعمره شماره یک باهم در رقابت هستند. برای اینکه بتوانیم رقابت بین امپراطوریها در جهت تصاحب مستعمرات را مدل کنیم ابتدا باید احتمال تصاحب هر empire را متناسب باقدرت آن empire و با در نظر گرفتن هزینه کل امپراطوری، بهصورت ذیل حساب کنیم و سپس با توجه به آن هزینه کل نرمالیزه شده آن را مشخص کنیم.
(۳-۱۳)
در رابطه فوق ، هزینه کل امپراطوری nام و ، هزینه کل نرمالیزه شده همان امپراطوری است. هر امپراطوری که کمتری داشته باشد بیشتری خواهد داشت. در حقیقت معادل هزینه کل یک امپراطوری و معادل قدرت کل آن میباشد. امپراطوری با کمترین هزینه، دارای بیشترین قدرت است. با داشتن هزینه کل نرمالیزه شده، احتمال (قدرت) تصاحب مستعمره رقابت، توسط هر امپراطوری، بهصورت زیر محاسبه میشود:
(۳-۱۴)
اگر احتمال تصاحب هر empireرا داشته باشیم نیاز به یک روشی مانند چرخه رولت[۵۰] در الگوریتم ژنتیک است تا مستعمرهای را که در بازار رقابت است با توجه به قدرت امپراطوری ها در اختیار یکی از آنها قرار دهد. همانطور که از چرخ رولت در این مکانیزم استفاده مینماییم ، مکانیزم دیگری نیز معرفیشده که نسبت به چرخه رولت ، هزینه محاسباتی کمتری دارد. زیرا عملیات محاسبه تابع توزیع جمعی احتمال[۵۱] را که در چرخه رولت نیاز است را حذف می کند و فقط به تابع چگالی احتمال[۵۲] نیاز دارد. مکانیزم اختصاصی متناسب با احتمال مستعمرهای که مورد رقابت در بین empire های رقیب است را توضیح میدهیم.
ابتدا برای اینکه مستعمرات را بهصورت تصادفی و با احتمالی وابسته بهاحتمال تصاحب هر empireتقسیم کنیم باید بردارp را با معادله ذیل تشکیل دهیم..