/** copy method for primal heuristic plugins (called when SCIP copies plugins) */ static SCIP_DECL_HEURCOPY(heurCopyZirounding) { /*lint --e{715}*/ assert(scip != NULL); assert(heur != NULL); assert(strcmp(SCIPheurGetName(heur), HEUR_NAME) == 0); /* call inclusion method of primal heuristic */ SCIP_CALL( SCIPincludeHeurZirounding(scip) ); return SCIP_OKAY; }
/** includes default SCIP plugins into SCIP */ SCIP_RETCODE SCIPincludeDefaultPlugins( SCIP* scip /**< SCIP data structure */ ) { SCIP_NLPI* nlpi; SCIP_CALL( SCIPincludeConshdlrNonlinear(scip) ); /* nonlinear must be before linear, quadratic, abspower, and and due to constraint upgrading */ SCIP_CALL( SCIPincludeConshdlrQuadratic(scip) ); /* quadratic must be before linear due to constraint upgrading */ SCIP_CALL( SCIPincludeConshdlrLinear(scip) ); /* linear must be before its specializations due to constraint upgrading */ SCIP_CALL( SCIPincludeConshdlrAbspower(scip) ); /* absolute power needs to be after quadratic and nonlinear due to constraint upgrading */ SCIP_CALL( SCIPincludeConshdlrAnd(scip) ); SCIP_CALL( SCIPincludeConshdlrBivariate(scip) ); /* bivariate needs to be after quadratic and nonlinear due to constraint upgrading */ SCIP_CALL( SCIPincludeConshdlrBounddisjunction(scip) ); SCIP_CALL( SCIPincludeConshdlrConjunction(scip) ); SCIP_CALL( SCIPincludeConshdlrCountsols(scip) ); SCIP_CALL( SCIPincludeConshdlrCumulative(scip) ); SCIP_CALL( SCIPincludeConshdlrDisjunction(scip) ); SCIP_CALL( SCIPincludeConshdlrIndicator(scip) ); SCIP_CALL( SCIPincludeConshdlrIntegral(scip) ); SCIP_CALL( SCIPincludeConshdlrKnapsack(scip) ); SCIP_CALL( SCIPincludeConshdlrLinking(scip) ); SCIP_CALL( SCIPincludeConshdlrLogicor(scip) ); SCIP_CALL( SCIPincludeConshdlrOr(scip) ); SCIP_CALL( SCIPincludeConshdlrOrbitope(scip) ); SCIP_CALL( SCIPincludeConshdlrPseudoboolean(scip) ); SCIP_CALL( SCIPincludeConshdlrSetppc(scip) ); SCIP_CALL( SCIPincludeConshdlrSOC(scip) ); /* SOC needs to be after quadratic due to constraint upgrading */ SCIP_CALL( SCIPincludeConshdlrSOS1(scip) ); SCIP_CALL( SCIPincludeConshdlrSOS2(scip) ); SCIP_CALL( SCIPincludeConshdlrSuperindicator(scip) ); SCIP_CALL( SCIPincludeConshdlrVarbound(scip) ); SCIP_CALL( SCIPincludeConshdlrXor(scip) ); SCIP_CALL( SCIPincludeReaderBnd(scip) ); SCIP_CALL( SCIPincludeReaderCcg(scip) ); SCIP_CALL( SCIPincludeReaderCip(scip) ); SCIP_CALL( SCIPincludeReaderCnf(scip) ); SCIP_CALL( SCIPincludeReaderFix(scip) ); SCIP_CALL( SCIPincludeReaderFzn(scip) ); SCIP_CALL( SCIPincludeReaderGms(scip) ); SCIP_CALL( SCIPincludeReaderLp(scip) ); SCIP_CALL( SCIPincludeReaderMps(scip) ); SCIP_CALL( SCIPincludeReaderOpb(scip) ); SCIP_CALL( SCIPincludeReaderOsil(scip) ); SCIP_CALL( SCIPincludeReaderPip(scip) ); SCIP_CALL( SCIPincludeReaderPpm(scip) ); SCIP_CALL( SCIPincludeReaderPbm(scip) ); SCIP_CALL( SCIPincludeReaderRlp(scip) ); SCIP_CALL( SCIPincludeReaderSol(scip) ); SCIP_CALL( SCIPincludeReaderWbo(scip) ); SCIP_CALL( SCIPincludeReaderZpl(scip) ); SCIP_CALL( SCIPincludePresolBoundshift(scip) ); SCIP_CALL( SCIPincludePresolComponents(scip) ); SCIP_CALL( SCIPincludePresolConvertinttobin(scip) ); SCIP_CALL( SCIPincludePresolDomcol(scip) ); SCIP_CALL( SCIPincludePresolDualinfer(scip) ); SCIP_CALL( SCIPincludePresolGateextraction(scip) ); SCIP_CALL( SCIPincludePresolImplics(scip) ); SCIP_CALL( SCIPincludePresolInttobinary(scip) ); SCIP_CALL( SCIPincludePresolTrivial(scip) ); SCIP_CALL( SCIPincludeNodeselBfs(scip) ); SCIP_CALL( SCIPincludeNodeselBreadthfirst(scip) ); SCIP_CALL( SCIPincludeNodeselDfs(scip) ); SCIP_CALL( SCIPincludeNodeselEstimate(scip) ); SCIP_CALL( SCIPincludeNodeselHybridestim(scip) ); SCIP_CALL( SCIPincludeNodeselRestartdfs(scip) ); SCIP_CALL( SCIPincludeNodeselUct(scip) ); SCIP_CALL( SCIPincludeBranchruleAllfullstrong(scip) ); SCIP_CALL( SCIPincludeBranchruleCloud(scip) ); SCIP_CALL( SCIPincludeBranchruleFullstrong(scip) ); SCIP_CALL( SCIPincludeBranchruleInference(scip) ); SCIP_CALL( SCIPincludeBranchruleLeastinf(scip) ); SCIP_CALL( SCIPincludeBranchruleMostinf(scip) ); SCIP_CALL( SCIPincludeBranchrulePscost(scip) ); SCIP_CALL( SCIPincludeBranchruleRandom(scip) ); SCIP_CALL( SCIPincludeBranchruleRelpscost(scip) ); SCIP_CALL( SCIPincludeHeurActconsdiving(scip) ); SCIP_CALL( SCIPincludeHeurClique(scip) ); SCIP_CALL( SCIPincludeHeurCoefdiving(scip) ); SCIP_CALL( SCIPincludeHeurCrossover(scip) ); SCIP_CALL( SCIPincludeHeurDins(scip) ); SCIP_CALL( SCIPincludeHeurDualval(scip) ); SCIP_CALL( SCIPincludeHeurFeaspump(scip) ); SCIP_CALL( SCIPincludeHeurFixandinfer(scip) ); SCIP_CALL( SCIPincludeHeurFracdiving(scip) ); SCIP_CALL( SCIPincludeHeurGuideddiving(scip) ); SCIP_CALL( SCIPincludeHeurZeroobj(scip) ); SCIP_CALL( SCIPincludeHeurIntdiving(scip) ); SCIP_CALL( SCIPincludeHeurIntshifting(scip) ); SCIP_CALL( SCIPincludeHeurLinesearchdiving(scip) ); SCIP_CALL( SCIPincludeHeurLocalbranching(scip) ); SCIP_CALL( SCIPincludeHeurNlpdiving(scip) ); SCIP_CALL( SCIPincludeHeurMutation(scip) ); SCIP_CALL( SCIPincludeHeurObjpscostdiving(scip) ); SCIP_CALL( SCIPincludeHeurOctane(scip) ); SCIP_CALL( SCIPincludeHeurOneopt(scip) ); SCIP_CALL( SCIPincludeHeurProximity(scip) ); SCIP_CALL( SCIPincludeHeurPscostdiving(scip) ); SCIP_CALL( SCIPincludeHeurRandrounding(scip) ); SCIP_CALL( SCIPincludeHeurRens(scip) ); SCIP_CALL( SCIPincludeHeurRins(scip) ); SCIP_CALL( SCIPincludeHeurRootsoldiving(scip) ); SCIP_CALL( SCIPincludeHeurRounding(scip) ); SCIP_CALL( SCIPincludeHeurShiftandpropagate(scip) ); SCIP_CALL( SCIPincludeHeurShifting(scip) ); SCIP_CALL( SCIPincludeHeurSimplerounding(scip) ); SCIP_CALL( SCIPincludeHeurSubNlp(scip) ); SCIP_CALL( SCIPincludeHeurTrivial(scip) ); SCIP_CALL( SCIPincludeHeurTrySol(scip) ); SCIP_CALL( SCIPincludeHeurTwoopt(scip) ); SCIP_CALL( SCIPincludeHeurUndercover(scip) ); SCIP_CALL( SCIPincludeHeurVbounds(scip) ); SCIP_CALL( SCIPincludeHeurVeclendiving(scip) ); SCIP_CALL( SCIPincludeHeurZirounding(scip) ); SCIP_CALL( SCIPincludePropDualfix(scip) ); SCIP_CALL( SCIPincludePropGenvbounds(scip) ); SCIP_CALL( SCIPincludePropObbt(scip) ); SCIP_CALL( SCIPincludePropProbing(scip) ); SCIP_CALL( SCIPincludePropPseudoobj(scip) ); SCIP_CALL( SCIPincludePropRedcost(scip) ); SCIP_CALL( SCIPincludePropRootredcost(scip) ); SCIP_CALL( SCIPincludePropVbounds(scip) ); SCIP_CALL( SCIPincludeSepaCGMIP(scip) ); SCIP_CALL( SCIPincludeSepaClique(scip) ); SCIP_CALL( SCIPincludeSepaClosecuts(scip) ); SCIP_CALL( SCIPincludeSepaCmir(scip) ); SCIP_CALL( SCIPincludeSepaFlowcover(scip) ); SCIP_CALL( SCIPincludeSepaGomory(scip) ); SCIP_CALL( SCIPincludeSepaImpliedbounds(scip) ); SCIP_CALL( SCIPincludeSepaIntobj(scip) ); SCIP_CALL( SCIPincludeSepaMcf(scip) ); SCIP_CALL( SCIPincludeSepaOddcycle(scip) ); SCIP_CALL( SCIPincludeSepaRapidlearning(scip) ); SCIP_CALL( SCIPincludeSepaStrongcg(scip) ); SCIP_CALL( SCIPincludeSepaZerohalf(scip) ); SCIP_CALL( SCIPincludeDispDefault(scip) ); /* include NLPI's, if available */ SCIP_CALL( SCIPcreateNlpSolverIpopt(SCIPblkmem(scip), &nlpi) ); if( nlpi != NULL ) { SCIP_CALL( SCIPincludeNlpi(scip, nlpi) ); SCIP_CALL( SCIPincludeExternalCodeInformation(scip, SCIPgetSolverNameIpopt(), SCIPgetSolverDescIpopt()) ); } SCIP_CALL( SCIPdebugIncludeProp(scip) ); /*lint !e506 !e774*/ return SCIP_OKAY; }
void scip_include_default_plugins(SCIP* scip) { sa(SCIPincludeConshdlrLinear(scip)); sa(SCIPincludeConshdlrAnd(scip)); sa(SCIPincludeConshdlrBounddisjunction(scip)); sa(SCIPincludeConshdlrConjunction(scip)); sa(SCIPincludeConshdlrCountsols(scip)); sa(SCIPincludeConshdlrCumulative(scip)); sa(SCIPincludeConshdlrDisjunction(scip)); sa(SCIPincludeConshdlrIndicator(scip)); sa(SCIPincludeConshdlrIntegral(scip)); sa(SCIPincludeConshdlrKnapsack(scip)); sa(SCIPincludeConshdlrLinking(scip)); sa(SCIPincludeConshdlrLogicor(scip)); sa(SCIPincludeConshdlrOr(scip)); sa(SCIPincludeConshdlrOrbitope(scip)); sa(SCIPincludeConshdlrPseudoboolean(scip)); sa(SCIPincludeConshdlrSetppc(scip)); sa(SCIPincludeConshdlrSOS1(scip)); sa(SCIPincludeConshdlrSOS2(scip)); sa(SCIPincludeConshdlrSuperindicator(scip)); sa(SCIPincludeConshdlrVarbound(scip)); sa(SCIPincludeConshdlrXor(scip)); sa(SCIPincludePresolBoundshift(scip)); sa(SCIPincludePresolComponents(scip)); sa(SCIPincludePresolConvertinttobin(scip)); sa(SCIPincludePresolDomcol(scip)); sa(SCIPincludePresolDualfix(scip)); sa(SCIPincludePresolGateextraction(scip)); sa(SCIPincludePresolImplics(scip)); sa(SCIPincludePresolInttobinary(scip)); sa(SCIPincludePresolTrivial(scip)); // sa(SCIPincludeNodeselBfs(scip)); // sa(SCIPincludeNodeselDfs(scip)); // sa(SCIPincludeNodeselEstimate(scip)); // sa(SCIPincludeNodeselHybridestim(scip)); sa(SCIPincludeNodeselRestartdfs(scip)); sa(SCIPincludeBranchruleAllfullstrong(scip)); sa(SCIPincludeBranchruleFullstrong(scip)); sa(SCIPincludeBranchruleInference(scip)); sa(SCIPincludeBranchruleLeastinf(scip)); sa(SCIPincludeBranchruleMostinf(scip)); sa(SCIPincludeBranchrulePscost(scip)); sa(SCIPincludeBranchruleRandom(scip)); sa(SCIPincludeBranchruleRelpscost(scip)); sa(SCIPincludeHeurActconsdiving(scip)); sa(SCIPincludeHeurClique(scip)); sa(SCIPincludeHeurCoefdiving(scip)); sa(SCIPincludeHeurCrossover(scip)); sa(SCIPincludeHeurDins(scip)); sa(SCIPincludeHeurFeaspump(scip)); sa(SCIPincludeHeurFixandinfer(scip)); sa(SCIPincludeHeurFracdiving(scip)); sa(SCIPincludeHeurGuideddiving(scip)); sa(SCIPincludeHeurZeroobj(scip)); sa(SCIPincludeHeurIntdiving(scip)); sa(SCIPincludeHeurIntshifting(scip)); sa(SCIPincludeHeurLinesearchdiving(scip)); sa(SCIPincludeHeurLocalbranching(scip)); sa(SCIPincludeHeurNlpdiving(scip)); sa(SCIPincludeHeurMutation(scip)); sa(SCIPincludeHeurObjpscostdiving(scip)); sa(SCIPincludeHeurOctane(scip)); sa(SCIPincludeHeurOneopt(scip)); sa(SCIPincludeHeurPscostdiving(scip)); sa(SCIPincludeHeurRens(scip)); sa(SCIPincludeHeurRins(scip)); sa(SCIPincludeHeurRootsoldiving(scip)); sa(SCIPincludeHeurRounding(scip)); sa(SCIPincludeHeurShiftandpropagate(scip)); sa(SCIPincludeHeurShifting(scip)); sa(SCIPincludeHeurSimplerounding(scip)); sa(SCIPincludeHeurSubNlp(scip)); sa(SCIPincludeHeurTrivial(scip)); sa(SCIPincludeHeurTrySol(scip)); sa(SCIPincludeHeurTwoopt(scip)); sa(SCIPincludeHeurUndercover(scip)); sa(SCIPincludeHeurVbounds(scip)); sa(SCIPincludeHeurVeclendiving(scip)); sa(SCIPincludeHeurZirounding(scip)); sa(SCIPincludePropGenvbounds(scip)); sa(SCIPincludePropObbt(scip)); sa(SCIPincludePropProbing(scip)); sa(SCIPincludePropPseudoobj(scip)); sa(SCIPincludePropRedcost(scip)); sa(SCIPincludePropRootredcost(scip)); sa(SCIPincludePropVbounds(scip)); sa(SCIPincludeSepaCGMIP(scip)); sa(SCIPincludeSepaClique(scip)); sa(SCIPincludeSepaClosecuts(scip)); sa(SCIPincludeSepaCmir(scip)); sa(SCIPincludeSepaFlowcover(scip)); sa(SCIPincludeSepaGomory(scip)); sa(SCIPincludeSepaImpliedbounds(scip)); sa(SCIPincludeSepaIntobj(scip)); sa(SCIPincludeSepaMcf(scip)); sa(SCIPincludeSepaOddcycle(scip)); sa(SCIPincludeSepaRapidlearning(scip)); sa(SCIPincludeSepaStrongcg(scip)); sa(SCIPincludeSepaZerohalf(scip)); sa(SCIPincludeDispDefault(scip)); sa(SCIPdebugIncludeProp(scip)); /*lint !e506 !e774*/ }