View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from

Be the first to rate this file! 3 Downloads (last 30 days) File Size: 1.95 KB File ID: #7237 Version: 1.0
image thumbnail




22 Mar 2005 (Updated )

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

| Watch this File

File Information

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.
       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];
       addarg = {trueval,coef};
       x = simpgdsearch(objfun,gdvalues,addarg)

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

MATLAB release MATLAB 5.3.1 (R11.1)
MATLAB Search Path
Other requirements This function requires setprod.m, which is supposed to be available on the Matlab Central File Exchange site.
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (3)
05 Apr 2012 Nikki

Nikki (view profile)

SETPROD can be found here Many thanks to the author of simpgdsearch. It is really useful. Cheers!

Comment only
21 Jul 2011 Saad

Saad (view profile)

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



Comment only
03 May 2006 Ramin Radmanesh

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 ');']);

Comment only
01 Apr 2016 1.0

BSD License added.

Contact us