All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Detailed DescriptionPseudo objective propagator. This propagator propagates the objective function using the cutoff bound and the pseudo objective value. The pseudo objective value can be seen as minimum activity of the linear objective function. Using this, this propagator checks if variables with non-zero objective coefficients can exceed the cutoff bound. If this is the case the corresponding bound can be tightened. Definition in file prop_pseudoobj.c. Go to the source code of this file.
Macro Definition Documentation
Definition at line 37 of file prop_pseudoobj.c. Referenced by SCIP_DECL_PROPCOPY(), and SCIPincludePropPseudoobj().
Definition at line 38 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
Definition at line 39 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
propagator priority Definition at line 40 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
propagator frequency Definition at line 41 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
should propagation method be delayed, if other propagators found reductions? Definition at line 42 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
priority of the presolving method (>= 0: before, < 0: after constraint handlers); combined with presolvers Definition at line 43 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
should presolving be delay, if other presolvers found reductions? Definition at line 44 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
maximal number of presolving rounds the presolver participates in (-1: no limit) Definition at line 45 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
Definition at line 48 of file prop_pseudoobj.c. Referenced by SCIP_DECL_EVENTEXEC(), and SCIPincludePropPseudoobj().
Definition at line 49 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
minimal number of successive none binary variable propagator whithout a bound reduction before aborted Definition at line 51 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
maximal fraction of none binary variables with non-zero objective without a bound reduction before aborted Definition at line 53 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
do we want to propagate all non-binary variables if we are propagating the root node? Definition at line 55 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
propagate new cutoff bound directly globally Definition at line 56 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
should the propagator be forced even active pricer are present? Note that can be done if it is known that the pseudo objective activity is given by the zero bound for all variables which are currently not present in the problem Definition at line 57 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
number of variable added after the propagator is reinitialized? Definition at line 61 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
use implications to strengthen the propagation of binary variable (increasing the objective change)? Definition at line 62 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
use implications to strengthen the resolve propagation of binary variable (increasing the objective change)? Definition at line 63 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
maximum number of binary variables the implications are used if turned on (-1: unlimited)? Definition at line 64 of file prop_pseudoobj.c. Referenced by SCIPincludePropPseudoobj().
Definition at line 796 of file prop_pseudoobj.c. Referenced by collectMinactImplicVars(). Typedef Documentation
implications in the form x == 0 or x == 1 ==> y == 0 or y == 1 for (x and y binary) Definition at line 81 of file prop_pseudoobj.c. Function Documentationcheck that the implications are applied for a globally fixed variable
Definition at line 131 of file prop_pseudoobj.c. References SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_Real, SCIPisGE(), SCIPisLE(), SCIPvarGetImplBounds(), SCIPvarGetImplTypes(), SCIPvarGetImplVars(), SCIPvarGetLbGlobal(), SCIPvarGetLbLocal(), SCIPvarGetNImpls(), and SCIPvarGetUbLocal(). Referenced by propdataInit().
check if the global fixed indices are correct
Definition at line 178 of file prop_pseudoobj.c. References NULL, SCIPvarGetLbGlobal(), and SCIPvarGetUbGlobal(). Referenced by propagateCutoffboundBinvars(), propagateCutoffboundGlobally(), propagateLowerbound(), and resolvePropagation().
compares objective implications w.r.t. their maximum contribution Definition at line 210 of file prop_pseudoobj.c. References SCIP_ObjImplics::maxobjchg.
compare variables w.r.t. (i) the absolute value the objective coefficient; (ii) the locks which indicate most effect – for the variables with a positive (negative) objective coefficient the down (up) lock is used since this lock indicates that tightened of the upper (lower) bound will triegger further domain propagations; (iii) the other locks; (iv) variable problem index; Definition at line 236 of file prop_pseudoobj.c. References REALABS, SCIPvarCompare(), SCIPvarGetNLocksDown(), SCIPvarGetNLocksUp(), and SCIPvarGetObj().
hash key retrieval function for cliques Definition at line 293 of file prop_pseudoobj.c.
returns TRUE iff the cliques are equal Definition at line 300 of file prop_pseudoobj.c.
returns the hash value of the key Definition at line 309 of file prop_pseudoobj.c. References SCIPcliqueGetId().
creates an objective implication data structure, fixes (globally) variables which are implied by lower and upper bound fixing, and clears the collected arrays for lower and upper bound
Definition at line 323 of file prop_pseudoobj.c. References FALSE, MAX, NULL, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemory, SCIPallocBlockMemoryArray, SCIPcaptureVar(), SCIPdebugMessage, SCIPhashmapExists(), SCIPhashmapGetImage(), SCIPisNegative(), SCIPisZero(), SCIPtightenVarLbGlobal(), SCIPtightenVarUbGlobal(), SCIPvarGetBestBoundType(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), and SCIPvarIsBinary(). Referenced by collectMinactVar().
frees an objective implication data structure
Definition at line 457 of file prop_pseudoobj.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemory, SCIPfreeBlockMemoryArrayNull, and SCIPreleaseVar(). Referenced by propdataExit().
remove the given variable at the given pos from the objective implication data structure
Definition at line 485 of file prop_pseudoobj.c. References SCIP_ObjImplics::nlbimpls, SCIP_ObjImplics::nubimpls, SCIP_ObjImplics::objvars, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, SCIPdebugPrintf, SCIPreleaseVar(), and SCIPvarGetName(). Referenced by getMinactImplicObjchg().
catch bound change events if the variable has a non-zero objective coefficient to check if the maximum activity of the objective function changed
Definition at line 536 of file prop_pseudoobj.c. References NULL, SCIP_CALL, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_OKAY, SCIP_Real, SCIPcatchVarEvent(), SCIPisZero(), and SCIPvarGetObj(). Referenced by propdataInit().
drop variable event w.r.t. objective coefficient
Definition at line 567 of file prop_pseudoobj.c. References NULL, SCIP_CALL, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_OKAY, SCIP_Real, SCIPdropVarEvent(), SCIPisZero(), and SCIPvarGetObj(). Referenced by dropVarEvents().
drop all variable events
Definition at line 598 of file prop_pseudoobj.c. References dropObjEvent(), NULL, SCIP_CALL, SCIP_EVENTTYPE_BOUNDRELAXED, SCIP_OKAY, SCIPdropVarEvent(), SCIPreleaseVar(), and SCIPvarIsBinary(). Referenced by propdataExit().
reset propagatore data structure
Definition at line 661 of file prop_pseudoobj.c. References FALSE, NULL, and SCIP_INVALID. Referenced by propdataExit(), and SCIPincludePropPseudoobj().
free propagator data
Definition at line 691 of file prop_pseudoobj.c. References dropVarEvents(), NULL, objimplicsFree(), propdataReset(), SCIP_CALL, SCIP_OKAY, SCIPfreeMemoryArrayNull, and SCIPhashtableFree(). Referenced by SCIP_DECL_PROPEXEC(), and SCIP_DECL_PROPEXITSOL().
returns the objective change for the given binary variable
Definition at line 727 of file prop_pseudoobj.c. References SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_Real, SCIPvarGetObj(), and SCIPvarIsBinary(). Referenced by adjustCutoffbound(), collectMinactObjchg(), collectMinactVar(), getMaxactObjchg(), and getMinactObjchg().
returns the objective change provided by the implication variable by fixing it to the given bound w.r.t. minimum activity of the objective function; additionally it collects all contributors for that objective change;
Definition at line 746 of file prop_pseudoobj.c. References NULL, REALABS, SCIP_Real, SCIPhashmapExists(), SCIPhashmapGetImage(), SCIPisZero(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), and TRUE. Referenced by collectMinactImplicVars().
returns the objective change provided by the implications of the given variable by fixing it to the given bound w.r.t. minimum activity of the objective function; additionally it collects all contributors for that objective change; Let I(0) and I(1) be all implications of the given variable which follow by fixing it to given bound and evaluate to fixing the implication variable to zero (I(0)) or one (I(1)), respectively. The objective change provided by the implications are:
Definition at line 813 of file prop_pseudoobj.c. References collectMinactImplicVar(), FALSE, MAX_CLIQUELENGTH, NULL, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcliqueGetNVars(), SCIPcliqueGetValues(), SCIPcliqueGetVars(), SCIPhashtableExists(), SCIPhashtableInsert(), SCIPisZero(), SCIPvarGetBestBoundType(), SCIPvarGetCliques(), SCIPvarGetImplTypes(), SCIPvarGetImplVars(), SCIPvarGetLbGlobal(), SCIPvarGetNBinImpls(), SCIPvarGetNCliques(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), SCIPvarIsBinary(), and TRUE. Referenced by collectMinactObjchg().
returns the objective change provided by the implications of the given variable by fixing it to the given bound w.r.t. minimum activity of the objective function Let I(0) and I(1) be all implications of the given variable which follow by fixing it to given bound and evaluate to fixing the implication variable to zero (I(0)) or one (I(1)), respectively. The objective change provided by the implications are:
This can be done w.r.t. global variable bounds (local == FALSE), w.r.t. local variable bounds (local == TRUE && bdchgidx == NULL), and w.r.t. given time stamp (local == TRUE && bdchgidx != NULL)
Definition at line 956 of file prop_pseudoobj.c. References FALSE, SCIP_ObjImplics::nlbimpls, SCIP_ObjImplics::nubimpls, NULL, objimplicsDelPos(), SCIP_ObjImplics::objvars, REALABS, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIPisZero(), SCIPvarGetLbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbAtIndex(), SCIPvarGetUbGlobal(), SCIPvarIsBinary(), SCIPvarsHaveCommonClique(), and TRUE. Referenced by getMinactObjchg().
computes for the given binary variable the objective contribution by fixing it to given bound w.r.t. minimum activity of the objective function; additionally it collects all contributors for that objective change;
Definition at line 1041 of file prop_pseudoobj.c. References collectMinactImplicVars(), getVarObjchg(), NULL, SCIP_CALL, SCIP_OKAY, SCIPvarGetBestBoundType(), and SCIPvarIsBinary(). Referenced by collectMinactVar().
computes for the given binary variable the objective contribution by fixing it to given bound w.r.t. minimum activity of the objective function; this can be done w.r.t. global variable bounds (local == FALSE), w.r.t. local variable bounds (local == TRUE && bdchgidx == NULL), and w.r.t. given time stamp (local == TRUE && bdchgidx != NULL)
Definition at line 1074 of file prop_pseudoobj.c. References getMinactImplicObjchg(), getVarObjchg(), SCIP_CALL, SCIP_OKAY, SCIPvarGetBestBoundType(), and SCIPvarIsBinary(). Referenced by propagateCutoffboundBinvar().
returns the global (that means w.r.t. global bounds of the variables) objective change provided by the implication of the given variable by fixing it to the given bound w.r.t. maximum activity of the objective function Let I(0) and I(1) be all implications of the given variable which follow by fixing it to given bound and evaluate to fixing the implication variable to zero (I(0)) or one (I(1)), respectively. The objective change provided by the implications are:
Definition at line 1110 of file prop_pseudoobj.c. References FALSE, NULL, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_Real, SCIPvarGetImplBounds(), SCIPvarGetImplVars(), SCIPvarGetLbGlobal(), SCIPvarGetNBinImpls(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), SCIPvarGetWorstBoundGlobal(), SCIPvarIsBinary(), and TRUE. Referenced by getMaxactObjchg().
computes for the given binary variable the gloabl (that means w.r.t. global bounds of the variables) objective contribution by fixing it to given bound w.r.t. maximum activity of the objective function
Definition at line 1156 of file prop_pseudoobj.c. References getMaxactImplicObjchg(), getVarObjchg(), SCIP_Real, SCIPvarGetWorstBoundType(), and SCIPvarIsBinary(). Referenced by collectMaxactVar(), and propagateLowerboundBinvar().
reset variables array which marks variables which are collected
Definition at line 1181 of file prop_pseudoobj.c. References FALSE, NULL, SCIPhashmapExists(), and SCIPhashmapGetImage(). Referenced by collectMinactVar().
check if the given variable should be collected for the minimum activity propagation
Definition at line 1206 of file prop_pseudoobj.c. References collectMinactObjchg(), FALSE, getVarObjchg(), NULL, objimplicsCreate(), resetContributors(), SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPisNegative(), SCIPisZero(), SCIPvarGetBestBoundType(), SCIPvarGetName(), SCIPvarGetNBinImpls(), SCIPvarGetNCliques(), SCIPvarGetObj(), and TRUE. Referenced by propdataInit().
check if the given variable should be collected for the maximum activity propagation
Definition at line 1327 of file prop_pseudoobj.c. References FALSE, getMaxactObjchg(), MIN, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_Real, SCIPisPositive(), SCIPisZero(), and TRUE. Referenced by propdataInit().
initializate the propagator
Definition at line 1356 of file prop_pseudoobj.c. References BMSclearMemoryArray, catchObjEvent(), checkImplicsApplied(), collectMaxactVar(), collectMinactVar(), FALSE, SCIP_ObjImplics::maxobjchg, SCIP_ObjImplics::nlbimpls, SCIP_ObjImplics::nubimpls, NULL, SCIP_Bool, SCIP_CALL, SCIP_EVENTTYPE_BOUNDRELAXED, SCIP_INVALID, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPallocMemoryArray, SCIPblkmem(), SCIPcalcHashtableSize(), SCIPcaptureVar(), SCIPcatchVarEvent(), SCIPdebugMessage, SCIPfreeBufferArray, SCIPfreeMemoryArray, SCIPgetCutoffbound(), SCIPgetDepth(), SCIPgetGlobalPseudoObjval(), SCIPgetNCliques(), SCIPgetNContVars(), SCIPgetNObjVars(), SCIPgetNVars(), SCIPgetPseudoObjval(), SCIPgetVars(), SCIPhashmapCreate(), SCIPhashmapFree(), SCIPhashmapInsert(), SCIPhashtableCreate(), SCIPhashtableFree(), SCIPinfinity(), SCIPisFeasEQ(), SCIPisZero(), SCIPsortDownPtr(), SCIPsortDownPtrPtr(), SCIPsortDownRealPtr(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), SCIPvarIsBinary(), and TRUE. Referenced by SCIP_DECL_PROPEXEC().
adds for the given none binary variable a conflict bound depending on its objective contribution
Definition at line 1662 of file prop_pseudoobj.c. References FALSE, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPdebugMessage, SCIPisFeasGE(), SCIPisFeasLE(), SCIPisGT(), SCIPisLT(), SCIPisPositive(), SCIPisZero(), SCIPvarGetLbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetObj(), SCIPvarGetUbAtIndex(), and SCIPvarGetUbGlobal(). Referenced by resolvePropagation().
check for the given implication variables of they also contribute to the required minimum activity
Definition at line 1718 of file prop_pseudoobj.c. References FALSE, NULL, REALABS, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPhashtableExists(), SCIPhashtableInsert(), SCIPvarGetLbAtIndex(), SCIPvarGetName(), SCIPvarGetObj(), SCIPvarGetUbAtIndex(), SCIPvarIsBinary(), and TRUE. Referenced by addConflictBinvar(), and adjustCutoffbound().
adds for the given binary variable a conflict bound depending on its objective contribution
Definition at line 1762 of file prop_pseudoobj.c. References FALSE, getConflictImplics(), MAX, MIN, SCIP_ObjImplics::nlbimpls, SCIP_ObjImplics::nubimpls, NULL, SCIP_ObjImplics::objvars, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPdebugMessage, SCIPhashtableExists(), SCIPhashtableInsert(), SCIPisNegative(), SCIPisPositive(), SCIPvarGetLbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetObj(), SCIPvarGetUbAtIndex(), SCIPvarGetUbGlobal(), and SCIPvarIsBinary(). Referenced by resolvePropagation().
resolves a propagation by supplying the variables whose bound changes increased the pseudo objective value above the cutoff bound
Definition at line 1848 of file prop_pseudoobj.c. References FALSE, getConflictImplics(), getVarObjchg(), SCIP_ObjImplics::nlbimpls, SCIP_ObjImplics::nubimpls, NULL, SCIP_ObjImplics::objvars, SCIP_Bool, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPfeastol(), SCIPisEQ(), SCIPisNegative(), SCIPisZero(), SCIPvarGetBestBoundType(), SCIPvarGetLbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbAtIndex(), SCIPvarGetUbGlobal(), SCIPvarIsBinary(), SCIPvarIsIntegral(), and TRUE. Referenced by resolvePropagation().
resolves a propagation by supplying the variables whose bound changes increased the pseudo objective value above the cutoff bound
Definition at line 1942 of file prop_pseudoobj.c. References addConflictBinvar(), addConflictBounds(), adjustCutoffbound(), checkGlbfirstnonfixed(), FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPgetGlobalPseudoObjval(), SCIPhashtableExists(), SCIPhashtableRemoveAll(), SCIPisInfinity(), SCIPisPositive(), SCIPisZero(), SCIPvarGetObj(), and TRUE. Referenced by propagateCutoffbound(), propagateCutoffboundBinvar(), and SCIP_DECL_PROPRESPROP().
propagates the given variable against the cutoff bound
Definition at line 2088 of file prop_pseudoobj.c. References FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPinferVarLbProp(), SCIPinferVarUbProp(), SCIPisFeasEQ(), SCIPisInfinity(), SCIPisLT(), SCIPisZero(), SCIPtightenVarLbGlobal(), SCIPtightenVarUbGlobal(), SCIPvarGetLbGlobal(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPvarGetUbGlobal(), and SCIPvarGetUbLocal(). Referenced by propagateCutoffbound(), propagateCutoffboundBinvar(), propagateCutoffboundGlobally(), SCIP_DECL_PROPPRESOL(), and SCIPpropagateCutoffboundVar().
propagates the given binary variable against the cutoff bound
Definition at line 2190 of file prop_pseudoobj.c. References FALSE, getMinactObjchg(), NULL, propagateCutoffboundVar(), resolvePropagation(), SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPanalyzeConflict(), SCIPgetDepth(), SCIPinitConflictAnalysis(), SCIPisConflictAnalysisApplicable(), SCIPisFeasLT(), SCIPisNegative(), SCIPisZero(), SCIPpropGetData(), SCIPvarIsBinary(), and TRUE. Referenced by propagateCutoffboundBinvars(), and propagateCutoffboundGlobally().
globally propagates if a new cutoff bound or global pseudo objective value (minimum activity of the objective function) is available
Definition at line 2274 of file prop_pseudoobj.c. References checkGlbfirstnonfixed(), FALSE, MAX, NULL, propagateCutoffboundBinvar(), propagateCutoffboundVar(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPdebugMessage, SCIPgetDepth(), SCIPgetGlobalPseudoObjval(), SCIPisGE(), SCIPisInfinity(), SCIPisZero(), SCIPpropGetData(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), and TRUE. Referenced by propagateCutoffbound().
propagates the cutoff bound for binary variables (c*x <= cutoff)
Definition at line 2431 of file prop_pseudoobj.c. References checkGlbfirstnonfixed(), FALSE, NULL, propagateCutoffboundBinvar(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, SCIPpropGetData(), SCIPvarGetLbLocal(), SCIPvarGetUbLocal(), and TRUE. Referenced by propagateCutoffbound().
propagates the cutoff bound c*x <= cutoff
Definition at line 2564 of file prop_pseudoobj.c. References FALSE, MAX, NULL, propagateCutoffboundBinvars(), propagateCutoffboundGlobally(), propagateCutoffboundVar(), resolvePropagation(), SCIP_Bool, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_Real, SCIP_REDUCEDDOM, SCIPanalyzeConflict(), SCIPcutoffNode(), SCIPdebugMessage, SCIPgetCutoffbound(), SCIPgetCutoffdepth(), SCIPgetDepth(), SCIPgetPseudoObjval(), SCIPgetRootNode(), SCIPinitConflictAnalysis(), SCIPisConflictAnalysisApplicable(), SCIPisGE(), SCIPisInfinity(), SCIPisZero(), SCIPpropGetData(), SCIPvarGetObj(), and TRUE. Referenced by SCIP_DECL_PROPEXEC().
recalculates the maximum objective pseudoactivity
Definition at line 2760 of file prop_pseudoobj.c. References NULL, SCIP_Real, SCIPgetNVars(), SCIPgetVars(), SCIPisInfinity(), SCIPisNegative(), SCIPisPositive(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), and SCIPvarGetUbGlobal(). Referenced by getMaxObjPseudoactivityResidualValue(), and updateMaxObjPseudoactivity().
updates the pseudo objective activity if necessary
Definition at line 2810 of file prop_pseudoobj.c. References calcMaxObjPseudoactivity(), NULL, and SCIP_INVALID. Referenced by propagateLowerbound().
returns the residual pseudo objective activity without the given value
Definition at line 2825 of file prop_pseudoobj.c. References calcMaxObjPseudoactivity(), NULL, SCIP_INVALID, SCIP_Real, SCIPinfinity(), and SCIPisInfinity(). Referenced by getMaxObjPseudoactivity(), and getMaxObjPseudoactivityResidual().
returns the residual pseudo objective activity
Definition at line 2863 of file prop_pseudoobj.c. References getMaxObjPseudoactivityResidualValue(), NULL, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_Real, SCIPisInfinity(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), and SCIPvarGetWorstBoundType(). Referenced by propagateLowerboundVar().
returns the maximum pseudo objective activity of the objective function
Definition at line 2897 of file prop_pseudoobj.c. References getMaxObjPseudoactivityResidualValue(). Referenced by propagateLowerbound().
propagates the global domain of the given binary variable against the lower bound (c*x >= lowerbound)
Definition at line 2907 of file prop_pseudoobj.c. References FALSE, getMaxactObjchg(), SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPisFeasLT(), SCIPisInfinity(), SCIPisLE(), SCIPisPositive(), SCIPtightenVarLbGlobal(), SCIPvarIsBinary(), and TRUE. Referenced by propagateLowerbound().
propagates the global domains of the given variable with non-zero objective coefficient against the lower bound (c*x >= lowerbound)
Definition at line 2965 of file prop_pseudoobj.c. References FALSE, getMaxObjPseudoactivityResidual(), SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPisFeasGT(), SCIPisFeasLT(), SCIPisInfinity(), SCIPisZero(), SCIPtightenVarLbGlobal(), SCIPtightenVarUbGlobal(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), SCIPvarIsIntegral(), and TRUE. Referenced by propagateLowerbound().
propagates the global lower (dual) bound c*x >= lowerbound
Definition at line 3030 of file prop_pseudoobj.c. References checkGlbfirstnonfixed(), FALSE, getMaxObjPseudoactivity(), NULL, propagateLowerboundBinvar(), propagateLowerboundVar(), SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_INVALID, SCIP_OKAY, SCIP_Real, SCIP_REDUCEDDOM, SCIPcutoffNode(), SCIPdebugMessage, SCIPgetLowerbound(), SCIPgetRootNode(), SCIPisInfinity(), SCIPisLE(), SCIPisLT(), SCIPisZero(), SCIPpropGetData(), SCIPvarGetLbGlobal(), SCIPvarGetObj(), SCIPvarGetUbGlobal(), SCIPvarIsBinary(), TRUE, and updateMaxObjPseudoactivity(). Referenced by SCIP_DECL_PROPEXEC().
copy method for propagator plugins (called when SCIP copies plugins) Definition at line 3231 of file prop_pseudoobj.c. References NULL, PROP_NAME, SCIP_CALL, SCIP_OKAY, SCIPincludePropPseudoobj(), and SCIPpropGetName().
destructor of propagator to free user data (called when SCIP is exiting) Definition at line 3245 of file prop_pseudoobj.c. References NULL, SCIP_OKAY, SCIPfreeMemory, SCIPpropGetData(), and SCIPpropSetData().
solving process initialization method of propagator (called when branch and bound process is about to begin) Definition at line 3260 of file prop_pseudoobj.c. References NULL, SCIP_CALL, SCIP_EVENTTYPE_VARADDED, SCIP_OKAY, SCIPcatchEvent(), SCIPgetNActivePricers(), SCIPpropGetData(), and TRUE.
solving process deinitialization method of propagator (called before branch and bound process data is freed) Definition at line 3284 of file prop_pseudoobj.c. References FALSE, NULL, propdataExit(), SCIP_CALL, SCIP_EVENTTYPE_VARADDED, SCIP_OKAY, SCIPdropEvent(), and SCIPpropGetData().
presolving method of propagator Definition at line 3307 of file prop_pseudoobj.c. References FALSE, NULL, propagateCutoffboundVar(), SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_Real, SCIP_SUCCESS, SCIPgetCutoffbound(), SCIPgetGlobalPseudoObjval(), SCIPgetNActivePricers(), SCIPgetNVars(), SCIPgetVars(), SCIPisGE(), SCIPisInfinity(), SCIPisZero(), SCIPpropGetData(), SCIPvarGetObj(), and TRUE.
execution method of propagator Definition at line 3387 of file prop_pseudoobj.c. References NULL, propagateCutoffbound(), propagateLowerbound(), propdataExit(), propdataInit(), SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_PROPTIMING_DURINGLPLOOP, SCIP_REDUCEDDOM, SCIP_STAGE_SOLVING, SCIPgetDepth(), SCIPgetNActivePricers(), SCIPgetStage(), SCIPinProbing(), and SCIPpropGetData().
propagation conflict resolving method of propagator Definition at line 3439 of file prop_pseudoobj.c. References FALSE, NULL, resolvePropagation(), SCIP_BOUNDTYPE_LOWER, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_SUCCESS, SCIPdebugMessage, SCIPgetCutoffbound(), SCIPisEQ(), SCIPisInfinity(), SCIPpropGetData(), SCIPvarGetLbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetUbGlobal(), and TRUE.
execution method of bound change event handler Definition at line 3472 of file prop_pseudoobj.c. References EVENTHDLR_NAME, NULL, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_EVENTTYPE_LBRELAXED, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_VARADDED, SCIP_INVALID, SCIP_OKAY, SCIPeventGetType(), and SCIPeventhdlrGetName().
creates the pseudo objective function propagator and includes it in SCIP
Definition at line 3514 of file prop_pseudoobj.c. References DEFAULT_FORCE, DEFAULT_MAXIMPLVARS, DEFAULT_MAXNEWVARS, DEFAULT_MAXVARSFRAC, DEFAULT_MINUSELESS, DEFAULT_PROPCUTOFFBOUND, DEFAULT_PROPFULLINROOT, DEFAULT_PROPUSEIMPLICS, DEFAULT_RESPROPUSEIMPLICS, EVENTHDLR_DESC, EVENTHDLR_NAME, NULL, PROP_DELAY, PROP_DESC, PROP_FREQ, PROP_NAME, PROP_PRESOL_DELAY, PROP_PRESOL_MAXROUNDS, PROP_PRESOL_PRIORITY, PROP_PRIORITY, PROP_TIMING, propdataReset(), SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPaddBoolParam(), SCIPaddIntParam(), SCIPaddRealParam(), SCIPallocMemory, SCIPerrorMessage, SCIPincludeEventhdlrBasic(), SCIPincludePropBasic(), SCIPsetPropCopy(), SCIPsetPropExitsol(), SCIPsetPropFree(), SCIPsetPropInitsol(), SCIPsetPropPresol(), SCIPsetPropResprop(), and TRUE. Referenced by SCIP_DECL_PROPCOPY(), and SCIPincludeDefaultPlugins().
propagates the cutoff bound for the given variables
Definition at line 3603 of file prop_pseudoobj.c. References propagateCutoffboundVar(), SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPvarGetObj(), and TRUE. |