تبلیغات
مهندسی مکانیک و هوافضا - مطالب ابر ga
منوی اصلی
مهندسی مکانیک و هوافضا
www.Aeros.ir
  • حسین اتحادی یکشنبه 20 دی 1394 07:30 ب.ظ نظرات ()
    با سلام
    جهش یک عملگر ژنتیکی است که معمولا برای حفظ تنوع ژنتیکی (Genetic diversity) مورد استفاده قرار می گیرد.
    جهش مقدار یک یا چند ژن از کروموزوم را تغییر می دهد. (Mutation alters one or more gene values in a chromosome from its initial state)
    نرخ جهش یعنی چه تعدادی (چند درصد) از ژن های یک کروموزوم تغییر می یابند و مسلما یک پارامتر آماری است یعنی وقتی می گوییم نرخ جهش 2% است یعنی از هر 100 ژن توقع داریم 2 ژن تغییر وضعیت داده باشند اما این کاملا به احتمال رخدادن آن 2% ربط دارد و لذا ممکن است حتی 3 ژن یا بیشتر، یا کمتر از 2 ژن تغییر وضعیت داده شود اما وقتی تعداد ژن ها به سمت بینهایت میل کنند مسلما این مقدار هم به سمت عدد 2 میل می کند. (بطور کلی یک پدیده احتمالی است نه قطعی)


    اما اینکه نرخ جهش چقدر باشد، باید بگویم بر خلاف نظر دوستم بابک، توصیه می شود نرخ جهش بزرگ نباشد اگر چه این موضوع می تواند بسته به نوع مسئله تفاوت بکند ولی معمولا نرخ جهش عددی کوچکتر از 2% و حتی 1.5% درنظر گرفته می شود؛ دلیل آن هم کاملا مشخص است فرض کنید

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


    هنگام ترکیب، همه کروموزوم ها ترکیب می شوند ولی در مرحله نخبه گرائی تعدادی (و نه همه) کروموزم ها بعنوان نخبه انتخاب می شوند.

    موفق باشید
    آخرین ویرایش: پنجشنبه 24 دی 1394 12:40 ق.ظ
    ارسال دیدگاه
  • حسین اتحادی پنجشنبه 19 آذر 1394 11:02 ب.ظ نظرات ()
    جعبه‌ ابزار الگوریتم ژنتیك مجموعه‌ای از تابع‌هایی هستند كه توانایی اپیتیمم كردن را با استفاده از محیط محاسبات عددی دارد. این الگوریتم قابلیت حل مسائل مختلف در زمینه بهینه‌سازی است تمام توابع این جعبه ابزار از M فایل‌های مطلب هستند كه تابع را بهینه می‌كند.البته می‌‌توانید قابلیت‌های الگوریتم ژنتیك را توسط M فایلی كه خودتان می‌نویسید یا با تركیب تابع‌های مطلب افزایش دهید.

    نوشتن ‌M فایل

    در این قسمت نشان می دهیم كه چه‌طور می‌توان یك M فایل برای تابع نوشت كه می‌خواهیم آن را بهینه كنیم فرض كنیم می‌خواهیم تابع زیر را بهینه كنیم.

     

    y1

    مراحل زیر را انجام دهید .

    ... ادامه مطلب 

    آخرین ویرایش: پنجشنبه 19 آذر 1394 11:07 ب.ظ
    ارسال دیدگاه