محاسبه تابع برازندگی[۱۰۷] (تابع ارزش)
یک «تابع هزینه»، خروجی را بر اساس مجموعه ای از متغیرهای ورودی تولید می کند. تابع هزینه ممکن است یک تابع ریاضی، یک آزمایش تجربی و یا حتی یک بازی باشد. هدف، اصلاح خروجی به صورت مطلوب با بهره گرفتن از یافتن مقادیر مناسب برای متغیرهای ورودی میباشد. ما در زندگی روزانه خود با این گونه مسائل روبرو هستیم. به عنوان یک مثال ساده، هنگام پُر کردن وان حمام با آب، این کار را انجام میدهیم بدون آنکه تا به حال فکر کرده باشیم که نوعی بهینهسازی در حال انجام است. در این مثال، هزینه همان اختلاف بین دمای آب مورد نظر و دمای آب پُر شده در وان میباشد. متغیرهای ورودی عبارتند از میزان باز کردن شیرهای آب سرد و گرم. در این حالت، تابع هزینه نتیجه عملی بدست آمده از فرو بردن دست به درون آب داخل وان میباشد. بنابراین میبینیم که تعیین یک تابع هزینه مناسب و تصمیم گیری درباره این که کدامیک از متغیرها را تغییر دهیم به شدت بههم وابستهاند. در کتب و مقالات مربوط به GA، بسیاری برای خروجی تابع هدف[۱۰۸] (تابع هدف یعنی تـابعی که قرار است بهینـه شود)، از اصطـلاح شایستگی (برازندگی)[۱۰۹] استفـاده کرده اند (شاهحسینی، موسوی و ملاجعفری،۱۳۹۱).
به عبارت دیگر، تابع برازندگی از اِعمال تبدیل مناسب بر روی تابع هدف یعنی تابعی که قرار است بهینه شود، بدست میآید. این تابع هر رشته را با یک مقدار عددی ارزیابی میکند که کیفیت آن را مشخص می کند. هر چه کیفیت رشته جواب بالاتر باشد مقدار برازندگی جواب بیشتر است و احتمال مشارکت برای تولید نسل بعدی نیز افزایش خواهد یافت (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
اعمال عملگرهای ژنتیکی[۱۱۰]
در الگوریتم ژنتیک سه عملگر ژنتیک زیر بر روی کروموزومها اِعمال میشوند:
انتخاب
ترکیب یا ادغام
جهش
شرح هر کدام از این عملگرها در ادامه آمده است.
انتخاب[۱۱۱]
در مرحله انتخاب، یک جفت از کروموزومها برگزیده میشوند تا با هم ترکیب شوند، عملگر انتخاب رابط بین دو نسل است و بعضی از اعضای نسل کنونی را به نسل آینده منتقل میکند (خلیلینیا، ۱۳۹۰). افرادی از جمعیت که دارای بیشترین برازندگی هستند، باقی میمانند و افراد یا کروموزومهای دارای بیشترین هزینه حذف میشوند (شکل(۲-۳)) (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱).
شکل(۲-۳): افراد دارای بهترین خصوصیات باقی می مانند و گونه های نامناسب در طبیعت از بین می روند. (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱)
به همین ترتیب در GA نیز کروموزومهای دارای بیشترین هزینه حذف میشوند.
انواع روشهای انتخاب
روشهای جفتگیری کروموزومها در GA به اندازه جفتگیری در گونه های حیوانات، جالب و متنوع میباشد. حال به روشهای مختلف انتخاب میپردازیم (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱).
برخی از روشهای متداول انتخاب عبارتند از (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸):
انتخاب چرخ رولت
انتخاب ترتیبی
نخبه سالاری
انتخاب رقابتی
انتخاب مسابقه
انتخاب مسابقه تصادفی
حال شرح مختصری از پرکاربردترین و معروفترین آنها را در ادامه بیان میکنیم.
انتخاب چرخ رولت[۱۱۲]
احتمالاتی که به کروموزومهای موجود در استخر جفتگیری نسبت داده می شود، به شدت به هزینه آنها بستگی دارد. کروموزومی که دارای کمترین هزینه است، بیشترین احتمال جفتگیری را دارا است؛ در حالی که کروموزومِ دارای بیشترین هزینه، کمترین شانس را برای جفتگیری دارد. یک عدد تصادفی مشخص می کند که کدام کروموزومها انتخاب شوند. برای این روش وزندهی معمولا دو روش وجود دارد: وزندهی بر اساس رتبه[۱۱۳] و وزندهی بر اساس هزینه[۱۱۴] (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱).
البته روش پیادهسازیِ چرخ رولت به این شکل است که ما یک دایره را در نظر گرفته و آن را به تعداد کروموزومها طوری تقسیم میکنیم که هر بخش، متناظر با مقدار برازندگیِ کروموزومِ مربوطه باشد، حال چرخ را چرخانده و هر کجا که چرخ متوقف شد به شاخص چرخ نگاه کرده، کروموزوم مربوط به آن بخش انتخاب میگردد (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
شکل(۲-۴): چرخ رولت (خلیلینیا، ۱۳۹۰)
انتخاب ترتیبی[۱۱۵]
در انتخاب ترتیبی، اعضای جمعیت بر اساس تطابقشان مرتب میشوند. ارزش منتظرهی هر عضو به جای تطابقش، در این روش به رتبهاش بستگی دارد (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
انتخاب نخبه سالاری[۱۱۶]
در نخبه سالاری، بهترین عضو هر جمعیت، زنده میماند و در جمعیتِ بعد حضور دارد؛ به عبارت دیگر عضوی که بالاترین تطابق را دارد به طور خودکار به جمعیت جدید منتقل میشود (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
انتخاب رقابتی[۱۱۷]
روش انتخاب رقابتی، تعدادی از اعضای جمعیت را به تصادف انتخاب میکند و سپس اگر شرطی خاص برقرار باشد، بهترین یا تعدادی از بهترینهای آنها را به عنوان والد برمیگزیند. اگر شرط برقرار نشود، بدترین عضو یا تعدادی از بدترینها، در تشکیل جمعیت آینده به عنوان والد در نظر گرفته میشوند (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
انتخاب مسابقه[۱۱۸]
روش انتخاب مسابقه که توسط «گلدبرگ» ارائه شد، به تعداد Pop-Size[119] مجموعه شامل چند عضو که از قبل مشخص شده، تولید کرده و در هر مجموعه بهترین عضو انتخاب میگردد. اندازه مجموعه فوق که به آن «اندازه مسابقه» گفته می شود معمولا برابر ۲ فرض میگردد (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
انتخاب مسابقه تصادفی[۱۲۰]
روش انتخاب مسابقه تصادفی، مانند حالت قبل بوده با این تفاوت که به جای اینکه مجموعه به صورت تصادفی انتخاب شود، با کمک چرخ رولت انتخاب شده و بهترین آن به عنوان یک عضو از نسل جدید درنظر گرفته میشود (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
ادغام[۱۲۱]
مهمترین عملگر در الگوریتم ژنتیک، عملگر ادغام است. ادغام، فرآیندی است که در آن، نسلِ قدیمی کروموزومها با یکدیگر مخلوط و ترکیب میشوند تا نسل تازهای از کروموزومها به وجود بیایند. جفتهایی که در قسمت انتخاب، به عنوان والد در نظر گرفته شدند، در این مرحله ژنهایشان را با هم مبادله میکنند و اعضایی جدید به وجود میآورند (خلیلینیا، ۱۳۹۰، عباسیکیا، ۱۳۸۸).
به عبارت دیگر، ادغام، ایجاد یک یا چند فرزند توسط والدین انتخاب شده در فرایند جفتگیری است. ساختار ژنتیکی جمعیت به وسیله اعضای فعلی جمعیت محدود می شود. رایجترین صورت ادغام شامل دو والد است که دو فرزند را تولید می کنند (شکل (۲-۵) را ملاحظه کنید) (شاهحسینی، موسوی و ملاجعفری، ۱۳۹۱).
والد۱
موضوعات: بدون موضوع
[پنجشنبه 1400-07-29] [ 05:09:00 ق.ظ ]