Solving Constraint Integer Programs

Benders' decomposition implementations

Detailed Description

methods and files provided by the default Benders' decomposition implementations of SCIP

A detailed description what a Benders' decomposition implementation does and how to add a Benders' decomposition implementations to SCIP can be found here.


 Inclusion methods
 methods to include specific Benders' decomposition implementations into SCIP


SCIP_RETCODE SCIPcreateBendersDefault (SCIP *scip, SCIP **subproblems, int nsubproblems)

Function Documentation

◆ SCIPcreateBendersDefault()

SCIP_RETCODE SCIPcreateBendersDefault ( SCIP scip,
SCIP **  subproblems,
int  nsubproblems 

Creates a default Benders' decomposition algorithm and activates it in SCIP

Creates a default Benders' decomposition algorithm and activates it in SCIP

Every variable that appears in the subproblem constraints must be created in the corresponding subproblem with the same name as in the master problem.
The default Benders' decomposition implementation relies on unique variable names in the master problem and in each of the subproblems. This is required because a variable mapping is made between the master problem variables and the counterparts in the subproblems. This mapping is created using the variable names.
scipSCIP data structure
subproblemsthe Benders' decomposition subproblems
nsubproblemsthe number of subproblems in the Benders' decomposition

Definition at line 383 of file benders_default.c.

References BENDERS_NAME, createBendersData(), NULL, SCIP_CALL, SCIP_ERROR, SCIP_OKAY, SCIPactivateBenders(), SCIPbendersGetData(), SCIPerrorMessage, SCIPfindBenders(), SCIPfixParam(), SCIPgetIntParam(), SCIPisParamFixed(), and SCIPsetIntParam().

Referenced by addScenarioVarsAndConsToProb(), buildDecompProblem(), SCIP_DECL_BENDERSCOPY(), and SCIPprobdataCreate().