OMMX Python SDK 2.7.x#
2.7.0 には、同じ MPS ファイルから読み込まれる数学モデルと 実行可能領域が変わる修正が含まれます。更新時には、影響を受けるモデルと 過去のソルバーの結果を再確認してください。
2.7.0 の各ソルバーアダプターは、v2 系の OMMX 2.7.0 以降を必要とします。
バグ修正#
再生成した MIPLIB 配布版を読み込む (#1204)#
ommx.dataset.miplib2017() は、修正済みの v2 パーサーで元の MPS ファイルから
再生成した ghcr.io/jij-inc/ommx/v2.7/miplib2017:{name} を読み込みます。
Rust の MIPLIB ローダーも同じ配布版を使用します。バージョンなしの旧配布先から
取得したキャッシュが、修正版より優先されることはありません。
公開済みの参照先は固定し、patch 更新では同じ配布版を維持します。 配布形式または数学モデルを変更するときは minor 以上を更新し、新しい版の リポジトリで配布します。取得先は MIPLIB チュートリアルを参照してください。
MPS 読み込み時に省略された二値変数の境界を保持 (#1203)#
Instance.load_mps() と ommx.mps.load_file() が、INTORG/INTEND 内にあり
BOUNDS の指定がない変数を、Gurobi/HiGHS の MPS 解釈に従って [0, 1] の
二値変数として読み込むようになりました。従来は上限のない一般整数変数として
読み込んでいました。neos-2626858-aoos では17変数が影響を受け、二値変数の数が
209から192に変わっていました。
明示された境界指定は引き続き優先され、LO/LI 0 で指定した非負の整数変数は
上限なしのままです。パーサーの修正は保存済みの Artifact を書き換えません。
上記の配布先変更により、ommx.dataset.miplib2017() から再生成した問題を取得できます。