یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/upload/files/genetic...

49
1 تم ژنتیک الگوری/ حمدرضا مری امی فدوی

Upload: others

Post on 03-Mar-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

1 فدوی امیری محمدرضا / الگوریتم ژنتیک

Page 2: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

الگوریتم ژنتیکGenetic Algorithm

امیریمحمدرضا فدوی

Page 3: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

فهرست مطالب •

اصطالحات تعریف

ژنتیک الگوریتم ار یا مراحلتساخ

عملگرهای الگوریتم ژنتیک

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

(فیلم ربات حشره) کاربردها

نتیجه گیری

منابع

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 4: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

طبیعت پر است از ایده

ایده الگوریتم ژنتیک از دو اصل انتخاب و تولید نسل در طبیعت بهره برده

با گذشت زمان بدلیل تغییر ساختار ژنتیکی و در بعضی موارد جهش ، . است . طبیعت تضمین می کند که موجودات بهتری تولید شود

. الگوریتم ژنتیک بر این اساس ابزاری ساده ، ولی قدرتمند است

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

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 5: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

...جهانی که ما در آن زندگی می کنیم •

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

نظریه داروین•

نظریه المارک•

.معروف است( Evolution)این فرایند تطبیق به نامهای تکامل یا فرگشت •

.به طور مداوم در حال تغییر است•هر موجودی که قصد ماندن در چنین محیطی را داشته باشد بایستی بتواند خود را •

.با شرایط اطراف تطبیق دهد

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 6: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

تکامل تدریجی

جمعیت نسبی افراد با ضریب هوشی باال جمعیت نسبی افراد با ضریب هوشی پائین

روند رشد نسبی

جامعه نمونه جمعیت

به تفکیک سال و

ضریب هوش

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 7: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

تاریخچه•

توسط –مطرح شدن جدی فرضیه تکامل در موجودات زنده -م1859نوامبر 24 ”بنیاد انواع ” چارلزداروین با انتشار کتاب

–انتشار تحقیقات درباره وراثت ، تکامل و اصول بدست آمده بصورت تجربی –م 1865 توسط گریگور مندل

کروموزوم بعنوان واحد وراثت –م 1903 مطرح شدن واژه ژنتیک –م 1905 توسط ریچنبرگ –مطرح شدن ایده اصلی الگوریتم های تکاملی –م 1960مطرح شدن گونه ای از الگوریتم های تکاملی به نام الگوریتم های ژنتیک در –م 1970

توسط جان هلند –دانشگاه میشیگان GA 1989 مشهور کردن –م

توسط دیوید –با حل مسئله بسیار سخت کنترل انتقال خط لوله گاز در رساله .گلدبرگ

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 8: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

تاریخچه الگوریتم ژنتیک

جان هالند

دیوید گولدبرگ

کنت دیونگ

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 9: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

روشهای بهینه سازی مختلفی ارائه شد که به عنوان روشهای کالسیک یاد میشوند که میتوان به 1940ز سال ا :موارد زیر اشاره کرد

(Linear Programing)برنامه ریزی خطی -1 (Non Linear Programing)برنامه ریزی غیرخطی -2 (Dynamic programing)برنامه ریزی پویا -3 (Inventory)روش اکتشافی -4 (Quueuing)روش صف -5 (Replicment)روش جایگزینی -6

.که این روش ها بیشتر برای حل مسائل غیر خطی استفاده میشود

:اما روش های بهینه سازی جدید که امروزه مورد استفاده قرار میگیرد عبارتند از

1- Simulated annaling

2- Hill climing

3- Ant Colon

4- Genetic Algorithm (GA)

5- Random Cast

6- Cellular Aoutomata

.این روشها بیشتر الهام گرفته شده از حیات موجودات میباشد محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 10: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

تکامل چیست؟ تکامل(Evolution ) حاصل

:پدیده هایی همچون عملکرد انتخاب طبیعی(Natural Selection) تولید مثل (Reproduction) جهش(Mutation) همزیستی(Symbiosis)

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 11: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

ژنتیک دست خط طبیعت

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 12: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

:کروموزوم و ژن

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 13: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

ژن(Gene)

آلل(Allele)

کروموزوم(Chromosome)

ژنوم(Genome)

ژنوتیپ(Genotype)

فنوتیپ(Phenotype)

(زمینه بیولوژیکی)چند اصطالح

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 14: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

•Nature and GA...

Nature Genetic algorithm

Chromosome String

Gene Character

Genotype Population

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 15: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

طرح شماتیکی یک الگوریتم تکاملی

مراحل الگوریتم تکاملی:

