Scippy

    SCIP

    Solving Constraint Integer Programs

    Detailed Description

    Constraint handler for the set partitioning / packing / covering constraints \(1^T x\ \{=, \le, \ge\}\ 1\).

    Author
    Tobias Achterberg
    Michael Winkler

    Definition in file cons_setppc.h.

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

    Go to the source code of this file.

    Functions

    SCIP_RETCODE SCIPincludeConshdlrSetppc (SCIP *scip)
     

    Set Packing/Partitioning/Covering Constraints

    This constraint handler handles three special classes of linear constraints, namely set partitioning, set packing, and set covering constraints. For a set of binary variables \(x_i, i=1,\dots,n\), a set partitioning constraint has the form

    \[ \sum_{i=1}^n x_i = 1, \]

    a set packing constraint has the form

    \[ \sum_{i=1}^n x_i \le 1, \]

    and a set covering constraint has the form

    \[ \sum_{i=1}^n x_i \ge 1. \]

    enum  SCIP_SetppcType {
      SCIP_SETPPCTYPE_PARTITIONING = 0 ,
      SCIP_SETPPCTYPE_PACKING = 1 ,
      SCIP_SETPPCTYPE_COVERING = 2
    }
     
    typedef enum SCIP_SetppcType SCIP_SETPPCTYPE
     
    SCIP_RETCODE SCIPcreateConsSetpart (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars, 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 SCIPcreateConsBasicSetpart (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars)
     
    SCIP_RETCODE SCIPcreateConsSetpack (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars, 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 SCIPcreateConsBasicSetpack (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars)
     
    SCIP_RETCODE SCIPcreateConsSetcover (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars, 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 SCIPcreateConsBasicSetcover (SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars)
     
    SCIP_RETCODE SCIPaddCoefSetppc (SCIP *scip, SCIP_CONS *cons, SCIP_VAR *var)
     
    int SCIPgetNVarsSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_VAR ** SCIPgetVarsSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_SETPPCTYPE SCIPgetTypeSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_Real SCIPgetDualsolSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_Real SCIPgetDualfarkasSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_ROWSCIPgetRowSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_RETCODE SCIPcreateRowSetppc (SCIP *scip, SCIP_CONS *cons)
     
    int SCIPgetNFixedonesSetppc (SCIP *scip, SCIP_CONS *cons)
     
    int SCIPgetNFixedzerosSetppc (SCIP *scip, SCIP_CONS *cons)
     
    SCIP_RETCODE SCIPcleanupConssSetppc (SCIP *scip, SCIP_Bool onlychecked, SCIP_Bool *infeasible, int *naddconss, int *ndelconss, int *nchgcoefs, int *nfixedvars)