MINUIT(現在はMINUIT2 )は、欧州原子核研究機構(CERN)で開発された数値 最小化 ソフトウェアライブラリです。ユーザー定義関数を最小化するパラメータ値を探索し、最小値付近の関数をスキャンすることでパラメータの信頼区間を計算する 複数のアルゴリズムを提供します。
このソフトウェアは、 1970年代に物理学者フレッド・ジェームズによってFORTRAN プログラミング言語で開発され[1] 、 1996年(バージョン96.03)までメンテナンスされていました。ROOTプロジェクトの一環として、 C++言語に移植され、MINUIT2と改名されました。
このソフトウェアは5つの最小化アルゴリズムを提供しており、簡単な入力コマンドで選択できます。推奨されるデフォルトアルゴリズムであるMIGRADは、「不正確な直線探索、安定したメトリック更新スキーム、そして正定値性チェックを備えた可変メトリック法」と説明されています。[2]
このプログラムは素粒子物理学で広く使用されており、数千の論文でMINUITの使用が引用されています。[3] 2000年代初頭、Fred Jamesはオブジェクト指向プログラミングを使用してC++でMINUITを実装するプロジェクトを開始しました。[4] MINUIT2はROOTリリースのオプションパッケージです。[5] [6] [7] 2014年10月現在[アップデート]、最新バージョンは2014年1月24日にリリースされた5.34.14です。[ 5] Javaポートが開発され、[8] C++コードへのPythonフロントエンドが利用可能です。[9]
参考文献
- ^ James, F. MINUIT - 関数最小化と誤差解析リファレンスマニュアル(PDF) (レポート). 94.1. CERNプログラムライブラリ詳細記述. D506. 2008年5月26日時点のオリジナルからのアーカイブ。
- ^ 「どの最小化ツールを使用するか」。
- ^ 「MINUITに言及している論文の文献検索」Inspire -高エネルギー物理学コンテンツ。「MINUIT」の現在のコンテンツを検索します
- ^ 「新しいC++ MINUITのホームページ」 2008年6月25日. 2010年4月11日時点のオリジナルよりアーカイブ。
- ^ ab "ROOTリファレンスガイド: Minuit2". root.cern . 2022年1月24日閲覧。ROOTを使用せずにフリースタンド版をダウンロードするためのリンクもあります。2022年1月時点でのファイルはMinuit2-5.34.14.tar.gzでした。
- ^ 「新しいC++ MINUITのホームページ」 2008年6月25日. 2010年4月11日時点のオリジナルよりアーカイブ。
- ^ 「ROOTリファレンスガイド: Minuit2最小化ライブラリ」。root.cern。アクセスした日付の現在の情報です。
- ^ “freehep-jminuit - プロジェクトの概要”.フリーHEP。 2006 年 9 月 14 日。
- ^ 「iminuit - MINUIT2 C++ パッケージの Jupyter 対応 Python フロントエンド」。GitHub。必要に応じて更新。v2.9.0 は 2022 年 1 月にリリースされました。
外部リンク
- F. JamesとM. Roos, Minuit: 関数最小化とパラメータ誤差および相関の解析のためのシステム, Comput.Phys.Commun. 10 (1975) 343-367