例1:
求f=2exp(-x)sin(x)在(0,8)上的最大、最小值。
f='2*exp(-x).*sin(x)';
fplot(f,[0,8]);
%xmin最小值点,fmin函数在该点的值
[xmin,fmin]=fminbnd(f,0,8)
f1='-2*exp(-x).*sin(x)';
%求最大值,就把原函数求-f(x)的最小值
[xmax,fmax]=fminbnd(f1,0,8);
xmax
famx=abs(fmax)
例2 边长3m的正方形铁板,四角减去相等正方形,制成方形无盖水槽。怎样减使水槽容积最大。
解:列出目标函数(加负号,转化为求最小)
min y=-((3-2x)^2)*x
f='-(3-2*x).^2*x';
[x,fval]=fminbnd(f,0,1.5);
xmax=x
fmax=-fval
例3 求多元函数最小值
minf(x)=exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1)
%多元函数无约束优化问题
x0=[-1,1];%初始点
[x,fval]=fminunc('exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1)',x0)
本文通过三个实例深入探讨了数学优化问题的解决方法,包括利用MATLAB进行函数求解,具体涉及最大值与最小值的寻找、目标函数的最小化及多元函数的优化。每个实例都详细介绍了如何使用MATLAB函数来实现复杂问题的简化求解。
533





