依赖结果激活的下界约束因果流图
摘要
本文来源于某次不务正业过程中偶然发现的因果关系的数学结构,构造了一种将因果关系建模为带下界约束的有向流图的建模。
该模型可以适度模拟、研究和量化“从某个诱发原因到结果”的影响传递过程,非正式草稿,用于记录核心思想,待后续完善。
基本概念
因果流图
设 \(G = (V, E)\) 为一个有向图,其中:
-
顶点 \(v \in V\) 表示因果事件或状态。
-
有向边 \(e = (u \to v) \in E\) 表示 \(u\) 导致 \(v\)。
下界约束
每条边 \(e \in E\) 带有一个下界 \(l(e) \ge 0\),表示该因果环节发生所需的最小影响量(流量)。
源点、汇点与超级汇点
-
入度为 0 的顶点称为源点,对应根本原因。
-
出度为 0 的顶点称为汇点,对应直接原因。
-
引入一个超级汇点 \(T\),所有汇点 \(t_i\) 均有一条边指向 \(T\),表示直接原因导致最终结果。
诱发原因
诱发原因可以是 \(V\) 中任意指定的顶点 \(s\),不必是源点。可以引入一个超级源点 \(S_{\text{super}}\)(水库),从 \(S_{\text{super}}\) 连一条边到 \(s\),表示外部注入的初始影响。
结果激活
结果节点 \(T\) 被激活,当且仅当流入 \(T\) 的总流量至少为指定阈值 \(F\)。
形式化:\(inflow(T) \ge F \iff\) 结果节点 \(T\) 被激活
核心问题
问题 1:可行性判定
给定:
-
因果流图 \(G\) 及其边下界 \(l(e)\)
-
诱发原因 \(s\)
-
结果激活阈值 \(F\)
问:是否存在一个可行流,使得所有边下界被满足,且 \(T\) 的流入量至少为 \(F\)?
问题 2:最小注入量
在问题 1 的基础上,求从 \(S_{\text{super}}\) 注入的最小流量,使得 \(T\) 被激活。
与其他模型的关系
-
该模型可视为带下界网络流的一个特例。
-
当所有下界为 0 且 \(F = 1\) 时,退化为普通可达性问题。
-
与统计学中的因果图(Pearl 框架)不同,本模型强调影响量的传递,而非纯粹的依赖结构。
求解算法
可行性判定算法
将原网络转化为标准可行流问题。对于每条边 \(e=(u,v)\) 具有下界 \(l(e)\) 和容量 \(c(e)\)(若未指定容量可设为 \(+\infty\)),采用如下步骤:
(1)构造一个辅助网络:保留原节点,增设超级源 \(S'\) 和超级汇 \(T'\)。
(2)对于每条边 \((u,v)\),先强制发送下界流量 \(l(e)\),并更新节点平衡:\(b(u) := b(u) - l(e)\),\(b(v) := b(v) + l(e)\)。
(3)若某节点 \(x\) 的 \(b(x)>0\),则从 \(S'\) 向 \(x\) 连容量为 \(b(x)\) 的边;若 \(b(x)<0\),则从 \(x\) 向 \(T'\) 连容量为 \(-b(x)\) 的边。
(4)从 \(S'\) 到 \(T'\) 跑最大流,若最大流等于所有正平衡之和,则原网络存在可行流。
在上述可行流中,额外要求 \(T\) 的流入量 \(\ge F\),可将 \(T\) 视为一个普通节点,并人为设定其需求为 \(F\),即令 \(b(T) := b(T) + F\),\(b(S_{\text{super}}) := b(S_{\text{super}}) - F\),然后重新应用可行流判定。若存在可行流,则问题 1 答案为“是”。
最小注入量算法
在满足所有下界和 \(T\) 激活条件的前提下,最小化从 \(S_{\text{super}}\) 发出的流量。可以二分注入量 \(X\):将超级源点到诱发原因 \(s\) 的边容量设为 \(X\)(下界为 0),然后使用 5.1 的可行流判定;若可行,则减小 \(X\),否则增大 \(X\)。最终收敛到最小注入量。
更高效的方法是直接求最小流:先求出任意一个满足下界和激活条件的可行流,然后从 \(T\) 到 \(S_{\text{super}}\) 反向增广,减少总流量,直到无法继续减少。具体实现可参考带下界网络流的最小流算法。
多诱发原因的组合
当存在多个诱发原因 \(s_1, s_2, \ldots, s_k\) 时,可以引入一个公共超级源点 \(S_{\text{super}}\),并从 \(S_{\text{super}}\) 向每个 \(s_i\) 连一条容量为 \(+\infty\)、下界为 0 的边。此时,每个诱发原因均可独立获得任意初始注入量。
结果激活条件仍为 \(inflow(T) \ge F\)。在该模型下,多个诱发原因的影响是线性叠加的:流入 \(T\) 的总流量等于各原因经由因果路径到达 \(T\) 的流量之和。
若需要表示原因之间的非线性作用(例如协同效应或拮抗效应),则需要扩展模型,例如引入节点激活阈值、边流量放大/衰减因子,或使用超图表示联合因果作用。本模型默认假设影响可加,适用于多数线性传播场景。
应用场景
-
故障传播分析:在复杂工程系统中,元件故障沿依赖关系传播。用边下界表示故障传播所需的最低故障强度,结果激活表示系统整体失效。可评估最小初始故障强度。
-
舆情/信息传播:社交网络中,用户转发内容需要一定的社交影响力。用边下界表示用户转发阈值,结果激活代表话题成为热点。可计算引爆热点所需的最小初始曝光量。
-
流行病传播:传染病传播过程中,每个传播路径有最低有效接触率。模型可判断在某初始感染人数下,疾病是否会大规模爆发(结果激活)。
-
金融风险传导:金融机构之间的风险敞口存在最低传染阈值。模型可分析系统性风险爆发的触发条件,以及哪些机构是关键的诱发原因。
-
供应链中断:供应网络中的节点中断沿供应链传播,下界表示某环节中断造成下级中断所需的最小损失量,结果激活表示整个供应链崩溃。可识别脆弱环节。
浙公网安备 33010602011771号