مجموعه ای از جوابهای تصادفی ایجاد 1)

بهترینها انتخابآنها و رتبه بندیجوابها ، مقایسه 2)

جوابهای بدست آمده ترکیب 3)

(در صورت نیاز ) 2به مرحله بازگشت 4)

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 16: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

جواب مساله

بررسی همگرایی

جهش

ادغام

و تعیین تابع برازش کدگذاری

ایجاد جمعیت اولیه

محاسبه ارزش هر کروموزوم بر اساس تابع برازش

انتخاب والدین

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 17: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

جمعیت

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 18: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

هدف پیدا کردن بهترین جواب از میان جواب های مختلفGA بر اساس اصل ادامه حیات بهترین ها و تکثیر نوع برتر پی ریزی شده است

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 19: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

پیش زمینه ژنتیکی برای پیاده سازی فضای ژنتیک •

هر سلول از مجموعه ای از کروموزوم ها تشکیل شده است و این کروموزوم ها از یک سری .تشکیل شده اند DNAژن در قالب بلوکهای

هر ژن یک بخش از جواب و هر کروموزوم یک جواب برای مساله ماست.

19

بین کروموزوم ( recombination)در هنگام تولید سلول جدید یک عمل تلفیق

های والد توسط عملگر ادغام صورت میگیرد که باعث تولید کروموزومی جدید میگردد این آنها تحول پیدا میکند و میزان مناسب بودن DNAمولود ها جهش پیدا میکنند یعنی

.کروموزوم در طی حیات آن مشخص میشود

تولید سلول جدید

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 20: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

به تبدیل پاسخ مسئله به صورت یک ساختار کروموزوم که از .مجموعه ای از ژن ها تشکیل یافته است کد گذاری گویند

:انواع کد گذاری کدگذاری دودویی. 1 کدگذاری جایگشتی. 2

کد گذاری

1کروموزوم

2کروموزوم

1کروموزوم

2کروموزوم

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 21: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

برای اینکه بتوانیم موجودات بهتر را درون جمعیت تشخیص بدهیم بایستی

به این .معیاری را تعریف کنیم که بر اساس آن موجودات بهتر را تشخیص دهیم

.معیار تابع برازش می گویند

(برازش) Fitnessتابع

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 22: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

در این مرحله، دو والد جهت جفت گیری و تولید کروموزوم جدید . انتخاب می شوند

:روشهای انتخاب چرخ رولت1. رتبه بندی2. نخبه گزینی3..4......

(Selection)انتخاب

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 23: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(انتخاب چرخان)انتخاب چرخه رولت ( تناسب)یک روش انتخاب است که درآن عنصری که عدد برازش

بیشتری داشته باشد، انتخاب می شود و جزء روشهای انتخاب .تصادفی وزن دار می باشد

احتمال انتخاب مقدار تابع برازش شماره کروموزوم

1 1.261 0.097

2 9.711 0.747

3 1.079 0.083

4 0.286 0.022

5 0.663 0.051

1

10%

2

75%

3

8%

4

2%

5

5%

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 24: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

بعد از ایستادن ، کروموزوم انتخابی کرموزومی است که اشاره گر به آن اشاره . می کند : مشکل

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

محمدرضا فدوی امیری/ الگوریتم ژنتیک

Page 25: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

انتخاب رتبه بندی

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

نخبه گزینی

هر اجتماع انتخاب ( کروموزوم های)مناسبترین عضوهای ..و در جعیت جدید کپی می شود

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 26: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

:رتبه بندی باشد n مثال اگر تعداد کروموزوم ها . ابتدا کروموزوم ها رتبه بندی می شوند

.را نسبت می دهیم n به بهترین مقدار برازشی یک وبعدی دو و به بهترین نیز حال براساس مقدار برازش جدید ، مانند چرخ رولت احتمال و محدوده عددی هر

. کروموزوم را معین می کنیم :مشکل

چندانی این روش به آهستگی همگرا می شود ، چون بهترین کروموزوم ها تفاوت

.با یکدیگر دارند

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 27: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

( Tournrment )رقابتی •

به صورت تصادفی انتخاب شده و به ( معموال دو یا سه) در این روش یک ز یرمجموعه کوچکی از کروموزوم هایکی از آنها به پیروزی رسیده و به Fitnessرقابت می پردازند سر انجام در این رقابت بر اساس میزان

کپی میشود و این فرآیند تا تولید همه ولد ها در جمعیت جدید Mating Poolعنوان والد جدید در تکرار میشود

27

Ch no

Fitness

1 2 3 4 5 6 7 8

1 2.10 3.11 4.01 4.66 1.91 1.93 4.55

