Luc, Gilles, thank you for your quick answers !
I'll try to begin with the PowellOptimizer.
I haven't found documentation i could understand
about the optimizer constructor parameters:
The rel & abs thresholds.
But i'll start with values provided in
test.java.org.apache.commons.math3.optimization.direct.PowellOptimizerTest.doTest(MultivariateFunction,double[],double[],GoalType,double,double
pointTol)
Regards,
Adrien
Quoting Gilles Sadowski <[email protected]>:
Hello.
>
> i'm implementing in java a model which was originally developped
in Matlab.
>
> The goal is to minimize a non-differentiable trivariate real function.
> The Matlab code calls the fminunc function
> x = fminunc(fun,x0,options)
> with x0 = [a, b, c] the initial guess, and
> options as 'MaxFunEvals' to 500
>
> I don't think the function is differentiable.
> But i'm not very skilled in math
> and mainly not at ease with the different parameters required for
> optimizers creation...
>
> Could someone advise me about which to use ?
Look at either NelderMeadSimplex, MultiDimensionalSimplex or
CMAESOptimizer in the org.apache.commons.math3.optimization.direct package.
The easiest would be to start with "PowellOptimizer" (in the same package).
Code would be like:
---CUT---
MultivariateOptimizer optim = new PowellOptimizer();
MultivariateFunction f = ... your function ...
PointValuePair result = optim.optimize(500, f, GoalType.MINIMIZE,
new double[] { a, b, c});
double[] minimum = result.getPoint();
---CUT---
Regards,
Gilles
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]