## org.apache.commons.math3.optimization
Interface BaseMultivariateOptimizer<FUNC extends MultivariateFunction>

Type Parameters:
  `FUNC` - Type of the objective function to be optimized.

All Superinterfaces:
  BaseOptimizer<PointValuePair>

All Known Subinterfaces:
  BaseMultivariateSimpleBoundsOptimizer<FUNC>, DifferentiableMultivariateOptimizer, MultivariateOptimizer

All Known Implementing Classes:
  AbstractScalarDifferentiableOptimizer, BaseAbstractMultivariateOptimizer, BaseAbstractMultivariateSimpleBoundsOptimizer, BaseMultivariateMultiStartOptimizer, BOBYQAOptimizer, CMAESOptimizer, DifferentiableMultivariateMultiStartOptimizer, MultivariateMultiStartOptimizer, NonLinearConjugateGradientOptimizer, PowellOptimizer, SimplexOptimizer

    public interface BaseMultivariateOptimizer<FUNC extends MultivariateFunction>

extends BaseOptimizer<PointValuePair>

This interface is mainly intended to enforce the internal coherence of Commons-FastMath. Users of the API are advised to base their code on the following interfaces:

- `MultivariateOptimizer`
- `DifferentiableMultivariateOptimizer`

Since:
  3.0
Version:
  $Id$

Method Summary
`PointValuePair` `optimize(int maxEval, FUNC f, GoalType goalType, double[] startPoint)` Optimize an objective function.

Methods inherited from interface org.apache.commons.math3.optimization.BaseOptimizer
`getConvergenceChecker, getEvaluations, getMaxEvaluations`

Method Detail

### optimize

    PointValuePair optimize(int maxEval,
                            FUNC f,
                            GoalType goalType,
                            double[] startPoint)

  Optimize an objective function.

  Parameters:
    `f` - Objective function.
    `goalType` - Type of optimization goal: either `GoalType.MAXIMIZE` or `GoalType.MINIMIZE`.
    `startPoint` - Start point for optimization.
    `maxEval` - Maximum number of function evaluations.
  Returns:
    the point/value pair giving the optimal value for objective function.
  Throws:
    `DimensionMismatchException` - if the start point dimension is wrong.
    `TooManyEvaluationsException` - if the maximal number of evaluations is exceeded.
    `NullArgumentException` - if any argument is `null`.

Copyright (c) 2003-2013 Apache Software Foundation