Function GMP::Benders::CreateMasterProblem(GMP, Variables, Variables, name, feasibilityOnly, addConstraints)

GMP::Benders::CreateMasterProblem

The function GMP::Benders::CreateMasterProblem creates a Benders’ master problem for a generated mathematical program. This master problem is typically used in a Benders’ decomposition algorithm.

GMP::Benders::CreateMasterProblem(
     GMP,                ! (input) a generated mathematical program
     Variables,          ! (input) a set of variables
     name,               ! (input) a string expression
     [feasibilityOnly],  ! (optional, default 0) a scalar value
     [addConstraints]    ! (optional, default 0) a scalar value
)

Arguments

GMP

An element in the set AllGeneratedMathematicalPrograms.

Variables

A subset of AllVariables.

name

A string that holds the name for the Benders’ master problem.

feasibilityOnly

A scalar binary value to indicate whether this function should (temporary) reformulate the original problem such that the Benders’ subproblem becomes a pure feasibility problem.

addConstraints

A scalar binary value to indicate whether this function should try to automatically add tightening constraints to the Benders’ master problem.

Return Value

A new element in the set AllGeneratedMathematicalPrograms with the name as specified by the name argument.

Note

Example

If the math program has type MIP then often the set of master problem variables equals the set AllIntegerVariables.

myGMP := GMP::Instance::Generated( MP );

gmpM := GMP::Benders::CreateMasterProblem( myGMP, AllIntegerVariables,
                                           'BendersMasterProblem', 0, 0 );