Введение

Тип алгоритма приближения

В информатике (особенно в алгоритмике) схема полиномиального времени приближения (PTAS) — это тип алгоритма приближения для задач оптимизации (чаще всего, NP-трудных задач оптимизации). PTAS — это алгоритм, который принимает экземпляр задачи оптимизации и параметр ε > 0 и выдает решение, которое отличается от оптимального не более чем в (1 + ε) раз (или в (1 – ε) раз для задач максимизации). Например, для евклидовой задачи коммивояжера, PTAS выдаст маршрут длиной не более (1 + ε)L, где L — длина кратчайшего маршрута. Время работы PTAS должно быть полиномиальным относительно размера задачи для любого фиксированного ε, но может различаться для разных ε. Таким образом, алгоритм, работающий за время или даже , считается PTAS.

Детерминированный

Практическая проблема с алгоритмами PTAS заключается в том, что степень многочлена может резко возрастать при уменьшении ε, например, если время работы алгоритма составляет. Один из способов решения этой проблемы – определить эффективную полиномиальную схему аппроксимации времени (EPTAS), в которой время работы должно быть для некоторой константы c, не зависящей от ε. Это гарантирует, что увеличение размера задачи оказывает одинаковое относительное влияние на время работы, независимо от значения ε; однако, константа в асимптотической оценке "O" все еще может произвольно зависеть от ε. Иными словами, EPTAS работает за время FPT, где параметр – ε. Еще более строгим и полезным на практике является полностью полиномиальная схема аппроксимации времени (FPTAS), которая требует, чтобы время работы алгоритма было полиномиальным как от размера задачи n, так и от 1/ε. Если P ≠ NP, то FPTAS ⊂ PTAS ⊂ APX. Следовательно, при этом предположении, APX-трудные задачи не имеют PTAS. Другим детерминированным вариантом PTAS является квазиполиномиальная схема аппроксимации времени (QPTAS). QPTAS имеет временную сложность для каждого фиксированного ε > 0. Кроме того, PTAS может работать за время FPT для некоторой параметризации задачи, что приводит к параметризованной схеме аппроксимации.

Рандомизированный

Некоторые задачи, для которых не существует PTAS, могут допускать рандомизированный алгоритм с аналогичными свойствами – схему полиномиального рандомизированного приближения (PRAS). PRAS – это алгоритм, который на вход получает экземпляр задачи оптимизации или подсчета и параметр ε > 0 и за полиномиальное время выдает решение, которое с высокой вероятностью находится в пределах ε от оптимального. Обычно под "высокой вероятностью" подразумевают вероятность, превышающую 3/4, хотя, как и в большинстве классов вероятностной сложности, определение устойчиво к изменениям этого точного значения (минимальным необходимым условием, как правило, является значение, превышающее 1/2). Как и PTAS, PRAS должен иметь полиномиальное время работы относительно размера входных данных n, но не обязательно относительно ε. При дополнительных ограничениях на время работы относительно ε можно определить эффективную схему полиномиального рандомизированного приближения (EPRAS), аналогичную EPTAS, и полностью полиномиальную схему рандомизированного приближения (FPRAS), аналогичную FPTAS.

Как класс сложности

Термин PTAS также может использоваться для обозначения класса задач оптимизации, для которых существует PTAS. PTAS является подмножеством APX, и, если P ≠ NP, это строгое подмножество. Принадлежность к классу PTAS можно доказать с помощью PTAS-сведения, L-сведения или P-сведения, все из которых сохраняют принадлежность к PTAS и могут быть использованы для демонстрации PTAS-полноты. С другой стороны, доказательство того, что задача не принадлежит классу PTAS (то есть, что PTAS для нее не существует), может быть выполнено путем доказательства APX-трудности задачи, после чего существование PTAS привело бы к равенству P = NP. APX-трудность обычно доказывается с помощью PTAS-сведения или AP-сведения.