Scippy

SCIP

Solving Constraint Integer Programs

cons_optcumulative.h File Reference

Detailed Description

constraint handler for cumulative constraints with optional activities

Author
Chris Beck
Stefan Heinz

Definition in file cons_optcumulative.h.

#include "scip/scip.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPincludeConshdlrOptcumulative (SCIP *scip)
 
SCIP_RETCODE SCIPcreateConsOptcumulative (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars, SCIP_VAR **binvars, int *durations, int *demands, int capacity, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode)
 
SCIP_RETCODE SCIPsetHminOptcumulative (SCIP *scip, SCIP_CONS *cons, int hmin)
 
int SCIPgetHminOptcumulative (SCIP *scip, SCIP_CONS *cons)
 
SCIP_RETCODE SCIPsetHmaxOptcumulative (SCIP *scip, SCIP_CONS *cons, int hmax)
 
int SCIPgetHmaxOptcumulative (SCIP *scip, SCIP_CONS *cons)
 

Function Documentation

◆ SCIPincludeConshdlrOptcumulative()

◆ SCIPcreateConsOptcumulative()

SCIP_RETCODE SCIPcreateConsOptcumulative ( SCIP scip,
SCIP_CONS **  cons,
const char *  name,
int  nvars,
SCIP_VAR **  vars,
SCIP_VAR **  binvars,
int *  durations,
int *  demands,
int  capacity,
SCIP_Bool  initial,
SCIP_Bool  separate,
SCIP_Bool  enforce,
SCIP_Bool  check,
SCIP_Bool  propagate,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  dynamic,
SCIP_Bool  removable,
SCIP_Bool  stickingatnode 
)

creates and captures a optcumulative constraint

Parameters
scipSCIP data structure
conspointer to hold the created constraint
namename of constraint
nvarsnumber of variables (jobs)
varsarray of integer variable which corresponds to starting times for a job
binvarsarray of variable representing if the job has to be processed on this machine
durationsarray containing corresponding durations
demandsarray containing corresponding demands
capacityavailable cumulative capacity
initialshould the LP relaxation of constraint be in the initial LP? Usually set to TRUE. Set to FALSE for 'lazy constraints'.
separateshould the constraint be separated during LP processing? Usually set to TRUE.
enforceshould the constraint be enforced during node processing? TRUE for model constraints, FALSE for additional, redundant constraints.
checkshould the constraint be checked for feasibility? TRUE for model constraints, FALSE for additional, redundant constraints.
propagateshould the constraint be propagated during node processing? Usually set to TRUE.
localis constraint only valid locally? Usually set to FALSE. Has to be set to TRUE, e.g., for branching constraints.
modifiableis constraint modifiable (subject to column generation)? Usually set to FALSE. In column generation applications, set to TRUE if pricing adds coefficients to this constraint.
dynamicis constraint subject to aging? Usually set to FALSE. Set to TRUE for own cuts which are seperated as constraints.
removableshould the relaxation be removed from the LP due to aging or cleanup? Usually set to FALSE. Set to TRUE for 'lazy constraints' and 'user cuts'.
stickingatnodeshould the constraint always be kept at the node where it was added, even if it may be moved to a more global node? Usually set to FALSE. Set to TRUE to for constraints that represent node data.

Definition at line 4158 of file cons_optcumulative.c.

References catchAllEvents(), consdataCreate(), CONSHDLR_NAME, FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_STAGE_PROBLEM, SCIPconshdlrGetData(), SCIPcreateCons(), SCIPerrorMessage, SCIPfindConshdlr(), SCIPgetStage(), and SCIPsetHminOptcumulative().

Referenced by createCipFormulation(), createMipCpFormulation(), SCIP_DECL_CONSCOPY(), SCIP_DECL_CONSPARSE(), SCIP_DECL_CONSPRESOL(), and SCIPincludeConshdlrOptcumulative().

◆ SCIPsetHminOptcumulative()

SCIP_RETCODE SCIPsetHminOptcumulative ( SCIP scip,
SCIP_CONS cons,
int  hmin 
)

set the left bound of the time axis to be considered (including hmin)

Parameters
scipSCIP data structure
consconstraint data
hminleft bound of time axis to be considered

Definition at line 4237 of file cons_optcumulative.c.

References CONSHDLR_NAME, NULL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetHminOptcumulative().

Referenced by SCIP_DECL_CONSPARSE(), and SCIPcreateConsOptcumulative().

◆ SCIPgetHminOptcumulative()

int SCIPgetHminOptcumulative ( SCIP scip,
SCIP_CONS cons 
)

returns the left bound of the time axis to be considered

Parameters
scipSCIP data structure
consconstraint

Definition at line 4261 of file cons_optcumulative.c.

References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPsetHmaxOptcumulative().

Referenced by SCIPsetHminOptcumulative().

◆ SCIPsetHmaxOptcumulative()

SCIP_RETCODE SCIPsetHmaxOptcumulative ( SCIP scip,
SCIP_CONS cons,
int  hmax 
)

set the right bound of the time axis to be considered (not including hmax)

Parameters
scipSCIP data structure
consconstraint data
hmaxright bound of time axis to be considered

Definition at line 4281 of file cons_optcumulative.c.

References CONSHDLR_NAME, NULL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), SCIPerrorMessage, and SCIPgetHmaxOptcumulative().

Referenced by SCIP_DECL_CONSPARSE(), and SCIPgetHminOptcumulative().

◆ SCIPgetHmaxOptcumulative()

int SCIPgetHmaxOptcumulative ( SCIP scip,
SCIP_CONS cons 
)

returns the right bound of the time axis to be considered

Parameters
scipSCIP data structure
consconstraint

Definition at line 4304 of file cons_optcumulative.c.

References CONSHDLR_NAME, NULL, SCIPABORT, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconshdlrGetName(), and SCIPerrorMessage.

Referenced by SCIPsetHmaxOptcumulative().