Changeset 1880 for trunk/Cbc/src/CbcSolverHeuristics.cpp
 Timestamp:
 Apr 1, 2013 1:09:22 PM (7 years ago)
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

trunk/Cbc/src/CbcSolverHeuristics.cpp
r1854 r1880 1456 1456 1457 1457 if (useDIVING > 0) { 1458 int majorIterations=64; 1458 1459 int diveOptions2 = parameters_[whichParam(CBC_PARAM_INT_DIVEOPT, numberParameters_, parameters_)].intValue(); 1459 1460 int diveOptions; 1460 1461 if (diveOptions2 > 99) { 1461 1462 // switch on various active set stuff 1462 diveOptions = diveOptions2 %100;1463 diveOptions2 = diveOptions;1463 diveOptions = diveOptions2%100; 1464 diveOptions2 /= 100; 1464 1465 } else { 1465 1466 diveOptions = diveOptions2; … … 1472 1473 heuristicDV.setHeuristicName("DiveVectorLength"); 1473 1474 heuristicDV.setWhen(diveOptions); 1475 if (diveOptions2) { 1476 heuristicDV.setMaxIterations(majorIterations); 1477 heuristicDV.setPercentageToFix(0.0); 1478 heuristicDV.setMaxSimplexIterations(COIN_INT_MAX); 1479 heuristicDV.setMaxSimplexIterationsAtRoot(COIN_INT_MAX(diveOptions21)); 1480 } 1474 1481 model>addHeuristic(&heuristicDV) ; 1475 1482 } … … 1478 1485 heuristicDG.setHeuristicName("DiveGuided"); 1479 1486 heuristicDG.setWhen(diveOptions); 1487 if (diveOptions2) { 1488 heuristicDG.setMaxIterations(majorIterations); 1489 heuristicDG.setPercentageToFix(0.0); 1490 heuristicDG.setMaxSimplexIterations(COIN_INT_MAX); 1491 heuristicDG.setMaxSimplexIterationsAtRoot(COIN_INT_MAX(diveOptions21)); 1492 } 1480 1493 model>addHeuristic(&heuristicDG) ; 1481 1494 } … … 1484 1497 heuristicDF.setHeuristicName("DiveFractional"); 1485 1498 heuristicDF.setWhen(diveOptions); 1499 if (diveOptions2) { 1500 heuristicDF.setMaxIterations(majorIterations); 1501 heuristicDF.setPercentageToFix(0.0); 1502 heuristicDF.setMaxSimplexIterations(COIN_INT_MAX); 1503 heuristicDF.setMaxSimplexIterationsAtRoot(COIN_INT_MAX(diveOptions21)); 1504 } 1486 1505 model>addHeuristic(&heuristicDF) ; 1487 1506 } … … 1490 1509 heuristicDC.setHeuristicName("DiveCoefficient"); 1491 1510 heuristicDC.setWhen(diveOptions); 1511 if (diveOptions2) { 1512 heuristicDC.setMaxIterations(majorIterations); 1513 heuristicDC.setPercentageToFix(0.0); 1514 heuristicDC.setMaxSimplexIterations(COIN_INT_MAX); 1515 heuristicDC.setMaxSimplexIterationsAtRoot(COIN_INT_MAX(diveOptions21)); 1516 } 1492 1517 model>addHeuristic(&heuristicDC) ; 1493 1518 } … … 1496 1521 heuristicDL.setHeuristicName("DiveLineSearch"); 1497 1522 heuristicDL.setWhen(diveOptions); 1523 if (diveOptions2) { 1524 heuristicDL.setMaxIterations(majorIterations); 1525 heuristicDL.setPercentageToFix(0.0); 1526 heuristicDL.setMaxSimplexIterations(COIN_INT_MAX); 1527 heuristicDL.setMaxSimplexIterationsAtRoot(COIN_INT_MAX(diveOptions21)); 1528 } 1498 1529 model>addHeuristic(&heuristicDL) ; 1499 1530 } … … 1501 1532 CbcHeuristicDivePseudoCost heuristicDP(*model); 1502 1533 heuristicDP.setHeuristicName("DivePseudoCost"); 1503 heuristicDP.setWhen(diveOptions + diveOptions2); 1534 heuristicDP.setWhen(diveOptions /*+ diveOptions2*/); 1535 if (diveOptions2) { 1536 heuristicDP.setMaxIterations(majorIterations); 1537 heuristicDP.setPercentageToFix(0.0); 1538 heuristicDP.setMaxSimplexIterations(COIN_INT_MAX); 1539 heuristicDP.setMaxSimplexIterationsAtRoot(COIN_INT_MAX(diveOptions21)); 1540 } 1504 1541 model>addHeuristic(&heuristicDP) ; 1505 1542 }
Note: See TracChangeset
for help on using the changeset viewer.