奇偶游戏求解的实用方法
奇偶游戏在模型检查和分支时间逻辑决策问题等领域有着广泛的应用。为了高效地解决奇偶游戏,我们可以采用一些通用的优化方法和一个通用求解器。
通用优化方法
通用优化方法旨在有效降低给定奇偶游戏的整体复杂度,从而减少求解器的工作量。这些优化方法必须确保修改后游戏的解能够有效且高效地转换回原始游戏的有效解。主要有以下四种优化方法:
1. SCC分解
- SCC定义 :设 $G = (V, V_0, V_1, E, Ω)$ 是一个奇偶游戏。强连通分量(SCC)是一个非空集合 $C ⊆ V$,其中 $C$ 中的每个节点都可以到达 $C$ 中的其他节点,即对于所有 $u, v ∈ C$,有 $uE^ v$($E^ $ 表示 $E$ 的自反传递闭包)。我们通常假设 SCC 是最大的。如果 $|C| > 1$ 或者存在某个节点 $v$ 使得 $C = {v}$ 且 $vEv$,则称 SCC $C$ 是合适的。
- 分解算法 :每个奇偶游戏 $G$ 可以在 $O(|E|)$ 时间内使用 Tarjan 算法等方法将其划分为 SCC $C_0, …, C_n$。
- 拓扑排序 :这些 SCC 之间存在一个拓扑排序 $\to$,定义为 $C_i \to C_j$ 当且仅当 $i \neq j$ 且存在 $u ∈ C_i$,$v ∈ C_j$ 使得 $uEv$。如果不存在 SCC $C’$ 使得 $C \to C’$,则称 SCC $C$ 是最终的。每个有限图至少有一个最终 SCC。
超级会员免费看
订阅专栏 解锁全文
2950

被折叠的 条评论
为什么被折叠?



