基于模型诊断是人工智能领域内的一个重要研究方向,求解极小冲突集在基于模型诊断中有着重要应用.在对结合CSISE-Tree求解冲突集方法深入研究的基础上,根据冲突集求解特征重构了结合枚举树的计算冲突集的过程,提出基于深度优先反向搜索求解冲突集的方法.针对CSISE-Tree方法求解时占用内存空间与元件总数指数级相关的缺点,构建反向深度搜索方法减小求解时所占用内存空间;针对CSISE-Tree方法不能对部分非极小的冲突集进行剪枝的问题,给出对非冲突集和更多非极小的冲突集进行剪枝的方法,有效减少了求解时调用SAT(Boolean SATisfiability problem)求解器的次数;实验结果表明,与CSISE-Tree方法相比,本文提出的方法求解效率有明显的提升,并避免了求解时的内存爆炸问题.
Model-based diagnosis is an important problem in the field of artificial intelligence. In model-based diagnosis, how to get the minimal conflict sets is a well-known problem with extensive applications. In this paper, according to the characteristics of the conflict sets, we use the enumeration tree to reconstruct the process of solving conflict sets and then design a reverse depth algorithm based on the previous algorithm CSISE-Tree. Firstly, this proposed reverse depth search algorithm can reduce as many memory spaces as possible when obtaining some conflict sets, while CSISE-Tree have to expend some unnecessary memory spaces in this case, where the consume of memory spaces exponentially grows with the number of circuit elements. Secondly, compared with CSISE-Tree, our algorithm can effectively cut down the number of calling the SAT( Boolean SATisfiability problem) solver by pruning some non-minimal conflict sets and nonconflict sets. The experimental results show that our algorithm performs better than its competitor CSISE-Tree in terms of run time in most instances. More importantly, our algorithm avoids the memory explosion when solving some large instances.