MATLAB Answers

0

fminsearchbnd optimization function in matlab

Asked by mohammed hussein on 2 Dec 2015
Latest activity Answered by MASTER WHOS on 8 Feb 2019
i used fminsearchbnd for boundary problem but the matlab it tell me that Undefined function 'fminsearchbnd' can any one help me with is problem i used this example
fun = @(x)(x(1)-5)^2+(x(2)+6)^2+x(3); % x0 = [0 0 0]; Lb=[0 -1 2]; Ub=[1 2 3]; [x,fval,exitflag,output] = fminsearchbnd(fun,Lb,Ub); disp(fval)
thank you

  0 Comments

Sign in to comment.

4 Answers

Answer by Walter Roberson
on 2 Dec 2015
 Accepted Answer

fminsearchbnd is not part of MATLAB. You can get it one of the versions from the File Exchange

  3 Comments

thank you very much for answering me yes i used file exchange from http://www.mathworks.com/matlabcentral/fileexchange/17804-fminsearchbnd-new
even though i put this in the toolbox of matlab , i doesn't work
Do not put it in the MATLAB toolbox. Download the .zip file, and unzip it into a directory that has nothing else in it (and which is not under the MATLAB installation.) Then use pathtool to add the directory to the MATLAB path. After that MATLAB will be able to find the file.

Sign in to comment.


Answer by MASTER WHOS on 7 Feb 2019

I DID THIS:
Do not put it in the MATLAB toolbox. Download the .zip file, and unzip it into a directory that has nothing else in it (and which is not under the MATLAB installation.) Then use pathtool to add the directory to the MATLAB path. After that MATLAB will be able to find the file.
but it gives error: Error in fminsearchbnd (line 264)
[xu,fval,exitflag,output] = fminsearch(intrafun,x0u,options,varargin);
what might be the problem?

  11 Comments

Thanks for your utmost responsive support.
@Torsten attached are the codes , so that you can see how you can help.
NB: I do not have much experience YET with MATLAB as I almost started using it last year. So, if you can use SIMPLE (easy to understand guidance) then I will appreciate the most
I AM VERY GRATEFUL FOR YOUR HELP
I still don't see neither
@SQP_complex2
nor
@SQP_complex2_case2
I have my own private implementation of tricking fminsearch into being bounded (stops when it hits the boundary rather than reflecting as might be nice.)
I know from experience that 55 variables is completely intractable to use seriously with fminsearch . fminsearch gets caught in local minima , not as easily as fmincon gets caught but it happens all the time. It is not a global minimizer. To use it for more than light use you need to start it at multiple locations . In particular you need starting points near every valid combination of upper and lower bounds . With 55 variables that would be 2^55 configuration to examine. If you could process 2^30 per second (gigaflop range ) then that would take you 2^25 seconds . That would be a year . You probably cannot process more than 1/100 of that speed so probably 100 or so years . Just for figuring out crudely which end of each bound you probably near.

Sign in to comment.


Answer by MASTER WHOS on 8 Feb 2019

Thanks for your comment.
sorry, so, is that the only problem? [missing @SQP_complex2, & @SQP_complex2_case2] (which bring the error I attached with fminsearchbnd)?

  2 Comments

I don't know, but if you don't supply a functional expression to be minimized, "fminsearchbnd" will of course complain.
There is @ missing before SQP_complex_case2 unless that is a function that returns aa function handle.

Sign in to comment.


Answer by MASTER WHOS on 8 Feb 2019

Ok, thank you

  0 Comments

Sign in to comment.