楼主: 邢祖哥
1727 3

[问答] matlab马尔可夫怎么退出循环? [推广有奖]

  • 0关注
  • 0粉丝

初中生

38%

还不是VIP/贵宾

-

威望
0
论坛币
8 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
59 点
帖子
5
精华
0
在线时间
21 小时
注册时间
2017-12-2
最后登录
2019-2-27

楼主
邢祖哥 发表于 2017-12-8 03:48:47 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
% 读入状态转移概率矩阵
p=[0.45 0.35 0.20;0.30 0.40 0.30;0.80 0.10 0.10];
% 读入初始状态概率向量(当月市场占有率)
x=[0.40,0.30,0.30];
  % 预测今后无限个年份的市场占有率状态
  y=[];
for i=1:11,
    y=[y;x*p^i];
end
y
现在生成的是一个11*3的矩阵,但由于马尔可夫预测会迎来终结,最后几列是一样的。
y =

    0.5100    0.2900    0.2000
    0.4765    0.3145    0.2090
    0.4760    0.3135    0.2106
    0.4767    0.3130    0.2103
    0.4766    0.3131    0.2103
    0.4766    0.3131    0.2103
    0.4766    0.3131    0.2103
    0.4766    0.3131    0.2103
    0.4766    0.3131    0.2103
    0.4766    0.3131    0.2103
    0.4766    0.3131    0.2103
现在我想在其得到一样的结果时退出循环,请问要怎么写代码?求大神指教!!!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:MATLAB matla atlab 马尔可夫 Lab

沙发
xiangyu71 发表于 2017-12-8 07:39:04
设置一个tol,让其达到或者小于某值时不执行循环

藤椅
lixuewei3 发表于 2017-12-11 09:24:55
xiangyu71 发表于 2017-12-8 07:39
设置一个tol,让其达到或者小于某值时不执行循环
对,达到一定差值时,直接break就可以了

板凳
googo 在职认证  发表于 2018-3-29 23:00:24 来自手机
邢祖哥 发表于 2017-12-8 03:48
% 读入状态转移概率矩阵
p=[0.45 0.35 0.20;0.30 0.40 0.30;0.80 0.10 0.10];
% 读入初始状态概率向量(当 ...
欢迎加入Matlab爱好者群531421022讨论

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 09:52