SIA: Swarm Intelligence Algorithms

الگوریتم های هوش جمعی

SIA: Swarm Intelligence Algorithms

الگوریتم های هوش جمعی

الگوریتم های فرا ابتکاری و تکاملی برای بهینه سازی مهندسی

کتاب: الگوریتم های فرا ابتکاری و تکاملی برای بهینه سازی مهندسی

 

این کتاب در سال 2017 توسط امید بزرگ حداد، محمد سلگی و Hugo A. Loaiciga در انتشارات Wiley به چاپ رسیده است.

الگوریتم های فراابتکاری و تکاملی تکنیک های بهینه سازی مستقل از مسئله می باشند. آنها در حل مسائل گسترده ای از جهان واقعی و مهندسی پیچیده موثر می باشند. در این کتاب مهمترین الگوریتم های فراابتکاری و تکاملی که تاکنون وجود دارند، ارائه و به طور واضح توضیح داده می شوند. الگوریتم های ارائه شده در این کتاب عبارتند از: جستجو الگو (PS)، الگوریتم ژنتیک (GA)، شبیه سازی تبرید (SA)، جستجوی ممنوعه (TS)، بهینه سازی کلونی مورچه (ACO)، بهینه سازی ازدحام ذرات (PSO)، تکامل تفاضلی (DE)، جستجوی هارمونی (HS)، الگوریتم جهش قورباغه (SFLA)، بهینه سازی جفت گیری زنبور عسل (HBMO)، بهینه سازی علف های هرز مهاجم (IWO)، بهینه سازی نیروی مرکزی (CFO بهینه سازی مبتنی بر جغرافیای زیستی (BBO)، الگوریتم کرم شب تاب (FA)، الگوریتم جستجوی گرانشی (GSA الگوریتم خفاش (BA)، الگوریتم پخش گیاه (PPA)، الگوریتم چرخه آب (WCA)، جستجوی ارگانیسم های همزیستی (SOS) و الگوریتم تکاملی جامع (CEA).

 

 

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

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

نویسندگان کتاب در فصل اول بهینه سازی و مفاهیم اساسی آن مانند تابع هدف، متغیرهای تصمیم، فضای تصمیم و محدودیت ها را تعریف می کند. آن مثال های متنوع از مسائل بهینه سازی مهندسی را فراهم می کند.

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

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

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

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

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

در فصل هفتم الگوریتم بهینه سازی کلونی مورچه که از رفتار غذا خوردن مورچه ها الهام گرفته شده است توصیف شده است.(شکل 1)

شکل 1: بررسی رفتار مورچه ها برای یافتن غذا

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

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

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

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

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

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

شکل 2: تعداد دانه ها برای هر علف هرز با توجه به مقدار برازش

 

در فصل چهاردهم الگوریتم نیروی مرکزی شرح داده شده است. اساس این الگوریتم از حرکت شناسی در فیزیک نشات گرفته شده است. CFO شبیه حرکت توده ها تحت تاثیر میدان گرانشی می باشند. این الگوریتم یک روش قطعی است. بدین معنی که هر موقعیت از یک ذره ( در اینجا prob نامیده می شود) یک مسیر معینی را برای رسیدن به راه حل دنبال می کند. (شکل 3)

شکل 3: توزیع ذرات یا عامل کاوش اولیه در الگوریتم نیروی مرکزی

 

در فصل پانزدهم الگوریتم بهینه سازی جغرافیای زیستی شرح داده شده است. که از دانش جغرافیای زیستی الهام گرفته شده است. الگوی مهاجرت به داخل یا بیرون زیستگاه ها در شکل 4 نشان داده شده است.

شکل 4: مجاجرت به داخل و خارج گونه ها در یک زیستگاه

 

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

در فصل هفدهم الگوریتم جستجوی گرانش شرح داده شده است. یک الگوریتم بهینه سازی تکاملی مبتنی بر قانون گرانش و تعاملات جرمی می باشد. این الگوریتم یک ذره را به عنوان یک راه حل مسئله بهینه سازی در نظر می گیرد. ذرات رفتار ساده ارائه می دهند و آنها مسیرهای هوشمند را از طریق راه حل نزدیک به بهینه دنبال می کنند. (شکل 5)

 

شکل 5: نیروی گرانش مابین ذرات مختلف و force1 : نتیجه نیرو روی جرم 1

 

 

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

فصل نوزدهم الگوریتم تکثیر گیاه شرح داده شده است. این الگوریتم از تکثیر گیاهان همانند گیاه توت فرنگی تقلید می کند.

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

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

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

  [1].  Omid Bozorg‐Haddad, Mohammad Solgi, Hugo A. Loaiciga” Meta‐Heuristic and Evolutionary Algorithms for Engineering Optimization”, 2017 John Wiley & Sons, Inc..