Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

interface for constraint handlers of type partitioning, packing, and full

Author
Christopher Hojny

Definition in file cons_orbitope.h.

#include "scip/def.h"
#include "scip/type_cons.h"
#include "scip/type_retcode.h"
#include "scip/type_scip.h"
#include "scip/type_var.h"
#include "symmetry/type_symmetry.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPincludeConshdlrOrbitope (SCIP *scip)
 
SCIP_RETCODE SCIPcreateConsOrbitope (SCIP *scip, SCIP_CONS **cons, const char *name, SCIP_VAR ***vars, SCIP_ORBITOPETYPE orbitopetype, int nrows, int ncols, SCIP_Bool resolveprop, SCIP_Bool ismodelcons, SCIP_Bool checkpporbitope, 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 SCIPcreateConsBasicOrbitope (SCIP *scip, SCIP_CONS **cons, const char *name, SCIP_VAR ***vars, SCIP_ORBITOPETYPE orbitopetype, int nrows, int ncols, SCIP_Bool resolveprop, SCIP_Bool ismodelcons, SCIP_Bool checkpporbitope)
 

Function Documentation

◆ SCIPincludeConshdlrOrbitope()

SCIP_RETCODE SCIPincludeConshdlrOrbitope ( SCIP scip)

includes orbitope constraint handlers

cons_orbitope serves as an interface for the constraint handlers cons_orbitope_full and cons_orbitope_pp; this function includes their respective constraint handlers

includes the orbitope constraint handlers used by this interface

Parameters
scipSCIP data structure

Definition at line 116 of file cons_orbitope.c.

References SCIP_CALL, SCIP_OKAY, SCIPincludeConshdlrOrbitopeFull(), and SCIPincludeConshdlrOrbitopePP().

Referenced by SCIPincludeDefaultPlugins().

◆ SCIPcreateConsOrbitope()

SCIP_RETCODE SCIPcreateConsOrbitope ( SCIP scip,
SCIP_CONS **  cons,
const char *  name,
SCIP_VAR ***  vars,
SCIP_ORBITOPETYPE  orbitopetype,
int  nrows,
int  ncols,
SCIP_Bool  resolveprop,
SCIP_Bool  ismodelcons,
SCIP_Bool  checkpporbitope,
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 orbitope constraint

Note
the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()

creates and captures an orbitope constraint

Note
the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
Parameters
scipSCIP data structure
conspointer to hold the created constraint
namename of constraint
varsmatrix of variables on which the symmetry acts
orbitopetypetype of orbitope constraint
nrowsnumber of rows of variable matrix
ncolsnumber of columns of variable matrix
resolvepropshould propagation be resolved?
ismodelconswhether the orbitope is a model constraint
checkpporbitopeCheck if full orbitope constraints can be upgraded to pp-orbitope?
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 separated 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 131 of file cons_orbitope.c.

References SCIP_CALL, SCIP_OKAY, SCIP_ORBITOPETYPE_FULL, SCIP_ORBITOPETYPE_PACKING, SCIP_ORBITOPETYPE_PARTITIONING, SCIPcreateConsOrbitopeFull(), SCIPcreateConsOrbitopePP(), separate(), and strengthenOrbitopeConstraint().

Referenced by addOrbitopesDynamic(), addOrbitopeSubgroup(), componentPackingPartitioningOrbisackUpgrade(), handleOrbitope(), SCIPcreateConsBasicOrbitope(), and SCIPcreateConsOrbisack().

◆ SCIPcreateConsBasicOrbitope()

SCIP_RETCODE SCIPcreateConsBasicOrbitope ( SCIP scip,
SCIP_CONS **  cons,
const char *  name,
SCIP_VAR ***  vars,
SCIP_ORBITOPETYPE  orbitopetype,
int  nrows,
int  ncols,
SCIP_Bool  resolveprop,
SCIP_Bool  ismodelcons,
SCIP_Bool  checkpporbitope 
)

creates and captures an orbitope constraint in its most basic variant, i. e., with all constraint flags set to their default values, which can be set afterwards using SCIPsetConsFLAGNAME()

See also
SCIPcreateConsOrbitope() for the default constraint flag configuration
Note
the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
Parameters
scipSCIP data structure
conspointer to hold the created constraint
namename of constraint
varsmatrix of variables on which the symmetry acts
orbitopetypetype of orbitope constraint
nrowsnumber of rows of variable matrix
ncolsnumber of columns of variable matrix
resolvepropshould propagation be resolved?
ismodelconswhether the orbitope is a model constraint
checkpporbitopeCheck if full orbitope constraints can be upgraded to pp-orbitope?

Definition at line 198 of file cons_orbitope.c.

References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcreateConsOrbitope(), and TRUE.