Changeset 95


Ignore:
Timestamp:
Mar 31, 2005 11:28:33 AM (16 years ago)
Author:
forrest
Message:

fix minor bug

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CbcHeuristic.cpp

    r91 r95  
    568568              assert (value<0.0);
    569569              double gap = rowActivity[iRow]-rowUpper[iRow];
    570               if (gap+value*distance<0.0)
    571                 distance = -gap/value;
     570              if (gap+value*distance<0.0) {
     571                // If integer then has to move by 1
     572                if (!isInteger)
     573                  distance = -gap/value;
     574                else
     575                  distance = CoinMax(-gap/value,1.0);
     576              }
    572577            } else if (rowActivity[iRow]<rowLower[iRow]-primalTolerance) {
    573578              // infeasible below
    574579              assert (value>0.0);
    575580              double gap = rowActivity[iRow]-rowLower[iRow];
    576               if (gap+value*distance>0.0)
    577                 distance = -gap/value;
     581              if (gap+value*distance>0.0) {
     582                // If integer then has to move by 1
     583                if (!isInteger)
     584                  distance = -gap/value;
     585                else
     586                  distance = CoinMax(-gap/value,1.0);
     587              }
    578588            } else {
    579589              // feasible
Note: See TracChangeset for help on using the changeset viewer.