Detailed DescriptionLocal branching heuristic according to Fischetti and Lodi. Definition in file heur_localbranching.c. #include <assert.h> #include <string.h> #include "scip/scip.h" #include "scip/cons_linear.h" #include "scip/scipdefplugins.h" #include "scip/heur_localbranching.h" #include "scip/pub_misc.h" Go to the source code of this file.
Macro Definition Documentation
Definition at line 32 of file heur_localbranching.c. Referenced by SCIP_DECL_HEURCOPY(), SCIP_DECL_HEUREXEC(), and SCIPincludeHeurLocalbranching().
Definition at line 33 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 34 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 35 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 36 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 37 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 38 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 39 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
does the heuristic use a secondary SCIP instance? Definition at line 40 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 42 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 43 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 44 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 45 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 46 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 47 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 48 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 49 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Value:
FALSE /* should subproblem be created out of the rows in the LP rows, * otherwise, the copy constructors of the constraints handlers are used */
Definition at line 50 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Value:
TRUE /* if DEFAULT_USELPROWS is FALSE, then should all active cuts from the cutpool * of the original scip be copied to constraints of the subscip */
Definition at line 52 of file heur_localbranching.c. Referenced by SCIPincludeHeurLocalbranching().
Definition at line 57 of file heur_localbranching.c. Referenced by SCIP_DECL_EVENTEXEC(), and SCIP_DECL_HEUREXEC().
Definition at line 58 of file heur_localbranching.c. Referenced by SCIP_DECL_HEUREXEC().
Definition at line 61 of file heur_localbranching.c. Referenced by SCIP_DECL_HEUREXEC().
Definition at line 62 of file heur_localbranching.c. Referenced by SCIP_DECL_HEUREXEC(), and SCIP_DECL_HEURINIT(). Function Documentation
copies the problem of scip to the problem of subscip - only necessary if uselprows is false
Definition at line 100 of file heur_localbranching.c. References FALSE, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPaddCons(), SCIPallocBufferArray, SCIPcolGetVar(), SCIPcreateConsLinear(), SCIPfreeBufferArray, SCIPgetLPRowsData(), SCIPreleaseCons(), SCIProwGetCols(), SCIProwGetConstant(), SCIProwGetLhs(), SCIProwGetName(), SCIProwGetNNonz(), SCIProwGetRhs(), SCIProwGetVals(), SCIProwIsLocal(), SCIPvarGetProbindex(), and TRUE. Referenced by SCIP_DECL_HEUREXEC().
create the extra constraint of local branching and add it to subscip
Definition at line 159 of file heur_localbranching.c. References FALSE, NULL, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_BINARY, SCIPaddCons(), SCIPallocBufferArray, SCIPcreateConsLinear(), SCIPfreeBufferArray, SCIPgetBestSol(), SCIPgetProbName(), SCIPgetSolVal(), SCIPgetVarsData(), SCIPisFeasEQ(), SCIPisFeasIntegral(), SCIPreleaseCons(), SCIPsnprintf(), SCIPvarGetType(), and TRUE. Referenced by SCIP_DECL_HEUREXEC().
creates a new solution for the original problem by copying the solution of the subproblem
Definition at line 230 of file heur_localbranching.c. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPcreateSol(), SCIPfreeBufferArray, SCIPgetNOrigVars(), SCIPgetSolVals(), SCIPgetVarsData(), SCIPsetSolVals(), SCIPtrySolFree(), and TRUE. Referenced by SCIP_DECL_HEUREXEC().
Definition at line 280 of file heur_localbranching.c. References EVENTHDLR_NAME, NULL, SCIP_CALL, SCIP_EVENTTYPE_LPSOLVED, SCIP_OKAY, SCIPdebugMessage, SCIPeventGetType(), SCIPeventhdlrGetName(), SCIPgetNLPs(), and SCIPinterruptSolve().
copy method for primal heuristic plugins (called when SCIP copies plugins) Definition at line 310 of file heur_localbranching.c. References HEUR_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPheurGetName(), and SCIPincludeHeurLocalbranching().
destructor of primal heuristic to free user data (called when SCIP is exiting) Definition at line 324 of file heur_localbranching.c. References NULL, SCIP_OKAY, SCIPfreeMemory, SCIPheurGetData(), and SCIPheurSetData().
initialization method of primal heuristic (called after problem was transformed) Definition at line 345 of file heur_localbranching.c. References NULL, SCIP_OKAY, SCIPheurGetData(), and WAITFORNEWSOL.
execution method of primal heuristic Definition at line 370 of file heur_localbranching.c. References addLocalBranchingConstraint(), createNewSol(), createSubproblem(), EVENTHDLR_DESC, EVENTHDLR_NAME, EXECUTE, FALSE, HEUR_NAME, MAX, MIN, NULL, SCIP_Bool, SCIP_CALL, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_EVENTTYPE_LPSOLVED, SCIP_FOUNDSOL, SCIP_Longint, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_PARAMSETTING_FAST, SCIP_PARAMSETTING_OFF, SCIP_PLUGINNOTFOUND, SCIP_Real, SCIP_STATUS_BESTSOLLIMIT, SCIP_STATUS_GAPLIMIT, SCIP_STATUS_INFEASIBLE, SCIP_STATUS_INFORUNBD, SCIP_STATUS_MEMLIMIT, SCIP_STATUS_NODELIMIT, SCIP_STATUS_OPTIMAL, SCIP_STATUS_RESTARTLIMIT, SCIP_STATUS_SOLLIMIT, SCIP_STATUS_STALLNODELIMIT, SCIP_STATUS_TIMELIMIT, SCIP_STATUS_TOTALNODELIMIT, SCIP_STATUS_UNBOUNDED, SCIP_STATUS_UNKNOWN, SCIP_STATUS_USERINTERRUPT, SCIPallocBufferArray, SCIPblkmem(), SCIPcalcHashtableSize(), SCIPcatchEvent(), SCIPcopy(), SCIPcopyCuts(), SCIPcopyVars(), SCIPcreate(), SCIPcreateProb(), SCIPdebug, SCIPdebugMessage, SCIPdropEvent(), SCIPerrorMessage, SCIPfindBranchrule(), SCIPfindConshdlr(), SCIPfindNodesel(), SCIPfree(), SCIPfreeBufferArray, SCIPgetBestSol(), SCIPgetLowerbound(), SCIPgetMemExternEstim(), SCIPgetMemUsed(), SCIPgetNBinVars(), SCIPgetNNodes(), SCIPgetNSols(), SCIPgetProbName(), SCIPgetRealParam(), SCIPgetSolNodenum(), SCIPgetSolOrigObj(), SCIPgetSols(), SCIPgetSolvingTime(), SCIPgetStatus(), SCIPgetUpperbound(), SCIPgetVarsData(), SCIPhashmapCreate(), SCIPhashmapFree(), SCIPhashmapGetImage(), SCIPheurGetData(), SCIPheurGetName(), SCIPheurGetNBestSolsFound(), SCIPheurGetNCalls(), SCIPincludeDefaultPlugins(), SCIPincludeEventhdlrBasic(), SCIPinfinity(), SCIPisInfinity(), SCIPisParamFixed(), SCIPisStopped(), SCIPprintStatistics(), SCIPsetBoolParam(), SCIPsetIntParam(), SCIPsetLongintParam(), SCIPsetObjlimit(), SCIPsetPresolving(), SCIPsetRealParam(), SCIPsetSeparating(), SCIPsetSubscipsOff(), SCIPsnprintf(), SCIPsolGetHeur(), SCIPsolIsOriginal(), SCIPsolve(), SCIPsumepsilon(), SCIPtransformProb(), SCIPwarningMessage(), TRUE, and WAITFORNEWSOL.
creates the localbranching primal heuristic and includes it in SCIP
Definition at line 771 of file heur_localbranching.c. References DEFAULT_COPYCUTS, DEFAULT_LPLIMFAC, DEFAULT_MAXNODES, DEFAULT_MINIMPROVE, DEFAULT_MINNODES, DEFAULT_NEIGHBORHOODSIZE, DEFAULT_NODESOFS, DEFAULT_NODESQUOT, DEFAULT_NWAITINGNODES, DEFAULT_USELPROWS, FALSE, HEUR_DESC, HEUR_DISPCHAR, HEUR_FREQ, HEUR_FREQOFS, HEUR_MAXDEPTH, HEUR_NAME, HEUR_PRIORITY, HEUR_TIMING, HEUR_USESSUBSCIP, NULL, SCIP_CALL, SCIP_OKAY, SCIP_REAL_MAX, SCIPaddBoolParam(), SCIPaddIntParam(), SCIPaddRealParam(), SCIPallocMemory, SCIPincludeHeurBasic(), SCIPsetHeurCopy(), SCIPsetHeurFree(), SCIPsetHeurInit(), and TRUE. Referenced by SCIP_DECL_HEURCOPY(), and SCIPincludeDefaultPlugins(). |