|
constraint handler for disjunction constraints
- Author
- Stefan Heinz
-
Michael Winkler
A disjunction constraint is a constraint of the form
where all the are individual constraints themselves.
Definition in file cons_disjunction.h.
Go to the source code of this file.
|
SCIP_RETCODE | SCIPincludeConshdlrDisjunction (SCIP *scip) |
|
SCIP_RETCODE | SCIPcreateConsDisjunction (SCIP *scip, SCIP_CONS **cons, const char *name, int nconss, SCIP_CONS **conss, SCIP_CONS *relaxcons, SCIP_Bool initial, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic) |
|
SCIP_RETCODE | SCIPcreateConsBasicDisjunction (SCIP *scip, SCIP_CONS **cons, const char *name, int nconss, SCIP_CONS **conss, SCIP_CONS *relaxcons) |
|
SCIP_RETCODE | SCIPaddConsElemDisjunction (SCIP *scip, SCIP_CONS *cons, SCIP_CONS *addcons) |
|
creates the handler for disjunction constraints and includes it in SCIP
- Parameters
-
SCIP_RETCODE SCIPcreateConsDisjunction |
( |
SCIP * |
scip, |
|
|
SCIP_CONS ** |
cons, |
|
|
const char * |
name, |
|
|
int |
nconss, |
|
|
SCIP_CONS ** |
conss, |
|
|
SCIP_CONS * |
relaxcons, |
|
|
SCIP_Bool |
initial, |
|
|
SCIP_Bool |
enforce, |
|
|
SCIP_Bool |
check, |
|
|
SCIP_Bool |
local, |
|
|
SCIP_Bool |
modifiable, |
|
|
SCIP_Bool |
dynamic |
|
) |
| |
creates and captures a disjunction constraint
- Note
- the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
- Parameters
-
scip | SCIP data structure |
cons | pointer to hold the created constraint |
name | name of constraint |
nconss | number of initial constraints in disjunction |
conss | initial constraint in disjunction |
relaxcons | a conjunction constraint containing the linear relaxation of the disjunction constraint, or NULL |
initial | should the LP relaxation of constraint be in the initial LP? Usually set to TRUE. Set to FALSE for 'lazy constraints'. |
enforce | should the constraint be enforced during node processing? TRUE for model constraints, FALSE for additional, redundant constraints. |
check | should the constraint be checked for feasibility? TRUE for model constraints, FALSE for additional, redundant constraints. |
local | is constraint only valid locally? Usually set to FALSE. Has to be set to TRUE, e.g., for branching constraints. |
modifiable | is constraint modifiable (subject to column generation)? Usually set to FALSE. In column generation applications, set to TRUE if pricing adds coefficients to this constraint. |
dynamic | is constraint subject to aging? Usually set to FALSE. Set to TRUE for own cuts which are separated as constraints. |
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 SCIPcreateConsDisjunction(); all flags can be set via SCIPsetConsFLAGNAME-methods in scip.h
- See also
- SCIPcreateConsDisjunction() for information about the basic constraint flag configuration
- Note
- the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
- Parameters
-
scip | SCIP data structure |
cons | pointer to hold the created constraint |
name | name of constraint |
nconss | number of initial constraints in disjunction |
conss | initial constraint in disjunction |
relaxcons | a conjunction constraint containing the linear relaxation of the disjunction constraint, or NULL |
adds constraint to the disjunction of constraints
- Parameters
-
scip | SCIP data structure |
cons | disjunction constraint |
addcons | additional constraint in disjunction |
|