数学において、近似理論とは、関数をより単純な関数でいかに最適に近似できるか、そしてそれによって生じる誤差を定量的に特徴づける方法を扱う学問である。ここでいう「最適」と「より単純」の意味は、応用分野によって異なる。
密接に関連するトピックとして、一般化フーリエ級数による関数の近似、すなわち直交多項式に基づく項の和に基づく近似があります。
特に興味深い問題の一つは、コンピュータの数式ライブラリにある関数を、コンピュータや電卓で実行可能な演算(例えば加算や乗算)を用いて近似し、その結果が実際の関数にできるだけ近くなるようにすることです。これは通常、多項式近似または有理数近似(多項式の比)を用いて行われます。
目的は、近似値を実際の関数にできるだけ近づけることであり、通常は基となるコンピュータの浮動小数点演算の精度に近い精度を目指します。これは、高次の多項式を使用するか、または多項式が関数を近似する領域を狭めることによって実現されます。領域の狭めは、近似対象の関数に対する様々な加算式やスケーリング式を用いることで実現できる場合が多くあります。現代の数学ライブラリでは、領域を多数の小さなセグメントに分割し、各セグメントに対して低次の多項式を用いることがよくあります。
定義域(通常は区間)と多項式の次数が決定されたら、最悪ケースの誤差を最小化するように多項式自体を選択します。つまり、目標は、の最大値を最小限に抑えることです。ここで、P ( x )は近似多項式、f ( x )は実際の関数、xは選択された区間内で変化する。性質の良い関数の場合、N次多項式が存在し、誤差曲線はの間で往復振動する。そして合計でN + 2 回発生し、最悪の場合のエラーは曲線上のN + 1 個の点を補間できるN次多項式が存在することがわかります。このような多項式が常に最適であることは、等振動定理によって証明されています。このような多項式が存在しないような人工的な関数f ( x )を作ることは可能ですが、実際にはそのようなケースはまれです。
例えば、右側のグラフは、N = 4 の場合の log(x) と exp(x) の近似誤差を示しています。最適な多項式を表す赤い曲線はレベルであり、つまり、 の間で振動します。そしてその通りです。いずれの場合も、極値の数はN +2、つまり6です。2つの極値は区間の両端、グラフの左端と右端にあります。

