الگوریتم متاهیوریستیک پنگوئن های امپراتور، با الهام از طبیعت و با استفاده از دو فاکتور گرمای بدن پنگوئنها و نحوه حرکت شان در کلونی مربوط به هر کدام، یک یا چند راهحل مناسب برای مسئله بهینهسازی، ارائه میدهد. برای دانلود مقاله اصلی میتوانید روی این لینک (+) کلیک کنید. اگر شما هم مشتاق هستید با نحوه عملکرد این الگوریتم آشنا شوید؛ در ادامه با ما همراه باشید.
مقدمه مقاله الگوریتم پنگوئن های امپراتور
همراهان گرامی مجموعه پی استور، هرگاه که صحبت از الگوریتم های بهینه سازی به میان آمد؛ بدانید که طی این مکانیزم، یک فرآیند سطح بالاتر ریاضی اعم از: تنظیم ورودیهای مسئله مورد بررسی، آزمایش برای یافتن حداقل یا حداکثر خروجی و ارائه بهترین نتیجه حاصل از تکرار فرآیند، باید طی شود تا پاسخ بهینه کاربر به دست آید.
ورودیها، شامل متغیرهایی از جمله: تابع هزینه، تابع هدف، تابع تناسب، و خروجیها شامل هزینه و تناسب است و از آنجایی که نتایج حاصله به طور مستقیم با پارامترهای موجود، در ارتباط هستند؛ بنابراین بیشتر الگوریتم های متاهیوریستیک، نمیتوانند به طور همزمان، دقت و سرعت همگرایی مناسب را برای همه مسائل بهینه سازی ارائه دهند. لذا درنهایت، الگوریتم های بهینه سازی به عنوان راهنما عمل کرده و این مدیر پروژه است که تصمیم میگیرد از کدام الگوریتم موجود، برای حل مسئله خود استفاده کند.
امروزه دانشمندان و محققان علوم کامپیوتر با تکیه بر این اصل که طبیعت به عنوان مجموعهای کامل از انواع مفاهیم، مکانیسمها و قواعد طراحی سیستمهای محاسباتی مصنوعی در دسترس است؛ با الهام گرفتن از آن، بیشتر الگوریتم های بهینه سازی را برای مقابله با مسائل پیچیده محاسباتی، ارائه دادهاند. در واقع الگوریتم EPC یا همان الگوریتم پنگوئن های امپراتور هم در این دسته قرار میگیرد و از آن برای یافتن راه حل مؤثر و کارآمد در حل مسئله پیچیده، استفاده میکنند.
نگاهی به زندگی پنگوئن های امپراتور
آیا تا به حال، به نحوه زیست این موجودات بامزه دقت کردهاید؟ آیا میدانستید که پنگوئنها، گونهای از پرندگان آبزی هستند که نمیتوانند پرواز کنند؟ دوستان عزیز، زادگاه اصلی پنگوئنها، نیمکره جنوبی کره زمین است و گونه اصلی آنها در جزیره گالاپاگوس بر روی خط استوا ساکن هستند. البته لازم به ذکر است که تاکنون ۲۰ گونه از پنگوئنها شناخته شدهاند که بزرگترین و برترین گونه، همین گونه پنگوئن های امپراتور است.
اگر از خودتان میپرسید که چرا این نژاد، به نام امپراتور شهرت یافته است؛ باید به اطلاعتان برسانم که این سلاطین، قدی بالغ بر ۱۳۰ سانتی متر دارند و ازجمله بهترین غواصان هستند. جثه بزرگشان آنها را به تنها مهره دارانی تبدیل کرده است که در شرایط سخت زیستی قطب جنوب و تا دمای ۴۰ درجه زیر صفر رشد یافته یا حتی زندگی میکنند.
نکته قابل توجه این که در راستای مقاومت در برابر این محیط خشن و صرفه جویی در مصرف انرژی، پنگوئن های امپراتور سازگاری رفتاری، مورفولوژیکی و فیزیولوژیکی قابل توجهی از خود نشان میدهند که بسیار مورد توجه محققان قرار گرفته است. به همین دلیل است که الگوریتم پنگوئن های امپراتور بسیار مورد توجه دانشمندان این حوزه است. در تصویر زیر، مقایسهای بر جثه برترین گونه پنگوئنها انجام گرفته است.
رفتار امپراتورها در اجتماع
جانم برایتان بگوید که این موجودات، بسیار اجتماعی هستند. به نحوی که در سه سالگی بالغ شده و میتوانند تشکیل خانواده دهند. نکته جالب زندگی پنگوئنها این است کل زحمت نگهداری از بچهها، بر دوش مادر خانواده نیست. به این ترتیب که پنگوئن ماده در ابتدا یک تخم میگذارد؛ سپس به دلیل پایان ذخایر تغذیه و خستگی از مراحل تخم گذاری، آن را تحویل پنگوئن نر داده؛ در حدود دو ماه برای تغذیه و جبران مافات، به اعماق دریا سفر میکند. نرها هم برای گرم نگه داشتن تخم، کنار یکدیگر جمع میشوند. حدود چهار ماه طول میکشد تا جوجه پنگوئن از تخم سر در بیاورد.
شکل گیری کلونی پنگوئن های امپراتور
آیا میدانستید که حدود ۹۸ درصد از پرندگان دریایی در کلونی خود رشد میکنند؟ یعنی درواقع، برخلاف پرندگان خشکی، در محل زیست پرندگان دریایی چیزی به نام لانه وجود ندارد. تودههای عظیمی از پنگوئنها، کنار هم جمع میشوند تا یکدیگر را گرم نگه دارند. به نحوی که در کمتر از دو ساعت دمای بدن هر کدام از آنها به ۳۷ درجه سانتی گراد هم میتواند برسد. این توده عظیم Huddle نام دارد و برای توصیف تراکم آن، میتوان گفت که این توده از صدها پنگوئن تشکیل شده و شامل ده پرنده در یک متر مربع میشود. در تصویر زیر، نمونهای از کلونی پنگوئن های امپراتور را مشاهده میکنید.
نحوه حرکت در کلونی پنگوئن های امپراتور
قبل از این که به تشریح الگوریتم پنگوئن های امپراتور بپردازیم؛ بهتر است بدانید که زمانی که پنگوئنها یک کلونی را تشکیل میدهند؛ تمرکز گرما در مرکز Huddle شکل میگیرد و تک تک پنگوئنها به صورت غریزی، برای استفاده از این گرما به صورت مارپیچی به سمت مرکز Huddle حرکت میکنند تا برحسب نیازشان از آن استفاده کنند. شکل زیر، این حرکت مارپیچ مانند که در عین حال هماهنگ است را نشان میدهد.
الگوریتم پنگوئن های امپراتور
فرض اولیه در الگوریتم پنگوئن های امپراطور، این است که پنگوئنها در سراسر محیط مورد بررسی، پراکنده شده باشند. بنابراین در همین ابتدا و قبل از پیچیده شدن مراحل، ابتدا بایستی موقعیت هر پنگوئن نسبت به پنگوئن دیگر سنجیده شود. در نظر داشته باشید که یک پنگوئن، معمولاً به سمت پنگوئنی میرود که هزینه جذب پایینی دارد. بنابراین فاکتور دوم مورد سنجش هم، هزینه جذب هر پنگوئن است که با توجه به شدت گرما و میزان مسافت، مورد سنجش قرار میگیرد.
طی این الگوریتم، در هر مرحله از جذب، در واقع یک راه حل جدید برای مسئله مورد بررسی، ارزیابی شده و شدت گرما، بروزرسانی میگردد. در ادامه، تمام راه حلها مرتب سازی شده و بهترینشان انتخاب میگردد. البته در این میان، یک نسبت میرایی هم برای هر پنگوئن ارزیابی میشود که عواملی همچون حرکت هر پنگوئن، تابش گرما و جذب حرارت در میزان آن، تأثیر میگذارد. هر چه نسبت میرایی کمتر باشد؛ آن راه حل مناسبتر است. در ادامه، الگوریتم EPC آورده شده است.
----------------------------------------------------------------------- Algorithm 1: Pseudo code of the Emperor Penguins Colony (EPC) algorithm. ----------------------------------------------------------------------- generate initial population array of EPs (Colony Size); generate position of each EP; generate cost of each EP; determine initial heat absorption coefficient; for I t=1to MaxIteration do generate repeat copies of population array; for i=1to n population do for j=1to n population do if costj < costi then calculate heat radiation (Eq. 6); calculate attractiveness (Eq .11); calculate coordinated spiral movement (Eq. 18); determine new position (Eq. 19); evaluate new solutions; end end end sort and find best solution; update heat radiation (decrease); update mutation coefficient (decrease); update heat absorption coefficient (increase); end
تشریح الگوریتم EPC
دوستان و همراهان گرامی مجموعه پی استور، برای درک کامل الگوریتم پنگوئن های امپراتور، تمام مراحل آن را توضیح خواهیم داد تا در یافتن پاسخ بهینه مسئله مورد بررسی تان دچار مشکل نشوید.
محاسبه مساحت سطح بدن هر پنگوئن
شاید از خودتان بپرسید که دانستن اندازه بدن هر پنگوئن به چه کار ما میآید؟ در پاسخ به این سوال باید بگویم که برای محاسبه دو فاکتور اصلی الگوریتم یعنی شدت گرما و جذابیت، انتقال تابش گرما باید محاسبه شود که برای محاسبه تابش حرارتی هر پنگوئن، باید اندازه سطح بدن آن را در دست داشته باشیم. بنابراین، محاسبه مساحت بدن هر پنگوئن ضروری بوده و شامل بدن اصلی، سر، منقار، بالهها و پاها میباشد که از فرمولهای زیر محاسبه میگردند.
برای فهم بیشتر آنچه گفته شد؛ برای مدل ساده از یک پنگوئن امپراتور که در سرما ایستاده است؛ هر کدام از اندازههای مورد نیاز را محاسبه کرده و در شکل زیر آوردهایم.
محاسبه انتقال حرارت در الگوریتم پنگوئن های امپراتور
جانم برایتان بگوید که انتقال حرارت، یک تابع فرآیند یا تابع مسیر است و مقدار گرمای انتقال یافته در فرآیند ترمودینامیکی، وضعیت سیستم را تغییر میدهد و درواقع به نحوه وقوع این فرآیند و چگونگی وضعیت اولیه و نهایی سیستم بستگی دارد. انتقال حرارت با استفاده از یک ضریب محاسبه شده و در واقع نسبت بین شار حرارتی و گرمای ترمودینامیکی را محاسبه میکند. یعنی انتقال حرارت با تغییر انرژی داخلی ماده همراه است و همیشه از سمت گرم کننده انجام میگیرد. در نظر داشته باشید که شار حرارتی یک نمایش کمی و برداری از جریان گرما در یک سطح است.
در الگوریتم EPC از معیار انتقال حرارت توسط تابش استفاده میشود و میتوان نتیجه گرفت که تابش ملاک جذابیت پنگوئن هاست. با فرض این که پنگوئن با محیط خود در یک تعادل حرارتی قرار دارد؛ برای محاسبه انتقال حرارت کلی، باید حرارت منتقل شده از هر ناحیه بدن پنگوئن را به شرح زیر داشته باشیم.
پس از محاسبه حرارت کلی، نوبت به محاسبه تابش یا تشعشعات ساطع شده از هر قسمت از بدن پنگوئن میرسد که از فرمول زیر محاسبه میگردد.
شدت گرما و جذابیت پنگوئن
یک نکته جالب در علم فیزیک وجود دارد که میگوید؛ در انتقال حرارت توسط تابش، فوتونها حامل انرژی هستند. فوتون را نه فقط به وسیله سطوح انرژی الکترونیکی بلکه میتوان با افزایش سطوح انرژی کوانتیزه چرخشی یا ارتعاشی، جذب کرد. منابع فوتون متمرکز عبارتند از: منابع سطحی، منابع نقطهای و منابع خطی که در منابع سطحی، اگر منبع I0 باشد؛ معادله دریافت فوتونهای حرارتی در I به شرح زیر خواهد بود.
به همین ترتیب، در منابع نقطهای، اگر منبع I0 باشد؛ در فاصله r، شدت گرمای دریافتی در I به شکل زیر خواهد بود و از فرمول ذیل محاسبه خواهد گردید.
و اما دوستان عزیز، با توجه به فاصله بین پنگوئنها و نوع فیزیک بدن آنها، در الگوریتم EPC، منبع گرما خطی در نظر گرفته میشود. اگر منبع گرما خطی باشد؛ با مقدار اولیه I0 در فاصله r، که به صورت عمودی به I تابش میکند؛ معادله شدت گرمای دریافتی در I به صورت زیر خواهد بود.
در اینجا، یک نکته مهم وجود دارد که اگر به آن توجه نشود؛ ممکن است کل الگوریتم را از مسیر اصلی منحرف سازد و آن هم این است که فوتونها توسط ماده کند و متوقف نمیشوند بلکه ضعیف و در عین حال پراکنده میگردند. بنابراین، ما باید توسط یک معادله و با استفاده از معادله منبع خطی، عملیات تضعیف فوتون را انجام دهیم. برای این منظور، از فرمول زیر که در آن یک ضریب تضعیف به x یا فاصله بین دو منبع خطی ضرب می گردد؛ استفاده کنید.
ما تمام این محاسبات را انجام دادیم تا در نهایت به فرمول جذابیت Q برسیم که در ادامه، آورده شده است.
محاسبات مربوط به نحوه حرکت پنگوئنها در داخل کلونی
همان طور که در کارتونهای دوران کودکی، بارها مشاهده کردهایم؛ حرکت دسته جمعی پنگوئنها به دور یکدیگر، در جهت عقربههای ساعت، حول یک مرکز ثابت انجام میشود. به شکل زیر، توجه کنید.
همراهان گرامی، برای درک بیشتر این بخش از الگوریتم پنگوئن های امپراتور، فرض کنید دو پنگوئن به نامهای i و j وجود دارند و مسیر حرکت همیشه از سمت پنگوئنی که به گرما نیاز دارد به سمت پنگوئنی که گرمتر است؛ شکل میگیرد. در اینجا، حرکت مارپیچی از i به j است؛ زیرا پنگوئنهای j گرمتر هستند. به شکل زیر، توجه کنید.
دوستان عزیز، به بخش شیرین مقاله نزدیک میشویم. آیا میدانستید که مارپیچ لگاریتمی را میتوان از پرتوهایی با فاصله مساوی با شروع از نقطهای در امتداد یک پرتو و کشیدن عمود بر یک پرتو همسایه، تشکیل داد؟ بله! فرآیند به این ترتیب است که با نزدیک شدن تعداد پرتوها به بی نهایت، دنباله قطعات به مارپیچ لگاریتمی صاف نزدیک میشود.
در شکل بالا، مقدار جذابیت Q معیاری برای میزان مسافت طی شده، از پنگوئن i به سمت پنگوئن j است. جالب است که این موجود بامزه به دلیل جذابیت، به مقصد نمیرسد و پس از طی مسافت طولانی متوقف شده و نقطه توقف این پنگوئن، k یا موقعیت جدید پنگوئن i نامیده میشود. این فرآیند جابجایی تا جایی ادامه پیدا میکند که مسئله در بهینهترین حالت خود قرار بگیرد و الگوریتم پنگوئن های امپراتور پایان یابد. به فرمولهای زیر، توجه کنید.
سخن آخر در رابطه با الگوریتم پنگوئن های امپراتور
همراهان عزیز مجموعه پی استور، خسته نباشید. در این پست آموزشی، سعی کردیم تا شما را با کلیات الگوریتم پنگوئن های امپراتور EPC آشنا کنیم. در پاورپوینت مربوط به آن، جزئیات مورد بررسی آورده شده است و هدف این است که با تکمیل آموختههایتان، بتوانید این الگوریتم فراابتکاری را در حل مسائل پیچیده خود، به کار بگیرید. از این که نظرات و پیشنهادات خود را با ما در میان میگذارید؛ سپاس گزاریم. کامیاب باشید.
2 پاسخ
خیلی خوب بود
خیلی خوب و عالی