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

http://www.matlabsite.net/images/misc/emoo_repository.png
متلبسایت – مرجع کاربران و برنامه نویسان متلب و هوش مصنوعی: در این پست قصد داریم سایتی را معرفی کنیم که مجموعه ای از معتبرترین منابع در مورد بهینه سازی چند هدفه با استفاده از الگوریتم های تکاملی را ارائه می نماید. مخزن بهینه سازی تکاملی چند هدفه یا EMOO Repository سایتی است که به همت پرفسور کارلوس کوئلو کوئلو (Carlos A. Coello Coello) راه اندازی شده است و اکنون توسط ایشان مدیریت می شود. پرفسور کوئلو یکی از افراد سرشناس در حوزه بهینه سازی چند هدفه و مقید است و الگوریتم بهینه سازی ازدحام ذرات چند هدفه یا MOPSO از ابداعات ایشان می باشد.در این پست از متلب سایت قصد داریم به معرفی مخزن EMOO بپردازیم و برخی از امکانات آن را به اختصار بیان کنیم. در کنار این موارد، به مبدأ الهام و چگونگی ایجاد این سایت نیز خواهیم پرداخت.

ادامه مطلب >>

حل یک مسئله ماکزیمم (بیشنه) سازی توسط کدهای برنامه یک روش مینیمم سازی

http://www.icasite.info/icasite/post_i/ques_ans.png
معمولاً کدهای رایگانی که به صورت عمومی در مورد یک روش بهینه سازی منتشر می شوند، برای حل مسائل کمینه سازی نوشته شده اند. به عنوان مثال کدهای رایگان الگوریتم رقابت استعماری و یا الگوریتم ژنتیک موجود در وبسیات محاسبات تکاملی، مختص مسائل بهینه سازی هستند. اما این به این معنی نیست که از آنها، نمی توان برای حل مسائل بیشینه سازی استفاده کرد. دلیل اصلی این نوع نوشتن کدها، این هست که مسائل بهینه سازی کمینه سازی و بیشینه سازی، هیچ تفاوتی با هم نداشته و به سادگی قابل تبدیل به هم هستند و چون غالب مسائل بهینه سازی بصورت مینیمم سازی هستند، این کدها نیز، به این صورت منتشر می شوند.
یکی از دوستان سوالی را در مورد نحوه حل مسئله ماکزیمم سازی توسط کدهای الگوریتم رقابت استعماری پرسیده بودند، که این پست، در پاسخ به سوال ایشان تهیه شده است. اگر شما نیز به سوال مشابهی برخورد کرده اید، در ادامه مطلب با ما همراه باشید.

نحوه تعریف یک مسئله مناسب بهینه سازی برای حل با الگوریتم رقابت استعماری

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

بهترین روش بهینه سازی تکاملی چه روشی است؟ – پرسش و پاسخ

http://www.icasite.info/icasite/post_i/ques_ans.png
یکی از دوستان پرسشی را در مورد کارایی الگوریتم رقابت استعماری در مقایسه با سایر روشها مطرح کرده بودند. به نظر رسید که شاید پاسخ این سوال برای دیگران علاقه مندان نیز مفید باشد. به همین خاطر آن را در قالب یک پست عمومی منتشر می کنیم.
پرسش:
با سلام
پرسشی دارم: الگوریتم رقابت استعماری در مقابل الگوریتم PSO از نقطه نظر همگرایی چگونه است؟
آنچه من برداشت دارم اینست که الگوریتم ICA هم از نقطه نظر جستجوی سراسری حسن الگوریتم ژنتیک را دارد و هم سرعت بالاتری نسبت به آن دارد. الگوریتم هایی مثل PSO سرعت بالایی دارند و سریع همگرا می شوند ولی الزاما در بهنه سراسری قرار نمی گیرند.
من بر این تصورم که در کابردهای بیشتر الگوریتم و مسائلی که local optimum زیادی دارند ، احتمالا pso سریعتر ازICA است ولی در جواب سراسری ممکن است قرار نگیرد.
پاسخ:

پرسش و پاسخ – چند سوال در مورد الگوریتم و کدها به همراه پاسخ

