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

از مزایای GA در مقایسه با دیگر روشهای جستجو می‌توان به این موارد اشاره نمود:

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

با وجود تمام مزایا، مهمترین مشکل GA بالا بودن هزینه اجرایی آن است. چرا که معمولاً برای حل مسائل، نیاز به نگهداری چندصد کروموزوم در حافظه و اجرای الگوریتم تا چندهزار نسل خواهد بود. البته باید به خاطر داشت که GA یک الگوریتم متاهیوریستیک بوده و مدت زمان مورد نیاز برای اجرای آن در مقایسه با روشهای سیستماتیک، خیلی کمتر و بهینه‌تر است.

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

به عنوان مثال:

  • حل مسائل تصمیم‌گیری چند متغیره (Multi-objective problems).
  • الگوریتم‌های مسیریابی (Routing).
  • انواع مسائل مربوط به برنامه‌ریزی و زمانبندی (Scheduling).
  • انواع مسائل بسته‌بندی و تقسیم‌بندی (Partitioning) بهینه.
  • آموزش شبکه‌های عصبی مصنوعی (Artificial Neural Networks) و سیستمهای فازی (Fuzzy systems).
  • بهینه‌سازی طراحی مدارات الکترونیکی (VLSI).
  • بهینه‌سازی ساختارها و ترکیبات شیمیایی.
  • اجرای موازی الگوریتم بر روی سیستمهای چند پردازنده یا توزیع شده.
  • نرم‌افزارهای شناسایی و تشخیص الگو (Pattern recognition).
  • انواع الگوریتم‌های مورد استفاده در صنعت رباتیک.
  • دسته‌بندی (Classification) داده‌ها، داده‌کاوی (Datamining)  و یادگیری ماشین (Machine learning).
  • الگوریتم‌های بکار رفته در انواع بازی‌های کامپیوتری.
  • برخی از الگوریتم‌های پردازش تصاویر (Image processing).
  • انواع محاسبات عددی و روشهای تخمین توابع.
  • سیستمهای شبیه‌سازی حیات مصنوعی (Artificial life).
  • ساخت سیستمهای هوشمند تولید برنامه‌ تکاملی.

About محمد شمس

برنامه‌نویس، طراح انیمیشن و علاقمند به هوش مصنوعی

5 Comments

  1. با عرض سلام خدمت شما آقای شمس
    مطالب که گذاشتین خیلیمفید بود و بنده استفاده کردم.
    ممنون

  2. مطلبتون در مورد الگوریتم ژنتیک خوبه ولی منبع نداره،منبع میخاستم برای پایان نامه ام،اینجا پیدا نکردم.ممنون میشم منبعشو رو ایمیلم بفرستین.

  3. با سلام بنده از مطلب مفیدتون استفاده کردم و یک سوالی داشتم. مسئله ی من بهینه سازی ۶ تا ۸ ضریب در یک دستگاه معادلات دیفرانسیل PDE غیر خظی هست. مسئله اینجاست که این دستگاه باید بطور عددی حل بشه. ورودی مسئله یک ماتریس هست و خروجی مسئله هم که بعد از گذشت زمان مشخص به دست اومده (پیش بینی شده) یک ماتریس هست (با ابعاد ۲۵۶*۲۵۶) هدف این هست که ضرایب به گونه ای بهینه شوند که ماتریس پیش بینی شده با ماتریس واقعی (که از داده های واقعی به دست اومده) حداقل اختلاف را داشته باشد. آیا به نظر شما الگوریتم ژنتیک میتونه در مورد مسئله من بکار بره؟ ممنونم میشم راهنمایی بفرمائید.

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

پاسخ دهید

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


5 × = 30