用matlab fminsearch 函数怎么求z=2x^2+3y^2-4xy-y-3x的最小值?

发布网友 发布时间:2024-10-21 11:51

我来回答

2个回答

热心网友 时间:2024-11-11 17:08

我看了一下帮助文件,fminsearch的调用方式是这样的:

banana = @(x)100*(x(2)-x(1)^2)^2+(1-x(1))^2;

[x,fval] = fminsearch(banana,[-1.2, 1])

针对lz的题,则是:
z=@(x)2*x(1).^2+3*x(2).^2-4*x(1).*x(2)-x(2)-3*x(1);

[x,fval]=fminsearch(z,[-2,0])

但是lz题中给定了限定条件,即x,y从属于一个闭区间。
fminbnd是计算一元函数在给定边界约束的局部最小值。

因此以上都不适用。暂时还不知道,其他函数合适不。

个人倒觉得可以这么做:
x=linspace(-2,0,40);y=linspace(0,3,40);
[x,y]=meshgrid(x,y)
z=2*x.^2+3*y.^2-4*x.*y-y-3*y;
[C I]=min(z)

热心网友 时间:2024-11-11 17:09

z=@(x)2*x(1).^2+3*x(2).^2-4*x(1).*x(2)-x(2)-3*x(2);
z=fminsearch(z,[0,0])

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com