24小时热门版块排行榜    

查看: 650  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

troyzz

木虫 (初入文坛)

[求助] Matlab二次规划语言,高分求大神帮忙修改

在网上看了一遍关于配料比优化的论文,完全按照论文内容试着编了一下,可是无法运行,求大神帮忙改一下。论文就不附上了,有涉嫌侵权嫌疑,把从里面摘抄的一部分附上。
1 function f=myfun(X)
2 f=0.35*X(1)+0.002*X(2)+0.02*X(3)+0.025*X(4) +0.035*X(5)+6*X(6);
3 goal=170;
4 weight=170;
5 X0=[400;170;100;550;1200;6];
6 b=[0;0;0;0;0;0;0;-500;600];
7 Aeq=[0.3226 1 0.4808 0.3774 0.3704 0];
8 beq=990;
9 lb=[300;130;50;500;1000;315];
10 ub=[500;210;200;1 000;1400;12];
11 A=[0.2 -1 0.2 0 0 0;
-0.4 1 -0.4 0 0 0;
0 0 0 -0.65 0.35 0;
0 0 0 0.6 01.4 0;
-14.6 52.71 -14.6 0 0 0;
0.01 0 0 0 0 -1;
-0.02 0 0 0 0 1;
-1 0 -1 0 0 0;
1 0 1 0 0 0];
12 [X,fval,attainfactor,exitflag]=fgoalattain(xy,X0,goal,weight,A,b,Aeq,beq,lb,ub)[ Last edited by troyzz on 2013-5-18 at 12:07 ]
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 程序语言.docx
  • 2013-05-17 16:43:10, 31.2 K

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

Fighting~~
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

troyzz

木虫 (初入文坛)

引用回帖:
3楼: Originally posted by ausir at 2013-05-18 13:38:06
补充说明一下: 我在计算时,把Ub的最后一项设置为1200,这样就大于lb中的315,能够进行运算。但是无法保证是否是真实的需要,请楼主斟酌。...

我已经解决了,把程序分成了两个,一、二行保存为myfun.m,组成嵌入式,谢谢你的解答。
Fighting~~
5楼2013-05-19 11:52:02
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

ausir

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
这里面有几个问题:

1. 把 myfun 这个用户自定义函数单独存在一个.m文件中。后面在 fgoalattain中调用;
2. ub 的最后一项比 lb 对应的数值小,ub中是12, lb中是315;
3. ub 矩阵中的写法,1000 写作 1 000,这个导致识别错误;
4. 矩阵A的第4行第5列的数值到底是多少? 01.4? 可以按照1.4来计算,但是计算迭代到700次时依然无法收敛,系统自动停止运算,没有结果。
5. 最后的关键,第12行的函数中,根本就没有提到你自己定义的函数 myfun,而是使用了没有任何定义的 xy。根本不会有任何运算。
6. 关于fgoalattain函数的调用语法问题,在myfun 前面要加一个 @符号或使用 'myfun' 。运算结果一样。都无法取得附件中中所要求的结果。
以上看法供参考。
2楼2013-05-18 13:35:58
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

ausir

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★
troyzz: 金币+8, 有帮助, 谢谢你的解答 2013-05-19 11:53:01
xzhdty: 谢谢参与 2013-05-19 12:00:29
引用回帖:
2楼: Originally posted by ausir at 2013-05-18 13:35:58
这里面有几个问题:

1. 把 myfun 这个用户自定义函数单独存在一个.m文件中。后面在 fgoalattain中调用;
2. ub 的最后一项比 lb 对应的数值小,ub中是12, lb中是315;
3. ub 矩阵中的写法,1000 写作 1 000, ...

补充说明一下: 我在计算时,把Ub的最后一项设置为1200,这样就大于lb中的315,能够进行运算。但是无法保证是否是真实的需要,请楼主斟酌。
3楼2013-05-18 13:38:06
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

troyzz

木虫 (初入文坛)

引用回帖:
3楼: Originally posted by ausir at 2013-05-18 13:38:06
补充说明一下: 我在计算时,把Ub的最后一项设置为1200,这样就大于lb中的315,能够进行运算。但是无法保证是否是真实的需要,请楼主斟酌。...

原来是复制过程中出现很多错误,我又仔细的看了一下那篇论文,并参考了您的意见,自己演算了一遍,附上修改后的语言还是不行,其实我对fgoalattain不熟悉。
function f=myfun(X)
f=0.35*X(1)+0.002*X(2)+0.02*X(3)+0.025*X(4) +0.035*X(5)+6*X(6);
goal=170;
weight=170;
X0=[400;170;100;550;1200;6];
b=[0;0;0;0;0;0;0;-500;600];
Aeq=[0.3226 1 0.4808 0.3774 0.3704 0];
beq=990;
lb=[300;130;50;500;1000;3.5];
ub=[500;210;200;1000;1400;12];
A=[0.2 -1 0.2 0 0 0;
   -0.4 1 -0.4 0 0 0;
   0 0 0 -0.65 0.35 0;
   0 0 0 0.6 -0.4 0;
   -14.6 52.708 -14.6 0 0 0;
   0.01 0 0 0 0 -1;
   -0.02 0 0 0 0 1;
   -1 0 -1 0 0 0;
   1 0 1 0 0 0];
[X,fval,attainfactor,exitflag]=fgoalattain(@myfun,X0,goal,weight,A,b,Aeq,beq,lb,ub,nonlcon)
Fighting~~
4楼2013-05-18 15:01:59
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +27 医学老男孩 2026-08-13 58/2900 2026-08-15 15:57 by GZUZM
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 P4JhWrbJGjSe 2026-08-14 5/250 2026-08-15 15:46 by QXtWNz7PI7wZ
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 7lpolszZVXgi 2026-08-14 3/150 2026-08-15 14:53 by QXtWNz7PI7wZ
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 HFw0lei2R37i 2026-08-14 8/400 2026-08-15 14:41 by QXtWNz7PI7wZ
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 k0dTPqJtl0jt 2026-08-14 3/150 2026-08-15 12:41 by KxMI1BYBxWX1
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 7lpolszZVXgi 2026-08-14 8/400 2026-08-15 11:53 by KxMI1BYBxWX1
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 7lpolszZVXgi 2026-08-14 6/300 2026-08-15 09:28 by sunzitan
[基金申请] filecode +7 cratir 2026-08-14 11/550 2026-08-15 06:19 by 学员8dgXkO
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 HFw0lei2R37i 2026-08-14 4/200 2026-08-15 04:17 by 4wMiSEwB6436
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 22/1100 2026-08-14 23:45 by Noways
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +23 Lanmanbaby 2026-08-09 37/1850 2026-08-14 13:40 by Equinoxhua
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +10 家与远方 2026-08-10 15/750 2026-08-14 02:08 by 绵羊哥哥
[文学芳草园] 阿姨 +4 汪汪锅 2026-08-09 4/200 2026-08-13 19:43 by arzu_hma
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
信息提示
请填处理意见