Ignore:
Timestamp:
Sep 7, 2011 8:10:52 AM (8 years ago)
Author:
forrest
Message:

fix false objective in CbcNode?

File:
1 edited

Legend:

Unmodified
Added
Removed
  • stable/2.7/Cbc/src/CbcNode.cpp

    r1675 r1722  
    32593259                        double newObjValue = solver->getObjSense()*solver->getObjValue();
    32603260                        objectiveValue_ = CoinMax(objectiveValue_,newObjValue);
     3261                        bool goneInfeasible = (!solver->isProvenOptimal()||solver->isDualObjectiveLimitReached());
    32613262                        solver->markHotStart();
    32623263                        // may be infeasible (if other way stopped on iterations)
    3263                         if (!solver->isProvenOptimal()||solver->isDualObjectiveLimitReached()) {
     3264                        if (goneInfeasible) {
    32643265                            // neither side feasible
    32653266                            anyAction = -2;
     
    33013302                        double newObjValue = solver->getObjSense()*solver->getObjValue();
    33023303                        objectiveValue_ = CoinMax(objectiveValue_,newObjValue);
     3304                        bool goneInfeasible = (!solver->isProvenOptimal()||solver->isDualObjectiveLimitReached());
    33033305                        solver->markHotStart();
    33043306                        // may be infeasible (if other way stopped on iterations)
    3305                         if (!solver->isProvenOptimal()||solver->isDualObjectiveLimitReached()) {
     3307                        if (goneInfeasible) {
    33063308                            // neither side feasible
    33073309                            anyAction = -2;
Note: See TracChangeset for help on using the changeset viewer.