| Overview | Group | Tree | Graph | Deprecated | Index | Concepts |
The enumeration Relaxation lists the values that can be
taken by the parameter FeasOptMode.
This parameter controls several aspects of how the method
feasOpt performs its relaxation.
The method feasOpt works in two phases. In its first phase,
it attempts to find a minimum-penalty relaxation of a given
infeasible model.
If you want feasOpt to stop after this first phase, choose
a value with Min in its symbolic name.
If you want feasOpt to continue beyond its first phase
to find a solution that is optimal with respect to the original objective
function, subject to the constraint that the penalty of the
relaxation must not exceed the value found in the
first phase, then choose a value with Opt in its
symbolic name.
In both phases, the suffixes Sum, Inf,
and Quad specify the relaxation metric:
Sum
tells feasOpt to minimize the weighted sum of
the required relaxations of bounds and constraints according to
the formula
penalty = sum (penalty_i times relaxation_amount_i)
Inf
tells feasOpt to minimize the weighted number
of bounds and constraints that are relaxed according to the formula
penalty = sum (penalty_i times relaxation_indicator_i)
Quad
tells feasOpt to minimize the weighted sum of
the squares of required relaxations of bounds and constraints
according to the formula
penalty = sum (penalty_i times relaxation_amount_i times relaxation_amount_i)
Weights are determined by the preference values you provide
as input to the method feasOpt.
When IloAnd is used to group constraints
as input to feasOpt, the relaxation
penalty is computed on groups instead of on individual constraints.
For example, all constraints in a group can be relaxed for a total
penalty of one unit under the various Inf metrics.
| Fields |
|---|
MinSum = CPX_FEASOPT_MIN_SUM | |
OptSum = CPX_FEASOPT_OPT_SUM | |
MinInf = CPX_FEASOPT_MIN_INF | |
OptInf = CPX_FEASOPT_OPT_INF | |
MinQuad = CPX_FEASOPT_MIN_QUAD | |
OptQuad = CPX_FEASOPT_OPT_QUAD |