List of usage examples for org.apache.commons.math.optimization MultivariateRealOptimizer setConvergenceChecker
void setConvergenceChecker(RealConvergenceChecker checker);
From source file:com.martinkampjensen.thesis.minimization.NelderMeadMinimizer.java
private MultivariateRealOptimizer createOptimizer() { final MultivariateRealOptimizer optimizer = new NelderMead(_reflection, _expansion, _contraction, _shrinkage);/*from w ww . j a v a2s. c om*/ optimizer.setConvergenceChecker(_convergence); optimizer.setMaxEvaluations(_maxEvaluations); optimizer.setMaxIterations(_maxIterations); return optimizer; }
From source file:ch.algotrader.simulation.SimulationExecutorImpl.java
/** * {@inheritDoc}/* w w w .ja va 2 s. c o m*/ */ @Override public void optimizeMultiParam(final StrategyGroup strategyGroup, final String[] parameters, final double[] starts) { Validate.notNull(parameters, "Parameter is null"); Validate.notNull(starts, "Starts is null"); RealPointValuePair result; try { MultivariateRealFunction function = new MultivariateFunction(this, strategyGroup, parameters); MultivariateRealOptimizer optimizer = new MultiDirectional(); optimizer.setConvergenceChecker(new SimpleScalarValueChecker(0.0, 0.01)); result = optimizer.optimize(function, GoalType.MAXIMIZE, starts); if (RESULT_LOGGER.isInfoEnabled()) { for (int i = 0; i < result.getPoint().length; i++) { RESULT_LOGGER.info("optimal value for {}={}", parameters[i], format.format(result.getPoint()[i])); } RESULT_LOGGER.info("functionValue: {} needed iterations: {})", format.format(result.getValue()), optimizer.getEvaluations()); } } catch (MathException ex) { throw new SimulationExecutorException(ex); } }