مختصری در مورد الگوریتم تکاملی پیوسته (Continues EA)

شاخه‌ای از الگوریتم‌های تکاملی، به مسائل دارای فضای پیوسته اختصاص دارند. منظور از پیوستگی در مقادیر و فضای جستجو، عدم امکان تفکیک مقادیر ممکن (فقدان جایگشت) برای پارامترها است. به عبارت دیگر پارامترها و متغیرهای این نوع مسائل، اعداد اعشاری با دقت های متفاوت هستند.بدیهی است که برای برخورد با چنین مسائلی، می‌بایست ساختاری برای کار با اعداد اعشاری و اجرای عملگرهای سازگار با آن طراحی نمود. این مبحث به طور کامل در فصل سوم کتاب بنده “پیاده سازی و حل مسائل کاربردی با الگوریتم ژنتیک” مورد بحث قرار گرفته است، اما در اینجا به مختصری از آن اشاره می‌کنم.

genetic algorithm

مهمترین راه‌های ذخیره اعداد اعشاری در کروموزوم های الگوریتم تکاملی، روش ممیز شناور یا تقسیم فضای کروموزوم به بخش صحیح و اعشاری (مثلا در کدگذاری باینری) و روش استفاده از متغیرهای اعشاری هستند.

برای انجام Crossover در این کروموزومها نیز از روش‌هایی مانند وزن ثابت، وزن متغیر، وزن متناسب، افزایش و کاهش و ترکیب جهت دار استفاده می‌شود. اصولا وقتی که محتوای یک کروموزوم به صورت Real Coded باشد، نمی‌توان از عملگرهای ژنتیکی استاندارد برای تغییر آن استفاده نمود، چرا که عملگرهای استاندارد برای کروموزوم‌های جایگشتی طراحی شده‌اند.

هر چند که امروزه با توجه به نوع مسائل مطرح شده، کاربرد الگوریتم تکاملی جایگشتی، بیش از الگوریتم‌های تکاملی پیوسته و Real Coded است، اما این مسئله نباید اهمیت روش پیوسته را تحت الشعاع قرار دهد.

اگر با اصول پردازش تکاملی آشنا باشید، احتمالا مطلع هستید که اولین نسل از الگوریتم‌های تکاملی، همین الگوریتم‌های فضای پیوسته بوده و در واقع بحث تکامل در پردازش، با پیاده سازی ممیز شناور باینری بوجود آمده است. در حال حاضر نیز، برای حل اکثر مسائل محاسباتی که هدف آنها بهینه سازی پارامترهای فرمول است، همچنان از روش پیوسته استفاده می‌گردد.

در آینده مطالبی در مورد شیوه انتخاب کدگذاری مناسب برای حل مسائل با روش‌های تکاملی خواهم نوشت

پیوند:

About محمد شمس

برنامه‌نویس، طراح انیمیشن و علاقمند به هوش مصنوعی

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


5 × = 35