prop.c
Go to the documentation of this file.
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/ 70 SCIP_CALL( SCIPsetPropPriority(scip, (SCIP_PROP*)paramdata, SCIPparamGetInt(param)) ); /*lint !e740*/ 85 SCIP_CALL( SCIPsetPropPresolPriority(scip, (SCIP_PROP*)paramdata, SCIPparamGetInt(param)) ); /*lint !e740*/ 102 SCIPdebugMessage("including propagator %s in subscip %p\n", SCIPpropGetName(prop), (void*)set->scip); 119 SCIP_PROPTIMING timingmask, /**< positions in the node solving loop where propagator should be executed */ 120 int presolpriority, /**< priority of the propagator (>= 0: before, < 0: after constraint handlers) */ 121 int presolmaxrounds, /**< maximal number of presolving rounds the propagator participates in (-1: no limit) */ 123 SCIP_DECL_PROPCOPY ((*propcopy)), /**< copy method of propagator or NULL if you don't want to copy your plugin into sub-SCIPs */ 128 SCIP_DECL_PROPEXITPRE ((*propexitpre)), /**< presolving deinitialization method of propagator */ 129 SCIP_DECL_PROPINITSOL ((*propinitsol)), /**< solving process initialization method of propagator */ 130 SCIP_DECL_PROPEXITSOL ((*propexitsol)), /**< solving process deinitialization method of propagator */ 146 /* the interface change from delay flags to timings cannot be recognized at compile time: Exit with an appropriate 151 SCIPmessagePrintError("ERROR: 'PRESOLDELAY'-flag no longer available since SCIP 3.2, use an appropriate " 194 (void) SCIPsnprintf(paramdesc, SCIP_MAXSTRLEN, "frequency for calling propagator <%s> (-1: never, 0: only in root node)", name); 204 (void) SCIPsnprintf(paramdesc, SCIP_MAXSTRLEN, "timing when propagator should be called (%u:BEFORELP, %u:DURINGLPLOOP, %u:AFTERLPLOOP, %u:ALWAYS))", 205 SCIP_PROPTIMING_BEFORELP, SCIP_PROPTIMING_DURINGLPLOOP, SCIP_PROPTIMING_AFTERLPLOOP, SCIP_PROPTIMING_ALWAYS); 207 (int*)(&(*prop)->timingmask), TRUE, timingmask, (int) SCIP_PROPTIMING_BEFORELP, (int) SCIP_PROPTIMING_ALWAYS, NULL, NULL) ); /*lint !e713*/ 221 (void) SCIPsnprintf(paramdesc, SCIP_MAXSTRLEN, "timing mask of the presolving method of propagator <%s> (%u:FAST, %u:MEDIUM, %u:EXHAUSTIVE)", 224 (int*)&(*prop)->presoltiming, TRUE, (int)presoltiming, (int) SCIP_PRESOLTIMING_NONE, (int) SCIP_PRESOLTIMING_ALWAYS, NULL, NULL) ); /*lint !e740*/ 479 int* nchgsides, /**< pointer to total number of changed left/right hand sides of all presolvers */ 534 /* remember the number of changes prior to the call of the presolver method of the propagator */ 676 /** resolves the given conflicting bound, that was deduced by the given propagator, by putting all "reason" bounds 677 * leading to the deduction into the conflict queue with calls to SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPaddConflictBd(), 678 * SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or SCIPaddConflictBinvar(); 688 SCIP_BDCHGIDX* bdchgidx, /**< bound change index, representing the point of time where change took place */ 720 SCIPerrorMessage("propagation conflict resolving method of propagator <%s> returned invalid result <%d>\n", 727 SCIPerrorMessage("propagation conflict resolving method of propagator <%s> is not implemented\n", prop->name); 758 SCIP_DECL_PROPCOPY ((*propcopy)) /**< copy method of propagator or NULL if you don't want to copy your plugin into sub-SCIPs */ 802 SCIP_DECL_PROPINITSOL((*propinitsol)) /**< solving process initialization method of propagator */ 813 SCIP_DECL_PROPEXITSOL ((*propexitsol)) /**< solving process deinitialization method of propagator */ 837 SCIP_DECL_PROPEXITPRE((*propexitpre)) /**< preprocessing deinitialization method of propagator */ 849 int presolpriority, /**< presolving priority of the propagator (>= 0: before, < 0: after constraint handlers) */ 850 int presolmaxrounds, /**< maximal number of presolving rounds the propagator participates in (-1: no limit) */ 858 /* the interface change from delay flags to timings cannot be recognized at compile time: Exit with an appropriate 863 SCIPmessagePrintError("ERROR: 'PRESOLDELAY'-flag no longer available since SCIP 3.2, use an appropriate " 1211 /** gets number of times the propagator was called in presolving and tried to find reductions */
Definition: type_result.h:33 Definition: struct_var.h:97 void SCIPpropSetCopy(SCIP_PROP *prop, SCIP_DECL_PROPCOPY((*propcopy))) Definition: prop.c:756 Definition: type_result.h:34 SCIP_RETCODE SCIPpropCopyInclude(SCIP_PROP *prop, SCIP_SET *set) Definition: prop.c:91 void SCIPpropSetPresolTiming(SCIP_PROP *prop, SCIP_PRESOLTIMING presoltiming) Definition: prop.c:1252 SCIP_Longint SCIPpropGetNDomredsFound(SCIP_PROP *prop) Definition: prop.c:1072 internal methods for clocks and timing issues Definition: type_result.h:49 SCIP_RETCODE SCIPpropPresol(SCIP_PROP *prop, SCIP_SET *set, SCIP_PRESOLTIMING timing, int nrounds, int *nfixedvars, int *naggrvars, int *nchgvartypes, int *nchgbds, int *naddholes, int *ndelconss, int *naddconss, int *nupgdconss, int *nchgcoefs, int *nchgsides, SCIP_RESULT *result) Definition: prop.c:465 Definition: type_result.h:38 Definition: struct_var.h:196 void SCIPpropSetExitsol(SCIP_PROP *prop, SCIP_DECL_PROPEXITSOL((*propexitsol))) Definition: prop.c:811 Definition: struct_message.h:35 SCIP_RETCODE SCIPsetPropPresolPriority(SCIP *scip, SCIP_PROP *prop, int presolpriority) Definition: scip.c:7175 void SCIPpropSetFree(SCIP_PROP *prop, SCIP_DECL_PROPFREE((*propfree))) Definition: prop.c:767 void SCIPpropSetInitpre(SCIP_PROP *prop, SCIP_DECL_PROPINITPRE((*propinitpre))) Definition: prop.c:822 SCIP_Real SCIPvarGetLbAtIndex(SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx, SCIP_Bool after) Definition: var.c:15737 internal methods for handling parameter settings void SCIPpropSetInitsol(SCIP_PROP *prop, SCIP_DECL_PROPINITSOL((*propinitsol))) Definition: prop.c:800 void SCIPclockEnableOrDisable(SCIP_CLOCK *clck, SCIP_Bool enable) Definition: clock.c:250 void SCIPpropSetPriority(SCIP_PROP *prop, SCIP_SET *set, int priority) Definition: prop.c:927 Definition: type_retcode.h:44 internal methods for propagators Definition: struct_set.h:56 void SCIPpropSetExit(SCIP_PROP *prop, SCIP_DECL_PROPEXIT((*propexit))) Definition: prop.c:789 Definition: type_clock.h:34 Definition: type_result.h:35 SCIP_RETCODE SCIPpropCreate(SCIP_PROP **prop, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_PROPCOPY((*propcopy)), SCIP_DECL_PROPFREE((*propfree)), SCIP_DECL_PROPINIT((*propinit)), SCIP_DECL_PROPEXIT((*propexit)), SCIP_DECL_PROPINITPRE((*propinitpre)), SCIP_DECL_PROPEXITPRE((*propexitpre)), SCIP_DECL_PROPINITSOL((*propinitsol)), SCIP_DECL_PROPEXITSOL((*propexitsol)), SCIP_DECL_PROPPRESOL((*proppresol)), SCIP_DECL_PROPEXEC((*propexec)), SCIP_DECL_PROPRESPROP((*propresprop)), SCIP_PROPDATA *propdata) Definition: prop.c:109 Definition: type_retcode.h:42 Definition: type_retcode.h:48 SCIP_Real SCIPvarGetUbAtIndex(SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx, SCIP_Bool after) Definition: var.c:15859 Definition: type_lp.h:47 void SCIPpropEnableOrDisableClocks(SCIP_PROP *prop, SCIP_Bool enable) Definition: prop.c:965 Definition: type_retcode.h:33 internal methods for global SCIP settings void SCIPpropSetPresolPriority(SCIP_PROP *prop, SCIP_SET *set, int presolpriority) Definition: prop.c:941 Definition: type_result.h:42 SCIP_RETCODE SCIPsetAddIntParam(SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int *valueptr, SCIP_Bool isadvanced, int defaultvalue, int minvalue, int maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata) Definition: set.c:2455 Definition: struct_prop.h:36 SCIP_RETCODE SCIPclockCreate(SCIP_CLOCK **clck, SCIP_CLOCKTYPE clocktype) Definition: clock.c:160 internal methods for problem variables public data structures and miscellaneous methods SCIP_RETCODE SCIPpropResolvePropagation(SCIP_PROP *prop, SCIP_SET *set, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE inferboundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result) Definition: prop.c:682 void SCIPpropSetInit(SCIP_PROP *prop, SCIP_DECL_PROPINIT((*propinit))) Definition: prop.c:778 datastructures for propagators Definition: type_lp.h:48 public methods for message output SCIP_RETCODE SCIPpropSetPresol(SCIP_PROP *prop, SCIP_DECL_PROPPRESOL((*proppresol)), int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming) Definition: prop.c:846 SCIP_RETCODE SCIPpropExec(SCIP_PROP *prop, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool execdelayed, SCIP_Bool instrongbranching, SCIP_PROPTIMING proptiming, SCIP_RESULT *result) Definition: prop.c:591 internal methods for problem statistics SCIP_PRESOLTIMING SCIPpropGetPresolTiming(SCIP_PROP *prop) Definition: prop.c:1242 void SCIPpropSetResprop(SCIP_PROP *prop, SCIP_DECL_PROPRESPROP((*propresprop))) Definition: prop.c:876 SCIP_Longint SCIPpropGetNRespropCalls(SCIP_PROP *prop) Definition: prop.c:1052 Definition: type_retcode.h:45 SCIP_Real SCIPpropGetStrongBranchPropTime(SCIP_PROP *prop) Definition: prop.c:1012 void SCIPpropSetExitpre(SCIP_PROP *prop, SCIP_DECL_PROPEXITPRE((*propexitpre))) Definition: prop.c:835 Definition: struct_stat.h:44 common defines and data types used in all packages of SCIP Definition: objbranchrule.h:33 SCIP_RETCODE SCIPsetPropPriority(SCIP *scip, SCIP_PROP *prop, int priority) Definition: scip.c:7160 SCIP_RETCODE SCIPsetAddBoolParam(SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, SCIP_Bool *valueptr, SCIP_Bool isadvanced, SCIP_Bool defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata) Definition: set.c:2433 Definition: type_result.h:39 SCIP callable library. SCIP_RETCODE SCIPpropExitsol(SCIP_PROP *prop, SCIP_SET *set, SCIP_Bool restart) Definition: prop.c:440 |