Changeset 918 for trunk


Ignore:
Timestamp:
Apr 15, 2008 5:45:58 PM (11 years ago)
Author:
jpgoncal
Message:

Fixed a bug related with generalized VUB.

File:
1 edited

Legend:

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

    r917 r918  
    266266        if(fabs(value)<=integerTolerance &&
    267267           lower[iColumn1] != upper[iColumn1]) {
    268           //      std::cout<<"iColumn = "<<iColumn<<", value = "<<value<<std::endl;
     268          //      std::cout<<"iColumn1 = "<<iColumn1<<", value = "<<value<<std::endl;
    269269          int iRow = vbRowIndex_[j];
    270270          for (int k=rowStart[iRow];k<rowStart[iRow]+rowLength[iRow];k++) {
    271271            int iColumn2 = column[k];
     272            //      std::cout<<"iColumn2 = "<<iColumn2<<std::endl;
    272273            if(iColumn1 != iColumn2) {
    273274              double pseudoReducedCost = fabs(reducedCost[iColumn2] *
    274275                                              elementByRow[iColumn2] /
    275276                                              elementByRow[iColumn1]);
     277              //              std::cout<<"reducedCost["<<iColumn2<<"] = "
     278              //                       <<reducedCost[iColumn2]
     279              //                       <<", elementByRow["<<iColumn2<<"] = "<<elementByRow[iColumn2]
     280              //                       <<", elementByRow["<<iColumn1<<"] = "<<elementByRow[iColumn1]
     281              //                       <<", pseudoRedCost = "<<pseudoReducedCost
     282              //                       <<std::endl;
    276283              if(pseudoReducedCost > maxPseudoReducedCost)
    277284                maxPseudoReducedCost = pseudoReducedCost;
    278285            }
    279286          }
    280           //      std::cout<<", pseudoRedCost = "<<pseudoReducedCost<<std::endl;
     287          //      std::cout<<", maxPseudoRedCost = "<<maxPseudoReducedCost<<std::endl;
    281288          candidate[cnt].var = iColumn1;
    282289          candidate[cnt++].pseudoRedCost = maxPseudoReducedCost;
     
    649656          binVar = iColumn;
    650657      }
    651     }
    652     if(numIntegers == 1 && binVar >= 0 &&
     658      else
     659        numContinuous++;
     660    }
     661    if(numIntegers == 1 && binVar >= 0 && numContinuous > 0 &&
    653662       ((rowLower[i] == 0.0 && rowUpper[i] > 1.0e30) ||
    654663        (rowLower[i] < -1.0e30 && rowUpper[i] == 0))) {
Note: See TracChangeset for help on using the changeset viewer.