بهینه سازی الگوریتم ژنتیک

الگوریتم ژنتیک برخی از اصطلاحات دانش ژنتیک را به کار می‌برد. برخی از این واژه‌ها عبارتند از جمعیت، کروموزوم، ژن، والدین، فرزندان و تکامل. همانطور که گفته شد، الگوریتم ژنتیک با تکامل دادن یک جمعیت، به پاسخ‌ بهینه نزدیک می‌شود. این الگوریتم با تولید یک جمعیت آغازین، از میان آنها کروموزوم‌هایی را به عنوان والدین برمی‌گزیند. این والدین با هم پیوند برقرار می‌کنند. حاصل این پیوندها کروموزوم‌هایی خواهند بود که در مرحله بعد بر روی آنها جهش رخ خواهد داد و جمعیت فرزندان را تولید خواهد کرد. الگوریتم طوری کار می‌کند که فرزندان، برازنده‌تر و قوی‌تر از والدینشان باشند و پاسخ بهتری برای پرسش بهگزینی داشته باشند، این معنای تکامل است. قبل از این که یک الگوریتم ژنتیک برای یک مسئله اجرا شود، یک روش برای کد کردن ژنوم‌ها به زبان کامپیوتر باید به کار رود. یکی از روش‌های معمول کد کردن به صورت رشته‌های باینری است: رشته‌های ۰و۱. یک راه حل مشابه دیگر کدکردن راه حل‌ها در آرایه‌ای از اعداد صحیح یا اعشاری است، که دوباره هر جایگاه یک جنبه از ویژگی‌ها را نشان می‌دهد. این راه حل در مقایسه با قبلی پیچیده‌تر و مشکل‌تر است. مثلاً این روش توسط استفان کرمر، برای حدس ساختار ۳ بعدی یک پروتئین موجود در آمینو اسیدها استفاده شد. الگوریتم‌های ژنتیکی که برای آموزش شبکه‌های عصبی استفاده می‌شوند، از این روش بهره می‌گیرند. سومین روش برای نمایش صفات در یک GA یک رشته از حروف است، که هر حرف دوباره نمایش دهنده یک خصوصیت از راه حل است. خاصیت هر ۳تای این روش‌ها این است که آنها تعریف سازنده‌ایی را که تغییرات تصادفی در آنها ایجاد می‌کنند را آسان می‌کنند: ۰ را به ۱ وبرعکس، اضافه یا کم کردن ارزش یک عدد یا تبدیل یک حرف به حرف دیگر.

 

پروژه های مرتبط در لینک زیر: 

مجموعه کامل سورس های الگوریتم ژنتیک در متلب

 


مجموعه: اخباربرچسب ها , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

دیدگاهتان را بنویسید

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