24小时热门版块排行榜    

Znn3bq.jpeg
查看: 2171  |  回复: 10

tuyuting

新虫 (小有名气)

[求助] 求助~~~二元三次方程用什么软件求极值 已有3人参与

方程为:
z=-92.743+21.940*x+1.535*y-7.368*x^2-0.006*y^2+9.359*x*y/10000+0.803*x^3+(9.853*y^3)/1000000-(2.889*x*y^2)/10000+0.0255*y*x^2
其中x的范围为0到2.5  ;  y的范围为100到200

尝试用matlab求极大值,参考网上的教程,编的代码如下
syms x1 x2;
y=-92.743+21.940*x1+1.535*x2-7.368*x1^2-0.006*x2^2+9.359*x1*x2/10000+0.803*x1^3+(9.853*x2^3)/1000000-2.889*x1*x2^2/10000+0.0255*x1^2*x2
y=simple(y)
dydx1=diff(y,x1)
dydx2=diff(y,x2)
S=solve(dydx1,dydx2)
S.x1
S.x2

计算结果是一大堆公式
y =

-92743/1000+1097/50*x1+307/200*x2-921/125*x1^2-3/500*x2^2+9359/10000000*x1*x2+803/1000*x1^3+9853/1000000000*x2^3-2889/10000000*x1*x2^2+51/2000*x1^2*x2



y =

803/1000*x1^3+(-921/125+51/2000*x2)*x1^2+(1097/50+9359/10000000*x2-2889/10000000*x2^2)*x1-92743/1000+307/200*x2+9853/1000000000*x2^3-3/500*x2^2



dydx1 =

2409/1000*x1^2+2*(-921/125+51/2000*x2)*x1+1097/50+9359/10000000*x2-2889/10000000*x2^2



dydx2 =

51/2000*x1^2+(9359/10000000-2889/5000000*x2)*x1+307/200+29559/1000000000*x2^2-3/250*x2



S =

    x1: [4x1 sym]
    x2: [4x1 sym]


ans =

