فقط چند ساعت دیگر برای استفاده از تخفیف شگفت انگیز 500 هزار تومانی مهندس یار فرصت دارید! (کد تخفیف: mohandes) کلیک کنید
فقط چند ساعت دیگر برای استفاده از تخفیف شگفت انگیز 500 هزار تومانی مهندس یار فرصت دارید! (کد تخفیف: mohandes)
کلیک کنید
0
0

آموزش الگوریتم ژنتیک در متلب (Matlab)

24488 بازدید

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

در مجموعه آموزشی که ملاحظه می فرمایید نحوه استفاده از روش الگوریتم ژنتیک در نرم افزار Matlab به صورت تفصیلی و در قالب مثال و پروژه آموزش داده شده است. این آموزش محصولی از شرکت نرم افزاری مهندس یار بوده و تالیف این مجموعه را سرکار خانم نازیلا امامدوست (کارشناسی ارشد پژوهشگاه مواد و انرژی) بر عهده داشته اند.

 

آموزش الگوریتم ژنتیک در متلب

 

الگوریتم ژنتیک چیست ؟ 

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

نظریه دیگری وجود دارد که تاثیر یادگیری را بر تکامل توضیح می دهد. این نظریه که اثر Baldwin نامیده می شود بر مبنای مشاهدات زیر استوار است:

اگر موجودی  از طرف محیط متغیری تحت فشار قرار گرفته باشد، افرادی که توانایی یادگیری نحوه برخورد با شرایط را داشته باشند شانس بیشتری برای بقا دارند. موجوداتی که تحت شرایط جدید باقی می مانند جمعیتی با توانائی یادگیری را تشکیل می دهند که فرایندهای تکاملی در آنها سریع تر رخ می دهد و باعث می شود تا نسلی به وجود بیاید که نیازی به یادگیری مواجهه با شرایط جدید را نداشته باشند.

قانون های مهم در الگوریتم ژنتیک:

قانون GA، قانون انتخاب طبیعت بر مبنای قانون بهترین ها است. روش های EA  به دو نوع مرتبط به هم ولی مجزا دسته بندی میشوند: Genetic Algorithms 

در این روش  راه حل یک مسئله بصورت  یک bit string نشان داده می شود.

Genetic Programming : این روش به تولید expression trees که در زبانهای برنامه نویسی مثل lisp  مورد استفاده هستند می پردازد بدین ترتیب می توان برنامه هائی ساخت که قابل اجرا باشند.

در مورد این روش می توان به نکات زیر اشاره کرد:

1- برای مسائل پیچیده یا مسائلی که دارای فضای جستجو بسیار بزرگی هستند کاربرد زیادی دارد.

2- برای بهینه سازی گسسته کاربرد بسیار زیادی دارد.

3- روش کارآمدی در  optimization و  Machine learning است.

4- هدف بهینه سازی طراحی در  GA، یافتن جواب یا جواب هایی بر روی یک مجموعه از گزینه های ممکن با رعایت قیود مسئله با هدف بهینه کردن معیارهای مساله است.

در همین رابطه بخوانید »   آموزش متلب - سیمولینک مهندسی برق (Matlab 2017)

5- هدف بهینه سازی در یادگیری ماشین، تخمین توابع غیر صریحی از فرضیه هاست.

6- روش جستجوی GA با روش های دیگر مثل شبکه های عصبی تفاوت دارد.

 

الگوریتم ژنتیک در matlab

تفاوت روش الگوریتم ژنتیک و شبکه عصبی

در شبکه عصبی روش Gradient descent بصورت  هموار از فرضیه ای به فرضیه  مشابه دیگری حرکت میکند در حالیکه GA  ممکن است بصورت ناگهانی فرضیه والد را با فرزندی جایگزین نماید که تفاوت اساسی با والد آن داشته باشد. از این رو احتمال گیر افتادن GA در مینیمم محلی کاهش می یابد.

چون در هر بار تولید نسل، جمعیت بصورت تصادفی انتخاب می شوند تضمینی وجود ندارد که به جواب بهینه برسد اما لزوما به جواب هایی با تناسب بالا می رسد.

از مزایای  GA این است که چون مستقیما با تابع هدف سروکار دارد نیازی به داشتن معادله دقیق نیست (مناسب برای داده هایی که براحتی می توان با  curve fitting به معادله تقریبی از رفتار داده ها رسید).

روش حل مسائل با استفاده از روش الگوریتم ژنتیک

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

مجموعه ای از فرضیه ها که population  نامیده میشود تولید و به طور متناوب با فرضیه های جدیدی جایگزین می گردد.

در هر بار تکرارتمامی فرضیه ها با استفاده از یک تابع تناسب یا Fitness مورد ارزیابی قرار داده می شوند. آنگاه تعدادی از بهترین فرضیه ها با استفاده از یک تابع احتمال انتخاب شده و جمعیت جدید را تشکیل می دهند.

تعدادی از این فرضیه های انتخاب شده به همان صورت مورد استفاده واقع شده و مابقی با استفاده از اپراتور های ژنتیکی نظیر Crossover و Mutation برای تولید فرزندان به کار می روند.

دانلود نمونه فیلم های آموزش الگوریتم ژنتیک در متلب

مدت زمان آموزش الگوریتم ژنتیک در متلب 4 ساعت می باشد. در ادامه می توانید ضمن مشاهده آنلاین و دانلود نمونه ای از فیلم آموزشی این محصول، توضیحات بیشتری را در مورد سرفصل های این مجموعه آموزشی و همچنین این روش بهینه سازی ملاحظه فرمایید:

 

عناوین فیلم آموزش الگوریتم ژنتیک در متلب:

در این مجموعه طی سرفصل های زیر مبحث الگوریتم ژنتیک در متلب آموزش داده شده است:

آشنایی با مدل های تکاملی یا Evolutionary Algorithms

تئوری Lamarck

تئوری Baldwin 

آشنایی با الگوریتم ژنتیک و کاربردهای آن

تابع fitness

انتخاب فرضیه ها

اپراتور Crossover 

اپراتور mutation 

پدیده crowding 

حل کننده GA

شروع به کار در نرم افزار متلب

تابع برازندگی

انتخاب گر های ترکیبی

مفهوم غلبه (dominance)

انتخاب بر اساس مفهوم پارتو

مثال ها و پروژه های انجام شده توسط الگوریتم ژنتیک در Matlab

 

آموزش الگوریتم ژنتیک

 

خرید لینک های دانلود (قیمت 200 هزار تومان):

فروشگاه مهندس یار

وضعیت کالا: موجود 

برچسب ها:

نظرات

2 نظر در مورد آموزش الگوریتم ژنتیک در متلب (Matlab)

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

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

  1. سلام وقت بخیر
    ببخشید با الگوریتم ژنتیک میشه تغییرات پوشش گیاهی رو بررسی کرد؟