heluoe 发表于 2009-2-23 11:49

Markov 状态跳转

请问如何用Markov的状态矩阵生成数列?

状态数为两个。

A状态,B状态

A到B的概率为0.005
B到A的概率为0.027          矩阵形式为

如果在A状态,输出'0’的概率为0.01,输出'1'的概率为0.99;
如果在B状态,输出'0'的概率为0.9,输出'1'的概率为0.1;

若初始状态为A,求模拟输出的数列是多少?

大概输出" 1111111101010111101110110....."

ChaChing 发表于 2009-2-23 23:39

sorry, LZ的问题对我而言, 太专业了!
若可能的话, 想办法转换成别人易懂的, 或许更多人愿意帮忙!

ch_j1985 发表于 2009-2-23 23:44

回复 楼主 heluoe 的帖子

没有相应的知识背景,问题看起来确实有难度

ChaChing 发表于 2009-2-24 08:56

回复 楼主 heluoe 的帖子

LZ看看有没有你要的!
http://www.inra.fr/internet/Departements/MIA/T//MDPtoolbox/

heluoe 发表于 2009-3-7 10:58

恩。解决了。谢谢关注。。

若当前状态为A生成第一个随机数(范围0.00-1.00)      
case          0-0.01:      Result=0;         
               0.01-1.00:Result=1;
然后生成第二个随机数(范围0.00-1.00)         
if                0-0.005状态转移为B;         
else          状态不变;
若当前状态为B
生成第一个随机数(范围0.00-1.00)      
case          0-0.90:      Result=0;         
                  0.90-1.00:Result=1;
然后生成第二个随机数(范围0.00-1.00)         
if                0-0.027状态转移为A;         
else          状态不变;

code:
np=rand(1,2) ;   
      N = N + 1;
      if status == 1    %Good Network
          if np(1) < Pod(1)
            %data lost
            Output = 0;
          else
            Output = 1;
          end
          if np(2) < Pot(1) %|| ( t>14 && t<15)%transition to Bad
            status = 0;         
          end
      else   %Bad Network
          if np(1) < Pod(2) %|| ( t>14 && t<15) )
            %data lost
            Output = 0;
          else
            Output = 1;
          end
          if np(2) < Pot(2) || (PP/N) > P %|| ( t<14 && t>15)%transition to good
            status = 1;         
          end
      end
页: [1]
查看完整版本: Markov 状态跳转