- 著者
-
中山 大輔
- 巻号頁・発行日
- (Released:2018-04-13)
本論文では、精度保証付き数値計算におけるaffine演算を拡張した新しい算法の提案・実装を行い、その算法が有用な場面について論じる。 精度保証付き数値計算で用いられる区間演算の算法やライブラリは、一般に区間幅が狭いことを前提に設計されており、入力の区間幅が大きいと意味のある計算結果を返さない場合がある。そのため、入力の区間幅がある程度の大きさを持つ場合は何らかの工夫をする必要があり、簡単なものでは入力の区間を分割するということが考えられる。なお、多倍長演算を用いることも考えられるが、これは丸め誤差を軽減させるためのものなので、「入力の区間幅が大きい場合でも意味のある出力を得られるようにする」という目的には適していない。 近年、高次元の問題への精度保証付き数値計算の応用が行われているが、入力区間の分割は入力変数の個数に関して指数関数的な計算時間の増加をもたらすので、高次元の問題ではできる限り入力区間の分割を行わずに計算ができる必要がある。区間の間の相関を考慮することで計算時の区間拡大を抑える演算でaffine演算というものがあるが、これは非線形な演算を一次式で近似するため、割り算などの演算に対して精度が出にくい場合がある。そこで、affine演算を拡張し、非線形な演算を二次式で近似することを考える。 affine演算を拡張したものを「拡張affine演算」と呼ぶことにし、拡張affine演算における四則演算を実装したライブラリを作成した。数値実験により、出力の精度が一定以下になることが求められていて入力を分割しなければならないような状況では、affine演算よりも拡張affine演算の方が速度の面で優れている場合があり、特に入力が多変数となると、拡張affine形式の方が数百倍程度早く計算できる場合があることがわかった。
2017