برنده موارد

2,4 3,8 1,3 4,5 1,6 1,2 4,2 8,3

4 8 3 5 6 2 4 8

Fitnessبا توجه به مثال کروموزوم های با (8و 4)باالتر چند بار تکرار شده اند

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 28: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(Crossover)ادغام

آنجدید بوسیله توزیع صفات والدین در کروموزم ایجاد

:انواع ادغام ادغام تک نقطه ای• ادغام دو نقطه ای• ادغام چند نقطه ای• ادغام یکنواخت•

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 29: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(Single Sight Crossover)ادغام تک نقطه ای

انتخاب یک نقطه به صورت تصادفی در طول دو کروموزم که به عنوان والدین انتخاب شده اند و جابجایی کروموزم ها از آن نقطه

0 0 1 1 0 0 1 0 1 0 0 1 0

والدین

1 0 1 0 0 1 1 0 0 1 0 0 1

1 0 1 0 0 1 1 0 0 0 0 1 0

فرزندان

0 0 1 1 0 0 1 0 0 1 0 0 1

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 30: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(Two-Point Crossover)ادغام دونقطه ای

دو نقطه به صورت تصادفی در طول دو کروموزومی که به عنوان والدین انتخاب .نقطه جابجا می شود 2شده اند در نظر گرفته می شود و مقادیر بین این

0 1 1 0 1

0 1 0 0 0

0 0 1 1 1 1 0 1 1 0

1 1 0 0 1 1 1 0 1 0

0 1 1 0 1 0 0 1 1 1

0 1 0 0 0 1 1 0 0 1 1 1 0 1 0

1 0 1 1 0 والدین

فرزندان

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 31: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(Multi-Point Crossover)ادغام چندنقطه ای

N بانتخانقطه به صورت تصادفی در طول دو کروموزومی که به عنوان والدین .قسمت تقسیم میشوند n+1کروموزوم ها به .شده اند در نظر گرفته میشود

والدین

فرزندان

0 1 1 0 1 1 1 1 0 0 0 1 0 0 1 1 0 0 1 1 0 1 1 1 1 0 0 0 1 0 0 1 1 0

1 1 0 0 0 1 0 0 0 1 1 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 1 0 1 1 0 1 1

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 32: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(Uniform Crossover)ادغام یکنواخت

در این روش ژن های فرزندان به صورت تصادفی و با یک احتمال از والدین انتخاب می شود

والدین

فرزندان

0 1 1 0 1 0 0 1

0 0 1 0 0 1 0 0

0.6 0.9 0.6 0.4 0.2 0.6 0.8 0.1

1 0 1 0 0 0 0 0

0 0 1 1 0 1 1 0

عدد تصادفی برای هر ژن

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 33: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(Mutation)جهش

به پیدایش هرنوع تغییر در ژن های یک کروموزوم جهش می گوییم

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 34: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

•: GA عملگرهای دیگر در

(Inversion ) عمل معکوس کردن - (Deletion ) عمل حذف کردن -

(Segregation )عمل جداسازی -

