edu.stanford.nlp.optimization
Interface ConstrainedMinimizer
- All Superinterfaces:
- Minimizer
- All Known Implementing Classes:
- PenaltyConstrainedMinimizer
- public interface ConstrainedMinimizer
- extends Minimizer
The interface for constrained function minimizers.
Not all cases need to be supported by all implementations. For
example, in implementation might support inequality constraints
only.
Implementations may also vary in their requirements for the
arguments. For example, implementations may or may not care if the
initial
feasible vector turns out to be non-feasible
(or null!). Similarly, some methods may insist that objectives
and/or constraint Function
objects actually be
DiffFunction
objects.
- Since:
- 1.0
Method Summary |
double[] |
minimize(Function function,
double functionTolerance,
Function[] eqConstraints,
double eqConstraintTolerance,
Function[] ineqConstraints,
double ineqConstraintTolerance,
double[] initial)
The general case, allowing both equality and inequality
constraints. |
minimize
public double[] minimize(Function function,
double functionTolerance,
Function[] eqConstraints,
double eqConstraintTolerance,
Function[] ineqConstraints,
double ineqConstraintTolerance,
double[] initial)
- The general case, allowing both equality and inequality
constraints. A given implementation can throw an
UnsupportedOperationException if it cannot handle the constraints
it is supplied.
It is expected that
minimize(function, functionTolerance,
[], 0, [], 0, initial)
behave exactly like the
minimize(function, functionTolerance, initial)
method inherited from Minimizer
.
- Parameters:
function
- the objective functionfunctionTolerance
- a double
valueeqConstraints
- an array of zero or more equality constraintseqConstraintTolerance
- the violation tolerace for equality constraintsineqConstraints
- an array of zero or more inequality constraintsineqConstraintTolerance
- the violation tolerace for equality constraintsinitial
- a initial feasible (!) point
- Returns:
- a minimizing feasible point
Stanford NLP Group