2159960412801613996538037/559496974666398295037916100*(72886429125179524/362347273980951+1/1347082716481861419470583858351152538612*6^(1/2)*((-370175839116662828260169439633164657624844729276059377616214790883620376135999116*(-5476821316928811165845458719373673857342723142053626365094440283912473672234915730406620344251339195447860696279655747108837039168333940756549124378354994324333114393516897294565622823208223590992509759772727657498758565678213186720956+10609852924969292005429057493877030663111181724710719087057168516226374251717872739658280037283020433159528825176519873227495027565825932363212*i*412301133939570303333491378185360079681893557830658491717107061914374469161463266738792864832300686314186337380891301039123524853581262522719077718180352606647106995680690230930274470027^(1/2))^(1/3)+217*。。。。省略


ans =

72886429125179524/362347273980951+1/1347082716481861419470583858351152538612*6^(1/2)*((-370175839116662828260169439633164657624844729276059377616214790883620376135999116*(-5476821316928811165845458719373673857342723142053626365094440283912473672234915730406620344251339195447860696279655747108837039168333940756549124378354994324333114393516897294565622823208223590992509759772727657498758565678213186720956+10609852924969292005429057493877030663111181724710719087057168516226374251717872739658280037283020433159528825176519873227495027565825932363212*i*412301133939570303333491378185360079681893557830658491717107061914374469161463266738792864832300686314186337380891301039123524853581262522719077718180352606647106995680690230930274470027^(1/2))^(1/3)+217*。。。省略

得不到具体的数值
麻烦各位虫友帮忙看看,代码出错在哪儿?多谢
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

WanderingHeart

铁杆木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
为什么不能画一个三维空间的曲面出来,这样的话首先可以直观上看到极值大概出现在哪里,然后就好办了啊。
2楼2015-07-13 21:43:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
tuyuting: 金币+20, 有帮助 2015-07-17 10:57:05
引用回帖:
3楼: Originally posted by tuyuting at 2015-07-13 21:51:01
画出来了,但是想求出准确的值
最大值(x,y,z)大概是(1.5,185,40)...

你确定z最大值为40左右么?
x=2.5
y=200时
z=77.880825
这是我找到的z的最大值。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
5楼2015-07-14 15:46:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

tuyuting

新虫 (小有名气)

引用回帖:
2楼: Originally posted by WanderingHeart at 2015-07-13 14:43:16
为什么不能画一个三维空间的曲面出来,这样的话首先可以直观上看到极值大概出现在哪里,然后就好办了啊。

画出来了,但是想求出准确的值
最大值(x,y,z)大概是(1.5,185,40)
3楼2015-07-13 21:51:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

WanderingHeart

铁杆木虫 (著名写手)

引用回帖:
3楼: Originally posted by tuyuting at 2015-07-13 21:51:01
画出来了,但是想求出准确的值
最大值(x,y,z)大概是(1.5,185,40)...

在已知的这样一个值附近更精确的找极值应该不是个困难的事情,即使你只是简单的对附近的点离散化进行扫描也可以找到啊。
4楼2015-07-14 07:05:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
tuyuting: 金币+20, 有帮助, 您好!能帮我看一下我输入的求最大值的程序,哪儿出错了吗? 2015-07-14 20:16:29
此外,既然楼主问到用什么软件,MATLAB肯定可以的,1stOpt软件也推荐。
楼主用的是求偏导数方法,先求出所有极值,再比较。
其实,楼主还可以直接调用MATLAB的最优化工具箱求解。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
6楼2015-07-14 15:54:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tuyuting

新虫 (小有名气)

引用回帖:
6楼: Originally posted by 月只蓝 at 2015-07-14 08:54:49
此外,既然楼主问到用什么软件,MATLAB肯定可以的,1stOpt软件也推荐。
楼主用的是求偏导数方法,先求出所有极值,再比较。
其实,楼主还可以直接调用MATLAB的最优化工具箱求解。

syms x1 x2;
y=-92.743+21.940*x1+1.535*x2-7.368*x1^2-0.006*x2^2+9.359*x1*x2/10000+0.803*x1^3+(9.853*x2^3)/1000000-2.889*x1*x2^2/10000+0.0255*x1^2*x2
y=simple(y)
dydx1=diff(y,x1)
dydx2=diff(y,x2)
S=solve(dydx1,dydx2)
S.x1
S.x2
7楼2015-07-14 20:16:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
tuyuting: 金币+20, 有帮助 2015-07-17 10:57:25
引用回帖:
7楼: Originally posted by tuyuting at 2015-07-14 20:16:36
syms x1 x2;
y=-92.743+21.940*x1+1.535*x2-7.368*x1^2-0.006*x2^2+9.359*x1*x2/10000+0.803*x1^3+(9.853*x2^3)/1000000-2.889*x1*x2^2/10000+0.0255*x1^2*x2
y=simple(y)
dydx1=diff(y,x1)
dydx2=diff(y,x2)
...

你说你把三维图形绘制出来过,找到了大概的极值点位置,但实际上从我绘制的三维图上,可以清楚看到,z显然在x=2.5 y=200时,取到最大。
求助~~~二元三次方程用什么软件求极值
附图1.png

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
8楼2015-07-15 10:02:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

引用回帖:
7楼: Originally posted by tuyuting at 2015-07-14 20:16:36
syms x1 x2;
y=-92.743+21.940*x1+1.535*x2-7.368*x1^2-0.006*x2^2+9.359*x1*x2/10000+0.803*x1^3+(9.853*x2^3)/1000000-2.889*x1*x2^2/10000+0.0255*x1^2*x2
y=simple(y)
dydx1=diff(y,x1)
dydx2=diff(y,x2)
...

从图形上看,不存在驻点,求导数=0处的根的办法行不通。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
9楼2015-07-15 10:07:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

独孤神宇

版主 (知名作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
tuyuting: 金币+20, 有帮助 2015-07-17 10:58:40
程序应该是有问题的,这个函数没有极值点,只有个最大值。
目标函数值(最大): 77.880825
x: 2.5
y: 200
数值计算
10楼2015-07-16 15:26:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 tuyuting 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 272分材料子求调剂 +35 Loy0361 2026-04-10 44/2200 2026-04-11 17:55 by tj2m
[考研] 308求调剂 +3 VvvvL 2026-04-10 3/150 2026-04-11 15:32 by xiangxu
[考研] 269电子信息求调剂,可转专业 +11 独酌wl 2026-04-06 11/550 2026-04-11 11:12 by 逆水乘风
[考研] 085600材料与化工329分求调剂 +16 叶zilin 2026-04-10 16/800 2026-04-11 11:04 by may_新宇
[考研] 计算机11408,286分求调剂 +10 木子念晞 2026-04-05 10/500 2026-04-11 10:44 by zhq0425
[考研] 材料085601调剂 +25 何润采123 2026-04-10 27/1350 2026-04-10 23:17 by Ftglcn90
[考研] 289 分105500药学专硕求调剂(找B区学校) +6 白云123456789 2026-04-09 8/400 2026-04-10 21:13 by zhouxiaoyu
[考研] 材料专硕调剂 +16 哈哈哈吼吼吼哈 2026-04-07 17/850 2026-04-09 21:16 by wutongshun
[论文投稿] 求助文献原文 10+3 18500821399 2026-04-08 3/150 2026-04-09 16:56 by 北京莱茵润色
[考研] 求调剂 +7 chenxrlkx 2026-04-05 9/450 2026-04-09 09:04 by wj165256
[考研] 生物学学硕,初试351分,求调剂 +4 …~、王…~ 2026-04-08 5/250 2026-04-08 21:49 by limeifeng
[考研] 一志愿南昌大学,085600,344分求调剂 +11 调剂上岸玘 2026-04-05 12/600 2026-04-08 16:17 by luoyongfeng
[考研] 一志愿211,化学学硕,310分,本科重点双非,求调剂 +10 努力奋斗112 2026-04-07 10/500 2026-04-08 15:01 by screening
[考研] 调剂求助(生物与医药) +6 @6952 2026-04-06 6/300 2026-04-07 23:52 by lys0704
[考研] 22408 一志愿双一流人工智能300分 四六级,数据分析国奖 +4 zzfeng123 2026-04-06 6/300 2026-04-07 21:02 by zzfeng123
[考研] 生物调剂 +5 橙子橙子橙子啊 2026-04-05 9/450 2026-04-07 15:31 by 上岸快快
[考研] 22408 331分求调剂 +4 y__1 2026-04-06 4/200 2026-04-06 17:26 by 土木硕士招生
[考研] 求调剂到材料 +5 程9915 2026-04-06 5/250 2026-04-06 15:21 by yulian1987
[考研] 求调剂 +7 张.1 2026-04-05 7/350 2026-04-05 20:40 by 啵啵啵0119
[考研] 327求调剂 +4 拾光任染 2026-04-05 4/200 2026-04-05 20:16 by 南航~万老师
信息提示
请填处理意见