الگوريتم ژنتيک
Download
Report
Transcript الگوريتم ژنتيک
به نام خالق لوح و قلم
موضوع ارائه :
الگوريتم ژنتيک
توسط دانشجويان :
محسن
اکبري دانا
محمد ميرزائيان
دوره :کارشناسي
ناپيوسته
1
2
مقدمه
•
•
•
•
•
الگوريتم ژنتيک در سال 1970توسط هالند ،ديجونگ و گلدبرگ ارايه شده است .
اين الگوريتم براي بهينه سازي مسايل پيچيده با فضاي جستجو ناشناخته مناسب
است .
به طور مختصر گفته مي شود که الگوريتم ژنتيک يک تکنيک برنامه نويس ي است که
از تکامل ژنتيکي به عنوان يک الگوي حل مساله استفاده مي کند .
الگوريتم ژنتيک يک تکنيک جستجو در علم کامپيوتر براي يافتن راه حل بهينه در
مسايل جستجو است .
الگوريتم ژنتيک يکي از انواع الگوريتم الگوريتم تکاملي است که از علم زيست شناس ي
و مسئله انتخاب طبيعي داروين مثل وراثت ،جهش ،انتخاب ناگهاني ،انتخاب
طبيعي و ترکيب الهام گرفته شده است .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
3
معرفي واژگان الگوريتم ژنتيک
از آنجا که الگوريتم ژنتيک از دو علم کامپيوتر و ژنتيک طبيعي نشات
گرفته است واژه هاي مورد استفاده اش مخلوطي است از واژه هاي
طبيعي و مصنوعي ،مفاهيم اوليه که در فهم الگوريتم ژنتيک بسيار
حياتي هستند .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
4
کروموزوم
اساس الگوريتم ژنتيک تبديل هر مجموعه جواب به يک کدينگ است .اين
کدينگ را اصطالحا کروموزم مي گويند .به کروموزوم ،فرد ،رشته ،
ساخت نيز گفته شده است .همچنين مي توان آنها را ژنوتيپ نيز ناميد
کروموزوم انسان
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات 18 :
5
فنوتيپ يا تابع برازندگي
هر کروموزوم متناظر با يک مجموعه جواب از مسئله است .مجموعه
متناظر با هر کروموزوم را يک فنوتيپ مي گويند .
ژن
عناصر تشکيل دهنده يک کروموزوم که معموال اعداد هستند را ژن مي
گويند.
ژن ها را ترکيب ،نشان و کاشف نيز ناميده اند .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
6
جمعيت
مجموعه اي از کروموزوم ها را يک جمعيت مي گويند
نسل
هر تکرار از الگوريتم را يک نسل مي گويند
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
مثال ساده با حروف الفبا
محسن اکبري دانا/محمد ميرزائيان
7
تعداد کل صفحات :
8
ساختار کلي الگوريتم ژنتيک
ابتدا بيش از هر چيزي بايد مکانيزمي براي تبديل هر جواب به يک
کروموزوم تعريف کرد ،پس از آن که يک مجموعه از کروموزوم ها که در
حقيقت مجموعه اي از جواب هاي مسئله هستند به عنوان يک جمعيت
آعازين تهيه مي گردند .اين مجموعه که اندازه آن دلخواه است و توسط
کاربر تعريف مي شود اغلب به صورت تصادفي ايجاد مي گردند .
بعد از اين مرحله بايد با بکارگيري عمليات ژنتيک اقدام به ايجاد
کروموزوم هاي جديد موسوم به فرزند نمود .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
9
بعد از ايجاد فرزندان با استفاده از عمل تحول اقدام به انتخاب
برازنده ترين کروموزوم ها نمود ،بدين صورت يک نسل از الگوريتم
طي شده است ،الگوريتم بعد از چندين نسل بتدريج به سمت جواب
بهينه همگرا مي شود .شرط توقف الگوريتم نيز طي کردن تعداد
معيني تکرار است که پيش از آغاز الگوريتم توسط کاربر تعيين مي
شود .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
ايجاد جمعيت اوليه
10
اولين مرحله بعد از تعيين تکنيکي که براي تبديل هر جواب به يک
کروموزوم به کار مي رود ايجاد يک جمعيت اوليه از کروموزم هاست
.در اين مرحله جواب اوليه معموال به صورت تصادفي توليد مي شود
.البته در بعض ي موارد با توجه به نوع مسئله و براي باال بردن
سرعت همگرايي الگوريتم از روش ابتکاري نيز استفاده مي گردد .
به هر حال عمومي ترين و فراگير ترين روش ،استفاده از يک رويکرد
تصادفي است .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
11
روش هاي انتخاب و ايجاد فرزندان
-1تقاطع ( ) Crossover
در اين روش دو کروموزوم براي معاوضه سگمنت هاي کدشان انتخاب مي شوند ،اين فرآيند
بر اساس فرآيند ترکيب کروموزوم ها در طول توليد مثل در موجودات زنده شبيه سازي شده
است .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
12
-2جهش ژني Mutation
قبل از اين که کروموزوم ها در نسل بعدي قرار بگيرند احتمال دارد دچار جهش يا
تغيير ناگهاني شوند .جهش يک تغيير ناگهاني در ژن است ،در طبيعت سرطان ها
حاصل جهش هاي ژني هستند .
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
13
-3جاگذاري ()Insertion
در اين روش يک کروموزوم را به صورت تصادفي انتخاب مي کنيم و 2نقطه تصادفي را از
آن کروموزوم بر مي گزينيم سپس ژن انتخاب شده سمت راست را با سمت راست ژن
سمت چپ همسايه مي کنيم به صورت شکل زير:
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
مراحل الگوريتم ژنتيک
مراحل الگوريتم ژنتيک عبارتند از :
-1ايجاد جمعيت اوليه
-2ارزيابي و مرتب سازي جواب ها و حذف اعضاي اضافي جمعيت ( در
صورت وجود )
-3انتخاب عده اي از بهترين اعضاي جمعيت به عنوان والد ها بر حسب
شايستگي ،انجام عمل تقاطع ميان آن ها و ايجاد جمعيتي از فرزندان
-4انتخاب عده اي از اعضاي جمعيت به صورت تصادفي و انجام عمل
جهش ( )Mutaion
-5ادغام جمعيت اصلي ،جمعيت فرزندان و جهش يافتگان
-6در صورتي که شرايط خاتمه محقق شده اند ،رفتن به مرحله ، 7در
غير اينصورت بازگشت به مرحله 2
-7پايان
محسن اکبري دانا/محمد ميرزائيان
14
تعداد کل صفحات :
15
در ادامه يک نمونه از مسائل ساده اي که الگوريتم ژنتيک براي آن جواب ارائه
دهد بررس ي خواهيم کرد ،اين مسئله جز مسائل Benchmark Problem
باشد.
مي
مي
تابع Sphere
تعريف اين تابع به صورت زير مي باشد :
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
16
جمعيت و حذف جواب هاي اضافي
ايجادمرتب ساز
– 2ار1ز-يابي و
جمعيتياوليه
مشخصا براي ايجاد جمعيت اوليه ،در مورد
چندانيرارندا(ريم ،
تعدادمشکل
شدنباينري ،
ينتيک
الگوريتم
سپر ژ
معيني از تک
-1
فقط کافي است متناظر با هر کدام از اعضاي
، Generation
Iterationر)و
نسل ،مولفه هاي صف
تصادفي با
جمعيت ،يک بردار
کنيم .به حد مطلوبي از جواب
سيدن
2
يک -ر
ايجاد
-3سپري شدن تعداد معيني از تکرارها ،
بدون مشاهده بهبود خاص ي در نتيجه
محسن اکبري دانا/محمد ميرزائيان
تعداد کل صفحات :
منابع :
] [1الگوريتم هاي فراابتکاري در بهينه سازي
ترکيبي ،تاليف دکتر مصطفي زنديه ،دکتر
عالم تبريز ،مهندس عليرضا محمد
اکبر
رحيمي ،انتشارات صفار ،اشراقي
[2] Goldberg, D.E., 1989, "Genetic algorithm in search
,Optimization and Machine Learning" ,Addison-Wesley
,Wokingham ,England.
[3]Chaudhry,S.S and Luo,W.,2005". Application genetic
algorithm in production and operation management : a
review". International Journal of Production Research,
43,19,4083-4101.
پايان نامه کارشناسي ارشد ،ميثم
][4
ربيعي ،دانشکده مهندسي صنايع دانشگاه
صنعتي خواجه نصير الدين طوسي ،حل مسئله
پذيرصفحات
تعداد کل
ميرزائيان
اکبري دانا/محمد
مرحله اي انعطاف
کارگاهي دو
محسنجريان
:
در پايان جا
دارد از توجه
شما دانشجويان
گرامي و
استادگرانقدر
دکتر داور پناه
پايان
کمال تشکر را
18