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

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

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

همراه ما باشید.

 

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

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

می توان این گونه بیان کرد که الگوریتم ژنتیک روشی می باشد که بتوان با آن مسئله ها را چه با قید باشد و چه بدون قید باشد حل می کند و این کار را بر مبنای نظریه طبیعی عمل می کند که این نظریه بر اساس فرایند های تکامل زیست شناسی می باشند پیش می رود.

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

در هر مرحله می توان این چنین دید که الگوریتم ژنتیک می تواند به صورت کاملا تصادفی تعدادی از افراد را به عنوان والدین به نسل بعدی منتقل کند و این کار را فقط با انتخاب و منتقل کردن آن ها به مرحله بعد انجام می دهد.

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

این الگوریتم در هر مرحله فقط به سمت تکامل پیدا کردن حرکت می کند و در طول نسل فقط به دنبال این می باشد.

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

برای مثال می توان گفت که این الگوریتم را زمانی به کار می برند که مسئله دارای مشتق ناپذیری، تابع هدف ناپیوسته، غیر خطی بودن و تصاوفی بودن در مرتبه های بالا می باشد استفاده می کنند.

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

 

سه قانون اصلی برای انتخاب نسل بعدی
  • قانون انتخاب: جواب های خوب را انتخاب می کند و به عنوان والدین برای نسل بعد می فرستد.
  • قانون جابه جایی: با جا به جایی از نسل قبلی به نسل بعدی می توان فرزندان نسل بعد را تشکیل داد.
  • قانون جهش: با جهش می توان به صورت تصادفی تغییراتی را روی والدین چه به هر دو و چه به صورت تکی بر روی آن ها اعمال کرد تا بتواند فرزندانی که برای نسل بعدی می باشد را انتخاب کند.

 

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

الگوریتم کلاسیک

در هر مرحله می خواهد محاسبات انجام شود بر روی یک نقطه محاسبات صورت می گیرد. در زمانی که به دنبال جواب بهینه می باشد به سمت آن نقطه حرکت می کند.

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

 

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

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

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

 

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

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

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

هدف اصلی و یا می توان گفت ایده اصلی الگوریتم ژنتیک که به آن (Genetic Algorithm) نیز گفته می شود برای حل مسئله ها از قئرت فرآیند تکامل نیز استفاده می شود تا مسئله را بهینه کند.

کسی که توانست برای اولین نفر این الگوریتم را کشف کند فردی به نام جان هلند (John Holland)می باشد و در اوایل دهه 1970 این ابداع را مطرح کرد.

 

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

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

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

سیستم های هوش مصنوعی که کمی قدیمی تر می باشد با تغییراتی که روی آن ها انجام داده شد می توان این گونه بیان کرد که زمانی که مقادیری را برای ورودی به آن ها داده میشد، دیگر به راحتی آن سیستم ها قطع نمی شود و به کار خود ادامه می دهد.

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

 

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

 

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

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

 

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

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

ژنتیک
ژنتیک

انتخاب، جا به جایی، جهش

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

  • انتخاب: این گزینه به این معنی می باشد که بتوان نسل باقی مانده را اصلاح نمود.
  • جا به جایی: این گزینه به این معنی می باشد که جفت گیری را در بین اعضای جامعه را نشان دهد.
  • جهش: با این کاری که در این مرحله صورت می گیرد می توان این گونه گفت که اصلاحاتی را به صورت رندوم و یا تصادفی وارد مسئله می کند تا اتفاقاتی برای اعضا رخ دهد و آن ها عکس العملی را نسبت به آن ها داشته باشند.

 

 

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

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

موفق باشید.

برای امتیاز به این نوشته کلیک کنید!
[کل: 1 میانگین: 5]
با دوستانتان به اشتراک بگذارید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*

code