● 摘要
在诸如航空航天等安全关键系统中,一个未能及时正确检测到的软件故障可能就会造成系统的失效、瘫痪,甚至导致巨大的灾难性后果。随着软件在其中所占的比例越来越大,安全关键软件的故障诊断也日益成为迫切需要解决的问题。基于知识的诊断系统利用某特定领域诊断专家的经验知识,经过模拟诊断专家的思维推理,解决只有诊断专家才可以解决的问题。所以,本文提出一种能够针对安全关键软件的故障进行基于知识的诊断系统的方法。
本文首先介绍了安全关键软件研究现状,发现很少对安全关键软件故障应用智能化诊断的研究,接着介绍了基于知识的系统相关的理论知识,并重点对知识库与推理机进行了研究。
其次,搜集安全关键软件常见的故障,并对其进行分类整理分析;把获取到的知识利用软件故障树分析方法绘制出来,并给出故障原因的解决措施;紧接着把软件故障树转化为二叉故障树,降低了软件故障知识表示的难度;对普通的二叉故障树进行了改进,提出了一种会学习的二叉故障树知识获取方法,使其能够不断进行学习;并利用CLIPS编写出故障诊断推理机制。
然后,结合CLIPS与VC++6.0混合编程,在人机交互界面上实现基于知识的安全关键软件的故障推理诊断过程。
最后,对全文内容进行了总结和工作展望,找到本文方法的不足,并明确下一步的研究方向和目标。