Originally posted by: brownflaming1
Hi guys,
I'm calling cplex from c++ to solve some LP. The algorithm solves a large number of LPs, sequentially. At some point, CPLEX reports unboundedness to an LP, however in fact, as soon as it reports the error, I output the problem to an LP file. If I read the .lp file in CPLEX console, it actually has an optimal solution. All variables in the problem are bounded. Anybody knows why? Thanks very much for your help!
When it reports unboundedness, the log looks like follows:
Iteration log . . .
Iteration: 1 Dual objective = -210757.947641
Iteration: 14 Scaled dual infeas = 0.000002
Iteration: 16 Dual objective = -210725.023620
Iteration: 35 Dual objective = -210725.023620
Repairing basis singularity.
Iteration: 87 Scaled dual infeas = 1.500003
Iteration: 88 Scaled dual infeas = 1.500000
Iteration: 89 Scaled dual infeas = 1.500000
Reinitializing dual norms . . .
Iteration log . . .
Iteration: 1 Scaled dual infeas = 1.500010
Markowitz threshold set to 0.99999
Iteration: 6 Scaled dual infeas = 1.499999
Dual simplex solved model.
Solution status: Unbounded
When I solve the .lp file in cplex console, it reports optimality:
Parallel mode: deterministic, using up to 4 threads for concurrent optimization.
Tried aggregator 1 time.
LP Presolve eliminated 1214 rows and 2542 columns.
Reduced LP has 361 rows, 1024 columns, and 13221 nonzeros.
Presolve time = 0.01 sec. (4.38 ticks)
Initializing dual steep norms . . .
Iteration log . . .
Iteration: 1 Dual objective = -1126080.000000
Iteration: 105 Dual objective = -211442.398591
Markowitz threshold set to 0.1
Iteration: 110 Dual objective = -211442.398591
Iteration: 113 Dual objective = -211249.773501
Iteration: 115 Dual objective = -211220.752818
Removing shift (1).
Iteration: 117 Dual objective = -211220.752818
Markowitz threshold set to 0.2
Iteration: 125 Dual objective = -210724.886007
Reinitializing dual norms . . .
Reinitializing dual norms . . .
Iteration log . . .
Iteration: 1 Dual objective = -211220.752818
Markowitz threshold set to 0.2
Iteration: 9 Dual objective = -210724.886007
Iteration: 21 Scaled dual infeas = 0.000000
Dual simplex solved model.
Maximum unscaled bound infeasibility = 651.682.
Dual simplex - Optimal: Objective = -2.1122075282e+05
Solution time = 0.05 sec. Iterations = 159 (1)
Deterministic time = 16.94 ticks (353.35 ticks/sec)
#CPLEXOptimizers#DecisionOptimization