31
NLP Sminar Genetic Algorithm ﻣﺴﺎﺋﻞ ﺣﻞ در ژﻧﺘﯿﮏ اﻟﮕﻮرﯾﺘﻢ از اﺳﺘﻔﺎده ﻏﯿﺮﺧﻄﯽ رﯾﺰي ﺑﺮﻧﺎﻣﻪ دھﻨﺪه اراﺋﮫ: ﻣﺤﻤﺪي ﺑﮭﻨﺎم د م ا ا ر ا د ﺧﻄﻲ ﻏﻴﺮ ﺭﻳﺰﻱ ﺑﺮﻧﺎﻣﻪ ﺩﺭﺱ ﺳﻤﻴﻨﺎﺭ

ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

استفاده از الگوریتم ژنتیک در حل مسائلبرنامه ریزي غیرخطی

بھنام محمدي: ارائھ دھنده

به ن م د ستکه ه چ داري ا ا ست

سمينار درس برنامه ريزي غير خطي

Page 2: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

فهرست مطالب

)مقدمھ(استراتژیھاي جستجو

مزایا و ویژگیھاي الگوریتم ژنتیکتعاریف پارامترھا

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

معیار توقف محاسباتمثال اول

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

Page 3: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

استراتژیهاي جستجو: مقدمه قطعیاستراتژیهاي جستجو

تک جوابیغیر قطعیمبتنی بر جمعیت

الگوریتمهاي تکاملی

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

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

(Non-deterministic)

(Estimation of Distribution Algorithms)

(Evolutionary Algorithms)

(Population-based)

(Search Strategies)

Page 4: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

مزایا و ویژگیهاي الگوریتم ژنتیکvبا مقادیر کد شده پارامترها کار می کند نه با خود آنهاv جستجو را با مجموعه اي از نقاط آغاز می کند و بنابراین خیلی وابسته به شرایط اولیه

نیست ضمن اینکه خطر همگرایی در بهینه هاي محلی در آن بسیار کم استv فقط از اطالعات تابع هدف استفاده می کند، بنابراین به زمینه خاصی محدود نمی شود و

.کاربردهاي آن نامحدود استv باشد... الزم نیست رویه تابع هدف در فضاي جستجو مشتق پذیر، پیوسته، خطی و.vدر این روش، قوانین انتقال از یک مرحله به مرحله بعد احتماالتی هستند نه قوانین معین

Page 5: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

.جوابها را مورد بررسی قرار داده و ذخیره می نمایند

تعاریفمثالً اگر از کدگذاري . را ژن گویند) یا پارامتر(مقدار کد شده ي هر متغیر ): Gene( ژن

. باینري استفاده شود در هر ژن فقط مقادیر صفر یا یک می تواند قرار گیردبه رشته یا دنباله اي از ژن ها که به عنوان شکل کد ): Chromosome(کروموزوم

از مساله مورد نظر به کار می رود، ) مناسب یا نامناسب(شده ي یک جواب ممکن کروموزوم گویند

در هر مرحله تکرار از الگوریتم ژنتیک، تعدادي مشخص از ): Population(جمعیت ) می » جمعیت«کروموزوم ها مورد ارزیابی قرار می گیرند به مجموعه این کروموزوم ها

گویند

Page 6: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

