Remezのアルゴリズム

提供: testwiki
ナビゲーションに移動 検索に移動

Remezのアルゴリズムテンプレート:Lang-en-short)、Remez法またはRemezの交換アルゴリズムテンプレート:Lang-en-short)とはテンプレート:仮リンクによって1934年に発表された、関数に簡単な近似関数を見つけるために使用される反復アルゴリズムであり、具体的には、関数をチェビシェフ空間一様ノルム Lを最適化することで求める。[1]

チェビシェフ空間の典型的な例は、 区間 C=[a,b]上の実連続関数空間における次数nチェビシェフ多項式の部分空間であり、与えられた部分空間内の最良近似の多項式は、多項式と関数の間の最大絶対差を最小にするものと定義される。 この場合、解の形式はテンプレート:仮リンクによって正確性が保証される。

手順

まず近似する関数fに対し、近似区間中のn+2のサンプル点の集合X={x1,x2,...,xn+2}を考える。Xは通常、区間中に線形に射影されたチェビシェフ多項式の極値を用いる。

  1. 未知数b0,b1...bnおよびEについて以下の線形連立方程式を解く
    b0+b1xi+...+bnxin+(1)iE=f(xi)i=1,2,...n+2
  2. biを多項式Pn(x)=bixiを形成する係数とする。
  3. 絶対誤差 |Pn(x)f(x)|が極大となる点mの集合Mを見つける。
  4. 誤差がすべてのmについて大きさが等しく、符号が交互である場合、 Pnは、最大誤差最小の近似多項式となる。 そうでない場合は、 XMに置き換え、上記の手順を繰り返す。
  5. 上記の手順を繰り返す。

結果は、最良近似多項式またはテンプレート:仮リンクと呼ばれる。

Remezアルゴリズムの実装における技術のレビューはW. Fraserによってなされた。 [2]

