Changeset 615 for branches/devel/Cbc/src/CbcSolver.cpp
- Timestamp:
- May 18, 2007 9:45:10 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/devel/Cbc/src/CbcSolver.cpp
r614 r615 2705 2705 heuristicFPump.setMaximumPasses(20); 2706 2706 heuristicFPump.setMaximumRetries(7); 2707 heuristicFPump.setAbsoluteIncrement(4332.64); 2707 heuristicFPump.setHeuristicName("feasibility pump"); 2708 heuristicFPump.setInitialWeight(1); 2708 2709 cbcModel->addHeuristic(&heuristicFPump); 2709 heuristicFPump.setInitialWeight(1);2710 2710 2711 2711 CbcRounding rounding(*cbcModel); 2712 rounding.setHeuristicName("rounding"); 2712 2713 cbcModel->addHeuristic(&rounding); 2713 2714 2714 2715 CbcHeuristicLocal heuristicLocal(*cbcModel); 2716 heuristicLocal.setHeuristicName("join solutions"); 2715 2717 heuristicLocal.setSearchType(1); 2716 2718 cbcModel->addHeuristic(&heuristicLocal); 2717 2719 2718 2720 CbcHeuristicGreedyCover heuristicGreedyCover(*cbcModel); 2721 heuristicGreedyCover.setHeuristicName("greedy cover"); 2719 2722 cbcModel->addHeuristic(&heuristicGreedyCover); 2720 2723 2721 2724 CbcHeuristicGreedyEquality heuristicGreedyEquality(*cbcModel); 2725 heuristicGreedyEquality.setHeuristicName("greedy equality"); 2722 2726 cbcModel->addHeuristic(&heuristicGreedyEquality); 2723 2727 … … 2758 2762 linkSolver->setBestSolution(solution,solver3->getNumCols()); 2759 2763 CbcHeuristicDynamic3 dynamic(model); 2764 dynamic.setHeuristicName("dynamic pass thru"); 2760 2765 model.addHeuristic(&dynamic); 2761 2766 // if convex … … 3298 3303 heuristic4.setWhen(pumpTune+10); 3299 3304 } 3305 heuristic4.setHeuristicName("feasibility pump"); 3300 3306 babModel->addHeuristic(&heuristic4); 3301 3307 } 3302 3308 if (!miplib) { 3303 3309 CbcRounding heuristic1(*babModel); 3310 heuristic1.setHeuristicName("rounding"); 3304 3311 if (useRounding) 3305 3312 babModel->addHeuristic(&heuristic1) ; 3306 3313 CbcHeuristicLocal heuristic2(*babModel); 3314 heuristic2.setHeuristicName("join solutions"); 3307 3315 heuristic2.setSearchType(1); 3308 3316 if (useCombine) 3309 3317 babModel->addHeuristic(&heuristic2); 3310 3318 CbcHeuristicGreedyCover heuristic3(*babModel); 3319 heuristic3.setHeuristicName("greedy cover"); 3311 3320 CbcHeuristicGreedyEquality heuristic3a(*babModel); 3321 heuristic3a.setHeuristicName("greedy equality"); 3312 3322 if (useGreedy) { 3313 3323 babModel->addHeuristic(&heuristic3); … … 3320 3330 } 3321 3331 CbcHeuristicRINS heuristic5(*babModel); 3332 heuristic5.setHeuristicName("RINS"); 3322 3333 if (useRINS) 3323 3334 babModel->addHeuristic(&heuristic5) ; … … 4614 4625 keepImportNames!=0, 4615 4626 allowImportErrors!=0); 4616 if (!status||(status>0&&allowImportErrors)) { 4617 if (keepImportNames) { 4618 lengthName = lpSolver->lengthNames(); 4619 rowNames = *(lpSolver->rowNames()); 4620 columnNames = *(lpSolver->columnNames()); 4621 } else { 4622 lengthName=0; 4623 } 4627 } else if (gmpl>0) { 4628 status= lpSolver->readGMPL(fileName.c_str(), 4629 (gmpl==2) ? gmplData.c_str() : NULL, 4630 keepImportNames!=0); 4631 } else { 4632 status= lpSolver->readLp(fileName.c_str(),1.0e-12); 4633 } 4634 if (!status||(status>0&&allowImportErrors)) { 4635 if (keepImportNames&&gmpl<=0) { 4636 lengthName = lpSolver->lengthNames(); 4637 rowNames = *(lpSolver->rowNames()); 4638 columnNames = *(lpSolver->columnNames()); 4639 } else { 4640 lengthName=0; 4624 4641 } 4625 }4626 else if (gmpl>0)4627 status= lpSolver->readGMPL(fileName.c_str(),4628 (gmpl==2) ? gmplData.c_str() : NULL,4629 keepImportNames!=0);4630 else4631 status= lpSolver->readLp(fileName.c_str(),1.0e-12);4632 if (!status||(status>0&&allowImportErrors)) {4633 4642 goodModel=true; 4634 4643 // sets to all slack (not necessary?)
Note: See TracChangeset
for help on using the changeset viewer.