Changeset 1587
- Timestamp:
- Jan 25, 2011 5:54:21 AM (10 years ago)
- Location:
- trunk/Cbc/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Cbc/src/CbcHeuristic.cpp
r1585 r1587 1175 1175 solver->setHintParam(OsiDoDualInResolve, true, OsiHintDo); 1176 1176 #endif 1177 model.passInEventHandler(model_->getEventHandler()); 1177 1178 model.branchAndBound(); 1178 1179 #ifdef ALWAYS_DUAL -
trunk/Cbc/src/CbcHeuristicGreedy.cpp
r1586 r1587 996 996 columnStart = matrix->getVectorStarts(); 997 997 columnLength = matrix->getVectorLengths(); 998 rhs = new double [numberRows];998 //rhs = new double [numberRows]; 999 999 const double * rowLower = solver->getRowLower(); 1000 1000 const double * rowUpper = solver->getRowUpper(); -
trunk/Cbc/src/CbcHeuristicRENS.cpp
r1585 r1587 334 334 djTolerance = 1.0e30; 335 335 } else if (type==10) { 336 double * saveUpper = CoinCopyOfArray(newSolver->getRowUpper(),numberRows); 336 double * saveUpper = new double [numberRows]; 337 memset(saveUpper,0,numberRows*sizeof(double)); 337 338 char * mark = new char [numberColumns]; 338 339 char * nonzero = new char [numberColumns]; 339 double factor=CoinMax(1.000001,fractionSmall_); 340 for (int iColumn = 0; iColumn < numberColumns; iColumn++) { 341 if (colUpper[iColumn]>colLower[iColumn]) { 342 CoinBigIndex j; 343 for (j = columnStart[iColumn]; 344 j < columnStart[iColumn] + columnLength[iColumn]; j++) { 345 int iRow = row[j]; 346 saveUpper[iRow] += element[j]; 347 } 348 } 349 } 350 double sum=0.0; 351 double sumRhs=0.0; 352 const double * rowUpper = newSolver->getRowUpper(); 353 for (int i=0;i<numberRows;i++) { 354 if (bestDj[i]>=1.0e30) { 355 sum += saveUpper[i]; 356 sumRhs += rowUpper[i]; 357 } 358 } 359 double averagePerSet = sum/static_cast<double>(numberRows); 360 // allow this extra 361 double factor = averagePerSet*fractionSmall_*numberRows; 362 factor = 1.0+factor/sumRhs; 340 363 fractionSmall_ = 0.5; 364 memcpy(saveUpper,rowUpper,numberRows*sizeof(double)); 341 365 // loosen up 342 366 for (int i=0;i<numberRows;i++) {
Note: See TracChangeset
for help on using the changeset viewer.