Package org.apache.commons.math3.optimization.linear

# Interface LinearOptimizer

All Known Implementing Classes:
  `AbstractLinearOptimizer`, `SimplexSolver`

@Deprecated public interface LinearOptimizer
Deprecated.
As of 3.1 (to be removed in 4.0).
This interface represents an optimization algorithm for linear problems.

Optimization algorithms find the input point set that either `maximize or minimize` an objective function. In the linear case the form of the function is restricted to

     c1x1 + ... cnxn = v

and there may be linear constraints too, of one of the forms:

- c1x1 + ... cnxn = v
- c1x1 + ... cnxn <= v
- c1x1 + ... cnxn >= v
- l1x1 + ... lnxn + lcst = r1x1 + ... rnxn + rcst
- l1x1 + ... lnxn + lcst <= r1x1 + ... rnxn + rcst
- l1x1 + ... lnxn + lcst >= r1x1 + ... rnxn + rcst

where the ci, li or ri are the coefficients of the constraints, the xi are the coordinates of the current point and v is the value of the constraint.

Since:
  2.0

## Method Summary

Modifier and Type
Method
Description
`int`
`getIterations()`
Deprecated.
Get the number of iterations realized by the algorithm.
`int`
`getMaxIterations()`
Deprecated.
Get the maximal number of iterations of the algorithm.
`PointValuePair`
`optimize(LinearObjectiveFunction f, Collection<LinearConstraint> constraints, GoalType goalType, boolean restrictToNonNegative)`
Deprecated.
Optimizes an objective function.
`void`
`setMaxIterations(int maxIterations)`
Deprecated.
Set the maximal number of iterations of the algorithm.

## Method Details

### setMaxIterations

void setMaxIterations(int maxIterations)
Deprecated.
Set the maximal number of iterations of the algorithm.

Parameters:
  `maxIterations` - maximal number of function calls

### getMaxIterations

int getMaxIterations()
Deprecated.
Get the maximal number of iterations of the algorithm.

Returns:
  maximal number of iterations

### getIterations

int getIterations()
Deprecated.
Get the number of iterations realized by the algorithm.

The number of evaluations corresponds to the last call to the `optimize` method. It is 0 if the method has not been called yet.

Returns:
  number of iterations

### optimize

PointValuePair optimize(LinearObjectiveFunction f, Collection<LinearConstraint> constraints, GoalType goalType, boolean restrictToNonNegative) throws MathIllegalStateException
Deprecated.
Optimizes an objective function.

Parameters:
  `f` - linear objective function
  `constraints` - linear constraints
  `goalType` - type of optimization goal: either `GoalType.MAXIMIZE` or `GoalType.MINIMIZE`
  `restrictToNonNegative` - whether to restrict the variables to non-negative values
Returns:
  point/value pair giving the optimal value for objective function
Throws:
  `MathIllegalStateException` - if no solution fulfilling the constraints can be found in the allowed number of iterations