当前位置: 首页 > news >正文

数学建模——马尔科夫链(Markov Chain Model)

数学建模——马尔科夫链(Markov Chain Model)

  • 一、马尔可夫链的定义
      • 1. 状态与状态空间
      • 2. 无后效性(马尔科夫性)​
      • 3. 转移概率与转移概率矩阵
      • (1)一步转移概率
      • (2)转移概率矩阵
  • 二、马尔科夫链的关键性质(平稳性与遍历性)​
      • 2.1 平稳分布(极限分布)
      • 2.2 遍历性​
  • 三、马尔科夫链模型的建模步骤(附实例)​
  • 四、马尔科夫链的常见应用场景​
  • 五、建模注意事项​
  • 六、常见扩展模型
  • 七:代码
      • python版
      • matlab版

马尔科夫链(Markov Chain)是一种经典的随机过程模型,因俄国数学家安德烈・马尔科夫(Andrey Markov)而得名。它的核心特点是 “无后效性”—— 未来状态的概率仅取决于当前状态,与过去的状态无关。这种特性使其在预测、决策、随机模拟等领域具有广泛应用,是数学建模中解决 “动态随机问题” 的重要工具。​

马尔科夫链广泛应用于诸如人口迁移、用户行为预测、气象模拟、文本生成、设备寿命分析等离散状态建模场景中,尤其适用于状态数量有限、状态转移具有统计规律的建模问题。

一、马尔可夫链的定义

要理解马尔科夫链,需先明确三个核心概念:状态空间转移概率无后效性,这三者共同构成了模型的理论基石。

1. 状态与状态空间

状态:系统在某一时刻的 “处境” 或 “特征”,用离散的符号表示。例如:​
天气模型中,状态可定义为 “晴(S₁)、阴(S₂)、雨(S₃)”;​
股票走势中,状态可定义为 “上涨(S₁)、持平(S₂)、下跌(S₃)”。​
状态空间(记为 I):所有可能状态的集合,通常是有限离散集合,即 I = S 1 , S 2 , . . . , S n I={S_1,S_2,...,S_n} I=S1,S2,...,Sn(n 为状态总数)。

2. 无后效性(马尔科夫性)​

这是马尔科夫链的核心性质,用概率语言可严格表述为:​

这是马尔科夫链的核心性质,用概率语言可严格表述为:​
对于任意时刻 t 1 < t 2 < . . . < t k < t t_1 < t_2 < ... < t_k < t t1<t2<...<tk<t,以及任意状态,有:
P ( X t = S m ∣ X t k = S j , X t k − 1 = S i k − 1 , . . . , X t 1 = S i 1 ) = P ( X t = S m ∣ X t k = S j ) P(X_t = S_m \mid X_{t_k} = S_j, X_{t_{k-1}} = S_{i_{k-1}}, ..., X_{t_1} = S_{i_1}) = P(X_t = S_m \mid X_{t_k} = S_j) P(Xt=SmXtk=Sj,Xtk1=Sik1,...,Xt1=Si1)=P(Xt=SmXtk=Sj)

通俗理解:只要知道系统 “现在” 的状态,就能预测 “未来”,无需关心 “过去” 是如何到达当前状态的。例如,预测明天的天气,只需知道今天的天气,无需知道昨天或上周的天气。

3. 转移概率与转移概率矩阵

(1)一步转移概率

设系统在时刻 t 处于状态 S i S_i Si,在时刻 t+1 转移到状态 S j S_j Sj的概率,称为一步转移概率,记为:
p i j = P ( X t + 1 = S j ∣ X t = S i ) ( i , j = 1 , 2 , . . . , n ) p_{ij} = P(X_{t+1} = S_j \mid X_t = S_i) \quad (i, j = 1, 2, ..., n) pij=P(Xt+1=SjXt=Si)(i,j=1,2,...,n)

