prop.c File Reference Detailed Descriptionmethods and datastructures for propagators Definition in file prop.c. #include <assert.h> #include <string.h> #include "scip/def.h" #include "scip/set.h" #include "scip/stat.h" #include "scip/clock.h" #include "scip/paramset.h" #include "scip/var.h" #include "scip/scip.h" #include "scip/prop.h" #include "scip/pub_message.h" #include "scip/pub_misc.h" #include "scip/struct_prop.h" Go to the source code of this file. Function Documentation
comparison method for sorting propagators w.r.t. to their name Definition at line 55 of file prop.c. References SCIPpropGetName().
method to call, when the priority of a propagator was changed Definition at line 62 of file prop.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPparamGetData(), SCIPparamGetInt(), and SCIPsetPropPriority().
method to call, when the presolving priority of a propagator was changed Definition at line 77 of file prop.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPparamGetData(), SCIPparamGetInt(), and SCIPsetPropPresolPriority().
copies the given propagator to a new scip
Definition at line 91 of file prop.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, and SCIPpropGetName(). Referenced by SCIPsetCopyPlugins().
creates a propagator
Definition at line 109 of file prop.c. References BMSallocMemory, BMSduplicateMemoryArray, FALSE, NULL, paramname, SCIP_ALLOC, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_PARAMETERWRONGVAL, SCIP_PRESOLTIMING_ALWAYS, SCIP_PRESOLTIMING_EXHAUSTIVE, SCIP_PRESOLTIMING_FAST, SCIP_PRESOLTIMING_MEDIUM, SCIP_PRESOLTIMING_NONE, SCIP_PROPTIMING_AFTERLPLOOP, SCIP_PROPTIMING_ALWAYS, SCIP_PROPTIMING_BEFORELP, SCIP_PROPTIMING_DURINGLPLOOP, SCIPclockCreate(), SCIPmessagePrintError(), SCIPsetAddBoolParam(), SCIPsetAddIntParam(), SCIPsnprintf(), and TRUE. Referenced by SCIPincludeProp(), and SCIPincludePropBasic().
calls destructor and frees memory of propagator
Definition at line 231 of file prop.c. References BMSfreeMemory, BMSfreeMemoryArray, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().
initializes propagator
Definition at line 260 of file prop.c. References FALSE, SCIP_Prop::initialized, SCIP_Prop::lastnaddconss, SCIP_Prop::lastnaddholes, SCIP_Prop::lastnaggrvars, SCIP_Prop::lastnchgbds, SCIP_Prop::lastnchgcoefs, SCIP_Prop::lastnchgsides, SCIP_Prop::lastnchgvartypes, SCIP_Prop::lastndelconss, SCIP_Prop::lastnfixedvars, SCIP_Prop::lastnupgdconss, SCIP_Prop::naddconss, SCIP_Prop::naddholes, SCIP_Prop::naggrvars, SCIP_Prop::name, SCIP_Prop::ncalls, SCIP_Prop::nchgbds, SCIP_Prop::nchgcoefs, SCIP_Prop::nchgsides, SCIP_Prop::nchgvartypes, SCIP_Prop::ncutoffs, SCIP_Prop::ndelconss, SCIP_Prop::ndomredsfound, SCIP_Prop::nfixedvars, SCIP_Prop::npresolcalls, SCIP_Prop::nrespropcalls, NULL, SCIP_Prop::nupgdconss, SCIP_Prop::presoltime, SCIP_Prop::proptime, SCIP_Prop::resproptime, SCIP_Prop::sbproptime, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Prop::setuptime, TRUE, and SCIP_Prop::wasdelayed. Referenced by SCIPsetIncludeExternalCode().
calls exit method of propagator
Definition at line 326 of file prop.c. References FALSE, SCIP_Prop::initialized, SCIP_Prop::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Prop::setuptime. Referenced by SCIPsetInitPlugins().
informs propagator that the presolving process is being started
Definition at line 356 of file prop.c. References FALSE, SCIP_Prop::lastnaddconss, SCIP_Prop::lastnaddholes, SCIP_Prop::lastnaggrvars, SCIP_Prop::lastnchgbds, SCIP_Prop::lastnchgcoefs, SCIP_Prop::lastnchgsides, SCIP_Prop::lastnchgvartypes, SCIP_Prop::lastndelconss, SCIP_Prop::lastnfixedvars, SCIP_Prop::lastnupgdconss, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIP_Prop::setuptime, and SCIP_Prop::wasdelayed. Referenced by SCIPsetExitPlugins().
informs propagator that the presolving process is finished
Definition at line 392 of file prop.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Prop::setuptime. Referenced by SCIPsetExitPlugins().
informs propagator that the prop and bound process is being started
Definition at line 416 of file prop.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Prop::setuptime. Referenced by SCIPsetExitprePlugins().
informs propagator that the prop and bound process data is being freed
Definition at line 440 of file prop.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Prop::setuptime. Referenced by SCIPsetInitsolPlugins().
executes presolving method of propagator
Definition at line 465 of file prop.c. References SCIP_Prop::lastnaddconss, SCIP_Prop::lastnaddholes, SCIP_Prop::lastnaggrvars, SCIP_Prop::lastnchgbds, SCIP_Prop::lastnchgcoefs, SCIP_Prop::lastnchgsides, SCIP_Prop::lastnchgvartypes, SCIP_Prop::lastndelconss, SCIP_Prop::lastnfixedvars, SCIP_Prop::lastnupgdconss, SCIP_Prop::maxprerounds, SCIP_Prop::naddconss, SCIP_Prop::naddholes, SCIP_Prop::naggrvars, SCIP_Prop::name, SCIP_Prop::nchgbds, SCIP_Prop::nchgcoefs, SCIP_Prop::nchgsides, SCIP_Prop::nchgvartypes, SCIP_Prop::ndelconss, SCIP_Prop::nfixedvars, SCIP_Prop::npresolcalls, NULL, SCIP_Prop::nupgdconss, SCIP_Prop::presoltime, SCIP_Prop::presoltiming, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_SUCCESS, SCIP_UNBOUNDED, SCIPclockStart(), SCIPclockStop(), SCIPdebugMessage, and SCIPerrorMessage. Referenced by presolveRound().
calls execution method of propagator
Definition at line 591 of file prop.c. References SCIP_Prop::delay, SCIP_Prop::freq, SCIP_Prop::name, SCIP_Stat::nboundchgs, SCIP_Prop::ncalls, SCIP_Prop::ncutoffs, SCIP_Prop::ndomredsfound, SCIP_Stat::nholechgs, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, NULL, SCIP_Prop::proptime, SCIP_Prop::sbproptime, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_OKAY, SCIP_REDUCEDDOM, SCIPclockStart(), SCIPclockStop(), SCIPdebugMessage, SCIPerrorMessage, and SCIP_Prop::wasdelayed. Referenced by propagationRound().
resolves the given conflicting bound, that was deduced by the given propagator, by putting all "reason" bounds leading to the deduction into the conflict queue with calls to SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPaddConflictBd(), SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or SCIPaddConflictBinvar();
Definition at line 682 of file prop.c. References SCIP_Prop::name, SCIP_Prop::nrespropcalls, NULL, SCIP_Prop::resproptime, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_SUCCESS, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPvarGetLbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetUbAtIndex(), SCIPvarGetUbGlobal(), and TRUE. Referenced by conflictResolveBound().
gets user data of propagator
Definition at line 735 of file prop.c. References NULL, and SCIP_Prop::propdata. Referenced by applyGenVBounds(), initData(), propagateCutoffboundBinvar(), propagateCutoffboundBinvars(), propagateCutoffboundGlobally(), propagateVbounds(), SCIP_DECL_PROPCOPY(), SCIP_DECL_PROPEXEC(), SCIP_DECL_PROPEXIT(), SCIP_DECL_PROPEXITPRE(), SCIP_DECL_PROPEXITSOL(), SCIP_DECL_PROPFREE(), SCIP_DECL_PROPINIT(), SCIP_DECL_PROPINITPRE(), SCIP_DECL_PROPINITSOL(), SCIP_DECL_PROPPRESOL(), SCIP_DECL_PROPRESPROP(), SCIPfindObjProp(), SCIPgenVBoundAdd(), SCIPgetObjProp(), and SCIPisPropagatedVbounds().
sets user data of propagator; user has to free old data in advance!
Definition at line 745 of file prop.c. References NULL, and SCIP_Prop::propdata. Referenced by SCIP_DECL_PROPFREE().
sets copy method of propagator
Definition at line 756 of file prop.c. References NULL. Referenced by SCIPsetPropCopy().
sets destructor method of propagator
Definition at line 767 of file prop.c. References NULL. Referenced by SCIPsetPropFree().
sets initialization method of propagator
Definition at line 778 of file prop.c. References NULL. Referenced by SCIPsetPropInit().
sets deinitialization method of propagator
Definition at line 789 of file prop.c. References NULL. Referenced by SCIPsetPropExit().
sets solving process initialization method of propagator
Definition at line 800 of file prop.c. References NULL. Referenced by SCIPsetPropInitsol().
sets solving process deinitialization method of propagator
Definition at line 811 of file prop.c. References NULL. Referenced by SCIPsetPropExitsol().
sets preprocessing initialization method of propagator
Definition at line 822 of file prop.c. References NULL. Referenced by SCIPsetPropInitpre().
sets preprocessing deinitialization method of propagator
Definition at line 835 of file prop.c. References NULL. Referenced by SCIPsetPropExitpre().
sets presolving method of propagator
Definition at line 846 of file prop.c. References SCIP_Prop::maxprerounds, SCIP_Prop::name, NULL, SCIP_Prop::presolpriority, SCIP_Prop::presoltiming, SCIP_OKAY, SCIP_PARAMETERWRONGVAL, SCIP_PRESOLTIMING_ALWAYS, and SCIPmessagePrintError(). Referenced by SCIPsetPropPresol().
sets propagation conflict resolving callback of propagator
Definition at line 876 of file prop.c. References NULL. Referenced by SCIPsetPropResprop().
gets name of propagator
Definition at line 887 of file prop.c. References SCIP_Prop::name, and NULL. Referenced by applyProbing(), conflictAddBound(), conflictResolveBound(), paramsetSetPresolvingDefault(), paramsetSetPresolvingOff(), presolveRound(), printPresolverStatistics(), printPropagatorStatistics(), propagationRound(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_PROPCOPY(), SCIP_DECL_PROPEXEC(), SCIP_DECL_PROPPRESOL(), SCIP_DECL_SORTPTRCOMP(), SCIPboundchgApply(), SCIPgenVBoundAdd(), SCIPnodeAddBoundinfer(), SCIPnodeAddHoleinfer(), SCIPpropCopyInclude(), SCIPsetPropPresol(), SCIPsetSortSepas(), varAddLbchginfo(), and varAddUbchginfo().
gets description of propagator
Definition at line 897 of file prop.c. References SCIP_Prop::desc, and NULL. Referenced by SCIP_DECL_DIALOGEXEC().
gets priority of propagator
Definition at line 907 of file prop.c. References NULL, and SCIP_Prop::priority. Referenced by propagationRound(), and SCIP_DECL_DIALOGEXEC().
gets presolving priority of propagator
Definition at line 917 of file prop.c. References NULL, and SCIP_Prop::presolpriority. Referenced by presolveRound(), and SCIP_DECL_DIALOGEXEC(). sets priority of propagator
Definition at line 927 of file prop.c. References FALSE, NULL, and SCIP_Prop::priority. Referenced by SCIPsetPropPriority(). sets presolving priority of propagator
Definition at line 941 of file prop.c. References FALSE, NULL, and SCIP_Prop::presolpriority. Referenced by SCIPsetPropPresolPriority().
gets frequency of propagator
Definition at line 955 of file prop.c. References SCIP_Prop::freq, and NULL. Referenced by SCIP_DECL_DIALOGEXEC(). enables or disables all clocks of
Definition at line 965 of file prop.c. References NULL, SCIP_Prop::presoltime, SCIP_Prop::proptime, SCIP_Prop::resproptime, SCIP_Prop::sbproptime, SCIPclockEnableOrDisable(), and SCIP_Prop::setuptime. Referenced by SCIPsetSetReoptimizationParams(). gets time in seconds used for setting up this propagator for new stages
Definition at line 980 of file prop.c. References NULL, SCIPclockGetTime(), and SCIP_Prop::setuptime. Referenced by printPresolverStatistics(), and printPropagatorStatistics().
sets frequency of propagator
Definition at line 990 of file prop.c. References SCIP_Prop::freq, and NULL. gets time in seconds used in this propagator for propagation
Definition at line 1002 of file prop.c. References NULL, SCIP_Prop::proptime, and SCIPclockGetTime(). Referenced by printPropagatorStatistics(). gets time in seconds used in this propagator for propagation during strong branching
Definition at line 1012 of file prop.c. References NULL, SCIP_Prop::sbproptime, and SCIPclockGetTime(). Referenced by printPropagatorStatistics(). gets time in seconds used in this propagator for resolve propagation
Definition at line 1022 of file prop.c. References NULL, SCIP_Prop::resproptime, and SCIPclockGetTime(). Referenced by printPropagatorStatistics(). gets time in seconds used in this propagator for presolving
Definition at line 1032 of file prop.c. References NULL, SCIP_Prop::presoltime, and SCIPclockGetTime(). Referenced by printPresolverStatistics(), and printPropagatorStatistics().
gets the total number of times, the propagator was called
Definition at line 1042 of file prop.c. References SCIP_Prop::ncalls, and NULL. Referenced by printPropagatorStatistics().
gets the total number of times, the propagator was called for resolving a propagation
Definition at line 1052 of file prop.c. References SCIP_Prop::nrespropcalls, and NULL. Referenced by printPropagatorStatistics().
gets total number of times, this propagator detected a cutoff
Definition at line 1062 of file prop.c. References SCIP_Prop::ncutoffs, and NULL. Referenced by printPropagatorStatistics().
gets total number of domain reductions found by this propagator
Definition at line 1072 of file prop.c. References SCIP_Prop::ndomredsfound, and NULL. Referenced by printPropagatorStatistics(). should propagator be delayed, if other propagators found reductions?
Definition at line 1082 of file prop.c. References SCIP_Prop::delay, and NULL. Referenced by SCIP_DECL_DIALOGEXEC(). was propagator delayed at the last call?
Definition at line 1092 of file prop.c. References NULL, and SCIP_Prop::wasdelayed. Referenced by propagationRound(). is propagator initialized?
Definition at line 1102 of file prop.c. References SCIP_Prop::initialized, and NULL. Referenced by SCIPsetFindSepa().
gets number of variables fixed during presolving of propagator
Definition at line 1112 of file prop.c. References SCIP_Prop::nfixedvars, and NULL. Referenced by printPresolverStatistics().
gets number of variables aggregated during presolving of propagator
Definition at line 1122 of file prop.c. References SCIP_Prop::naggrvars, and NULL. Referenced by printPresolverStatistics().
gets number of variable types changed during presolving of propagator
Definition at line 1132 of file prop.c. References SCIP_Prop::nchgvartypes, and NULL. Referenced by printPresolverStatistics().
gets number of bounds changed during presolving of propagator
Definition at line 1142 of file prop.c. References SCIP_Prop::nchgbds, and NULL. Referenced by printPresolverStatistics().
gets number of holes added to domains of variables during presolving of propagator
Definition at line 1152 of file prop.c. References SCIP_Prop::naddholes, and NULL. Referenced by printPresolverStatistics().
gets number of constraints deleted during presolving of propagator
Definition at line 1162 of file prop.c. References SCIP_Prop::ndelconss, and NULL. Referenced by printPresolverStatistics().
gets number of constraints added during presolving of propagator
Definition at line 1172 of file prop.c. References SCIP_Prop::naddconss, and NULL. Referenced by printPresolverStatistics().
gets number of constraints upgraded during presolving of propagator
Definition at line 1182 of file prop.c. References NULL, and SCIP_Prop::nupgdconss.
gets number of coefficients changed during presolving of propagator
Definition at line 1192 of file prop.c. References SCIP_Prop::nchgcoefs, and NULL. Referenced by printPresolverStatistics().
gets number of constraint sides changed during presolving of propagator
Definition at line 1202 of file prop.c. References SCIP_Prop::nchgsides, and NULL. Referenced by printPresolverStatistics().
gets number of times the propagator was called in presolving and tried to find reductions
Definition at line 1212 of file prop.c. References SCIP_Prop::npresolcalls, and NULL. Referenced by printPresolverStatistics().
returns the timing mask of the propagator
Definition at line 1222 of file prop.c. References NULL, and SCIP_Prop::timingmask. Referenced by propagationRound(). does the propagator perform presolving?
Definition at line 1232 of file prop.c. References NULL. Referenced by printPresolverStatistics().
returns the timing mask of the presolving method of the propagator
Definition at line 1242 of file prop.c. References NULL, and SCIP_Prop::presoltiming. Referenced by SCIP_DECL_DIALOGEXEC().
sets the timing mask of the presolving method of the propagator
Definition at line 1252 of file prop.c. References NULL, and SCIP_Prop::presoltiming. |