ان‌پی سخت: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
جز تمیزکاری و اصلاح متن با استفاده از AWB
جز مسأله --> مسئله وپ:همزه با استفاده از AWB
خط ۲:
 
[[پرونده:P np np-complete np-hard.svg|بندانگشتی|300px|چپ|[[Euler diagram]] for [[کلاس پی|P]], [[ان پی (کامل)|NP]], [[ان‌پی کامل]], and NP-hard set of problems]]
مجموعهٔ «'''ان‌پی-سخت'''» شامل چندهزار مسالهٔمسئلهٔ مختلف با کاربردهای فراوان است که تاکنون برای آن‌ها راه حل سریع و قابل انجام در زمان معقول پیدا نشده‌است و به احتمال زیاد در آینده نیز یافت نخواهد شد.این که راه حل سریعی برای آن‌ها وجود ندارد هم اثبات نشده‌است.البته ثابت شده‌است که اگر فقط برای یکی از این مساله‌هامسئله‌ها راه حل سریعی پیدا شود٫این راه حل موجب حل سریع بقیهٔ مساله‌هامسئله‌ها خواهد شد.البته احتمال پیدا شدن چنین الگوریتمی ضعیف است.منظور از راه حل سریع آن است که زمان اجرای آن با اندازهٔ ورودی مسالهمسئله به صورت [[چندجمله‌ای]] رابطه داشته باشد.
== ریشهٔ انگلیسی ==
'''ان پی-سخت:''' [[ویکی‌پدیا:NP (complexity)|Non-deterministic Polynomial-time]] hard)→[[ویکی‌پدیا:NP-hard|NP-hard]])
* حل نشدنی درزمان چندجمله‌ای بر حسب اندازهٔ ورودی مسالهمسئله (زمان معقول)
== مفهوم و مقایسهٔ آن با ان پی-کامل ==
مسالهٔمسئلهٔ H '''ان پی-سخت''' است اگر و فقط اگر مسالهٔمسئلهٔ L از نوع [[ویکی‌پدیا:NP-complete|'''ان پی-کامل''']] موجود باشد ٫ به طوری که زمان حل آن بر حسب [[چندجمله‌ای]] قابل کاهش به Hباشد: (L ≤ <sub>T</sub>H)به عبارتی دیگر L را میتوان در زمان زیاد با ماشین [[ویکی‌پدیا:oracle|اوراکل]] H حل کرد.به طور غیررسمی ما میتوانیم به الگوریتمی فکر کنیم که میتواندزیرروالی را برای حل H فراخوانی کند و L را در زمان زیاد حل کند اگر فراخوانی آن زیر روال فقط یک گام برای محاسبه طول بکشد.
مسائل ان پی-سخت ممکن است از هر نوعی باشند:[[مسئله تصمیم|مسائل تصمیم گیری]]٫[[ویکی‌پدیا:search problems|مسائل جستجو]]٫[[ویکی‌پدیا:optimization problems|مسائل بهینه سازی]].
طبق روال تعریف: (توجه داشته باشید که اینها صرفاً ادعا هستند نه تعریف):
* مسالهٔمسئلهٔ H حداقل به سختی مسالهٔمسئلهٔ L است. چون H میتواند برای حل L استفاده شود.
* چون L [[ویکی‌پدیا:NP-compelete|ان پی-کامل]] است ٫بنابراین به سختی مسائل نوع '''ان پی '''است. مسالهٔمسئلهٔ H حداقل به سختی مسالهٔمسئلهٔ '''ان پی''' است.اما H نباید '''ان پی''' باشد و بنابراین نباید از نوع [[مسئله تصمیم|مسائل تصمیم گیری]] باشد(حتی اگر از نوع مسایل تصمیم گیری باشد نیازی ندارد ازنوع مسائل '''ان پی''' باشد.)
* مسائل [[ویکی‌پدیا:NP-complete|'''ان پی-کامل''']] با زمان زیاد با ۱ واحد کاهش به یکدیگر تبدیل میشوند(همچنین تحولات چند جمله‌ای نیز نامیده میشوند.)
همهٔ مسائل [[ویکی‌پدیا:NP-complete|'''ان پی-کامل''']] با کاهش H میتوانند در زمان زیاد حل شوند.بنابراین همهٔ مسائل در '''ان پی''' قابل کاهش به H هستند.توجه داشته باشید هر چند این شامل ترکیب کردن ۲ تبدیل است:
# از [[ویکی‌پدیا:NP-complete|'''ان پی-کامل:''']][[مسئله تصمیم|مسائل تصمیم گیری]] به مسائل [[ویکی‌پدیا:NP-complete|'''ان پی-کامل''']] با تحولات چندجمله‌ای
# از L به H با کاهش چند جمله‌ای [[ماشین تورینگ|تورینگ]]. [//fa.wikipedia.org/wiki/ماشین_تورینگ]
* اگر یک [[الگوریتم]] چندجمله‌ای برای هر مسالهٔمسئلهٔ ان پی-سخت موجود باشد٫ سپس [[الگوریتم]]های چندجمله‌ای برای همهٔ مسائل در '''ان پی '''وجود دارند و بنابراین [[مسئله برابری پی و ان‌پی]]
* اگر P ≠ NP باشد ٫ مسائل ان پی-سخت راه حلی در زمان‌های زیاد ندارند.زمانی که [[مسئله برابری پی و ان‌پی]] باشد ٫ مسائل حل نمی‌شوند.حتی اگر مسائل ان پی-سخت بتوانند در زمان زیاد حل شوند.
* اگر [[ویکی‌پدیا:optimization problems|مسائل بهینه سازی]] ٫H یک نسخهٔ تصمیم گیری [[ویکی‌پدیا:NP-complete|'''ان پی-کامل''']] داشته باشند٫ H یک ان پی-سخت است.
خط ۲۲:
 
== روش حل مسایل ان پی-سخت ==
روش‌های مختلفی برای حل سریع ولی نزدیک به بهینه برای یک مسالهٔمسئلهٔ ان پی-سخت وجود دارد:
* '''راه حل تقریبی قابل اثبات'''('''[[الگوریتم‌های تقریبی]]'''):که در آن یک الگوریتم سریع برای حل مسالهمسئله ارائه می‌شود ولی اثبات می‌شود که اندازهٔ خروجی ضریبی از اندازهٔ خروجی بهینهٔ مساله‌استمسئله‌است.
* '''[[الگوریتم مکاشفه‌ای|الگوریتم‌های مکاشفه‌ای]]''':با این که الگوریتم‌هایی سریع هستند و به صورت تقریبی جواب را به دست می‌آورند٫اما در مورد ضریب تقریب یا میزان خوبی الگوریتم اثباتی وجود ندارد.بسیاری از این الگوریتم‌ها به صورت تجربی آزمایش میشوند.برخی از این الگوریتم‌ها از «روش حریصانه» برای حل استفاده میکنند.