これが一般的に正しいことを証明するために、Pを記述された性質を持つ次数Nの多項式とします。つまり、 N + 2 個の極値を持つ誤差関数を生成し 、それらの極値は符号が交互に変化し、大きさが等しいとします。右側の赤いグラフは、N = 4の場合のこの誤差関数がどのような形になるかを示しています。Q ( x ) (その誤差関数は右側の青いグラフに示されています) を、 Pよりもfの近似としてより適切な別のN次多項式とします。特に、P − fの極値が発生する各値x iに対して、 Q はPよりもfに近いので、
P − fの最大値がx iで発生する場合、
そして、 P − fの最小値がx iで発生する場合、
したがって、グラフからわかるように、[ P ( x ) − f ( x )] − [ Q ( x ) − f ( x )] はx iのN + 2 個の値に対して符号が交互に変化する必要があります。しかし、[ P ( x ) − f ( x )] − [ Q ( x ) − f ( x )] はP ( x ) − Q ( x )に簡約され、これは次数Nの多項式です。この関数は少なくともN + 1 回符号が変化するため、中間値の定理により、 N + 1 個の零点を持ちますが、これは次数Nの多項式では不可能です。
与えられた関数をチェビシェフ多項式で展開し、目的の次数で展開を打ち切ることで、最適値に非常に近い多項式を得ることができる。これは、通常の三角関数の代わりにチェビシェフ多項式を用いる、関数のフーリエ解析に似ている。
関数のチェビシェフ展開における係数を計算する場合:
そしてその後シリーズを打ち切る項では、f ( x )を近似するN次多項式が得られます。
この多項式がほぼ最適である理由は、急速に収束するべき級数を持つ関数の場合、ある項で級数を打ち切ると、打ち切りによって生じる総誤差が、打ち切り後の最初の項に近くなるためです。つまり、打ち切り後の最初の項が、それ以降のすべての項を支配します。展開がバックリング多項式による場合も同様です。チェビシェフ展開が打ち切られた場合、誤差は、チェビシェフ多項式はレベルであるという性質を持ち、区間[−1, 1]内で+1と−1の間で振動します。N + 2 レベルの極値を持つ。これは、 f ( x ) とそのチェビシェフ展開との間の誤差が、これはN +2個の極値を持つレベル関数に近いので、最適なN次多項式に近い。
上記のグラフでは、青色の誤差関数は赤色の関数よりも優れている場合もあれば、劣っている場合もあり、これは青色の誤差関数が必ずしも最適な多項式ではないことを意味します。この差異は、べき級数が非常に速く収束する指数関数(exp関数)の場合、対数関数(log関数)の場合よりも深刻ではありません。
チェビシェフ近似は、数値積分手法であるクレンショー・カーティス求積法の基礎となっている。
レメズアルゴリズム(Remesと表記されることもある)は、与えられた区間において、与えられた関数f ( x ) を近似する最適な多項式P ( x ) を生成するために使用されます。これは反復アルゴリズムであり、誤差関数がN +2 個の極値を持つ多項式に収束します。上記の定理により、その多項式は最適です。
レメズのアルゴリズムは、 N +2個のテストポイントが与えられた場合に、レベルと交互の誤差値をもたらすN次多項式を構築できるという事実を利用している。
N +2個のテストポイントが与えられた場合、、...(どこそして(これらは近似区間の端点であると考えられる)これらの式を解く必要がある。
右側の符号は交互に変化する。
つまり、
以来、...、与えられたもの、彼らの全ての力は知られており、、...、も既知である。つまり、上記の式はN +2個の変数に関するN +2個の線形方程式にすぎない。、、...、、 そしてテストポイントが与えられた場合、...、このシステムを解くと、多項式Pと数が得られます。。
下のグラフは、これの一例を示しており、4次多項式を近似しています。[−1, 1] の範囲。テストポイントは −1、−0.7、−0.1、+0.4、+0.9、および 1 に設定されました。これらの値は緑色で示されています。結果値は4.43 × 10 −4です

エラーグラフは確かに値を取ります端点を含む 6 つのテストポイントでは、極値ではないことがわかっています。4 つの内部テストポイントが極値であった場合 (つまり、関数P ( x ) f ( x ) がそこで最大値または最小値を持っていた場合)、多項式は最適になります。
レメズのアルゴリズムの第 2 段階は、誤差関数が実際に局所最大値または最小値をとったおおよその位置にテスト ポイントを移動することです。たとえば、グラフを見ると、-0.1 の点はおよそ -0.28 にあるべきだったことがわかります。このアルゴリズムでこれを行う方法は、ニュートン法を 1 回実行することです。P ( x ) - f ( x )の 1 階および 2 階導関数がわかっているので、導関数がゼロになるようにテスト ポイントをどれだけ移動する必要があるかを概算できます。
多項式の導関数を計算するのは簡単です。f ( x )の 1 階および 2 階導関数も計算できなければなりません。Remez のアルゴリズムでは、計算する能力が必要です。、、 そして極めて高い精度で。アルゴリズム全体は、結果に求められる精度よりも高い精度で実行されなければならない。
テストポイントを移動した後、線形方程式の部分が繰り返され、新しい多項式が得られ、ニュートン法が再び使用されてテストポイントが再び移動されます。このシーケンスは、結果が所望の精度に収束するまで続けられます。このアルゴリズムは非常に速く収束します。収束は、テストポイントが範囲内にある場合、性質の良い関数では二次関数になります。正しい結果のおよそ次のラウンド後の正しい結果について。
レメズのアルゴリズムは通常、チェビシェフ多項式の極値を選択することから始まる。初期点として、最終的な誤差関数はその多項式に類似するからです。