高效计算冲突集的方法
在模型诊断领域,解决最小冲突集问题具有重要意义。本文将介绍基于反向深度 SE 树求解冲突集的方法,以及结合故障概率与 SAT 的新颖方法,并对两种算法进行实验对比。
1. 基本定义
- 一致性诊断 :若 ${AB (c) |c \in\Delta} \cup{\neg AB (c) |c \in COMPS - \Delta} \cup OBS$ 是一致的,那么 $\Delta$ 就是一个基于一致性的诊断。这里的 $AB (c)$ 表示组件 $c$ 异常,当组件 $c \in COMPS$ 异常时,$AB (c)$ 为真。
- 冲突集 :如果集合 ${c_1, c_2, \cdots, c_r} \in COMPS$ 使得 $SD \cup{\neg AB(c_1), \neg AB(c_2), \cdots, \neg AB(c_r)} \cup OBS$ 不一致,那么该集合就是一个冲突集。若一个冲突集的任何真子集都不是冲突集,则它是最小冲突集。
- 文字 :给定 $n$ 个布尔变量 $X_1, X_2, \cdots, X_n$,$X_i$ 或 $\neg X_i$ 就是一个文字。
- 子句 :由若干文字用析取符号($\vee$)连接而成的公式就是子句,通常用 $C$ 表示。
- 合取范式(CNF) :由若干不同子句用合取符号($\wedge$)连接而成的公式就是合取范式。