Advanced features
Objective function
BlockDecomposition.objectivevaluemagnitude
— Function.objectivevaluemagnitude(m::JuMP.Model, magnitude)
Set the magnitude of the objective function of the model m
to magnitude
BlockDecomposition.objectivevaluelowerbound
— Function.objectivevaluelowerbound(m::JuMP.Model, lb)
Set the lower bound of the objective function of the model m
to lb
BlockDecomposition.objectivevalueupperbound
— Function.objectivevalueupperbound(m::JuMP.Model, ub)
Set the upper bound of the objective function of the model m
to ub
Branching priorities
BlockDecomposition.branchingpriorityinmaster
— Function.branchingpriorityinmaster(x::JuMP.JuMPContainer, subproblem::Tuple{Symbol, Union{Tuple, Integer}}, priority)
Assign to the variables x
defined in the subproblem subproblem
the priority value priority
in master.
branchingpriorityinmaster(x, (:B_SP, 1), 2)
The variable x
defined in the Benders subproblem with id 1
will have the branching priority value 2
in the master.
BlockDecomposition.branchingpriorityinsubproblem
— Function.branchingpriorityinsubproblem(x::JuMP.JuMPContainer, subproblem::Tuple{Symbol, Union{Tuple, Integer}}, priority)
Assign to the variables x
defined in the subproblem subproblem
the priority value priority
in subproblems.
branchingpriorityinsubproblem(x, (:B_SP, 1), 2)
The variable x
defined in the Benders subproblem with id 1
will have the branching priority value 2
in subproblems.
BlockDecomposition.addbranching
— Function.addbranching(model::JuMP.Model, rule::Symbol, varname::Symbol; args...)
create a branching rule named rule
on variable varname
. Agruments are provided by the used and store in an array of pair. Arguments are checked by the solver.