計算機科学において、多項式時間近似スキーム(英: polynomial-time approximation scheme、PTAS)は(大抵NP困難であるような)最適化問題に対する近似アルゴリズムの一種である。
PTASは最適化問題のインスタンスとパラメータ ε ε --> > 0 {\displaystyle \varepsilon >0} を入力として受け取り、多項式時間内に最適解の 1 + ε ε --> {\displaystyle 1+\varepsilon } 倍以下の解を求めることのできるアルゴリズムである(最大化問題の場合は 1 − − --> ε ε --> {\displaystyle 1-\varepsilon } 倍以上)。例えば、ユークリッド距離に基づく巡回セールスマン問題では、最適解の長さを L {\displaystyle L} としたとき、高々 ( 1 + ε ε --> ) L {\displaystyle (1+\varepsilon )L} の解を見つけることができる。[1]
PTASの実行時間は、 ε ε --> {\displaystyle \varepsilon } を固定すると、問題の大きさ n {\displaystyle n} の多項式であることが求められるが、 ε ε --> {\displaystyle \varepsilon } に対しては定められていない。このため、実行時間が O ( n 1 / ε ε --> ) {\displaystyle O(n^{1/\varepsilon })} や O ( n exp --> ( 1 / ε ε --> ) ) {\displaystyle O(n^{\exp(1/\varepsilon )})} オーダーであっても、PTASである。
PTASアルゴリズムがある現実的な問題は、εを小さくすると多項式の指数部が劇的に大きくなってしまう(例えば O ( n ( 1 / ε ε --> ) ! ) {\displaystyle O(n^{(1/\varepsilon )!})} のように)。この問題に対処するひとつの方法が効率的な多項式時間近似スキーム(EPTAS[2])と呼ばれる、実行時間が c {\displaystyle c} を ε ε --> {\displaystyle \varepsilon } と独立な定数として、 O ( n c ) {\displaystyle O(n^{c})} であるようなアルゴリズムである。この場合、どのようなεを選んでも問題の大きさは実行時間に与える影響は等しくなる。しかし、O記法における定数はεに対して任意に大きくなりうる。これに対してより強い制約として、実行時間が問題の大きさ n {\displaystyle n} と 1 / ε ε --> {\displaystyle 1/\varepsilon } 両方の多項式時間であるものを完全多項式時間近似スキーム(FPTAS[3])と呼ぶ。 ナップサック問題はFPTASがある問題の例である.
多項式的に有界な目的関数を持つどんな強度にNP困難な最適化問題も、P=NPでない限り、FPTASを持ち得ない。[4] しかし、逆は真ではない。例えば、P≠NPのとき、2つの制約をもつナップサック問題はFPTASを持たないが、たとえ目的関数が多項式的に有界の場合でも強度にNP困難ではない。[5]
P=NPでない限り、 F P T A S ⊊ ⊊ --> P T A S ⊊ ⊊ --> A P X {\displaystyle FPTAS\subsetneq PTAS\subsetneq APX} が成り立つ。すなわち、同じ仮定の下で、APX困難な問題はPTASを持たない。
別の決定論的なPTASの変形として、準多項式時間近似スキーム(QPTAS[6])がある。QPTASはある固定された ε ε --> {\displaystyle \varepsilon } に対して n p o l y l o g ( n ) {\displaystyle n^{polylog(n)}} の時間複雑度を持つ。
PTASを持たない問題が、PTASと似通った特徴を持つ多項式時間乱択近似スキーム(PRAS[7])を持つことがある。PRASは最適化問題のインスタンスとパラメータ ε ε --> > 0 {\displaystyle \varepsilon >0} を入力とし、多項式時間で『高い確率』で最適解の 1 + ε ε --> {\displaystyle 1+\varepsilon } 倍以下のソリューションを生成することのできるアルゴリズムである。『高い確率』とは慣習的に 3 / 4 {\displaystyle 3/4} 以上のことであるが、ほとんどの確率的計算複雑度のクラスは、この具体的な値に対してロバストである。PTASと同様にPRASは問題のサイズ n {\displaystyle n} に対して多項式の計算時間を持たねばならないが、 ε ε --> {\displaystyle \varepsilon } に対してはそうではない。 ε ε --> {\displaystyle \varepsilon } に対するEPTASと同様の制約を持つものを効率的多項式時間乱択近似スキーム(EPRAS[8])と呼ぶ。また、FPTASと同様の制約を持つものを完全多項式時間乱択近似スキーム(FPRAS[9])と呼ぶ。[4]