Opened 5 years ago

Closed 7 weeks ago

#149 closed defect (migrated)

CBC reports incorrect optimal objective value

Reported by: vitaut Owned by: tkr
Priority: major Component: Cbc
Version: 2.8.8 Keywords:
Cc:

Description

CBC reports an incorrect optimal objective value when solving a trivial problem available in .nl format here: https://drive.google.com/file/d/0B8fdrkFjzN7mV2ZIODc5cnBIMm8/edit?usp=sharing

Running

cbc test.nl -AMPL

produces a file test.sol containing the line:

CBC 2.8.8 optimal, objective 4e+01

Apart from strange formatting (the optimal value it tries to report is actually 45), the value is incorrect as can be checked with any other solver, e.g.

cplex test.nl CPLEX 12.6.0.0: optimal solution; objective 15005 4 dual simplex iterations (3 in phase I)

One obvious issue is that the constant offset is not taken into account here: https://projects.coin-or.org/Cbc/browser/trunk/Cbc/src/CbcSolver.cpp?rev=1780#L2802

However, even when taking the offset into account, one can still see that the value returned from CoinModel::getObjValue is wrong.

Attachments (1)

test.nl (732 bytes) - added by vitaut 5 years ago.
test problem

Download all attachments as: .zip

Change History (2)

Changed 5 years ago by vitaut

test problem

comment:1 Changed 7 weeks ago by stefan

  • Resolution set to migrated
  • Status changed from new to closed

This ticket has been migrated to GitHub and will be resolved there: https://github.com/coin-or/Cbc/issues/149

Note: See TracTickets for help on using tickets.