You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

吸收马尔可夫链自定义求解算法的有效性验证疑问

吸收马尔可夫链终止概率计算逻辑求证

我遇到了一道需要计算到达终止状态概率的编程题。花了数小时尝试用传统方法求解未果后,我通过搜索得知该问题对应吸收马尔可夫链,且有对应的求解公式。但我最初以为自己的推导方案存在疏漏,因为计算结果和我误以为正确的网上解法结果不一致,特来求证。

状态转移示意图

请忽略粗糙的绘图。该图共有4个节点,黑色线条代表原始转移路径及对应概率,彩色线条代表到达终止状态的路径。

我的算法步骤

  • 步骤1:枚举所有到达终止点的有效路径,累加所有通向终止节点的路径概率,作为到达该节点的初始概率。
  • 步骤2:忽略循环路径,即直接忽略节点4到节点1的1/3转移概率。

步骤2的依据:循环回溯会等比例提升所有终止路径的概率,各路径的相对概率保持不变。例如从节点4返回节点1的概率为1/3,该情况下后续去往节点2、3、4的概率各会增加1/27(1/3 * 1/3 * 1/3),三者相对概率仍保持一致。

  • 步骤3:由于移除循环路径后总终止概率不为1,需将各终止节点的初始概率除以总终止概率,得到最终的到达概率。

计算结果

各单次无循环路径概率:

  • 红色路径概率:1/3
  • 绿色路径概率:1/3
  • 蓝色路径概率:1/3 * 2/3 = 2/9

初始概率统计:

  • 到达节点3的初始概率:1/3
  • 到达节点2的初始概率:2/9 + 1/3 = 5/9
  • 总终止概率:1/3 + 5/9 = 8/9

归一化后的最终概率:

  • 到达节点3的最终概率为:(1/3) / (8/9) = 3/8
  • 到达节点2的最终概率为:(5/9) / (8/9) = 5/8

逻辑验证

如果对步骤2有疑问,我们可以再次验证:
假设存在路径1→4→1,该段概率为1/9,后续可再乘以所有彩色路径的概率,与之前的计算结果累加后:

  • 到达节点3的概率为10/27
  • 到达节点2的概率为50/81
  • 总终止概率为80/81

归一化后的结果:

  • 新的节点3终止概率为(10/27) / (80/81) = 3/8(和之前结果一致)
  • 新的节点2终止概率为(50/81) / (80/81) = 5/8(和之前结果一致)

此前我误以为通过网上算法得到的节点3、2的真实概率分别为2/5和3/5,还曾怀疑网上算法有误。 后续发现是我自己使用网上解法时操作错误

我之前疑惑自己的结果和误算的“正确结果”接近,不知道哪里出错,现在想求证我的算法逻辑是否确实成立?


内容的提问来源于stack exchange,提问作者hkcode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 02:15:03