<< numz0 Optimisation Single equation regressions >>

Grocer >> Optimisation > optimg

optimg

Grocer optimization function

CALLING SEQUENCE

[valf,b1,valg]=optimg(f,fg,b0,optim_opt,nelmead_opt,gradconv)

PARAMETERS

Input

* f = the function to minimize

* g = the function to minimize, with gradient vector calculated as second output argument

* b0 = a (k x 1) vector, the vector of starting values

* optim_opt = a string, any options to optim entered but entered between quotes

* nelmead_opt = a string, the values of the convergence criterion, followed by the maximum number of iterations, the figure being separated by a comma

* gradconv = a positive number, the convergence criterion of the absolute mean of the gradient components

 

Output

* valf = the value of the function at the solution

* b1 = the value of the solution vector of parameters

* valg = the value of the gradient at the solution

DESCRIPTION

Grocer optimization function.

EXAMPLE

function valf=f(b, y, x)
    valf=sum((y-b(1)*(1-exp(-b(2)*x)))^2)
endfunction
 
function [valf, valg, ind]=fg(b, ind)
    valf=sum((y-b(1)*(1-exp(-b(2)*x)))^2)
    valg=2*[-(1-exp(-b(2)*x)) -b(1).*x.*exp(-b(2)*x)]'*(y-b(1)*(1-exp(-b(2)*x)));
endfunction
 
1) [valf,b1,valg]=optimg(f,fg,[500.;0.0001 ])
2) [valf,b1,valg]=optimg(f,fg,[500.;0.0001 ],',''br'',1e6,1e6','%eps,1e6','%eps')
 
 
// Example 1 minimizes function f with optimg default values and [500;0.0001] as starting values.
// Example 2 minimizes function f and [500;0.0001] as starting values, 1E6 for the maximum allowed
// number of calls to the function to minimize, 1E6 for the maximum number of iterations allowed in optim,
// %eps for the convergence criterion and 1E6 for the maximum number of iterations and %eps for the global
// convergence criterion of the absolute mean of the gradient.

AUTHOR

Eric Dubois 2013

Report an issue
<< numz0 Optimisation Single equation regressions >>