MathOpt とは
MathOpt は、線形計画問題(LP)や混合整数プログラミング問題(MIP)などの数学の最適化問題をモデル化して解くためのライブラリです。MathOpt は、モデリングと解を分離するため、ユーザーが列挙型(およびビルド依存関係)を変更して解法を選択することにより、解法を切り替えられるようになります。
2023 年の JuMP カンファレンス プレゼンテーションで発表された MathOpt の簡単な紹介については、こちらの動画をご覧ください。
MathOpt の機能
MathOpt モデルには次のものを含めることができます。
- 整数または連続変数
- 線形制約または二次制約
- 線形または二次的な目標
- 複数の階層目標を設定できる
- 特殊な MIP の制約(SOS、指標、今後さらに追加予定)
- 円錐制約(2 次の円錐、今後さらに追加される)
モデルはソルバーとは独立して定義され、ソルバーは相互に入れ替えることができます。MathOpt は、以下のソルバーに対応しています。
MathOpt には、最適化モデルを構築するために、C++ と Python のクライアント ライブラリが用意されています。
MathOpt は、次のような多くの高度な機能に対応しています。
- 実現不可能分析(Irreducible Infeasible Set(IIS)、Gurobi のみ)
- 増分ソルビング
- コールバック
- 二重
- Primal rays と Dual rays
- 最適ではない基本ソリューションと二重ソリューション
- 変数と制約の削除
- ウォーム スタート(ソリューション別またはベース別)
- 解約の詳しい理由
- 分岐優先度
- 割り込み
- 解法に依存しない多くのパラメータ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-08-09 UTC。
[null,null,["最終更新日 2024-08-09 UTC。"],[[["MathOpt is a library for modeling and solving mathematical optimization problems, including linear programming (LP) and mixed integer programming (MIP)."],["MathOpt allows users to define models independently of solvers, enabling easy switching between various solvers like GLOP, PDLP, CP-SAT, SCIP, GLPK, Gurobi, and HiGHS."],["MathOpt supports a wide range of features including linear and quadratic constraints and objectives, integer and continuous variables, hierarchical objectives, and specialized MIP constraints."],["MathOpt provides client libraries in C++ and Python, along with a remote solving service for larger problems."],["MathOpt offers advanced features like infeasibility analysis, incremental solving, callbacks, duality, primal and dual rays, and more."]]],["MathOpt is a library for modeling and solving mathematical optimization problems, such as LPs and MIPs. It supports continuous or integer variables, linear/quadratic constraints and objectives, and specialized MIP/conic constraints. Users can switch between solvers like GLOP, PDLP, CP-SAT, SCIP, GLPK, Gurobi, and HiGHS, independently of the model's definition. MathOpt offers C++ and Python client libraries with example, and provides features such as infeasibility analysis, incremental solving, callbacks, duality, and warm starts.\n"]]