请问多元函数如何用Matlab求极小值.

问题描述:

请问多元函数如何用Matlab求极小值.
我想求如下五元二次函数极小值:y=15.97+0.88*x(1)-0.38*x(3)+0.82*x(5)+0.90*x(1)^2-0.38*x(2)^2-0.84*x(3)^2-0.79*x(1)*x(4)-1.08*x(1)*x(5)+0.52*x(2)*x(3)-0.55*x(2)*x(4)+0.79*x(3)*x(5);
其中x(1)至x(5)的范围都是[-2 2].不知如何编写程序代码
1个回答 分类:综合 2014-09-27

问题解答:

我来补答
on来求解.写成向量形式,约束A*x<=b,初始值x0附近可以搜出出局部极小值.输入:
z=@(x)7.2*sqrt(25+(15-x(1))^2)+(7.2+(107/(20-x(1))))*sqrt((8-x(2))^2+(20-x(1))^2)+7.2*x(2);
A=[1,0;0,1];
b=[15;8];
x0=[1;1];
[x,feval]=fmincon(z,x0,A,b)
得到局部极小值的坐标和函数值:
x =
15.0000
6.6994
feval =
231.9944
再问: 麻烦您再把我的问题求解一下!急用。谢谢!
 
 
展开全文阅读
剩余:2000
上一页:单调性最小值
下一页:溶质质量