http://www.icasite.info/icasite/post_i/ques_ans.png
دو نفر از دوستان سوالاتی در مورد کدها و نیز خود الگوریتم مطرح کرده اند که به دلیل اینکه به نظر رسید که این سوالات ممکن است برای دیگر دوستان نیز مطرح شود آنها را در قالب یک پست عمومی به همراه پاسخ آنها منتشر می کنیم.
سوالات – بخش یک
“با سلام
  1. در متن آموزشی منتشر شده در مورد الگوریتم در فصل 3 در نموداری که برای سیاسیت جذب (assimilation plicy) رسم شده، محورهای افقی و عمودی متغیرهای ما هستند؟ چرا فقط 2 متغیر وجود دارند. آیا الگوریتم محدود به مسائل با دو متغیر است؟
  2. نسل‌های ۱۰، ۳۰، ۳۳ که در قسمت مثال کاربردی در فصل 3 متن آموزشی آمده اند به چه چیزی اشاره می کنند؟ (آیا نسل ۱۰ یعنی‌ اینکه الگوریتم ۱۰ بار تکرار شده است؟)
  3. منظور از واژهٔ (همگرایی) چیست؟ (مثلاً همگرایی در مثال کاربردی فصل 3 در نسل ۳۳ همگرایی به چه معنی است؟)
  4. تفاوت میان هزینه متوسط یا هزینه میانگین (Mean Cost) و هزینه مینیمم (Minimum Cost) در نمودارها چیست؟

با تشکر”

پاسخ به این سوالات را در ادامه می بینیم. 

پایان نامه – انتخاب و بهينه سازی سبد سهام با استفاده از الگوریتم رقابت استعماری

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

ادامه مطلب >>

آموزش شبکه عصبی (Neural Network Training) توسط الگوریتم رقابت استعماری (ICA)

پستی که در ادامه می خوانید، به یادگیری شبکه عصبی با استفاده از الگوریتم رقابت استعماری می پردازد. البته مطالب ارائه شده عمومی بوده و شامل استفاده از الگوریتم های دیگری همچون الگوریتم ژنتیک یا GA (Genetic Algorithms)، الگوریتم ازدحام ذرات یا PSO (Particle Swarm Optimization) و شبیه سازی تبرید فلزات یا SA (Simulated Annealing) نیز خواهد شد. حتی به نظر می رسد که استفاده از هر یک از عناوین زیر برای این پست مناسب بود.

ادامه مطلب >>

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

سوال مهمی که همیشه مطرح می باشد، این است که چه الگوریتمی برای یک مسئله بهینه سازی معین مناسب است و یا در حالت کلی تر، چه الگوریتمی نسبت به الگوریتم دیگر برتری دارد؟ در حالت کلی می توان گفت که از دید بهینه سازی اگر الگوریتم “الف” در زمان سریعتری نسبت به الگوریتم “ب” به جواب مسئله (یا هر جواب یکسان) برسد، الگوریتم ا”لف “بهتر است. به عبارت دیگر می توان گفت که در زمانهای مساوی، الگوریتم “الف” جواب های بهتر و بهینه تری را در اختیار می گذارد. شکل زیر این موضوع را به خوبی نشان می دهد.

بهینه سازی چیست؟ (تئوری بهینه سازی)

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

با داشتن تابع f({\bf{x}})، در بهينه‌سازي مي‌خواهيم‌ آرگومان x را به گونه‌اي بيابيم که هزينه متناظر آن، بهينه باشد (معمولاً کمينه).
__________________________

آرزوی انسان برای رسیدن به كمال مبین تئوری بهینه سازی است. انسان می خواهد بهترین را تجسم و توصیف كرده و به آن دست یابد (بیت لر و دیگران، ۱۹۷۹) ؛ اما از آنجایی كه می داند نمی تواند تمام شرایط حاكم بر بهترین را به خوبی شناسایی و تعریف نماید در بیشتر موارد به جای جواب بهترین یا بهینه مطلق، به یك جواب رضایت بخش (وارنر، ۱۹۹۶) بسنده می كند.

آرزوی انسان برای رسیدن به كمال مبین تئوری بهینه سازی است. انسان می خواهد بهترین را تجسم و توصیف كرده و به آن دست یابد (بیت لر و دیگران، ۱۹۷۹) ؛ اما از آنجایی كه می داند نمی تواند تمام شرایط حاكم بر بهترین را به خوبی شناسایی و تعریف نماید در بیشتر موارد به جای جواب بهترین یا بهینه مطلق، به یك جواب رضایت بخش (وارنر، ۱۹۹۶) بسنده می كند. همچنین انسان در قضاوت عملكرد دیگران، معیار بهترین را در نظر نمی گیرد بلكه آنان را به صورت نسبی مورد ارزیابی قرار می دهد (گلدبرگ، ۱۹۸۹) ؛ بنابراین انسان به دلیل ناتوانی خود در بهینه سازی، به بهبود ارزش ویژه ای می دهد.

