مسئله بهینه‌سازی

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

در ریاضیات و علوم رایانه یک مسأله بهینه سازی، مسأله یافتن بهترین راه حل از میان همه راه حل های عملی می باشد. مسأله های بهینه سازی می تواند به دو دسته تقسیم شود که متغیرها پیوسته یا گسسته باشند. یک مسأله بهینه سازی با متغیرهای گسسته به عنوان یک مسأله بهینه سازی ترکیبی یا ترکیبیاتی شناخته می شوند. در یک مسأله بهینه سازی ترکیبی، ما به دنبال مجموعه ای از اشیاء از قبیل عدد صحیح، جایگشت و یا گرافی می گردیم که تعداد اعضایش محدود (و یا به طور قابل شمارش نامحدود) باشند.

مسأله بهینه سازی پیوسته[ویرایش]

شکل استاندارد مسأله بهینه سازی (پیوسته) به صورت زیر است:

\begin{align}
&\underset{x}{\operatorname{minimize}}& & f(x) \\
&\operatorname{subject\;to}
& &g_i(x) \leq 0, \quad i = 1,\dots,m \\
&&&h_i(x) = 0, \quad i = 1, \dots,p
\end{align}

به طوری که:

  • f(x): \mathbb{R}^n \to \mathbb{R} تابع مورد نظر ماست که می خواهیم بر روی x کمینه شود.
  • g_i(x) \leq 0 محدودیت نابرابری نامیده می شود و
  • h_i(x) = 0 محدودیت تساوی نامیده می شود.

طبق قرارداد، شکل استاندارد، یک مسأله به حداقل رساندن را توصیف می کند. یک مسأله به حداکثر رساندن می تواند با منفی کردن تابع هدف به دست آید.

مسأله بهینه سازی ترکیبی[ویرایش]

به طور رسمی یک بهینه سازی ترکیبی A یک چهارتایی (I, f, m, g) است به طوری که:

  • I مجموعه نمونه هاست.
  • برای یک نمونه x \in I داده شده، f(x) مجموعه راه حل های امکان پذیر است.
  • برای یک مورد داده شده x و راه حل ممکن y برای x، m(x, y) اندازه y را مشخص می کند که معمولاً یک عدد حقیقی مثبت است.
  • g هدف تابع است که یا برابر کمینه و یا بیشینه است.

هدف این است که برای یک نمونه x، یک راه حل بهینه پیدا کنیم که یک راه حل ممکن y است با این شرط که


m(x, y) = g \{ m(x, y') \mid y' \in f(x) \} .

برای هر مسأله بهینه سازی ترکیبی، یک مسأله تصمیم متناظر وجود دارد که می پرسد ببیند آیا یک راه حل ممکن برای مقدار خاص m_0 وجود دارد یا نه. به عنوان مثال یک گراف G وجود دارد که شامل رئوس u و v یک مسأله بهینه سازی ممکن است «یافتن یک مسیر از G به G که از کمترین یال ها بگذرد» باشد. این مسأله ممکن است یک جواب مثلاً ۴ داشته باشد. یک مسأله تصمیم متناظر این خواهد بود که «آیا یک مسیر از G به G با استفاده از ۱۰ یال یا کمتر وجود دارد؟» این مسأله با یک «بله» یا «خیر» ساده جواب داده می شود. در زمینه الگوریتم های تخمین، الگوریتم ها برای مسائل سخت برای یافتن راه حل های نزدیک بهینه طراحی می شوند. بنابراین یک نسخه معمول تصمیم، یک توصیف ناکافی از مسأله است زیرا فقط راه حل های قابل قبول را مشخص می کند. اگرچه می توانیم مسائل تصمیم مناسبی مطرح کنیم، این مسائل دیگر بیشتر به طور طبیعی، یک مسأله بهینه سازی می شوند.

مسأله بهینه سازی NP[ویرایش]

یک مسأله بهینه سازی NP یا به طور مخفف NPO یک مسأله بهینه سازی ترکیبی است با شرایط اضافی زیر. توجه داشته باشید که چند جمله ای های اشاره شده در زیر، توابعی با سایز متناسب با ورودی های تابع هستند، نه مجموعه ای مطلق از نمونه ورودی ها.

  • سایز هر راه حل ممکن \scriptstyle y\in f(x) به طور چند جمله ای محدود به سایز نمونه x داده شده است.
  • زبان های \scriptstyle \{\,x\,\mid\, x \in I \,\} و \scriptstyle \{\,(x,y)\, \mid\, y \in f(x) \,\} می توانند در زمان چند جمله ای مشخص شوند و
  • m در زمان چندجمله ای قابل محاسبه است.

این دلالت بر این دارد که مسأله تصمیم متناظر، یک NP است. در علوم کامپیوتر، معمولاً مسائل بهینه سازی جالب توجه، ویژگی های بالا را دارند و بنابراین مسائل NPO هستند. یک مسأله به علاوه یک مسأله بهینه سازی نوع P یا PO خوانده می شود اگر الگوریتمی وجود داشته باشد که در زمان چندجمله ای راه حل بهینه را پیدا کند. معمولاً هنگام کار کردن با دسته NPO، مسائل بهینه سازی جالبی وجود دارد که نسخه های تصمیم، NP-سخت هستند. توجه داشته باشید که روابط سختی، همواره در تناسب با ساده سازی هستند. به علت ارتباط بین الگوریتم های تخمین و مسائل محاسباتی بهینه سازی، مسائل بهینه سازی با نسخه های تصمیم NP-تکمیل لزوماً NPO-تکمیل نامیده نمی شوند. NPOPB یک دسته دیگر است؛ NPO با تابع هزینه محدود به چندجمله ای. مسائلی با این شرایط، ویژگی های مطلوب زیادی دارند.

جستارهای وابسته[ویرایش]

منابع[ویرایش]