精度保証付き数値計算

現代非線形科学シリーズ 6

精度保証付き数値計算

数値計算による近似計算の検算を高速かつ効率的に行えるのが,精度保証付き数値計算である。本書では,近い将来,数値計算に精度保証を付加するのが日常的となる時代に向け,実際的なノウハウを初学者にもわかりやすいよう展開した。

ジャンル
発行年月日
2000/01/05
判型
A5 上製
ページ数
198ページ
ISBN
978-4-339-02605-4
精度保証付き数値計算
在庫僅少

定価

2,420(本体2,200円+税)

カートに入れる

電子版を購入

購入案内

  • 第22回電気通信普及財団賞 テレコムシステム技術賞を受賞いたしました。
  • 大川出版賞を受賞いたしました。
  • 内容紹介
  • まえがき
  • 目次
  • 著者紹介

数値計算による近似計算の検算を高速かつ効率的に行えるのが,精度保証付き数値計算である。本書では,近い将来,数値計算に精度保証を付加するのが日常的となる時代に向け,実際的なノウハウを初学者にもわかりやすいよう展開した。

数値計算法とは,連続数学の問題を計算機上で四則演算に還元して解く手法のことをいう。計算機が発明されたのは1940年代であるから,まだ半世紀しか経過していない。計算機の発明に深く関わったフォンノイマンとチューリングは,計算機の発明後,ただちに連立一次方程式の数値計算における誤差解析論を発表している。これにより,かなり一般的な連立一次方程式の解の,かなりよい近似が数値計算によって求められることが示された。これらは現代数値解析の研究の始まりである。その後半世紀経過し,多くの優れた研究者により数値解析理論は高度に発展した。また,計算機技術も驚くような発展をし,いまや少し前の大型計算機がパソコンとして一人に一台占有して使える時代となった。この間,多くの科学的発見に数値計算は貢献した。また,さまざまな工学的技術が数値計算をもとに構築された。

しかし,そのような現代になっても,数値計算のつぎのような基本問題が残されたままである。占部 実の言葉を借りよう。

「電子計算機を用いる数値計算にあっては,その計算は正確には行われない。四則演算の結果はそのつど四捨五入によって丸められるし,極限を含む無限演算はすべて有限演算で近似して行われる。したがって計算結果は,つねにある程度の誤差をともなっている。そこで,計算結果から正しい結論を得るためには,この計算結果に含まれている誤差を評価して真の値の範囲を確定することが必要になる。このことは,数値計算に従事している人たちの間ではあまりとり上げられなかったが,これは一つには結果を得るのに急でそこまで手がまわらなかったということ,また一つにはこのような仕事は労が多くて報われるものが少ないと考えられていたこと,この二つに原因があるように思われる。(中略)今後は計算結果の誤差評価を行って真の値の範囲を確定し,数値計算によって得られた結論を論理的にも正しいものにする必要がある。」(京都大学数理解析研究所講究録(1972)より抜粋)

連続数学の問題の真の解の存在を証明したり,真の解との誤差範囲が保証された精度のよい近似解を得る数値計算を精度保証付き数値計算とし寸。著者は1990年以来この分野の研究に取り組んできたが,最近になって,近似解の精度保証が近似解を得る子聞の数倍の手間(2倍程度)で可能であることに気づいた。

基本がシンプルなので数値計算のどの分野にも適用できる。こうして,精度保証付き数値計算の研究を始めて以来,10年来の夢であった“精度保証付き数値計算が簡単かつ高速にできる"ことが実現した。結果的にみれば,線形計算においては,丸めの制御を適切な場所で行い,従来の数値計算の資産を利用して精度保証付き数値計算を実行するという,シンプルな方法論になった。ただし,非線形系の計算については,区間演算の利用が必要となり,効率的な解析ができるようになるためには,CPUに実装する初等関数の精度に関する新しい規約づくりや,高速な区間演算ライブラリの開発など,従来の資産だけでは不十分で,新しい展開が必要となる場面も生じるものと思われる。

