The McCormick relaxation type
The McCormick relaxation library implements the smooth McCormick with imbedded (sub)gradient structure: SMCg{N,V,T}
.
EAGO.SMCg
— Type.SMCg{N,V,T<:AbstractFloat}
SMCg
is the smooth McCormick (w/ gradient) structure which is used to overload standard calculations. The fields are:
cc::T
: Concave relaxationcv::T
: Convex relaxationcc_grad::SVector{N,T}
: (Sub)gradient of concave relaxationcv_grad::SVector{N,T}
: (Sub)gradient of convex relaxationIntv::V
: Interval boundscnst::Bool
: Flag for whether the bounds are constant
The Hybrid McCormick relaxation type
The Hybrid McCormick object is used to
EAGO.HybridMC
— Type.HybridMC
Defines the hybridMC type used for constructing nonstandard McCormick relaxations holds the SMC type.
EAGO.Tighten_Subgrad
— Function.Tighten_Subgrad
Cuts the interval bounds on the HybridMC object based on affine relaxation bounds if they are tighter.