|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ 数 : [すう, かず] 1. (n,n-suf) number 2. figure ・ 数値 : [すうち] 【名詞】 1. numerical value ・ 値 : [あたい, ね] 【名詞・形容詞】1.value, variable 2. price, cost 3. worth, merit ・ 値安 : [ねやす] (n) cheapness ・ 安定 : [あんてい] 1. (adj-na,n,vs) stability 2. equilibrium ・ 安定性 : [あんていせい] inclination to stability, homeostasis, Stability ・ 定性 : [ていせい] 【名詞】 1. qualitative 2. stability of a substance
数値的安定性(すうちてきあんていせい、)は、数値解析におけるアルゴリズムの望ましい属性の1つ。「安定性」の正確な定義は文脈に依存するが、基本的にはアルゴリズムの正確性に関連する。 ある計算を実施する方法がいくつか存在することがあり、それらは理想的な実数や複素数では代数学的に等価だが、デジタルコンピュータで実行すると結果に差異が生じる。ある計算方法は途中で生じる誤差を弱めるし、別の計算方法は誤差を拡大させる。誤差を拡大させない計算方法は「数値的に安定」であるという。数値解析では、堅牢なアルゴリズム、すなわち数値的安定性のよいアルゴリズムを選択することが重要である。 == 例 == 不安定なアルゴリズムの例として、100個の数値の配列を加算するタスクを考える。話を単純化するため、使用するコンピュータは精度が2桁しかないとする(例えば、100以上の値を表すと、100、110、120 などと10単位でしか表せない)。 最も単純な方法は、次のような擬似コードになる。 sum = 0 for i = 1 to 100 do sum = sum + a end 見たところ問題はなさそうだが、配列の最初の要素が 1.0 で、他の99個の要素は全て0.01だったとしよう。数学の問題として考えれば、答は1.99になるはずである。しかし、精度が2桁しかないコンピュータでは、まず 1.0 が sum に加算されると、それに 0.01 を加算しても精度未満なので何の影響も与えない。従って最終的に得られる答は 1.0 となる。これではあまりよい近似とは言えない。 安定なアルゴリズムは、まず配列を要素の絶対値の昇順になるようにソートし、それから上記のコードを実行すればよい。そうするとゼロに近い小さい値を先に加算することになる。このようにすると、0.01 が先に加算されるので、0.99 となり、それに 1.0 を加算するので、結果は丸められて 2.0 になるだろう。近似としてはこちらの方がよい。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「数値的安定性」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Numerical stability 」があります。 スポンサード リンク
|