いずれにしても,数値計算の精度保証が簡単かつ高速にできるようになったので,近い将来,数値計算に精度保証を付加するのが日常的となるであろう。本書は,そのような時代に向けて,数値計算の各分野について高速で効率的な精度保証付き数値計算のための理論と,この10年間に蓄積した実際的なノウハウを展開したものである。記述の仕方としては,数値計算して近似解を求める段階の概要をまとめ,その精度を保証する過程を詳述するというスタイルをとった。これにより,数値計算の初学者であっても,本書を理解できるように工夫した。本書が“数値計算といえば精度保証付き数値計算のことである"時代が到来するのに少しでも役立てば,著者の喜びはこれに過ぎるものはない。

1999年11月
大石進一

1. 精度保証の原理
 1.1 精度保証付き数値計算とは
 1.2 浮動小数点数
  1.2.1 浮動小数点数
  1.2.2 浮動小数点数への丸めと四則演算
  1.2.3 10進数と2進数の変換
  1.2.4 C 言語における丸めの指定
 1.3 精度保証付き数値計算の基礎
  1.3.1 精度保証付き数値計算の原理
  1.3.2 区間解析
  1.3.3 中心と半径による区間
  1.3.4 関数解析を利用した精度保証の原理
 1.4 第1章の文献案内
 章末問題

2. 連立一次方程式
 2.1 近似解の数値計算法
 2.2 逆行列を用いた精度保証
  2.2.1 精度保証のための定理
  2.2.2 MATLAB によるプログラミング
  2.2.3 係数行列が区間行列の場合
  2.2.4 成分毎評価
 2.3 LU 分解を用いた高速精度保証
  2.3.1 事前誤差解析
  2.3.2 高速精度保証
 2.4 コレスキー分解
 2.5 スパース行列手法
  2.5.1 帯行列用LU分解
  2.5.2 スパース行列用精度保証プログラム
 2.6 ヤコビ法
 2.7 第2章の文献案内
 章末問題

3. 固有値問題
 3.1 近似解の計算法
  3.1.1 固有値の存在範囲
  3.1.2 べき乗法
  3.1.3 対称行列に対するハウスホルダー・ギブンス法(二分法)
  3.1.4 QR法
 3.2 固有値と固有ベクトルの精度保証
  3.2.1 対角化可能な行列のBauer-Fike 型事前評価
  3.2.2 対角化可能行列の固有値の計算値の精度保証
  3.2.3 対角化可能行列のBauer-Fike 型事後誤差評価
  3.2.4 対角化可能行列に対するHoffman-Wieland 型事前誤差評価
  3.2.5 実対称行列のすべての固有値の精度保証
  3.2.6 固有ベクトルの精度保証
  3.2.7 非線形方程式の解法を利用する方法
 3.3 特異値分解
  3.3.1 特異値分解
  3.3.2 一般逆行列と最小二乗解
  3.3.3 特異値分解の計算法
  3.3.4 特異値の精度保証
 3.4 第3章の文献案内
 章末問題

4. 線形計画法-単体法による解法
 4.1 線形計画法
  4.1.1 行列からの準備
  4.1.2 改訂単体法
 4.2 線形計画問題の解の精度保証
 4.3 第4章の文献案内
 章末問題

5. 関数の補間と積分
 5.1 関数の補間
  5.1.1 多項式の評価
  5.1.2 テイラー展開とその誤差評価
  5.1.3 補間多項式
  5.1.4 チェビシェフ補間
  5.1.5 初等関数の計算
 5.2 積分
  5.2.1 ニュートン-コーツの公式
  5.2.2 オイラー-マクローリンの和公式
 5.3 不定積分
 5.4 第5章の文献案内
 章末問題

6. 非線形方程式
 6.1 ニュートン法
  6.1.1 非線形方程式
 6.2 微分
 6.3 クラフチック法
  6.3.1 平均値形式とクラフチック作用素
  6.3.2 精度保証
 6.4 ホモトピー法
  6.4.1 ホモトピー法
  6.4.2 写像度
  6.4.3 解曲線の追跡
  6.4.4 ブラウアーの不動点定理
 6.5 第6章の文献案内
 章末問題

7. 関数方程式
 7.1 積分方程式
  7.1.1 基礎理論
  7.1.2 選点法
 7.2 第7章の文献案内
 章末問題

8. 多倍長計算
 8.1 多倍長演算とは
 8.2 無理数の計算
 8.3 数値計算で解くとは
 8.4 計算可能実数
  8.4.1 計算可能実数体
 8.5 計算可能関数
 8.6 第8章の文献案内
 章末問題

索引