مناسب بودن یا نبودن جواب را با ): Fitness(عدد برازندگی رابطه دارد می سنجد هر ) مورد بهینه ساز(معیاري که با هدف

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

بنابراین کروموزومی . متناسب با عدد برازش در نظر می گیرندکه برازنده تر است در تولید فرزندان بیشتري شرکت می کند و

. آید دنباله هاي بیشتري از آن به وجود میq نسل :جمعیت جوابهاي ذخیره شده

(individual)فرد : هر جواب ذخیره شده

Page 7: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

(reproduction)تولید مجدد –انتخاب سوق دادن جستجو به بخشهایی از فضا که امکان یافتن جوابهاي با کیفیت باالتر وجود

.دارد: (recombination/crossover)ترکیب یا جابجایی

v این عملگر بر روي زوجی از کروموزوم ها اعمال می شود این عملگر به شکل هايجابجایی یک نقطه اي، دو : مختلف معرفی شده است که مهم ترین انواع آن عبارتند از

نقطه اي، چند نقطه اي، یکنواخت

.

Page 8: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

Single-Point(يروش ادغام تک نقطه اCross Over(

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

ü براي مثال دو والدp1 وp2 را داریم:P1=[ a b c d e f g h ]P2=[ 1 2 3 4 5 6 7 8 ]

تعداد ژن هاي افراد n )nتا 1بین iدر این حالت با انتخاب عدد تصادفی i=3): (فرزند بوجود آمده به صورت زیر میباشد ) میباشد

Child1 = [ a b c 4 5 6 7 8 ]child2 = [ 1 2 3 d e f g h ]

Page 9: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

Two Point Cross(يادونقطه روش ادغام Over(

ü در این روش دو مکان را به صورت تصادفی انتخاب کرده و مقادیر بین این دو.نقطه را جابجا می کنیم

ü به عنوان مثال براي دو والد مثال قبل در صورتی کهi=4 وj=6 باشد ، در این:صورت دو فرزند بوجود آمده به صورت زیر میباشد

Child1 = [ a b c 4 5 6 g h ]

Child2 = [ 1 2 3 d e f 7 8

Page 10: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

)Mutation(عملگر جهش جهش ویژگی تصادفی بودن و امکان فرار از نقاط بهینه محلی را

.آورد فراهم میاین عملگر روي یک دنباله ي منفرد عمل می کند به این ترتیب

هر بیت از ) Pm(که با احتمال کوچکی به نام احتمال جهش کروموزوم ها را تغییر می دهد

10111 00010110111 000100

ParentChild

Page 11: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

همگرایی الگوریتم ژنتیکهمگرایی الگوریتم ژنتیک به سوي جواب بهینه خصوصیتی است که می توان

تحقیقات انجام شده نشان می دهد در . آن را با شرایطی خاص تضمین نمودصورتی که بهترین عدد هر جمعیت در جمعیت بعدي قرار داده شود

گردد، به عبارت دیگر اگر در هر مرحله ي همگرایی الگوریتم تضمین میدر 1تولید الگوریتم ژنتیک بهترین جواب ها نگاه داشته شوند و با احتمال

الگوریتم ژنتیک به سمت پاسخ بهینه همگرا . جمعیت بعدي قرار گیرند. خواهد شد و این نکته با استفاده از زنجیره مارکوف محدود ثابت شده است

Page 12: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

معیار توقف محاسبات الگوریتم ژنتیک

معیار توقف محاسبات الگوریتم ژنتیکپس از مدت زمانی معین الگوریتم متوقف شود

رسیدن به حد مطلوبی از پاسخ به عنوان شرط اتمام الگوریتم در نظر گرفته شود که در این صورت باید توقع دست یابی به بهینه هاي موضعی را توسط

الگوریتم داشته باشیمپس از تعداد محدودي تکرار متوالی الگوریتم، بهبودي در پاسخ بوجود نیاید،

این شرط نسبت به دوشرط توقف قبل معقول تر است

Page 13: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

مثال اولیک کارخانه محصول خود را در چهار نمایندگی عرضه می کند و سه استراتژي مهمی که

قیمت،گارانتی و خدمات پس از فروش:براي فروش محصوالتش دارد عبارتند از ماکزیمم کردن سود:هدف

باینري:نحوه کد کردن

یک جواب مساله است که یک استراتژي را نشان می 101براي مثال یک کروموزم به شکل دهد که شامل قیمت گران ،فقدات گارانتی و ارائه خدمات پس از فروش است

:تعریف تابع هدف

استتابع تبدیل عدد باینري به دهدهی DECدرآن

321 xxxX i =

)()( 321 xxxDECXf i =

Page 14: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

:حل مسالهنمایندگی امتحان 4تا از آنها را انتخاب کرده و در 4استراتژي براي فروش وجود دارد 8

تا را در تمام نمایندگی ها اجرا 4یک راه این است که بهترین استراتژي از این . می کنیمکنیم در اینصورت ممکن است که براي همیشه از جواب بهینه دور بمانیم پس ضمن حفظ

.وضعیت موجود استراتژي هاي جدید را نیز مورد بررسی قرار می دهیم Pc=0.5نرخ ترکیب : فرض

نتایج یک مرحله از حل مساله را در جدول اسالید بعدي آورده شده است.از این مثال می توان به لزوم جهش پی برد

چگونه؟

Page 15: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

نتایجبعد از اعمال عملگر ترکیب

Page 16: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

نتایجبعد از اعمال عملگر جهش

Page 17: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

نتایجAfter Reproduction

Generation 0 Mating pool Generation 11 011 3 .252 001 1 .083 110 6 .50 110 6 --- 110 64 010 2 .17Total 12 17Worst 1 2Average 3.00 4.5Best 6 6

Page 18: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithmپیدا كردن ماكزیمم یك تابع ساده: دوممثال

:پیدا نماییم [2..1-]می خواهیم ماکزیمم تابع زیر را در بازه

:نحوه نمایشتائی با مقادیر دودوئی جهت نمایش اعداد حقیقی به عنوان یک 22از یک آرایه

به یک عدد حقیقی در بازه <b21,..b0>نگاشت . کروموزوم استفاده می کنیم:را به صورت زیر انجام میدهیم [2..1-]

0.1)10sin()( +⋅⋅= xxxf π

∑ =′=⋅=><

21

0 10202021 )2()(i

ii xbbbb L

1230.1 22 −

⋅′+−= xx

Page 19: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

مثال

”مثال

ایجاد جمعیت اولیه.اعضاء جمعیت را به صورت تصادفی تولید می کنیم

تابع ارزیابی eval(v) = f(x) که کروموزومv نمایانگر عددx مثال. است:

63719704194303

3x01x .. =⋅′+−=

2288967)1111010100011000101110( 2 ==′x

25065.2)(627888.1)0111111100011110000000(078878.0)(958973.0)0000000001000000001110(

586345.1)(637197.0)1111010100011000101110(

3323

2222

1121

=→====→−===

=→===

xfxvxfxv

xfxv

Page 20: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

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

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

ساختن چرخ رولتمقدار برازندگی ھر کروموزوم eval(i)محاسبھ –١

محاسبھ برازندگی مجموع جمعیت-٢

محاسبھ احتمال انتخاب ھر کروموزوم -٣

محاسبھ احتمال تجمعی برای ھر کروموزوم -۴ [ 1 0]بین rتولید یک عدد تصادفی -۵ام را کھ در شرط زیر صدق Iرا انتخاب کن در غیر اینصورت کروموزوم q1آنگاه r<q1اگر -۶

می کند انتخاب کن

∑ ==

sizepop

i ivevalF _

1)(

ii qrq ≤≤−1)_2( sizepopi ≤≤

∑ ==

i

j ji pq1

pi = eval(vi)/F

Page 21: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

Mutation جهش

مثال

25065.2)(627888.1)0111111100011110000000(

33

23

=→=

==

xfxv

)0111111100011110000000(3 =v)0111111100011110100000(3 =′v

082257.0)(721638.1 33 −=′=′ xfandx

Page 22: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

Crossoverترکیب

مثال

25065.2)()0111111100011110000000(078878.0)()0000000001000000001110(

323

222

=→==→=

xfvxfv

)0000000001001110001110(')0111111100010000000000('

3

2

==

vv

459245.2)666028.1()(,940865.0)998113.0()(

3

2

==′=−=′

fvffvf

Page 23: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

MATLABحل مساله به روش الگوریتم ژنتیک به کمک

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

x = ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon)

Page 24: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic AlgorithmGENTIC ALGORITHM TOOLBOX

دارد که کار با آن خیلی راحتتر GAویژه براي TOOLBOXیک MATLABالبته .است

را تایپ و اجرا کنید ،در gatoolsدستور MATLABکافی است در صفحه اصلی اینصورت صفحه اي به شکل زیر باز می شود

Page 25: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

مثال سومبراي مثال می خواهیم تابع

.را با توجه به محدودیتهاي غیر خطی زیر مینیم کنیم

ذخیره کنیم M-fileابتدا باید تابع هدف و محدودیت ها را بصورت

21

22

2121 )1()(100),( xxxxxf −+−=

13010

01005.1

2

1

21

2121

≤≤≤≤

≤−≤+−+

xx

xxxxxx

function y = nlp_exam(x)y = 100 * (x(1)^2 - x(2)) ^2 + (1 - x(1))^2;

function [c, ceq] = simple_constraint(x)c = [1.5 + x(1)*x(2) + x(1) - x(2);-x(1)*x(2) + 10]ceq =[ ];

فرمت وارد کردن محدویتهاي غیر خطی

Page 26: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

حل مثالحال باید در پنجره باز شده باید در قسمت تابع برازندگی آدرس

و در قسمت محدودیتهاي غیر خطی آدرس تابع را وارد کنیم

@nlp_exam(x)

@simple_constraint(x)

nvars = 2; % Number of variablesLB = [0 0]; % Lower boundUB = [1 13]; % Upper bound

جواب نهایی مساله در سمت چپ پایین پنجره نمایش داده می شود که براي مثال ما بصورت زیر است

X=0.8122 12.3122

Page 27: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

مثال آخرنتایج پیدا کردن مینیمم مطلق تابع

function z=f(x,y)z =3*(1-x).^2.*(exp(-(x.^2)-y+1).^2)-10*(x/5 - x.^3 -y.^5).*exp(-x.^2-y.^2-1/3*exp(-(x+1).^2 - y.^2));

:با تنظیمات:معیار توقف

100=تعداد تولید50=یا تعداد تولید یکسان

50=تعداد جمعیت .در اسالیدهاي بعدي آمده است

Page 28: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

Page 29: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

Page 30: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

Q&A

Page 31: ﺑﻪ ﻧ م د ﺴﺖ ﮐﻪ ﻫ ﭼ دارﻳ ا ا ﺴﺖsmart.tabrizu.ac.ir/Files/Content/Genetic Algorithm.pdf · NLP Sminar Genetic Algorithm ﻞﺋﺎﺴﻣ ﻞﺣ رد ﮏﯿﺘﻧژ

NLP Sminar

Genetic Algorithm

ازبا ت کر توجھ شما