| 查看: 515 | 回复: 3 | ||
TNT19053新虫 (初入文坛)
|
[求助]
MATLAB大神请帮忙看看 已有1人参与
|
|
我现在在做一个优化方法的迭代,所写的程序如下: o1=zeros(1,3);o2=zeros(1,2); A=[0.81 0.28 0.96 0.91 0.55 0.49 0.13 0.96 0.80 0.91 0.96 0.14 0.63 0.16 0.42 0.10 0.97 0.92 ]; B=[0.79 0.68 0.96 0.76 0.66 0.74 0.04 0.39 0.85 0.66 0.93 0.17 ]; Ad=[0.81 0.28 0.96 ]; Bd=[0.79 0.68 ]; for ai=[0.3966 0.5259 0.6586 0.4097 0.6999 0.3936]; switch ai case ai==0.3966; Ai=[0.81 0.28 0.96]; Bi=[0.79 0.68]; case ai==0.5259; Ai=[0.91 0.55 0.49]; Bi=[0.96 0.76]; case ai==0.6586; Ai=[0.13 0.96 0.80]; Bi=[0.66 0.74]; case ai==0.4097; Ai=[0.91 0.96 0.14]; Bi=[0.04 0.39]; case ai==0.6999; Ai=[0.63 0.16 0.42]; Bi=[0.85 0.66 ]; otherwise ai==0.3936; Ai=[0.10 0.97 0.92]; Bi=[0.93 0.17]; end c=-[o1 Bd]; a=[-A B;ai*Ai -Bi]; b=zeros(7,1); aeq=[Ad o2]; beq=1; lb=zeros(5,1); [x,fval,exitflag]=linprog(c,a,b,aeq,beq,lb,[]) end 我想对矩阵ai依次取值进行一个循环,当ai取不同值的时候还有不同的变量,例如ai取第一个值时,即ai=0.3966时, Ai=[0.81 0.28 0.96], Bi=[0.79 0.68]; 依次类推,但是我不知道怎么写这个程序才能让ai在取不同值时选择不同的Ai,Bi进行计算,还有就是怎么让最后的fval显示到一个矩阵中? 计算的结果应该是 0.7581 0.7581 0.7581 0.6384 0.7581 0.7477 我计算了很多次,只有最后一个才是相等的, 求大神帮忙看看,谢谢了; 金币不太多,还希望见谅。 |
» 猜你喜欢
拟解决的关键科学问题还要不要写
已经有6人回复
存款400万可以在学校里躺平吗
已经有14人回复
Materials Today Chemistry审稿周期
已经有6人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
基金申报
已经有6人回复
推荐一本书
已经有13人回复
国自然申请面上模板最新2026版出了吗?
已经有17人回复
纳米粒子粒径的测量
已经有8人回复
疑惑?
已经有5人回复
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
» 本主题相关价值贴推荐,对您同样有帮助:
请用matlab或者1stop帮我拟合一个维里方程
已经有0人回复
matlab求传递函数
已经有2人回复
关于改进BP算法的MATLAB编程的问题,请各位大神帮帮忙
已经有0人回复
请用matlab编下代码,SO EASY只有一个未知数
已经有4人回复
请各位matlab大神们帮助画个图
已经有2人回复
求助matlab一段代码问题
已经有3人回复
matlab求反函数的问题 求教大神们
已经有0人回复
求大神帮帮忙发一份matlab中图像融合的算法
已经有2人回复
matlab为啥出现以下这种错误
已经有6人回复
事关毕设,还请大神们给提供一下主元分析方法的完整matlab代码,谢谢!
已经有1人回复
跪求大神帮看matlab小程序
已经有3人回复
各位大神,新手求助matlab问题!
已经有1人回复
【求助MATLAB大神】MATLAB画多行图时,每行的高度不太一样
已经有14人回复
新虫求助,大神帮帮忙,用最小二乘法编写程序求方程参数的值
已经有0人回复
matlab作业哪位大神麻烦给做一下,十万火急,周五之间要交
已经有3人回复
文刀星
木虫 (小有名气)
- 应助: 13 (小学生)
- 金币: 3651.2
- 散金: 500
- 红花: 5
- 帖子: 60
- 在线: 100.9小时
- 虫号: 3693767
- 注册: 2015-02-22
- 性别: GG
- 专业: 导航、制导与传感技术
【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
TNT19053: 金币+15, ★★★很有帮助, 谢谢你,问题都解决了 2015-09-25 16:11:26
感谢参与,应助指数 +1
TNT19053: 金币+15, ★★★很有帮助, 谢谢你,问题都解决了 2015-09-25 16:11:26
|
o1=zeros(1,3);o2=zeros(1,2); A=[0.81 0.28 0.96 0.91 0.55 0.49 0.13 0.96 0.80 0.91 0.96 0.14 0.63 0.16 0.42 0.10 0.97 0.92 ]; B=[0.79 0.68 0.96 0.76 0.66 0.74 0.04 0.39 0.85 0.66 0.93 0.17 ]; Ad=[0.81 0.28 0.96 ]; Bd=[0.79 0.68 ]; fval=zeros(6,1); ai=[0.3966 0.5259 0.6586 0.4097 0.6999 0.3936]; Ai=[0.81 0.28 0.96; 0.91 0.55 0.49; 0.13 0.96 0.80; 0.91 0.96 0.14; 0.63 0.16 0.42; 0.10 0.97 0.92]; Bi=[0.79 0.68; 0.96 0.76; 0.66 0.74; 0.04 0.39; 0.85 0.66; 0.93 0.17]; for i=1:6; c=-[o1 Bd]; a=[-A B;ai(i)*Ai(i, -Bi(i, ];b=zeros(7,1); aeq=[Ad o2]; beq=1; lb=zeros(5,1); [x,fval(i),exitflag]=linprog(c,a,b,aeq,beq,lb,[]); end fval= -0.7581 -0.7581 -0.7581 -0.6384 -0.7581 -0.7477 你要实现的那两个功能这个程序可以,但是结果对不对就看你的参数及方法了! |
2楼2015-09-25 14:32:44
文刀星
木虫 (小有名气)
- 应助: 13 (小学生)
- 金币: 3651.2
- 散金: 500
- 红花: 5
- 帖子: 60
- 在线: 100.9小时
- 虫号: 3693767
- 注册: 2015-02-22
- 性别: GG
- 专业: 导航、制导与传感技术
3楼2015-09-25 14:34:28
文刀星
木虫 (小有名气)
- 应助: 13 (小学生)
- 金币: 3651.2
- 散金: 500
- 红花: 5
- 帖子: 60
- 在线: 100.9小时
- 虫号: 3693767
- 注册: 2015-02-22
- 性别: GG
- 专业: 导航、制导与传感技术
4楼2015-09-25 14:34:57











回复此楼
-Bi(i,