Hello,
I have an MIP model and intend to solve it with the CPLEX solver. It happens that the CPLEX cannot find an initial solution for a few large-scale instances in a limited time. So, I would like to know whether there is any way that I can use the CPLEX presolve to report a dual bound value for the problem (if it could not find a feasible initial solution?)
Best, Amir.
CPLEX presolve for dual bound value
Re: CPLEX presolve for dual bound value
Model attribute objEst (https://www.gams.com/latest/docs/UG_Gam ... MSAOobjest) gives you the dual bound even if there is no solution. Take model dice (https://www.gams.com/latest/gamslib_ml/ ... _dice.html) from the GAMS model library and modify as follows to get Cplex to terminate without a feasible integer solution:
After the run that terminates as follows:
you find the dual bound displayed:
Hope this helps,
-Michael
Code: Select all
...
xdice.resLim = 20;
$onecho > cplex.opt
preind 0
heurfreq 0
rinsheur 0
nodelim 1
cutlo 22
$offecho
xdice.optfile = 1; option solver=cplex;
solve xdice using mip max wnx;
display xdice.objest;
...
Code: Select all
0 0 23.2941 71 Cuts: 101 551
0 0 23.2941 70 Cuts: 5 555
Detecting symmetries...
0 2 23.2941 70 23.2941 555
Elapsed time = 0.06 sec. (83.06 ticks, tree = 0.01 MB, solutions = 0)
Flow cuts applied: 32
Mixed integer rounding cuts applied: 73
Zero-half cuts applied: 2
Root node processing (before b&c):
Real time = 0.06 sec. (83.06 ticks)
Sequential b&c:
Real time = 0.00 sec. (0.01 ticks)
------------
Total (root+branch&cut) = 0.06 sec. (83.07 ticks)
--- MIP status (106): node limit exceeded, no integer solution.
--- Cplex Time: 0.06sec (det. 83.07 ticks)
CPLEX Error 1217: No solution exists.
--- Node limit exceeded, no integer solution found
--- Reading solution for model xdice
Code: Select all
---- 77 MODEL xdice.ObjEst = 23.294
-Michael