پروژه الگوریتم گرگ خاکستری GWO با متلب
پروژه الگوریتم گرگ خاکستری GWO با متلب :انجام پروژه متلب
انجام پروژه متلب:پیاده سازی مقاله Grey Wolf Optimizer
انجام پروژه متلب:در این پست پروژه پیاده سازی الگوریتم گرگ خاکستری GWO در متلب را با عنوان مقاله Grey Wolf Optimizer آماده کرده ایم.
انجام پروژه متلب:الگوریتم گرگ خاکستری GWO :
الگوریتم گرگ خاکستری GWO یا Grey Wolf Optimizer ، یک الگوریتم فرا ابتکاری الهام گرفته از طبیعت است که از اساس آن ساختار سلسله مراتبی و رفتار اجتماعی گرگ ها در زمان شکار می باشد. الگوریتم GWO مبتنی بر جمعیت است و فرایند ساده ای را در تنظیمات دارد و به راحتی قابلیت تعمیم به مسائل با ابعاد بزرگ را داراست. در پیاده سازی این پروژه، چهار نوع از گرگ های خاکستری مانند آلفا، بتا، دلتا و امگا برای شبیه سازی سلسله مراتب رهبری اسفاده شده است که در آن سه گام اصلی از شکار، جستجو برای طعمه، محاصره طعمه، و حمله به طعمه، اجرا می شوند. نتایج شبیه سازی که با الگوریتم ازدحام ذرات (PSO) نیز مقایسه شده است، نشان می دهد که الگوریتم گرگ خاکستری GWO عملکرد بهتری را حاصل شده است.
انجام پروژه متلب: .
ساختار سلسله مراتبی و رفتار اجتماعی گرگ های خاکستری :
گرگ های خاکستری در راس زنجیره غذایی هستند و زندگی اجتماعی دارند. تعداد متوسط گرگ های هر گله بین ۵ تا ۱۲ است. در هر گله ۴ رتبه اصلی وجود دارد که مانند شکل زیر به صورت یک ساختار هرمی مدل می شود:
- گرگ های رهبر گروه الفا (alpha) نامیده می شوند که می توانند مذکر یا مونث باشند. این گرگ ها بر گله مسلط هستند و مواردی مانند محل استراحت یا نحوه شکار را مدیریت می کنند. اما علاوه بر رفتار مسلط گرگ های alpha، نوعی ساختار دموکراتیک هم در گروه دیده می شود.
- گرگ های بتا (beta): کمک به گرگ های alpha در فرایند تصمیم گیری بوده و همچنین مستعد انتخاب شدن به جای آن ها هستند.
- گرگ های دلتا (delta): پایین تر از گرگ های beta و شامل گرگ های پیر، شکارچی ها و گرگ های مراقبت کننده از نوزادان.
- گرگ های امگا (omega): پایین ترین مرتبه در هرم سلسله مراتب که کمترین حق را نسبت به بقیه اعضای گروه دارند. بعد از همه غذا می خورند و در فرایند تصمیم گیری مشارکتی ندارند.
فرایند شکار گرگ های خاکستری :
شامل ۳ فاز اصلی است:
- مشاهده شکار، ردیابی و تعقیب آن (tracking and approaching)
- نزدیک شدن، احاطه کردن (حلقه زدن) به دور شکار و گمراه کردن آن تا زمانی که از حرکت باز بماند (Pursing and encircling)
- حمله به شکار (attacking)
در این مقاله ساختار سلسله مراتبی و رفتار اجتماعی گرگ ها در حین فرایند شکار به صورت ریاضی مدل شده و برای طراحی الگوریتمی برای بهینه سازی مورد استفاده قرار گرفته است.
الف- مدل سازی ساختار سلسله مراتبی (هرم قدرت) :
بهینه سازی با استفاده از گرگ های alpha, beta و delta انجام می شود. یک گرگ به عنوان alpha هدایت کننده اصلی الگوریتم فرض می شود و یک گرگ beta و delta نیز مشارکت دارند و بقیه گرگ ها به عنوان دنبال کننده آن ها محسوب می شوند.
ب- مدل سازی فرایند احاطه کردن شکار :
دو رابطه مدل کننده:
که در آن A , C بردارهای ضرایب، Xp بردار موقعیت مکانی شکار و X بردار موقعیت مکانی هر یک از گرگ ها است و t شماره تکرار است. دو بردار A و C به صورت زیر محاسبه می شوند:
که در آن مولفه های a به صورت خطی و در طی تکرار های متوالی از ۲ تا صفر کاهش می یابند و r1 و r2 بردارهای تصادفی در بازه [۰,۱] هستند.
ج- مدل سازی فرایند hunting :
انجام پروژه متلب: گرگ های خاکستری توانایی تخمین موقعیت شکار را دارند. برای مدل سازی این فرایند مراحل زیر را ببینید:
در جستجوی اولیه هیچ ایده ای در مورد موقعیت شکار نداریم. فرض می شود گرگ های alpha, beta, delta دانش اول بهتری در خصوص موقعیت شکار (نقه بهینه جواب) دارند. موقعیت این سه کاندیدای جواب به صورت زیر تعیین می شود:
در واقع گرگ های alpha, beta, delta موقعیت شکار را تخمین می زنند اما بقیه گرگ ها موقعیت خود را بور تصادفی حول شکار آپدیت می کنند.ما موقعیت ۳ جواب برتر را همواره حفظ می کنیم. در شکل زیر نمایش دو بعدی و سه بعدی بردارهای موقعیت گرگ ها و موقعیت های ممکن برای حرکت بعدی نشان داده شده است.
د- مدل کردن فرایند حمله (attacking) :
وقتی شکار توسط گرگ ها احاطه شده و از حرکت بایستد حمله به رهبری گرگ alpha شروع می شود. مدل کدن این فرایند با استفاده از کاهش بردار a انجام می شود. از آنجا که A برداری تصادفی در بازه [-۲a,2a] است، با کاهش a، بردار ضرایب A هم کاهش می یابد. اگر |A|<1 باشد، گرگ alpha به شکار ( و بقیه گرگ ها) نزدیک می شود و اگر |A|>1 گرگ از شکار ( و بقیه گرگ ها) دور خواهد شد.
الگوریتم GWO الزام دارد که تمام گرگ ها موقعت خود را برحسب موقعیت گرگ های alpha, beta, delta آپدیت کنند.
ه- جستجو (اکتشاف) شکار :
فرایند جستجو پروسه ای دقیقا عکس فرایند حمله دارد: در هنگام جستجو گرگ ها از یکدیگر دور می شوند تا شکار را ردیابی کنند (|A|>1) در حالی ک.ه پس از ردیابی شکار، گرگ ها در فاز حمله به یکدیگر نزدیک می شوند (|A|<1). به این پروسه واگرایی در جستجو – همگرایی در حمله می گویند.
Exploration: |A|>1
Exploitation: |A|<1
نقش بردار C: بردار C به عنوان موانع موجود در طبیعت که نزدیک شدن گرگ ها به شکار را کند می کنند در نظر گرفته می شود. بردار C به شکار وزن داده و ان را برای گرگ ها غیر قابل دستیابی تر می کند. این بردار برخلاف a به صورت خطی از ۲ تا صفر کاهش نمی یابد.
پس به طور خلاصه می توان الگوریتم را به ترتیب زیر جمع بندی نمود:
- برازندگی کلیه جواب ها محاسبه شده و سه جواب برتر به عنوان alpha, beta, deltaتا پایان الگوریتم انتخاب می شوند.
- در هر تکرار سه جواب برتر (گرگ های alpha, beta, delta) قابلیت تخمین موقعیت شکار را داشته و این کار را در هر iteration با استفاده از رابطه زیر انجام می دهند:
در هر تکرار بعد از تعیین موقعیت گرگ های alpha, beta, delta، آپدیت موقعیت بقیه جواب ها با تبعیت از آن ها انجام می شود.
- در هر تکرار بردار a (و به تبع آن A) و C آپدیت می شوند.
- در پایان تکرارها موقعیت گرگ alpha به عنوان نقطه بهینه معرفی می شود.
نکات قابل توجه:
- الگوریتم GWO تنها به مقدار دهی اولیه دو پارامتر (بردار های a و C) نیاز دارد.
- الگوریتم گرگ خاکستری GWO به سادگی قابلیت تعمیم به فضای n بعدی را دارد.
خروجی متلب:
دیدگاه ها