Русская Википедия:Псевдополиномиальный алгоритм

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

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

Более строгое определение выглядит так. Пусть <math>M(z)</math> – некоторая функция, задающая значение числового параметра индивидуальной задачи <math>z</math>. Если таких параметров несколько, в качестве <math>M(z)</math> можно взять или максимальное, или среднее значение, а если задача вовсе не имеет числовых параметров (например, раскраска графа, шахматы и т.п.), то <math>M(z) = 0</math>. Алгоритм называется псевдополиномиальным, если он имеет оценку трудоемкости <math>T_{max}(z) = O(P(|z|, M(z)))</math>, где <math>P</math> – некоторый полином от двух переменных.

Полиномиальный алгоритм является также и псевдополиномиальным (с полиномом, не зависящим от второго аргумента), обратное же не имеет места. Псевдополиномиальные алгоритмы, формально относящиеся к экспоненциальным, на практике работают как полиномиальные во всех случаях, кроме очень больших значений числового параметра.

Литература