| 查看: 524 | 回复: 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 我计算了很多次,只有最后一个才是相等的, 求大神帮忙看看,谢谢了; 金币不太多,还希望见谅。 |
» 猜你喜欢
遇见不省心的家人很难过
已经有24人回复
依托企业入选了国家启明计划青年人才。有无高校可以引进的。
已经有6人回复
博士延得我,科研能力直往上蹿
已经有9人回复
天津大学招2026.09的博士生,欢迎大家推荐交流(博导是本人)
已经有6人回复
AI 太可怕了,写基金时,提出想法,直接生成的文字比自己想得深远,还有科学性
已经有6人回复
有院领导为了换新车,用横向课题经费买了俩车
已经有9人回复
酰胺脱乙酰基
已经有13人回复
同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗
已经有4人回复
有时候真觉得大城市人没有县城人甚至个体户幸福
已经有10人回复
» 本主题相关价值贴推荐,对您同样有帮助:
请用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,