INTLAB:高精度数値計算のための区間演算ライブラリ
INTLAB (Interval Laboratory) は、S.M. Rump 教授によって開発された、MATLAB および GNU Octave 上で動作する区間演算ライブラリです。Windows、
Linux、macOSといった主要な
オペレーティングシステムに対応しており、数値計算における精度の保証を必要とする幅広い分野で利用されています。
INTLAB の歴史
INTLAB は1998年12月30日に最初のバージョンが公開されて以来、継続的にアップデートが重ねられています。バージョン履歴は以下のとおりです。初期のバージョンから機能拡張や性能向上を続け、2015年にはGNU Octaveへの対応も追加されました。また、バージョン7からは有償ライブラリとなっています。
1998年12月30日: バージョン1公開
1999年3月6日: バージョン2公開
1999年11月16日: バージョン3公開
2002年3月7日: バージョン3.1公開
2002年12月8日: バージョン4公開
2002年12月27日: バージョン4.1公開
2003年1月22日: バージョン4.1.1公開
2003年11月18日: バージョン4.1.2公開
2004年4月4日: バージョン5公開
2005年6月4日: バージョン5.1公開
2005年12月20日: バージョン5.2公開
2006年5月26日: バージョン5.3公開
2007年5月31日: バージョン5.4公開
2008年11月5日: バージョン5.5公開
2009年5月8日: バージョン6公開
2012年12月12日: バージョン7公開 (有償化)
2013年6月24日: バージョン7.1公開
2014年5月10日: バージョン8公開
2015年1月22日: バージョン9公開 (GNU Octave対応)
2016年12月7日: バージョン9.1公開
2017年5月29日: バージョン10公開
2017年7月24日: バージョン10.1公開
2017年12月15日: バージョン10.2公開
2019年1月7日: バージョン11公開
2020年3月6日: バージョン12公開
INTLAB の主要機能
INTLAB は、数値計算における様々な課題に対応できるよう、多様な機能を提供しています。主な機能は以下の通りです。
数値線形代数: 行列演算、連立方程式の解法、固有値問題の解法、
最小二乗法など。
求根アルゴリズム: 非線形方程式の数値解を求めるためのアルゴリズム。
常微分方程式の数値解法: バージョン11から搭載された機能で、AWA toolbox と Taylor model toolbox の2つのツールボックスが提供されています。
自動微分: 関数の微分を自動的に計算する機能。
最適化問題: 関数の最小値または最大値を求めるためのアルゴリズム。
数値積分: 定積分を数値的に計算する機能。
高速フーリエ変換: フーリエ変換を高速に計算するアルゴリズム。
その他: ガンマ関数、アフィン演算など。
INTLAB の活用事例
INTLAB は、様々な数値計算アプリケーションで活用されています。具体的には、VERSOFT (MATLABで開発されたライブラリ) や INTSOLVER (大域最適化問題を解くためのライブラリ) といったソフトウェアに組み込まれています。また、SIAM 10-digit challenge のような数値計算上の難問の解決にも貢献しています。
INTLAB が参照している文献
INTLAB は、その開発において多くの数値解析に関する論文を参照しています。これらの文献リストは、INTLAB の `Contents.m` ファイルに掲載されています。
開発協力者
INTLAB の開発には、S.M. Rump 教授に加えて、大石進一氏、Cleve Moler 氏、Volker Mehrmann氏など多くの研究者が貢献しています。
参考文献
INTLAB の開発や区間演算に関する多くの論文が、英語、ドイツ語、日本語で発表されています。これらの文献は、INTLAB のウェブサイトや関連文献リストで確認できます。
外部リンク
INTLAB 公式サイト
INTLAB 開発協力者一覧
VERSOFT
INTSOLVER
精度保証ノート
AWA toolbox の簡単なデモ
Taylor model toolbox の簡単なデモ
INTLAB version 9 の重要性
Intlab 11 の精度保証付き ODE Solver