利用泛函命令fminbnd或fminsearch求极小值
(2009-06-06 15:57:38)
标签:
指令教育 |
分类: matlab |
更多有关单片机、matlab的文章:链接地址
1、fminbnd函数
x = fminbnd(fun,x1,x2)
x = fminbnd(fun,x1,x2,options)
说明:x = fminbnd(fun,x1,x2) returns a value x that is a local
minimizer of the function that is described in fun in the interval
x1 < x < x2. fun is a function
handle.
f = @(x)x.^3-2*x-5; x = fminbnd(f, 0, 2); |
2、fminsearch函数
x = fminsearch(fun,x0)
x = fminsearch(fun,x0,options)
[x,fval] = fminsearch(…)
fminsearch finds the minimum of a scalar function of several
variables, starting at an initial estimate. This is generally
referred to as unconstrained nonlinear optimization.
x = fminsearch(fun,x0) starts at the point x0 and finds a local minimum x of the function described in fun. x0 can be a scalar, vector, or matrix. fun is a function handle.
banana = '100*(x(2)-x(1)^2)^2+(1-x(1))^2';
[x,fval] = fminsearch(banana,[0,1]); |
或者
1 2 |
banana = @(x)100*(x(2)-x(1)^2)^2+(1-x(1))^2; [x,fval] = fminsearch(banana,[-1.2, 1]); |