تبليغاتX
وبلاگ دانشجویان‫ IT دانشگاه صنعتی شاهرود - الگوریتم ژنتیک
Information Technologyداود مزینانیانصادق اکرامیمحسنبهرامیانجوادیحجازیانجمن علمی ITجلال رحمتی1234_62IT خرداد 1387فروردین 1387اسفند 1386بهمن 1386آبان 1386شهریور 1386مرداد 1386تیر 1386خرداد 1386اردیبهشت 1386فروردین 1386اسفند 1385بهمن 1385دی 1385آذر 1385آبان 1385مهر 1385شهریور 1385مرداد 1385تیر 1385خرداد 1385اردیبهشت 1385فروردین 1385اسفند 1384
وبسایت دانشگاه صنعتی شاهروددانشحویان IT صنعتي شريفدانشجویان IT صنعتی شیرازدانشجویان IT آزاد مشهددانشجویان فناوری اطلاعات تهران جنوبپایگاه اطلاع رسانی IT ایرانgroup bachehaye ITدانشجویان IT گرگاندانشجویان IT دانشگاه پیام نور اصفهانوبلاگ IT85وبلاگ دانشجوی itتبادل اطلاعات داوطلبان کارشناسی ارشددانشجویان IT دانشگاه صنعتی ارومیهدانشجویان IT دانشگاه قممجله الکترونیکی کامپیوتردانشجویان دانشگاه پیام نور وزوان
 
الگوریتم ژنتیک

 

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

الگوریتمهای ژنتیک معمولاً به عنوان یک شبیه‌ساز کامپیوتر که در آن جمعیت یک  نمونهٔ انتزاعی (کروموزوم ها) از نامزدهای راه‌حل یک مسأله بهینه‌سازی به راه حل بهتری منجر شود، پیاده‌سازی می‌شوند.همانطور که قبلا گفتیم، به طور سنتی  راه‌حل ها به شکل رشته‌هایی از ۰ و ۱ بودند، اما امروزه به گونه‌های    دیگری هم پیاده‌سازی شده‌اند. فرضيه با جمعيتي كاملاً تصادفي منحصر بفرد آغاز می‌‌شود و  در نسل ها ادامه می‌‌يابد. در هر نسل گنجايش تمام جمعيت ارزيابي می‌‌شود،  چندين فرد منحصر در فرايندي تصادفي از نسل جاري انتخاب می‌‌شوند    (بر اساس  شايستگي ها) و براي شكل دادن نسل جديد، اصلاح می‌‌شوند (كسر   يا دوباره تركيب می‌‌شوند) و در تكرار بعدي الگوريتم به نسل جاري تبديل می‌‌شود.

عملگر های یک GA

در هر مسئله قبل از آنكه بتوان الگوريتم ژنتيك را براي يافتن يك پاسخ به كار برد       به دو عنصر نياز است: اول روشي براي ارائه يك جواب به شكلي كه الگوريتم ژنتيك  بتواند روي آن عمل كند لازم است. به شكل سنتي يك جواب به صورت يك رشته از بيت ها، اعداد يا نويسه ها.نمايش داده می‌شود.دوم روشي لازم است كه بتواندكيفيت هر جواب پيشنهاد شده را با استفاده از توابع تناسب محاسبه نمايد.

معرفی الگوریتم ژنتیک : یکی از روشهای تصادفی بهینه یابی است, توسط جان  هالند در سال 1967 ابداع شده است. الگوریتم های ژنتیک یک گروه از الگوریتم های  تصادفی هستند که از تکامل طبیعی در سیستم های بیولوژیک الهام گرفته شده اند. این نوع الگوریتم اولین بار در اواسط دهه ی هفتاد توسط جان هلند معرفی شدند. از  زمان معرفی این نوع الگوریتم ها در زمینه های متنوعی چون مهندسی ، اقتصاد ، بیولوژی و علوم کامپیوتر بکار گرفته شده اند.  بعدها این روش با تلاشهای گلدبرگ 1989, گسترش یافته و امروزه نیز بواسطه توانایی های خویش , جای مناسبی در میان دیگر روشها دارد. فرایند بهینه یابی در الگوریتم ژنتیک براساس یک روند تصادفی- هدایت شده استوار می باشد. این روش , بر مبنای نظریه تکامل تدریجی و ایده های بنیادین داروین  پایه گذاری شده است.در این روش , ابتدا برای تعدادی ثابت که جمعیت نامیده می شود مجموعه ای از پارامترهای هدف بصورت اتفاقی تولید می شود ,  پس از اجرای برنامه شبیه ساز عددی را که معرف انحراف معیار و یا برازش آن مجموعه از اطلاعات است را به آن عضو از جمعیت مذکور نسبت می دهیم .

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

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

الگوریتم ژنتیک (محاسبات ژنتیکی)یکی از  مولفه های مهم و اساسی هوش محاسباتی است که، به نوعی الگو گرفته از مغز هستند.وشبکه های عصبی،  ارتباطات عصبی و و ساختار نورونی(مغز انسان حدود يکصد ميليارد      سلول عصبی دارد که وظيفه پردازش و  ذخيره کردن اطلاعات را بعهده دارند.نام   این    سلولها نورون است.   فقط 10 درصد حجم مغز را تشکيل می دهند) را   مدل  سازی می کند.

بصورت متداول سه معیار بعنوان معیار توقف شمرده می شود: I. زمان اجرای الگوریتم  II. تعداد نسلهایی که ایجاد می شوند III. همگرایی معیار خطا

زمانبندی با کمک الگوریتم ژنتیک و مسایل بهینه سازی: مثلا یکی از مثایلی   که در این زمینه می شه مطرح کرد : زمانبندی حضور 5  مهندس در کارخانه به اینصورت که هر کدام از اونها مثلا 3 روز در هفته حضور دارن و این کارخونه 3 قسمت داره که همیشه باید فعال باشه. راههای ممکن را چطوری می شه     بدست اورد؟  در حل مسایل الگوریتم ژنتیک راه حل های اولیه تصادفی به دست    می یان وراه حل های بعدی از پیوند این راه حل ها  حاصل می شن. برای هر  کدام از جواب های  اولیه تابع مناسب را حساب می کنیم .سپس بعضی از این جواب ها را تصادفی انتخاب  می کنیم (البته با توجه به تابع مناسب)و....که البته توضیح های کامل تری در  زمینه زمانبندی در لینک زیر وجود دارد . اطلا عات http://www.sapco.ir/Departments/IT/ECommerce/conference/10.PDF    درزمینه مدل الگوریتم ژنتیک برای مساله تخصیص منابع محدود چند  معیاره فازی   فکر می کنم خیلی مفید باشه .

 
اخبار
 
تابلوی گفتمان
Refresh



شکلک‌ها