شکل(۲-۹): جهش: وارونهسازی بیت (خلیلینیا، ۱۳۹۰)
تغییر ترتیب قرارگیری[۱۳۱]
از این نوع جهش مخصوصا در الگوریتمهایی استفاده میشود که کدگذاری بر اساس مقدار باشد. البته در دیگر کدگذاریها مثل کدگذاری باینری هم میتوان این جهش را بکار برد. در این جهش، محل قرارگیری دو ژنی که میخواهند جهش یابند در کروموزوم تعویض میشود. در شکل (۲-۱۰) نمونهای از این جهش نشان داده شده است (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
۲
۵
۴
۳
۶
۱
→
۶
۵
۴
۳
۲
۱
شکل(۲-۱۰): جهش: تغییر ترتیب قرارگیری (خلیلینیا، ۱۳۹۰)
جایگزینی جمعیت جدید[۱۳۲]
بعد از اینکه عملگرهای ژنتیکی شامل انتخاب، ادغام و جهش بر روی جمعیت کنونی اِعمال شد، این فرایند باعث به وجود آمدن نسل جدیدی از کروموزومهایی میشود که با نسل قبلی متفاوت است و به عبارت دیگر، جمعیت جدید به وجود میآید. پس از آن، جمعیت جدید جایگزین جمعیت پیشین میشود و این چرخه ادامه مییابد تا اینکه به آخرین مرحله برسیم.
معمولا جمعیت جدید برازندگی بیشتری دارد و این بدان معناست که از نسلی به نسل دیگر جمعیت بهبود مییابد (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸؛ Wikipedia, 2013).
بررسی همگرایی[۱۳۳]
برای اینکه تشخیص دهیم چه موقع الگوریتم از اجرا متوقف شود یا به عبارت دیگر برای محک اختتام اجرای الگوریتم ژنتیک، از شیوههای مختلفی میتوان استفاده کرد. رسیدن به جواب، ساده انگـارانهترین روش است و در صورتیکه کروموزوم به مناسبترین حد رسید، الگـوریتم متوقف می شود. به عنوان نمونه میتوان همگرا شدن کل جمعیت را در نظر گرفت و یا اینکه فاصله ارزیابی (برازندگی) بهترین فرد جمعیت از متوسط ارزیابیها (برازندگیها) را درنظر گرفت که در این حالت باید از حد مشخصی کوچکتر باشد. یا مقدار تابع هدف از حد مشخصی بیشتر باشد یا میتوان تعداد نسلهای مشخصی را به عنوان محک اختتام درنظر گرفت (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
انواع الگوریتم ژنتیک
الگوریتمهای ژنتیک که نمونه اولیه آن توسط «هلند» در سال ۱۹۷۵ ارائه شد، تکامل طبیعی را در سـطح ژن و کروموزوم شبیهسازی میکنند(خلیلینیا، ۱۳۹۰). انواع بسیاری برای GA شناخته شده است که در اینجا ما به سه نوع از آنها که سروکار داریم، اشاره میکنیم (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱):
الگوریتم ژنتیک گسسته[۱۳۴]
الگوریتم ژنتیک پیوسته[۱۳۵]
الگوریتم ژنتیک جایگشتی[۱۳۶]
الگوریتم ژنتیک گسسته
این الگوریتم، متغیرها را به صورت رشته های دودویی کدگذاری شده نمایش میدهد و برای حداقل کردن هزینه، با رشته های دودویی کار می کند و بههمین دلیل به آن، «الگوریتم ژنتیک دودویی»[۱۳۷] نیز گفته می شود.
الگوریتم ژنتیکپیوسته
برای بدست آوردن مقداردقیق متغیرهای یک مسأله که از نوع پیوسته میباشند، چه باید کرد؟ در چنین مسألهای، برای نمایش هر متغیر به تعداد بسیار زیادی بیت نیاز خواهد بود. اگر تعداد متغیرها زیاد باشد آنگاه اندازه کروموزوم هم بزرگ خواهد شد. واضح است که تنها راه نمایش یک متغیر استفاده از ۰ و ۱ نیست بلکه میتوان از هر نوع نمایش امکان پذیر، برای کدگذاری متغیرها استفاده کرد. همچنین برتری GA پیوسته نسبت به GA گسسته این است که به فضای ذخیرهسازی کمتری نیاز دارد زیرا در GA پیوسته به جای عدد صحیح، تنها یک عدد ممیز شناور بیانگر متغیر مورد نظر خواهد بود. GA پیوسته، اساسا سریعتر از GA گسسته است زیرا برای ارزیابی تابع هزینه، نیازی به رمزگشایی متغیرها ندارد (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱).