区間演算

区間演算:誤差評価と信頼性のある値計算



区間演算は、値計算における丸め誤差や測定誤差を評価し、信頼できる結果を得るための学的な手法です。1950年代から1960年代にかけて学者たちによって開発されました。この手法は、すべての値を値の範囲として表現することで、不確実性を考慮に入れた計算を可能にします。

区間演算の基本概念



通常の値計算では、例えば人の身長を2メートルと表現しますが、区間演算ではこれを1.97メートルから2.03メートルの範囲として表現します。このように範囲で値を扱うことで、計算途中の丸め誤差を把握し、最適化問題微分方程式の信頼できる求解を支援します。

学的には、不確かな実[[数]] x を扱う代わりに、x を含む区間 [a, b] を扱います。x を関 f に代入した値も不明であるため、区間演算では関 f は区間 [c, d] を生成します。この [c, d] は、[a, b] 内のすべての x について f(x) が取りうる値の範囲を表します。

演算の定義



区間演算では、四則演算を以下のように定義します。

加法:
[x₁, x₂] + [y₁, y₂] = [x₁ + y₁, x₂ + y₂]

減法:
[x₁, x₂] - [y₁, y₂] = [x₁ - y₂, x₂ - y₁]

乗法:
[x₁, x₂] ⋅ [y₁, y₂] = [min(x₁y₁, x₁y₂, x₂y₁, x₂y₂), max(x₁y₁, x₁y₂, x₂y₁, x₂y₂)]

除法:
[x₁, x₂] / [y₁, y₂] = [x₁, x₂] ⋅ (1/[y₁, y₂]), ただし、0 ∉ [y₁, y₂]
ここで、

1/[y₁, y₂] = [1/y₂, 1/y₁], if 0 ∉ [y₁, y₂]
1/[y₁, 0] = [-∞, 1/y₁]
1/[0, y₂] = [1/y₂, ∞]
1/[y₁, y₂] = [-∞, 1/y₁] ∪ [1/y₂, ∞] = [-∞, ∞], if 0 ∈ (y₁, y₂)

これらの演算規則を用いることで、より複雑な関も区間演算に基づいて計算できます。

区間演算の応用



区間演算は、値を持たない推定量を扱うために様々な分野で使用されています。

集合反転
ロボットの行動計画
集合推定
安定性解析

丸め誤差解析



区間演算は、計算ごとに生じる丸め誤差を制御するために誤差解析で用いられます。計算が終わるごとに必ず真値を含む区間が得られるという利点があります。区間の端点間の距離は計算の誤差量を表しています。

区間ニュートン法



区間ニュートン法は、非線形方程式の精度保証付き値計算に用いられる手法であり、ニュートン法の一部を区間演算に置き換えたものです。この手法には解の存在定理があり、証明にはブラウワーの不動点定理が使われます。

計算機援用証明



区間演算は、学的な問題をコンピュータを用いて厳密に証明する計算機援用証明にも活用されています。

まとめ



区間演算は、値計算における不確実性を考慮し、信頼性のある結果を得るための強力なツールです。丸め誤差の解析や最適化問題の求解など、様々な分野で応用されています。IEEEによる標準規格も整備されており、今後の発展が期待されます。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。