cons_cumulative.h File Reference Detailed Descriptionconstraint handler for cumulative constraints Given:
The cumulative constraint ensures that for each point in time holds.
Definition in file cons_cumulative.h. #include "scip/scip.h" Go to the source code of this file.
Macro Definition Documentation
Value:
int* durations, int* demands, int capacity, int hmin, int hmax, \
solves given cumulative condition as independent sub problem
input:
input/output:
output:
Definition at line 86 of file cons_cumulative.h. Function Documentation
creates the constraint handler for cumulative constraints and includes it in SCIP creates the handler for cumulative constraints and includes it in SCIP
Definition at line 13499 of file cons_cumulative.c. References CONSHDLR_CHECKPRIORITY, CONSHDLR_DELAYPROP, CONSHDLR_DELAYSEPA, CONSHDLR_DESC, CONSHDLR_EAGERFREQ, CONSHDLR_ENFOPRIORITY, CONSHDLR_MAXPREROUNDS, CONSHDLR_NAME, CONSHDLR_NEEDSCONS, CONSHDLR_PRESOLTIMING, CONSHDLR_PROP_TIMING, CONSHDLR_PROPFREQ, CONSHDLR_SEPAFREQ, CONSHDLR_SEPAPRIORITY, conshdlrdataCreate(), DEFAULT_COEFTIGHTENING, DEFAULT_CUTSASCONSS, DEFAULT_DETECTDISJUNCTIVE, DEFAULT_DETECTVARBOUNDS, DEFAULT_DISJUNCTIVE, DEFAULT_DUALPRESOLVE, DEFAULT_EFCHECK, DEFAULT_EFINFER, DEFAULT_FILLBRANCHCANDS, DEFAULT_LOCALCUTS, DEFAULT_MAXNODES, DEFAULT_NORMALIZE, DEFAULT_PRESOLPAIRWISE, DEFAULT_SEPAOLD, DEFAULT_TTEFCHECK, DEFAULT_TTEFINFER, DEFAULT_TTINFER, DEFAULT_USEADJUSTEDJOBS, DEFAULT_USEBDWIDENING, DEFAULT_USEBINVARS, DEFAULT_USECOVERCUTS, EVENTHDLR_DESC, EVENTHDLR_NAME, FALSE, NULL, SCIP_CALL, SCIP_LONGINT_MAX, SCIP_OKAY, SCIPaddBoolParam(), SCIPaddLongintParam(), SCIPcreateConsCumulative(), SCIPincludeConshdlrBasic(), SCIPincludeEventhdlrBasic(), SCIPsetConshdlrCopy(), SCIPsetConshdlrDelete(), SCIPsetConshdlrExitpre(), SCIPsetConshdlrExitsol(), SCIPsetConshdlrFree(), SCIPsetConshdlrGetNVars(), SCIPsetConshdlrGetVars(), SCIPsetConshdlrInitlp(), SCIPsetConshdlrInitpre(), SCIPsetConshdlrParse(), SCIPsetConshdlrPresol(), SCIPsetConshdlrPrint(), SCIPsetConshdlrProp(), SCIPsetConshdlrResprop(), SCIPsetConshdlrSepa(), SCIPsetConshdlrTrans(), and TRUE. Referenced by SCIP_DECL_CONSHDLRCOPY(), SCIP_DECL_EVENTEXEC(), and SCIPincludeDefaultPlugins().
creates and captures a cumulative constraint
Definition at line 13629 of file cons_cumulative.c. References consdataCatchEvents(), consdataCreate(), CONSHDLR_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_STAGE_PROBLEM, SCIPconshdlrGetData(), SCIPcreateCons(), SCIPcreateConsBasicCumulative(), SCIPdebugMessage, SCIPerrorMessage, SCIPfindConshdlr(), and SCIPgetStage(). Referenced by CREATE_CONSTRAINT(), createConsCumulative(), createCumulativeCons(), SCIP_DECL_CONSCOPY(), SCIP_DECL_CONSPARSE(), SCIPcreateConsBasicCumulative(), and SCIPincludeConshdlrCumulative().
creates and captures an absolute power constraint in its most basic version, i. e., all constraint flags are set to their basic value as explained for the method SCIPcreateConsCumulative(); all flags can be set via SCIPsetConsFLAGNAME-methods in scip.h
creates and captures a cumulative constraint in its most basic version, i. e., all constraint flags are set to their basic value as explained for the method SCIPcreateConsCumulative(); all flags can be set via SCIPsetConsFLAGNAME-methods in scip.h
Definition at line 13711 of file cons_cumulative.c. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcreateConsCumulative(), SCIPsetHminCumulative(), and TRUE. Referenced by SCIP_DECL_SOLVECUMULATIVE(), and SCIPcreateConsCumulative().
set the left bound of effective horizon set the left bound of the time axis to be considered (including hmin)
Definition at line 13731 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetHminCumulative(). Referenced by createConsCumulative(), SCIP_DECL_CONSCOPY(), SCIP_DECL_CONSPARSE(), SCIP_DECL_SOLVECUMULATIVE(), and SCIPcreateConsBasicCumulative(). returns the left bound of the effective horizon returns the left bound of the time axis to be considered
Definition at line 13755 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPsetHmaxCumulative(). Referenced by SCIP_DECL_CONSRESPROP(), and SCIPsetHminCumulative().
set the right bound of the effective horizon set the right bound of the time axis to be considered (not including hmax)
Definition at line 13775 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetHmaxCumulative(). Referenced by createConsCumulative(), SCIP_DECL_CONSCOPY(), SCIP_DECL_CONSPARSE(), SCIP_DECL_SOLVECUMULATIVE(), and SCIPgetHminCumulative(). returns the right bound of effective horizon returns the right bound of the time axis to be considered
Definition at line 13799 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetVarsCumulative(). Referenced by SCIP_DECL_CONSRESPROP(), and SCIPsetHmaxCumulative(). returns the start time variables of the cumulative constraint returns the activities of the cumulative constraint
Definition at line 13819 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetNVarsCumulative(). Referenced by SCIPgetHmaxCumulative(), and writeFzn(). returns the number of start time variables of the cumulative constraint returns the activities of the cumulative constraint
Definition at line 13840 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetCapacityCumulative(). Referenced by SCIPgetVarsCumulative(), and writeFzn(). returns the capacity of the cumulative constraint
Definition at line 13861 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetDurationsCumulative(). Referenced by SCIPgetNVarsCumulative(), and writeFzn(). returns the durations of the cumulative constraint
Definition at line 13882 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetDemandsCumulative(). Referenced by SCIPgetCapacityCumulative(), and writeFzn(). returns the demands of the cumulative constraint
Definition at line 13903 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIPABORT, SCIPcheckCumulativeCondition(), SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), and SCIPerrorMessage. Referenced by SCIPgetDurationsCumulative(), and writeFzn().
check for the given starting time variables with their demands and durations if the cumulative conditions for the given solution is satisfied
Definition at line 13926 of file cons_cumulative.c. References checkCumulativeCondition(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPnormalizeCumulativeCondition(). Referenced by SCIPgetDemandsCumulative().
normalize cumulative condition
Definition at line 13951 of file cons_cumulative.c. References normalizeCumulativeCondition(), SCIP_CALL, SCIP_OKAY, and SCIPsplitCumulativeCondition(). Referenced by SCIPcheckCumulativeCondition().
searches for a time point within the cumulative condition were the cumulative condition can be split
Definition at line 13969 of file cons_cumulative.c. References computeEffectiveHorizonCumulativeCondition(), SCIP_CALL, SCIP_OKAY, and SCIPpresolveCumulativeCondition(). Referenced by SCIPnormalizeCumulativeCondition().
presolve cumulative condition w.r.t. effective horizon by detecting irrelevant variables
Definition at line 13988 of file cons_cumulative.c. References presolveConsEst(), presolveConsLct(), SCIP_CALL, SCIP_OKAY, and SCIPpropCumulativeCondition(). Referenced by SCIPsplitCumulativeCondition().
propagate the given cumulative condition
Definition at line 14019 of file cons_cumulative.c. References CONSHDLR_NAME, FALSE, NULL, propagateCumulativeCondition(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPconshdlrGetData(), SCIPerrorMessage, SCIPfindConshdlr(), and SCIPrespropCumulativeCondition(). Referenced by SCIPpresolveCumulativeCondition().
resolve propagation w.r.t. the cumulative condition
Definition at line 14068 of file cons_cumulative.c. References intToInferInfo(), respropCumulativeCondition(), SCIP_CALL, SCIP_OKAY, SCIPvisualizeConsCumulative(), and TRUE. Referenced by SCIPpropCumulativeCondition().
this method visualizes the cumulative structure in GML format
Definition at line 14093 of file cons_cumulative.c. References NULL, SCIP_CALL, SCIP_FILECREATEERROR, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPblkmem(), SCIPcalcHashtableSize(), SCIPconsGetData(), SCIPconsGetName(), SCIPerrorMessage, SCIPgmlWriteArc(), SCIPgmlWriteClosing(), SCIPgmlWriteNode(), SCIPgmlWriteOpening(), SCIPhashtableCreate(), SCIPhashtableExists(), SCIPhashtableFree(), SCIPhashtableInsert(), SCIPprintSysError(), SCIPsetSolveCumulative(), SCIPsnprintf(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetNVlbs(), SCIPvarGetNVubs(), SCIPvarGetUbGlobal(), SCIPvarGetVlbVars(), SCIPvarGetVubVars(), and TRUE. Referenced by SCIP_DECL_CONSINITPRE(), and SCIPrespropCumulativeCondition().
sets method to solve an individual cumulative condition
Definition at line 14194 of file cons_cumulative.c. References CONSHDLR_NAME, NULL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPconshdlrGetData(), SCIPerrorMessage, SCIPfindConshdlr(), and SCIPsolveCumulative(). Referenced by SCIPvisualizeConsCumulative().
solves given cumulative condition as independent sub problem
Definition at line 14224 of file cons_cumulative.c. References CONSHDLR_NAME, FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPconshdlrGetData(), SCIPcreateWorstCaseProfile(), SCIPerrorMessage, SCIPfindConshdlr(), and TRUE. Referenced by SCIPsetSolveCumulative(), and solveIndependentCons().
creates the worst case resource profile, that is, all jobs are inserted with the earliest start and latest completion time
Definition at line 14280 of file cons_cumulative.c. References computeImpliedEst(), computeImpliedLct(), NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPallocBufferArray, SCIPblkmem(), SCIPcalcHashtableSize(), SCIPcomputeHmin(), SCIPconvertRealToInt(), SCIPfreeBufferArray, SCIPhashmapCreate(), SCIPhashmapFree(), SCIPhashmapInsert(), SCIPprofileInsertCore(), SCIPsortDownIntInt(), SCIPvarGetLbLocal(), and SCIPvarGetUbLocal(). Referenced by computeAlternativeBounds(), computeEffectiveHorizonCumulativeCondition(), and SCIPsolveCumulative().
computes w.r.t. the given worst case resource profile the first time point where the given capacity can be violated
Definition at line 14359 of file cons_cumulative.c. References SCIPcomputeHmax(), SCIPprofileGetLoads(), SCIPprofileGetNTimepoints(), and SCIPprofileGetTimepoints(). Referenced by computeAlternativeBounds(), computeEffectiveHorizonCumulativeCondition(), and SCIPcreateWorstCaseProfile().
computes w.r.t. the given worst case resource profile the first time point where the given capacity is satisfied for sure
Definition at line 14389 of file cons_cumulative.c. References SCIPprofileGetLoads(), SCIPprofileGetNTimepoints(), and SCIPprofileGetTimepoints(). Referenced by computeAlternativeBounds(), computeEffectiveHorizonCumulativeCondition(), and SCIPcomputeHmin(). |