随机序列的Markov链预测
例
1978年至2004年城镇居民蔬菜人均消费数据,请给出城镇居民蔬菜消费量的长期趋势。

1.状态划分及构造

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
   | A=[130 137 143 152.34 159.08 165.48 149.04 144.36 148.32 142.58 147.02 144.56 138.70 132.18 124.91 120.64 120.74 116.47 118.51 113.34 113.76 114.94 114.74 115.86 116.52 118.34 122.30]; b=diff(A); A1=A(1:end-1); tt=b./A1*100; z=[-3 0 3]; for i=1:length(tt)     if tt(i)<z(1)         aa(i)=1;     elseif tt(i)<z(2)         aa(i)=2;     elseif tt(i)<z(3)         aa(i)=3;     else         aa(i)=4;     end end
 
  | 
 
2.计算各状态转移次数及转移概率
1 2 3 4 5 6 7 8 9 10 11 12 13
   | for i=1:4     for j=1:4         k=[i,j];         c(i,j)=length(strfind(aa,k));     end end c cs=sum(c,2); p=zeros(4,4); for i=1:4     p(i,:)=c(i,:)./cs(i); end p
 
  | 
 
1 2 3 4 5 6 7 8 9 10
   | c =      4     0     4     1      1     0     1     0      3     1     3     1      1     1     0     4 p =     0.4444         0    0.4444    0.1111     0.5000         0    0.5000         0     0.3750    0.1250    0.3750    0.1250     0.1667    0.1667         0    0.6667
 
  | 
 
3.计算城镇居民年人均蔬菜消费量的长期趋势
(极限分布)

1 2 3 4
   | p1=p'-eye(size(p')); p2=[p1;ones(1,4)]; b11=[zeros(1,4),1]'; x=linsolve(p2,b11)
 
  | 
 
1 2 3 4 5
   | x =                       0.36                       0.08                       0.32                       0.24
 
  | 
 
参考