Gurobi実行時のログ出力において、次のようなメッセージが現れることがあります。
User MIP start did not produce a new incumbent solution
このメッセージは与えられたMIPスタートが採用されなかったときに出力されます。これにはいくつかの原因が考えられます。
- 与えられたMIPスタートよりも良い解をすでに保持している。
- 与えられたMIPスタートが非許容であった。この場合次のような追加のメッセージが現れることがある。
User MIP start violates constraint c1 by 2934.000000000
- モデルや解に数値的な不安定性がある。例えばMIPスタートがギリギリ許容であるかトレランスの範囲内でしか許容にならない。
後半の2つのケースでは、MIPスタートが一旦不採用となりますが、前処理後に再度MIPスタートの検討を行う場合があります。その場合ログには次のように表示されます:
Another try with MIP start
もしMIPスタートが実行不可能と判断された理由を検証したい場合、モデル内の変数をMIPスタートの値に固定してみるという方法があります。(LB 属性と UB 属性の両方をMIPスタートの値に設定する)。
これによって得られたMIPモデルが実行不能な場合、このモデルでIISを計算し、実行不可能な原因を特定するのに役立つ追加情報を得ることができる可能性があります。
その他の資料
コメント
0件のコメント
記事コメントは受け付けていません。