Objective value: -900.0,此时X1=30.0, X2=0.0
但当x1,x2分别为39和-18时才取最小-1143
怎么回事儿?
并且改变x2系数时结果都一样:即将上式中-3改为3、5、6、7……结果都一样
lingo求解min=x1^2+x1*x2+x2^2-60*x1-3*x2;结果错误
答案:2 悬赏:30 手机版
解决时间 2021-02-09 03:05
- 提问者网友:绫月
- 2021-02-08 09:29
最佳答案
- 五星知识达人网友:归鹤鸣
- 2021-02-08 09:55
fun='x(1).^2+x(1).*x(2)+x(2).^2-60*x(1)-3*x(2)';
x0=[30,0];
[x,favl]=fminsearch(fun,x0)
这是matlab的代码 算出来是(39 -18)
至于你的lingo嘛 因为lingo默认所有的变量非负 所以求的结果x2为0 你加个@free(x2)释放就可以了
x0=[30,0];
[x,favl]=fminsearch(fun,x0)
这是matlab的代码 算出来是(39 -18)
至于你的lingo嘛 因为lingo默认所有的变量非负 所以求的结果x2为0 你加个@free(x2)释放就可以了
全部回答
- 1楼网友:西风乍起
- 2021-02-08 11:03
f(x)=[0.5(x1*x1+x2*x2+2x1x2)]+[0.5x1*x1-6x1]+[0.5x2*x2-3x2]
=[0.5(x1+x2)*(x1+x2)]+[0.5(x1-6)(x1-6)-18]+[0.5(x2-3)(x2-3)-4.5]
=[0.5(x1+x2)*(x1+x2)]+[0.5(x1-6)(x1-6)]+[0.5(x2-3)(x2-3)]-22.5
中括号中只剩下平方项,平方项最小值为0,所以f(x)极小值为-22.5,无极大值
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