CBC зависает после поиска оптимального решения - PullRequest
0 голосов
/ 16 мая 2019

Я пытаюсь использовать CBC для решения файла mps.Он часто зависает на длительные периоды времени и выходит без каких-либо сообщений.

Он также будет зависать даже после того, как найдет оптимальное решение.Я не знаю, почему он не возвращается к запросу.

Я переустановил последнюю версию 2.10 и пробовал на нескольких машинах с Windows 10.

Подсказки для входов и выходов ниже.

C:\my_directory>cbc
Welcome to the CBC MILP Solver
Version: Trunk (unstable)
Build Date: May  3 2019

CoinSolver takes input from arguments ( - switches to stdin)
Enter ? for list of commands or help
Coin:verbose 15
verbose was changed from 0 to 15
Coin:import SF_STD.mps
At line 8 NAME          swolf_co
At line 9 ROWS
At line 179948 COLUMNS
At line 539250 RHS
At line 539271 BOUNDS
At line 539402 ENDATA
Problem swolf_co has 179937 rows, 191943 columns and 619924 elements
Coin0008I swolf_co read with 0 errors
Coin:stat
Presolve 18316 (-161621) rows, 19174 (-172769) columns and 138258 (-481666) elements
Statistics for presolved model
Original problem has 24 integers (24 of which binary)


Problem has 18316 rows, 19174 columns (2 with objective) and 138258 elements
There are 1 singletons with objective
Column breakdown:
19165 of type 0.0->inf, 6 of type 0.0->up, 0 of type lo->inf,
0 of type lo->up, 1 of type free, 0 of type fixed,
0 of type -inf->0.0, 2 of type -inf->up, 0 of type 0.0->1.0
Row breakdown:
9660 of type E 0.0, 0 of type E 1.0, 0 of type E -1.0,
1 of type E other, 6 of type G 0.0, 0 of type G 1.0,
1 of type G other, 8646 of type L 0.0, 0 of type L 1.0,
2 of type L other, 0 of type Range 0.0->1.0, 0 of type Range other,
0 of type Free
Coin:solv
Continuous objective value is 1.25864e+08 - 1.81 seconds
Cgl0002I 6 variables fixed
Cgl0004I processed model has 18298 rows, 19156 columns (0 integer (0 of which binary)) and 137182 elements
Cbc3007W No integer variables - nothing to do
Cuts at root node changed objective from 1.25864e+08 to -1.79769e+308
Probing was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
Gomory was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
Knapsack was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
Clique was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
MixedIntegerRounding2 was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
FlowCover was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
TwoMirCuts was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)
ZeroHalf was tried 0 times and created 0 cuts of which 0 were active after adding rounds of cuts (0.000 seconds)

Result - Optimal solution found

Objective value:                125864301.49648696
Enumerated nodes:               0
Total iterations:               0
Time (CPU seconds):             905.83
Time (Wallclock seconds):       905.85

Все до Result - Optimal solution found работало быстро, но затем печаталось Cuts at root node changed objective from 1.25864e+08 to -1.79769e+308 и работало очень долго.Отключение порезов ничего не изменило.Эта конкретная линия больше не появляется, но цель все еще изменяется от 1.25864e + 08 до -1.06e15.Затем модели требуется около часа, чтобы вернуться к фактическому целевому значению 1.25864e + 08, которое является целочисленным оптимальным решением, а также решением для релаксации LP.

Решает в clp за несколько секунд.Файл mps был написан glpk и решает за несколько секунд в CPLEX.

Буду весьма признателен за любые указания, которые вы можете дать.

Я пробовал несколько версий cbc, и у меня все еще достаточно продолжительное время зависания для относительно простых проблем.Я пробовал форматы .lp и .mps (clp, кажется, решает .lp быстрее), но ничего не меняется.

...