Presentation is loading. Please wait.

Presentation is loading. Please wait.

الگوریتم ژنتیکی. تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند.

Similar presentations


Presentation on theme: "الگوریتم ژنتیکی. تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند."— Presentation transcript:

1 الگوریتم ژنتیکی

2 تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند.  موفقیت آنها را با تابع fitness اندازه می گیرد.  تابع fitness میزان نزدیکی به هدف را محاسبه می کند.  در هر تکرار الگوریتم، (مانند سیستم های بیولوژیکی) راه حلهای انتخابی، برای تولید فرزند (که generation نامیده می شوند) ترکیب می شوند.  والدین نسل بعدی، با توجه به fitness والدین و فرزندان نسل قبل، از بین آنها انتخاب می شوند.  خود فرزندان نیز می توانند به عنوان راه حل انتخاب شوند.

3 عملگرهای ژنتیکی، برای تولید فرزندان  Reproduction: از طریق این عملگر، الگوریتمهای ژنتیکی، نسل جدیدی از راه حلهای بهبودیافته را با انتخاب والدینی که بالاترین fitness را دارند تولید می کنند.  Crossover: با توجه به اینکه الگوریتمهای ژنتیکی از رشته هایی از نمادهای باینری برای کروموزومها استفاده می کنند، crossover به معنی انتخاب موقعیتی تصادفی در رشته و تعویض بخشهای چپ و راست این نقاط با رشته دیگر برای تولید دو فرزند جدید می باشد.  Mutation: تغییر دلخواه در موقعیت است. رویه تغییر یک به صفر و یا صفر به یک می باشد و با احتمال خیلی کم (1000/1) رخ می دهد.

4 نحوه کار الگوریتم ژنتیک  بازنمایی شرح مساله به نحوی که بتواند از طریق الگوریتم ژنتیکی حل شود: بازنمایی راه حل، بصورت رشته ای از صفر و یک ها.  تولید مجموعه اولیه جوابها و محاسبه fitness آنها.  محاسبه مجموع تابع fitness  محاسبه احتمال اینکه هر راه حل برای تولید فرزندان انتخاب شود: تقسیم تابع fitness آن به مجموع  انتخاب والدین  تولید فرزندان از طریق crossover یا (با احتمال کم) mutation  نسل جدید شامل مجموعه ای از بهترین فرزندان و والدین می باشد.  فرایند آنقدر ادامه می یابد تا اینکه راه حل بهینه حاصل شود و یا اینکه در چندین نسل بهبود نداشته باشیم.

5 پارامترهایی که باید تنظیم شوند  این پارامترها بستگی به مساله داشته و غالبا از طریق سعی و خطا بدست می آیند: تعداد جوابهای اولیه که تولید می شوند. تعداد جوابهای اولیه که تولید می شوند. تعداد فرزندان تعداد فرزندان تعداد فرزندان و والدینی که برای تولید نسل بعد استفاده می شوند. تعداد فرزندان و والدینی که برای تولید نسل بعد استفاده می شوند. احتمال mutation احتمال mutation توزیع احتمال رخداد نقطه crossover توزیع احتمال رخداد نقطه crossover

6 بررسی یک مثال: بازی برداری

7 شرح مساله  این بازی در برابر حریفی انجام می شود که بطور secret رشته ای 6 رقمی می نویسد. (شامل کروموزومها)  هر رقم، صفر یا یک است. (به عنوان مثال: 001010)  باید این عدد را حدس بزنید.  عددی را که حدس زده اید به حریف ارائه می کنید.  او می گوید که چند رقم از آن صحیح است. (تابع fitness)  با تفسیر آن حدس بعدی ارائه می شود.

8 سعی و خطای تصادفی  وقتیکه 6 رقم داریم، 64 حدس مختلف میتوانیم داشته باشیم.  با انتخاب عدد بطور تصادفی، بطور میانگین بعد از 32 حدس به جواب صحیح می رسیم.  با استفاده از فیدبک و تفسیر آن (الگوریتم ژنتیکی) این کار تسریع می شود.

9 راه حل  قدم اول: 4 رشته تصادفی به حریف ارائه کنید: A. 110100، score=1 B. 111101، score=1 C. 011011، score=4 D. 101100، score=3  قدم دوم: A و B را به علت امتیاز پایینشان حذف کنید و c و D را به عنوان والدین انتخاب کنید.  قدم سوم: والدین را پس از شکستن هر یک بین ارقام دوم و سوم، ترکیب کنید. C. 01:1011 D. 10:1100 E. 011100، score=3 F. 101011، score=4

10 راه حل  به نظر می رسد که فرزندان بهتر از والدین نباشند. قدم چهارم: والدین را بین ارقام چهارم و پنجم بشکنید و ترکیب کنید C. 0110:11 D. 1011:00 G. 011000، score=4 H. 101111، score=3  حال قدم دوم را تکرار کنید: بهترین زوج را از تمام حلهای قبلی برای تولید مجدد انتخاب کنید. به عنوان نمونه G و F را انتخاب کرده و فرزندان زیر تولید می شوند: F. 1:01011 G. 0:11000 I. 111000، score=3 J. 001011، score=5

11 راه حل و تولیدات زیر: F. 101:011 G. 011:000 K. 101000، score=4 L. 011011، score=4  فرایند را با J و K تکرار کنید: J. 00101:1 K. 10100:0 M. 001010، score=6  M عدد مورد نظر است و پس از 13 حدس بدست آمده است.

12 فهرست منابع  Efraim Turban, Jay E. Aronson, “Decision Support Systems and Intelligent Systems”. Sixth Edition, Prentice Hall, 2000. Chapter 16.


Download ppt "الگوریتم ژنتیکی. تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند."

Similar presentations


Ads by Google