File Exchange

## SIMPGDSEARCH

version 1.0 (1.95 KB) by

Multi-dimensional unconstrained nonlinear minimization using grid search + Simplex method.

Updated

SIMPGRIDSEARCH Multi-dimensional unconstrained nonlinear minimization using grid search + Simplex method.

X = SIMPGDSEARCH(OBJFUN,GDVALUES) returns a vector X that is a minimizer of the function described in OBJFUN (usually an m file: OBJFUN.M).
See OBJFUN_DEMO.M for how to write an objective function. It should at least have one input argument (a vector, of which length is equal to the number of parameters).

GDVALUES is a cell array of which number of rows is equal to number of parameters. n-th row specifies the grid values for the n-th parameter. All the combination of the grid values are tried (grid search) and then the best parameter set is used as an input guess value for the Nelder-Mead simplex method (FMINSEARCH).

X = IMPGDSEARCH(OBJFUN,GDVALUES,ADDARG) passes additional arguments to the objective function. This should be a cell array consisting of a set of arguments.

SIMPGDSEARCH(OBJFUN,GDVALUES,ADDARG,FILEOUT) writes search result to FILEOUT. Each row in FILEOUT denotes evaluated parameter values and corresponding objective function value. It is in the evaluated order. If there is no additional arguments to be given, then specify [] as ADDARG for this case.

<Example>
param1 = linspace(0,10,10);
param2 = linspace(0,8,8);
param3 = linspace(2,10,4);
param4 = linspace(3,12,12);
gdvalues = {param1 param2 param3 param4};
objfun = 'objfun_demo';
trueval = [2 4 6 8];
coef = [1 2 3 4];

At the end of the file simpgdsearch.m, commands to produce the same figure as the snapshot is provided.

Nikki

### Nikki (view profile)

SETPROD can be found here http://www.mathworks.com/matlabcentral/fileexchange/5898. Many thanks to the author of simpgdsearch. It is really useful. Cheers!

It seems that Matlab doesnt recognize setprod. Anyone has an updated code? Thanks a lot

Best

S

The execution is terminated by the following error message:

??? Error using ==> eval
Undefined command/function 'setprod'.

Error in ==> simpgdsearch at 64
eval(['model = setprod(' str ');']);