(Migration - عمل نقل مکان(

(Sharing - عمل بخش بندی(

(Dominance ) عمل غالب شدن یا تسلط -

(Duplication ) عمل کپی کردن -

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 35: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

شرط توقف الگوریتم

این ساده ترین و کوته فکرانه : رسیدن به جواب -1 .ترین روش است

بار Nیعنی الگوریتم ژنتیک پس از: عدم پیشرفت -2

تکرار با همان کروموزوم های قبلی ادامه پیدا کند

شرط توقف را تعداد تکرار مشخصی :تعداد تکرار -3 قرار می دهیم

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 36: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

فهم آسان• مجزا بودن و ماجوالر بودن• (.هدفی)پشتیبانی از بهینه سازی چند تابعی • مناسب برای محیط های نویزی• می شودهمیشه یک جواب داریم که با گذشت زمان بهتر • موازیامکان استفاده به صورت توزیع شده و ••.....

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 37: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

معایب الگوریتم ژنتیک

یک جواب خوب پیدا می کنند ولی ممکن است جواب بهینه را پیدا نکنند• حافظه و محاسبات زیادی نیاز دارندبه •مورد اینکه جواب پیدا شده چقدر خوب است و آیا جواب بهتری وجود در •

دارد، نمی توانیم هیچگونه ادعائی داشته باشیم ریاضی ضعیفی دارندپشتوانه • دو بار اجرای مختلف، جواب های متفاوتی دریافت می کنیمدر •

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 38: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

چه مواقعی از الگوریتم ژنتیک استفاده می کنیم؟

جواب ها بیش از اندازه پیچیده یا بی تحرك باشند1.

نیاز به یک وسیله اکتشافی برای پیدا کردن راه های جدید داشته 2. .باشیم

حل شده است باشد GAمسئله شبیه مسائلی که تا کنون در 3.

بخواهیم جواب های موجود را با هم پیوند بزنیم4.

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 39: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

با روشهای قدیمی بهینه سازی GAتفاوتهای اصلی •

(تبدیل فضای پیوسه به فضای گسسته )کد کردن فضای مساله

درGA با مجموعه ای از نقاط در یک لحظه میتوانیم کار کنیم که به این مجموعه نقاط میگوییم( Population)جمعیت

اصوالGA بر پردازش تصادفی Random processing یا به تعبیر بهتر پردازش .استوار است random Guidedتصادفی هدایت شده

39 محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 40: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

:برخی از مهمترین کاربردهای این الگوریتم در علوم مختلف عبارتند از

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

زمینه کاربرد

کنترل ....خطوط انتقال گاز، پرتاب موشک و

طراحی ....و VLSI طراحی هواپیما، طراحی مدارات

مدیریت و برنامه ریزی ....برنامه ریزی تولید، زمانبندی، تخصیص منابع و

روباتیک .....مسیر حرکت روبات و

یادگیری ماشین .....الگوریتم طبفه بندی و طراحی شبکه های عصبی،

پردازش سیگنال ....طراحی فیلتر و

سایر موارد ....حل مسئله فروشنده دوره گرد، مسیریابی در شبکه ها و هنروموسیقی،

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 41: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 42: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

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

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 43: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

(ها کروموزوم)حاالت تولید برای .ایم کرده مشخص 7 تا 0 اعداد با را ها ستون .دهیم می قرار مختلف های ستون در را ها وزیر تصادفی بصورت اولیه

:شکل روبرو نمونه ای از حالت های اولیه است

چون در هر ستون یک وزیر قرار دادیم هر حالت را بوسیله . حال باید این حالت را به نحوی کمی مدل کرد. یمنشان می دهمیباشد ام kام در این رشته شماره سطر وزیر موجود در ستون kرشته اعدادی که عدد

:یعنی حالت قبل بصورت زیر می باشد

67203422

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 44: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

چهار این .اند شده تولید تصادف به زیر حالت چهار کنید فرض .گیریم می بکار اولیه های کروموزوم عنوان به را حالت

1) 67203420 2) 70063354 3) 17522063 4) 43602471

.باشد می (Fitness Function)برازش تابع به نوبت حال

:است زیر بصورت اولیه حاالت برای برازش تابع مقدار 1) 67203420 6 2) 70063354 8 3) 17522063 2 4) 43602471 4

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 45: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

:پس احتمال انتخاب ها بصورت زیر است

P(3) > p(4) > p(1) > p(2)

. در اینجا کروموزوم هایی را انتخاب می کنیم که برازندگی بیشتری دارند

انتخاب 1و 4با کروموزوم های Crossoverبرای 3پس کروموزوم :نظر می گیریمدر 6و 5نقطه ترکیب را بین ارقام . می شود

3 , 4:

175220 71 (5)

436024 63 (6)

3 , 1:

175220 20 (7)

672034 63 (8)

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 46: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

.در جهش باید یکی از ژن ها تغییر کند. حال نوبت به جهش می رسد و ازبین 7، کروموزوم شماره 8تا 5فرض کنید از بین کروموزوم های

پس نسل ما شامل. جهش یابد 3به 2ژن های آن ژن چهارم از :کروموزوم های زیر با امتیازات نشان داده شده می باشد

1) 67203420 6

2) 70063354 8

3) 17522063 2

4) 43602471 4

5) 17522071 6

6) 43602463 4

7) 17532030 4

8) 67203463 5

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 47: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

.باشد می7 و 6 های کروموزوم با ترکیب برای خوبی کاندیدای 3 کروموزوم

1) 67203420 6

2) 70063354 8

3) 17522063 2 4) 43602471 4

5) 17522071 6

6) 43602463 4

7) 17532030 4

8) 67203463 5

9) 13602463 2

10) 47522063 2

11) نسل جدید 4 17532030 12) 17522063 2

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 48: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

نتیجه گیری

محمدرضا فدوی امیری / الگوریتم ژنتیک

Page 49: یریما یودف اضردمحم کیتنژ متیروگلاaryan.ac.ir/Upload/files/Genetic Algorithm-Low.pdf · هب ناوتیم هک دنوشیم ای کیسلاک یاهشور

محمدرضا فدوی امیری / الگوریتم ژنتیک