同一のモデルを扱っていても、異なるマシン上で解くと解の探索経路が異なることがあります。これは”Performance Variability”としてよく知られた現象です。例えばハードウェアの違いは分枝限定木内の探索経路に対して大きな影響を与えることがあります。さらに変数や制約の順序を変えたり、ランダムなシードを使用すると、数理モデルが同一であっても、性能に劇的な影響を与える可能性があります。これらについてはKochらによるMIPLIB 2010 paper にて説明されています。
”Performance Variability”が起こる理由は多岐にわたります。例えばGurobiは最適解を探索する際に、多くの選択を行います。選択の際の評価値が同じ、または十分に近いような選択肢が存在するときには、それが一見取るに足らないようなものであっても、計算環境の違いが異なる結果につながる可能性があります。計算環境の違いとは例えばOS、基本ライブラリ、ハードウェアなどが含まれます。
ConcurrentMIP mode において、Gurobiは”Performance Variability”を有効に活用しようとします。
ご利用しているモデルが”Performance Variability”に対してどの程度影響を受けやすいかを知るために、例えば random seed parameter を変えて実行しその結果を比較するなどの方法があります。
コメント
0件のコメント
記事コメントは受け付けていません。