Jump to content

NP-твердость

(Перенаправлено с Np-hard )
Диаграмма Эйлера для P, NP, NP-полного и NP-трудного набора задач.
Диаграмма Эйлера для P , NP , NP-полного и NP-трудного набора задач. Левая часть действительна в предположении, что P≠NP , а правая часть действительна в предположении, что P=NP (за исключением того, что пустой язык и его дополнение никогда не являются NP-полными).

В теории сложности вычислений вычислительная задача H называется NP-трудной , если для каждой задачи L которая может быть решена за недетерминированное полиномиальное время , существует сокращение за полиномиальное время от L до H. , То есть, если предположить, что решение H занимает 1 единицу времени, H решение можно использовать для решения L за полиномиальное время. [ 1 ] [ 2 ] Как следствие, поиск алгоритма с полиномиальным временем для решения одной NP-сложной задачи даст алгоритмы с полиномиальным временем для всех задач класса сложности NP . Поскольку предполагается, но не доказано, что P≠NP , маловероятно, что существуют какие-либо алгоритмы с полиномиальным временем для решения NP-сложных задач. [ 3 ] [ 4 ]

Простым примером NP-трудной задачи является задача о сумме подмножеств .

Неформально, если H NP-трудна, то решить ее по крайней мере так же сложно, как и задачи из NP . Однако обратное утверждение неверно: некоторые проблемы неразрешимы и, следовательно, их решить даже труднее, чем все проблемы из NP, но они, очевидно, не являются NP-сложными (если только P=NP). [ 5 ]

Определение

[ редактировать ]

Проблема решения H является NP-трудной, когда для каждой проблемы L в NP существует полиномиальное сокращение числа «много-один» от L до H . [ 1 ] : 80 

Другое определение состоит в том, чтобы потребовать, чтобы существовало полиномиальное сокращение NP-полной задачи G к H . [ 1 ] : 91  Поскольку любая проблема L в NP сводится за полиномиальное время к G , L, в свою очередь, сводится к H за полиномиальное время, поэтому из этого нового определения следует предыдущее. Он не ограничивает класс NP-трудных задачами решения, а также включает задачи поиска или задачи оптимизации .

Последствия

[ редактировать ]

Если P ≠ NP, то NP-сложные задачи невозможно решить за полиномиальное время.

Некоторые NP-сложные задачи оптимизации могут быть полиномиально аппроксимированы до некоторого постоянного коэффициента аппроксимации (в частности, в APX ) или даже до любого коэффициента аппроксимации (в PTAS или FPTAS ). Существует множество классов аппроксимации, каждый из которых позволяет аппроксимировать до определенного уровня. [ 6 ]

Все NP-полные задачи также являются NP-сложными (см. Список NP-полных задач ). Например, задача оптимизации поиска циклического маршрута с наименьшей стоимостью через все узлы взвешенного графа, широко известная как задача коммивояжера , является NP-трудной. [ 7 ] : Еще одним примером является проблема суммы подмножества для данного набора целых чисел, любое из их непустых подмножеств в сумме дает ноль? Это проблема принятия решения , и она оказывается NP-полной.

Существуют задачи принятия решения, которые являются NP-сложными , но не NP-полными, например проблема остановки . Это проблема, которая спрашивает: «Для данной программы и ее ввода будет ли она работать вечно?» Это вопрос «да / нет» , как и проблема принятия решения. Легко доказать, что проблема остановки NP-трудна, но не NP-полна. Например, проблему логической выполнимости можно свести к проблеме остановки, преобразовав ее в описание машины Тьюринга , которая пробует все присваивания значений истинности и когда находит такое, которое удовлетворяет формуле, она останавливается, а в противном случае переходит в бесконечный цикл. Также легко увидеть, что проблема остановки не относится к NP, поскольку все проблемы в NP разрешимы за конечное число операций, но проблема остановки, вообще говоря, неразрешима . Существуют также NP-сложные задачи, которые не являются ни NP-полными , ни неразрешимыми . Например, язык истинных количественных булевых формул разрешим в полиномиальном пространстве , но не в недетерминированном полиномиальном времени (если только NP = PSPACE ). [ 8 ]

Соглашение об именах NP

[ редактировать ]

NP-сложные задачи не обязательно должны быть элементами класса сложности NP. Поскольку NP играет центральную роль в вычислительной сложности , он используется в качестве основы нескольких классов:

НАПРИМЕР
Класс задач вычислительного решения, для которых любое заданное да -решение может быть проверено как решение за полиномиальное время с помощью детерминированной машины Тьюринга (или разрешимо с помощью недетерминированной машины Тьюринга за полиномиальное время).
NP-жесткий
Класс задач, которые по крайней мере так же сложны, как и самые сложные задачи в NP. Проблемы, которые являются NP-сложными, не обязательно должны быть элементами NP; более того, они могут быть даже неразрешимыми.
NP-полный
Класс задач решения, который содержит самые сложные задачи в NP. Каждая NP-полная задача должна находиться в NP.
NP-легко
Максимум так же сложно, как NP, но не обязательно в NP.
NP-эквивалент
Проблемы принятия решений, которые одновременно являются NP-сложными и NP-простыми, но не обязательно в NP.
NP-средний
Если P и NP различны, то в области NP существуют проблемы решения, которые находятся между P и NP-полными проблемами. (Если P и NP относятся к одному и тому же классу, то NP-промежуточных задач не существует, потому что в этом случае каждая NP-полная задача попадет в P, и по определению каждая проблема из NP может быть сведена к NP-полной задаче. )

Области применения

[ редактировать ]

NP-сложные проблемы часто решаются с помощью языков, основанных на правилах, в таких областях, как:

См. также

[ редактировать ]
  1. ^ Перейти обратно: а б с Леувен, Ян ван , изд. (1998). Справочник по теоретической информатике . Том. А. Алгоритмы и сложность. Амстердам: Эльзевир. ISBN  0262720140 . OCLC   247934368 .
  2. ^ Кнут, Дональд (1974). «Постскриптум о NP-трудных задачах». Новости ACM SIGACT . 6 (2): 15–16. дои : 10.1145/1008304.1008305 . S2CID   46480926 .
  3. ^ Дэниел Питер Бовет; Пьерлуиджи Крещенци (1994). Введение в теорию сложности . Прентис Холл. п. 69. ИСБН  0-13-915380-2 .
  4. ^ «Shtetl-Optimized» Архив блога » Научное обоснование P≠NP» . www.scottaaronson.com . Проверено 25 сентября 2016 г.
  5. ^ «Является ли неразрешимое (дополнение R) подмножеством NP-трудного?» . Обмен стеками в области компьютерных наук . Проверено 9 февраля 2024 г.
  6. ^ Эскофье, Б.; Пашос, Б.Т. (2010). «Обзор структуры классов аппроксимации». Обзор компьютерных наук . 4 (1): 19–40.
  7. ^ Лоулер, Эл . ; Ленстра, JK ; Риннуй Кан, AHG; Шмойс, Д.Б. (1985), Проблема коммивояжера: экскурсия по комбинаторной оптимизации , John Wiley & Sons, ISBN  0-471-90413-9 .
  8. ^ Точнее, этот язык PSPACE-полный ; см., например, Вегенер, Инго (2005), Теория сложности: исследование пределов эффективных алгоритмов , Springer, стр. 189, ISBN  9783540210450 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: fa9039978c4a679f5fd36b8140faadee__1721804220
URL1:https://arc.ask3.ru/arc/aa/fa/ee/fa9039978c4a679f5fd36b8140faadee.html
Заголовок, (Title) документа по адресу, URL1:
NP-hardness - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)