(文献[3]の第3.6節:'Remez's Algorithm'には解説と共にMaple言語による実装例が載っている.)

初期値の選択

多項式補間の理論における役割のため、近似の初期値としてチェビシェフノードが一般的に使用される。 ラグランジュ補間Ln(f)を用いた関数f最適化問題の初期化では、この近似の初期値が次の範囲にあることが示される。

fLn(f)(1+Ln)infpPnfp

ここで、ノード(t1,,tn+1)のラグランジュ補間演算子Lnのノルム(テンプレート:仮リンク)は

Ln=Λn(T)=max1x1λn(T;x)

と表される。

Tはチェビシェフ多項式の零点であり、ルベーグ関数は

λn(T;x)=j=1n+1|lj(x)|,lj(x)=iji=1n+1(xti)(tjti)

となる。

Theodore A. Kilgore、 [4] Carl de Boor、およびAllan Pinkus [5]は、各Lnに一意のtiが存在することを証明したが、(通常の)多項式については明示的に知られていない。 同様に、 Λ_n(T)=min1x1λn(T;x) 、およびノードの選択の最適性はΛnΛ_n0のように表現できる。

準最適ではあるが分析的に明示的な選択肢を提供するチェビシェフノードの場合、漸近的挙動は以下の様になることが知られている[6]

Λn(T)=2πlog(n+1)+2π(γ+log8π)+αn+1

テンプレート:Mathオイラー・マスケローニ定数

ここで、

0<αn<π72n2for n1,

であり、および上限[7]

Λn(T)2πlog(n+1)+1

があたえられる。

Lev Brutman [8]n3 かつT^が拡張されたチェビシェフ多項式の零点であるとき以下を示した。

Λn(T^)Λ_n(T^)<Λ316cotπ8+π641sin2(3π/16)2π(γlogπ)0.201

また、Rüdiger Günttner [9]は、 n40について

Λn(T^)Λ_n(T^)<0.0196

を示した。

詳細な議論

この節では、上記の手順の詳細について説明する。i0in+1である。

ステップ1

与えられたx0,x1,...xn+1に対して 、以下の線形連立方程式を未知数b0,b1...bnおよびEについて解く

b0+b1xi+...+bnxin+(1)iE=f(xi)

(1)iEの項が存在しているためノードx0,...,xn+1 は整列(単調増加もしくは単調減少)している必要があることがわかる。 このとき、この線形方程式には一意の解が存在する。また、標準的なライブラリのソルバーで線形方程式を解く場合はO(n3)の計算量となるが、この処理はO(n2)の計算量で得られることがわかっている。

以下に簡単な証明を次に示す。

f(x)に対してn次補間関数p1(x)を、(1)iについてn次補間関数p2(x)を最初のn+1ノード(x0,...,xn)について計算する。

p1(xi)=f(xi),p2(xi)=(1)i,i=0,...,n.

この計算のため、各補間関数の計算において0,...,n階の差商を使用したニュートン補間を用いるとそれぞれO(n2)の計算量となる。

多項式p2(x)xi1xiの間にi番目の零点がある( i=1,,n)。したがって、xnxn+1の間に零点はなく、p2(xn)p2(xn+1)(1)n と同符号である。

線形結合p(x):=p1(x)p2(x)Eは、n多項式であり、

p(xi)=p1(xi)p2(xi)E = f(xi)(1)iE,    i=0,,n.

と変形できる。

これは任意のEに対して、i=0,,nにおいて式b0+b1xi+...+bnxin+(1)iEと同じである。i=n+1とのときは

p(xn+1) = p1(xn+1)p2(xn+1)E = f(xn+1)(1)n+1E

となり、Eについて以下の式を得ることができる。

E := p1(xn+1)f(xn+1)p2(xn+1)+(1)n.

上述の通り、分母の2項は同じ符号を持つため、E及び p(x)b0+b1x++bnxn常に一意に定まる。

与えられたn+2の整列したノードでの誤差は、以下の通り正負の交互の順になる。

p(xi)f(xi) = (1)iE,  i=0,...,n+1.

de La Vallée Poussinの定理によれば、この条件下では誤差がEより小さいn次の多項式は存在しない。もしそのような多項式p~(x)が存在した場合、p(x)p~(x)=(p(x)f(x))(p~(x)f(x))はノードxiにおいて正負交互のままでありn+1個の零点を有することになるが、次数nの多項式ではありえない。 したがって、このEは、次数n多項式におけるで達成できる誤差の下限となる。

ステップ2

p(x)b0+b1x+...+bnxnとする。

ステップ3

次のように入力ノードx0,...,xn+1とそのエラー±Eを更新する。

p(x)f(x)について、零点によって区切られる正負の領域にそれぞれついて、正の領域でxiを極大値x¯iに置き換え、負の領域ではxi極小値x¯iに置き換える。 (期待するx¯0 Ax¯i近くxi 、そしてx¯n+1 Bで 。)このステップでは高い精度は必要なく2つの2次近似を使用した直線探索で十分である。 ( [10]

ここでzi:=p(x¯i)f(x¯i) とする。 各ziに対して絶対値|zi|E以上となる。 de La Vallée Poussinの定理とその証明は、 z0,...,zn+1についてのmin{|zi|}Eについても適用可能で、次数n最良多項式近似の最大誤差の下限と考えることができる。

また、 max{|zi|}は最大誤差の上限となる。

ステップ4

min{|zi|}max{|zi|}を最良多項式近似の最大誤差の下限と上限として、十分な精度、すなわち max{|zi|}min{|zi|}十分に小さいか、減少しなくなったら繰り返しを終了する。 これらの上下限は反復処理の収束状況を示していると考えられる。

派生

以下のような派生が有る。

  • 複数のサンプル点を、同時に最大絶対差の近くの場所に置き換える。
  • すべてのサンプル点を、すべての位置、交互の符号、最大差となるよう単一の反復で置き換える。 [11]
  • 浮動小数点演算を使用するコンピューターで関数を計算するために近似を使用する場合は、 相対誤差を使用して近似と関数の差を定義することがある。
  • 修正されたRemez交換アルゴリズムには、無誤差点制約が含まれることがある。 [11]
  • 最良有理関数近似を求めるためのRemezの算法。

関連項目

参考文献

テンプレート:Reflist

日本語の文献

  • 有本卓:「数値解析(1)」、コロナ社、ISBN 4-339-00124-4 (1981年4月30日)、§5.4.4:”最良近似有理関数の構成法”。
  • A.ラルストン、P.ラビノヴィッツ:「電子計算機のための数値解析の理論と応用<下>」、丸善、ISBN 4-89241-046-2 (1986年3月8日)、§7.9:"ミニマックス近似の構成"。

 

  1. E. Ya. Remez, "Sur la détermination des polynômes d'approximation de degré donnée", Comm. Soc. Math. Kharkov 10, 41 (1934);
    "Sur un procédé convergent d'approximations successives pour déterminer les polynômes d'approximation, Compt. Rend. Acad. Sc. 198, 2063 (1934);
    "Sur le calcul effectiv des polynômes d'approximation des Tschebyscheff", Compt. Rend. Acade. Sc. 199, 337 (1934).
  2. テンプレート:Cite journal
  3. Jean-Michel Muller: Elementary Functinos: Algorithms and Implementation(3rd Ed), Birkhäuser, ISBN 978-1-4899-7983-4 (2016)
  4. テンプレート:Cite journal
  5. テンプレート:Cite journal
  6. テンプレート:Cite journal
  7. T. Rivlin, "The Lebesgue constants for polynomial interpolation", in Proceedings of the Int. Conf. on Functional Analysis and Its Application, edited by H. G. Garnier et al. (Springer-Verlag, Berlin, 1974), p. 422; The Chebyshev polynomials (Wiley-Interscience, New York, 1974).
  8. テンプレート:Cite journal
  9. テンプレート:Cite journal
  10. David G. Luenberger: Introduction to Linear and Nonlinear Programming, Addison-Wesley Publishing Company 1973.
  11. 11.0 11.1 2/73 "The Optimization of Bandlimited Systems" – G. C. Temes, F. C. Marshall and V. Barcilon. Proceedings IEEE.