All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Detailed Descriptionprobing propagator Definition in file prop_probing.c. Go to the source code of this file.
Macro Definition Documentation
Definition at line 31 of file prop_probing.c. Referenced by SCIP_DECL_PROPCOPY(), and SCIPincludePropProbing().
Definition at line 32 of file prop_probing.c. Referenced by SCIPincludePropProbing().
Definition at line 33 of file prop_probing.c. Referenced by SCIPincludePropProbing().
propagation priority Definition at line 34 of file prop_probing.c. Referenced by SCIPincludePropProbing().
propagation frequency Definition at line 35 of file prop_probing.c. Referenced by SCIPincludePropProbing().
should propagation method be delayed, if other propagators found reductions? Definition at line 36 of file prop_probing.c. Referenced by SCIPincludePropProbing().
priority of the presolving method (>= 0: before, < 0: after constraint handlers); combined with presolvers Definition at line 38 of file prop_probing.c. Referenced by SCIPincludePropProbing().
should presolving be delay, if other presolvers found reductions? Definition at line 39 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal number of presolving rounds the presolver participates in (-1: no limit) Definition at line 40 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal denominator for simple rational fixed values Definition at line 42 of file prop_probing.c. Referenced by SCIPanalyzeDeductionsProbing().
maximal number of runs, probing participates in (-1: no limit) Definition at line 55 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal number of propagation rounds in probing subproblems Definition at line 56 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal number of fixings found, until probing is interrupted (0: don't interrupt) Definition at line 57 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal number of successive probings without fixings, until probing is aborted (0: don't abort) Definition at line 59 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal number of successive probings without fixings, bound changes, and implications, until probing is aborted (0: don't abort) Definition at line 61 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal number of probings without fixings, until probing is aborted (0: don't abort) Definition at line 63 of file prop_probing.c. Referenced by SCIPincludePropProbing().
maximal depth until propagation is executed(-1: no limit) Definition at line 65 of file prop_probing.c. Referenced by SCIPincludePropProbing(). Function Documentation
initializes the propagator data
Definition at line 108 of file prop_probing.c. References NULL. Referenced by SCIP_DECL_PROPINIT(), and SCIPincludePropProbing().
frees the sorted vars array
Definition at line 133 of file prop_probing.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeMemoryArray, SCIPfreeMemoryArrayNull, and SCIPreleaseVar(). Referenced by SCIP_DECL_PROPEXIT(), and SCIP_DECL_PROPEXITPRE().
sorts the binary variables starting with the given index by rounding locks and implications
Definition at line 162 of file prop_probing.c. References FALSE, MAX, MIN, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPdebugMessage, SCIPfreeBufferArray, SCIPgetNOrigVars(), SCIPinfinity(), SCIPsortDownRealPtr(), SCIPvarGetIndex(), SCIPvarGetNCliques(), SCIPvarGetNImpls(), SCIPvarGetNLocksDown(), SCIPvarGetNLocksUp(), SCIPvarIsActive(), SCIPvarIsBinary(), and TRUE. Referenced by applyProbing(), SCIP_DECL_PROPEXEC(), and SCIP_DECL_PROPPRESOL().
the main probing loop
Definition at line 329 of file prop_probing.c. References FALSE, MAX, NULL, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_STAGE_PRESOLVING, SCIP_STAGE_SOLVING, SCIP_VERBLEVEL_FULL, SCIP_VERBLEVEL_HIGH, SCIPallocBufferArray, SCIPanalyzeDeductionsProbing(), SCIPapplyProbingVar(), SCIPcaptureVar(), SCIPdebugMessage, SCIPduplicateMemoryArray, SCIPfixVar(), SCIPfreeBufferArray, SCIPfreeMemoryArray, SCIPgetCurrentNode(), SCIPgetNBinVars(), SCIPgetNImplVars(), SCIPgetNIntVars(), SCIPgetNVars(), SCIPgetSolvingTime(), SCIPgetStage(), SCIPgetVars(), SCIPisStopped(), SCIPnodeGetDepth(), SCIPreallocBufferArray, SCIPreleaseVar(), SCIPswapPointers(), SCIPtightenVarLb(), SCIPtightenVarUb(), SCIPvarGetIndex(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPvarGetNLocksDown(), SCIPvarGetNLocksUp(), SCIPvarGetUbLocal(), SCIPvarIsActive(), SCIPvarIsBinary(), SCIPvarIsDeleted(), SCIPverbMessage(), sortVariables(), and TRUE. Referenced by SCIP_DECL_PROPEXEC(), and SCIP_DECL_PROPPRESOL().
copy method for constraint handler plugins (called when SCIP copies plugins) Definition at line 706 of file prop_probing.c. References NULL, PROP_NAME, SCIP_CALL, SCIP_OKAY, SCIPincludePropProbing(), and SCIPpropGetName().
destructor of propagator to free user data (called when SCIP is exiting) Definition at line 721 of file prop_probing.c. References NULL, SCIP_OKAY, SCIPfreeMemory, SCIPpropGetData(), and SCIPpropSetData().
initialization method of propagator (called after problem was transformed) Definition at line 741 of file prop_probing.c. References initPropdata(), NULL, SCIP_OKAY, and SCIPpropGetData().
deinitialization method of propagator (called before transformed problem is freed) Definition at line 756 of file prop_probing.c. References freeSortedvars(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPpropGetData().
presolving initialization method of propagator (called when presolving is about to begin) Definition at line 774 of file prop_probing.c. References NULL, SCIP_OKAY, and SCIPpropGetData().
presolving deinitialization method of propagator (called after presolving has been finished) Definition at line 789 of file prop_probing.c. References freeSortedvars(), NULL, SCIP_CALL, SCIP_OKAY, SCIPgetNRuns(), and SCIPpropGetData().
solving process initialization method of propagator (called when branch and bound process is about to begin) Definition at line 811 of file prop_probing.c. References NULL, SCIP_OKAY, and SCIPpropGetData().
presolve method of propagator Definition at line 836 of file prop_probing.c. References applyProbing(), BMSclearMemoryArray, NULL, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_SUCCESS, SCIPcaptureVar(), SCIPdebugMessage, SCIPduplicateMemoryArray, SCIPgetNBinVars(), SCIPgetNImplVars(), SCIPgetNIntVars(), SCIPgetNRuns(), SCIPgetNTotalVars(), SCIPgetNVars(), SCIPgetVars(), SCIPpropGetData(), SCIPpropGetTime(), SCIPreallocMemoryArray, SCIPswapPointers(), SCIPvarIsBinary(), and sortVariables().
execution method of propagator Definition at line 965 of file prop_probing.c. References applyProbing(), BMSclearMemoryArray, NULL, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_LPSOLSTAT_OPTIMAL, SCIP_OKAY, SCIP_REDUCEDDOM, SCIPallocBufferArray, SCIPdebugMessage, SCIPfreeBufferArray, SCIPgetCurrentNode(), SCIPgetDepth(), SCIPgetLPBranchCands(), SCIPgetLPSolstat(), SCIPgetNTotalVars(), SCIPgetProbName(), SCIPinProbing(), SCIPnodeGetNumber(), SCIPpropGetData(), SCIPreallocMemoryArray, SCIPvarGetLbLocal(), SCIPvarGetUbLocal(), SCIPvarIsBinary(), and sortVariables().
propagation conflict resolving method of propagator Definition at line 1091 of file prop_probing.c. References SCIP_DIDNOTRUN, and SCIP_OKAY.
creates the probing propagator and includes it in SCIP
Definition at line 1104 of file prop_probing.c. References DEFAULT_MAXDEPTH, DEFAULT_MAXFIXINGS, DEFAULT_MAXRUNS, DEFAULT_MAXSUMUSELESS, DEFAULT_MAXTOTALUSELESS, DEFAULT_MAXUSELESS, DEFAULT_PROPROUNDS, FALSE, initPropdata(), NULL, PROP_DELAY, PROP_DESC, PROP_FREQ, PROP_NAME, PROP_PRESOL_DELAY, PROP_PRESOL_MAXROUNDS, PROP_PRESOL_PRIORITY, PROP_PRIORITY, PROP_TIMING, SCIP_CALL, SCIP_OKAY, SCIPaddIntParam(), SCIPallocMemory, SCIPincludePropBasic(), SCIPsetPropCopy(), SCIPsetPropExit(), SCIPsetPropExitpre(), SCIPsetPropFree(), SCIPsetPropInit(), SCIPsetPropInitpre(), SCIPsetPropInitsol(), SCIPsetPropPresol(), SCIPsetPropResprop(), and TRUE. Referenced by SCIP_DECL_PROPCOPY(), and SCIPincludeDefaultPlugins().
applies and evaluates probing of a single variable in the given direction and bound
Definition at line 1168 of file prop_probing.c. References FALSE, NULL, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIPchgVarLbProbing(), SCIPchgVarUbProbing(), SCIPdebugMessage, SCIPenableVarHistory(), SCIPendProbing(), SCIPisGE(), SCIPisGT(), SCIPisLE(), SCIPisLT(), SCIPpropagateProbing(), SCIPpropagateProbingImplications(), SCIPstartProbing(), SCIPvarGetLbGlobal(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPvarGetNCliques(), SCIPvarGetNImpls(), SCIPvarGetNLocksDown(), SCIPvarGetNLocksUp(), SCIPvarGetUbGlobal(), SCIPvarGetUbLocal(), and TRUE. Referenced by applyProbing(), and applyProbingVar().
analyses boundchanges resulting from probing on a variable and performs deduced fixations, aggregations, and domain tightenings Given a variable probingvar with domain [l,u] and bound tightening results from reducing the domain once to [l,leftub] and once to [rightlb,u], the method computes and applies resulting variable fixations, aggregations, implications, and bound changes. Variable probingvar does not need to be binary. The whole domain of probingvar need to be covered by the left and right branches, i.e., we assume leftub >= rightlb for continuous variables or floor(leftub) >= ceil(rightlb)-1 for discrete variables. Bounds after applying implications and cliques do not need to be provided, but if they are omitted and probingvar is a binary variable, then already existing implications may be added.
Definition at line 1290 of file prop_probing.c. References FALSE, MAX, MAXDNOM, MIN, NULL, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_STAGE_PRESOLVING, SCIP_STAGE_SOLVING, SCIP_VARTYPE_BINARY, SCIP_VARTYPE_CONTINUOUS, SCIPaddVarImplication(), SCIPaddVarVlb(), SCIPaddVarVub(), SCIPaggregateVars(), SCIPceil(), SCIPdebugMessage, SCIPepsilon(), SCIPfixVar(), SCIPfloor(), SCIPgetCurrentNode(), SCIPgetStage(), SCIPisEQ(), SCIPisGE(), SCIPisLbBetter(), SCIPisLE(), SCIPisUbBetter(), SCIPisZero(), SCIPnodeGetDepth(), SCIPselectSimpleValue(), SCIPtightenVarLb(), SCIPtightenVarUb(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPvarGetNLocksDown(), SCIPvarGetNLocksUp(), SCIPvarGetType(), SCIPvarGetUbLocal(), SCIPvarIsBinary(), and TRUE. Referenced by applyProbing(). |