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