其满足两个基本性质:​

  1. 非负性: p i j ≥ 0 p_{ij} \geq 0 pij0(概率不可能为负);​
  2. 行和为 1: ∑ j = 1 n p i j = 1 \sum_{j=1}^n p_{ij} = 1 j=1npij=1(从状态 S i S_i Si 出发,必然转移到某个状态)。

假设连续记录 10 天天气,状态序列如下(数字对应状态):​
第 1 天:1(晴)、第 2 天:1(晴)、第 3 天:2(阴)、第 4 天:2(阴)、第 5 天:1(晴)、​第 6 天:1(晴)、第 7 天:1(晴)、第 8 天:2(阴)、第 9 天:1(晴)、第 10 天:1(晴)

一步转移描述 “当日状态→次日状态”,10 天数据对应9 个转移对(从第 1→2 天到第 9→10 天),手动列出所有转移对:​
第 1→2 天:1→1(晴→晴)​
第 2→3 天:1→2(晴→阴)​
第 3→4 天:2→2(阴→阴)​
第 4→5 天:2→1(阴→晴)​
第 5→6 天:1→1(晴→晴)​
第 6→7 天:1→1(晴→晴)​
第 7→8 天:1→2(晴→阴)​
第 8→9 天:2→1(阴→晴)​
第 9→10 天:1→1(晴→晴)

按 “初始状态(当日)” 分类,统计转移到 “目标状态(次日)” 的次数(记为 i i i= 初始状态,​ j j j= 目标状态),手动计数即可:

  1. 初始状态为 S 1 S_1 S1(晴天)的转移次数

先筛选 “初始状态 = 1” 的转移对:共 6 个(第 1、2、5、6、7、9 对),再统计目标状态:​

  • 1→1(晴→晴):第 1、5、6、9 对 → 4 次
  • 1→2(晴→阴):第 2、7 对 → 2 次

S 1 S_1 S1出发的总转移次数:4+2=6 次(与筛选出的转移对数量一致,计数正确)

  1. 初始状态为 S 2 S_2 S2(阴天)的转移次数

初始状态为 S 2 S_2 S

http://www.dtcms.com/a/353932.html

相关文章:

  • 集成学习之 Stacking(堆叠集成)
  • django配置多个app使用同一个static静态文件目录
  • 使用openCV(C ++ / Python)的Alpha混合
  • 【高级机器学习】 2. Loss Functions(损失函数)
  • 一、快速掌握Python 中的文件操作知识体系
  • mysql zip包安装步骤
  • 2025(秋)中国国际健康产业(成都)博览会:探索健康未来辉煌
  • TCP 并发服务器构建
  • 场外期权能做套利吗?
  • 二叉树的工程实践与高频问题(续):从LeetCode真题到系统设计的深度剖析
  • centos7 安装指定版本的fastfds
  • 了解CDC(变更数据捕获)如何革新数据集成方式
  • Linux 系统调优工具与实践指南
  • 个人博客系统系统---测试报告
  • HarmonyOS布局实战:用声明式UI构建自适应电商卡片
  • 【源码分析】@vue/runtime-dom/src/apiCustomElement.ts 解析
  • 重磅升级,Pixso 2.0赋能HarmonyOS应用设计与开发
  • 安卓11 12系统修改定制化_____如何修改固件 实现给指定内置的应用无障碍权限
  • Sybase 安装与备份
  • 【c++】超好玩游戏
  • 一、CSS3 新增选择器(非 “属性”,但为核心基础)
  • day082-初识ElasticStack
  • 路由基础(二):路由表和FIB表
  • Ansible文件管理与Jinja2模板
  • Linux查看SFTP登录不上的问题以及解决
  • 【Simulink专题】Simulink模型:MIL单元测试
  • 宝塔发布ktg-mes
  • vue cli 没使用的图片会被打包吗
  • 2025年08月27日Github流行趋势
  • 怎么更新 cargo.exe ?(Rust 工具链)