数学建模算法与应用:预测算法(4)马尔可夫预测

目录

         前言

        一、马尔可夫链的定义

        二、转移概率矩阵

         2.1、例题1

         2.3、MATLAB程序设计

         2.4、例题2

         2.5、MATLAB程序设计 

         三、柯尔莫哥洛夫定理

         3.1、例题3

        四、转移概率的渐近性质—极限概率分布 

         4.1、例题4

         4.2、例题4,MATLAB程序设计

         4.3、例题5


         前言

        研究随机现象变化过程的概率规律性的学科。

        设 \begin{Bmatrix} \xi _{t},t\in T \end{Bmatrix} 是一族随机变量,T是一个实数集合,若对任意实数 t\in T, 是一个随机变量,则称 \begin{Bmatrix} \xi _{t},t\in T \end{Bmatrix}为随机过程。

        T为参数集合,参数t可以看作时间。\xi_{t}的每一个可能取值所构成的集合称为状态空间,记为E。 当参数T为非负整数集时,随机过程又称为随机序列。我们要介绍的马尔可夫(Markov)链就是一 类特殊的随机序列。 

        一、马尔可夫链的定义

        现实世界中有很多这样的现象,某一系统在已知现在情况的条件下,系统未来时刻的情况只与现在有关,而与过去的历史无直接关系。比如,研究一个商店的累计销售额,如果现在时刻的累计销售额已知,则未来某一时刻的累计销售额与现在时刻以前的任一时刻累计销售额无关。描述这类随机现象的数学模型称为马尔科夫模型,简称马氏模型。

数学建模算法与应用:预测算法(4)马尔可夫预测_第1张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第2张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第3张图片

        二、转移概率矩阵

数学建模算法与应用:预测算法(4)马尔可夫预测_第4张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第5张图片

         2.1、例题1

数学建模算法与应用:预测算法(4)马尔可夫预测_第6张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第7张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第8张图片

         2.3、MATLAB程序设计

代码如下所示: 

clc,clear, fid = fopen('data15_6.txt');
a = textscan(fid, '%s'); b=strjoin(a{:});
for i=0:1
    for j=0:1
        s=[int2str(i),int2str(j)]; %构造子字符串‘ij’
        f(i+1,j+1)=length(strfind(b,s));  %计算子串‘ij’的个数
    end
end
fs=sym(sum(f,2));  %求f矩阵的行和,并转换为符号数
f=f./repmat(fs,1,size(f,2))  %求状态转移频率

         2.4、例题2

数学建模算法与应用:预测算法(4)马尔可夫预测_第9张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第10张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第11张图片

         2.5、MATLAB程序设计 

 代码如下所示:

clc, clear
a=[4  3  2  1  4  3  1  1  2  3 
   2  1  2  3  4  4  3  3  1  1
   1  3  3  2  1  2  2  2  4  4
   2  3  2  3  1  1  2  4  3  1];
a=a'; a=a(:)'; %把矩阵a逐行展开成一个行向量
for i=1:4
   for j=1:4
      f(i,j)=length(strfind(a,[i j])); %统计子串‘ij’的个数
   end
end
ni=sym(sum(f,2));  %计算矩阵f的行和,并转换为符号数
phat=f./repmat(ni,1,size(f,2))  %求状态转移的频率

         三、柯尔莫哥洛夫定理

数学建模算法与应用:预测算法(4)马尔可夫预测_第12张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第13张图片

         3.1、例题3

数学建模算法与应用:预测算法(4)马尔可夫预测_第14张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第15张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第16张图片

         问:怎么算的啊?

答:由定理二,可直接由矩阵叉乘求得;或者用全概率公式求得;

第二次购买的概率为:P_{A}=0.2\cdot 0.8+(0.4\cdot0.5)\cdot2=0.56 ; 

同理可得:P_{(B)}=0.18;P_{(C)}=0.26;

第三次购买的概率为:P_{(A)}=0.668;P_{(B)}=0.152;P_{(C)}=0.18 ;

        四、转移概率的渐近性质—极限概率分布 

数学建模算法与应用:预测算法(4)马尔可夫预测_第17张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第18张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第19张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第20张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第21张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第22张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第23张图片

         4.1、例题4

数学建模算法与应用:预测算法(4)马尔可夫预测_第24张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第25张图片

         4.2、例题4,MATLAB程序设计

代码如下所示: 

%第一种方法
p=[0.8 0.1 0.1;0.5 0.1 0.4;0.5 0.3 0.2]; p=sym(p);
a=[p'-eye(3);ones(1,3)];  %构造方程组ax=b的系数矩阵 
b=[zeros(3,1);1];  %构造方程组ax=b的常数项列
p_limit=a\b  %求方程组的解
%第二种:利用求转移矩阵P的转置矩阵P^T的最大特征值1对应的特征概率向量,求得极限概率;
clc,clear, format rat
p=[0.8 0.1 0.1;0.5 0.1 0.4;0.5 0.3 0.2];
[v,d]=eigs(p',1)  %求最大特征值及对应的特征向量
p=v/sum(v)  %把最大特征值对应的特征向量化成概率向量
format  %恢复到短小数的显示格式

         4.3、例题5

数学建模算法与应用:预测算法(4)马尔可夫预测_第26张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第27张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第28张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第29张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第30张图片

数学建模算法与应用:预测算法(4)马尔可夫预测_第31张图片

你可能感兴趣的:(MATLAB数学建模算法与应用,大数据,算法,线性代数,matlab)