بیت لر و دیگران (۱۹۷۹) بهینه سازی را چنین شرح می دهند : فعل بهینه ساختن كه كلمه قوی تری نسبت به بهبود می باشد عبارتست از دستیابی به بهینه و بهینه سازی اشاره به عمل بهینه ساختن دارد. بنابراین تئوری بهینه سازی شامل مطالعات كمی بهینه ها و روش یافتن آنهاست. همچنین بهینه به عنوان یك واژه فنی دلالت بر اندازه گیری كمی و تحلیل ریاضی دارد در حالی كه بهترین، دارای دقت كمتر بوده و بیشتر برای امور روزمره استفاده می شود.

در بیشتر موارد آنچه كه با هدف بهینه سازی انجام می دهیم بهبود است. بهینه سازی به دنبال بهبود عملكرد در رسیدن به نقطه یا نقاط بهینه است. این تعریف دو قسمت دارد : ۱- جستجوی بهبود برای رسیدن به ۲- نقطه بهینه. تفاوت روشنی بین فرایند بهبود و مقصد یا نقطه بهینه وجود دارد. هنوز هم معمولا در رویه های بهینه سازی تمركز بر همگرایی است (آیا به نقطه بهینه می رسد؟) و عملكرد ضمنی رویه به طور كلی فراموش می شود. این اهمیت نسبت به همگرایی مربوط به ریشه های بهینه سازی در ریاضیات است اما همان طور كه اشاره شد در عمل چنین اهمیتی طبیعی و معقول نمی باشد (گلدبرگ، ۱۹۸۹). این مقایسه قصد بی ارزش نشان دادن همگرایی و دقتهای معمول ریاضی را ندارد چرا كه این حوزه خود مبنای ارزشمندی برای مقایسه روشهای بهینه سازی ارائه می كند.

در مقایسه الگوریتم های بهینه سازی دو معیار همگرایی و عملكرد مطرح می شود. بعضی از الگوریتم ها دارای همگرایی بوده ولی ممكن است عملكرد ضعیفی داشته باشند، یعنی فرایند بهبود آنها از كارایی و سرعت لازم برخوردار نباشد ؛ برعكس بعضی دیگر از الگوریتم ها همگرایی نداشته ولی عملكرد آنها خیلی خوب است.

می توان هدف از فرایندهای جستجو را در سه دسته زیر بیان كرد :

  1. بهینه سازی
  2. یافتن جواب عملی
  3. شبه بهینه سازی

در شرایطی كه ما به یافتن جواب در همسایگی جواب بهینه راضی باشیم هدف جستجو را شبه بهینه سازی می نامند. شبه بهینه سازی دارای دوطبقه است ؛ اگر هدف، یافتن جواب عملی خوب در فاصله تعریف شده ای از جواب بهینه باشد به آن بهینه سازی نزدیك گفته می شود. اگر شرط فاصله تعریف شده برای جواب بدست آمده حذف گردد و تنها یافتن جواب نزدیك بهینه با احتمال بالا هدف باشد به آن بهینه سازی تقریبی گفته می شود.

بیشتر مسائل عملی آنقدر مشكل هستند كه در آنها هدف، شبه بهینه سازی در نظر گرفته می شود تا از این طریق تعادلی بین كیفیت جواب بدست آمده و هزینه جستجوی آن جواب برقرار گردد. هم چنین از آنجایی كه تعداد محاسبات مسائل بهینه سازی تركیبی به اعداد نجومی می رسد حذف شرط بهینگی یك ضرورت اقتصادی است. در شبه بهینه سازی باید الگوریتم هایی ارائه كرد كه حدود مناسب میزان محاسبات و نزدیكی به بهینگی را تضمین نموده و تعادلی بین آنها برقرار نمایند. این الگوریتم ها باید مجهز به پارامترهای قابل تنظیم باشند تا كاربر بتواند با تغییر آن پارامترها تعادل مطلوب بین جواب بدست آمده و میزان محاسبات را برقرار نماید. (پیرل، ۱۹۸۴)

__________________________

منبع: پایگاه جامع مهندسی صنایع

_____________________________________________

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

صرف زمان برای یادگیری اتلاف زمان نیست. سرمایه گذاری زمانی است.