Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Cbc/src/CbcHeuristicDiveFractional.cpp

    r1902 r2093  
    7878    double bestFraction = COIN_DBL_MAX;
    7979    bool allTriviallyRoundableSoFar = true;
     80    int bestPriority = COIN_INT_MAX;
    8081    for (int i = 0; i < numberIntegers; i++) {
    8182        int iColumn = integerVariable[i];
     
    103104                    fraction *= 1000.0;
    104105
     106                // if priorities then use
     107                if (priority_) {
     108                  int thisRound=static_cast<int>(priority_[i].direction);
     109                  if ((thisRound&1)!=0)
     110                    round = ((thisRound&2)==0) ? -1 : +1;
     111                  if (priority_[i].priority>bestPriority) {
     112                    fraction=COIN_DBL_MAX;
     113                  } else if (priority_[i].priority<bestPriority) {
     114                    bestPriority=static_cast<int>(priority_[i].priority);
     115                    bestFraction=COIN_DBL_MAX;
     116                  }
     117                }
    105118                if (fraction < bestFraction) {
    106119                    bestColumn = iColumn;
Note: See TracChangeset for help on using the changeset viewer.