大規模最適化問題、グラフ探索、機械学習やデジタルツインなど

旧名:最適化問題に対する超高速&安定計算

MIPLIB2003 :Gurobi 4.0.0 と CPLEX 12.2

すでにこちらのブログで報告したように、CPLEX 12.2 で MIPLIB2003 の ds インスタンスの最適解を求めることができた。計算機環境や CPLEX のログファイルは以下の通りである。

CPLEX 12.2 ログファイル

○計算サーバ 1(2 CPU x 6 コア = 12 コア)
CPU : AMD Opteron 2435(2.6GHz / 6MB L3)x 2
Memory : 64GB(16 x 4GB / 800MHz)
OS : Fedora 13 for x86_64

計算機環境が異なるので単純な比較は出来ないのだが、Gurobi 4.0.0 を用いて ds インスタンスを途中まで解いたみた。CPLEX 12.2 で最適解を求めることができたので、こちらのプロセスは停止した。

Gurobi 4.0.0 ログファイル

○計算サーバ2 (2CPU x 4 コア = 8 コア)
CPU : AMD Opteron 2356 2.3GHz x 2
Memory : 32GB
OS : Vine Linux 5.1 for X86_64

Gurobi 4.0.0 の方は停止時で以下のようになっているので、830190s 時で Gap が 60.4% もある。

Nodes | Current Node | Objective Bounds | Work
Expl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time
1123081 744175 142.94245 1799 265 202.48500 80.25328 60.4% 579 830190s

CPLEX 12.2 を実行した計算サーバ1の方が、コア数も多く CPU 単体の性能も高いのだが、それでも 831850s 時には Gap は 4.78% しかない。
Elapsed real time = 831850.54 sec. (tree size = 62314.36 MB, solutions = 84)
Nodefile size = 62175.09 MB (27485.56 MB after compression)
3118352 1764904 94.7152 197 95.4575 90.8962 1.79e+09 4.78%

また、CPLEX 12.2 で Gap 60.4% になるのは、49324s 後である。総合的に判断すると、このインスタンスに関しては CPLEX 12.2 の方が優れていると言えよう。

Elapsed real time = 49324.68 sec. (tree size = 2944.38 MB, solutions = 60)
Nodefile size = 2807.03 MB (1216.27 MB after compression)
115979 89792 cutoff 189.4900 74.9944 1.08e+08 60.42%