法律状态公告日
法律状态信息
法律状态
2017-04-12
授权
授权
2014-06-04
实质审查的生效 IPC(主分类):G06N5/04 申请日:20140211
实质审查的生效
2014-04-30
公开
公开
技术领域
本发明涉及专家系统领域,尤其是一种小型专家系统推理过程及冲突集控 制解决方法。
背景技术
产生式系统的执行效率一直是专家系统设计人员的关注焦点。在产生式系 统中,大部分的时间消耗在模式匹配工作上。因此研究,高效实用的模式匹配 算法,对提高系统的效率有重要的意义。
Forgy与1979年提出Rete算法。这是一种快速匹配算法,目前比较流行的 商用产生式系统语速,如OPS、CLIPS等都是基于Rete算法实现的。目前多数 产生式专家系统的推理机制均采用Rete匹配算法,或对其改进方式。Rete算法 为了实现速度,保留了以往的匹配信息,因此占用了大量的存储空间,更适合 大型专家系统中应用。
冲突消解过程,是指在进行模式匹配后,若同时有两条以上的规则为竞选 规则,系统必须从中选择一条来执行的过程。冲突消解策略即执行冲突消解过 程所依据的原则。
目前,冲突集设计有以下几个常见的原则:
(a)就近原则:即最新激活的规则先执行,将冲突集设计成一个先进后出 的栈。
(b)公平原则:即先激活的规则先执行,将冲突集设计成先进先出的栈。
(c)优先级原则:即优先级高的规则先执行。规则优先级的评定可由规则 可信度、与事实匹配程度等方式确定。
就近原则和公平原则实施起来简单,但是由于没有任何背景信息做指导, 常会导致推理盲目性,推理时间缓慢,效率不高等不利后果;优先级原则效率 比前两种有所提高,但是每次产生一个新事实,都必须重新计算优先级,然后 在多个待执行的规则中就行调度,增加了开销。
发明内容
本发明要解决的技术问题是:提出一种小型专家系统推理过程及冲突集控 制解决方法,从推理时间冗余性、规则结构相似性和规则模式类型三方面进行 综合考虑,大大减少了匹配运算和冲突集中计算的开销,提高了专家系统推理 机的执行效率。
本发明所采用的技术方案为:一种小型专家系统推理过程及冲突集控制解 决方法,包括以下步骤:
1)将具有相同模式结构的规则,建立浅层次的连接关系;将所有规则的模 式统一进行编号,同时为每个模式设置标志位,初始值为“0”;为每条规则设 置标志位,初始值均为“0”。
2)将初始事实放入内存的事实库中;
3)从事实库中逐一取出未用过的事实与所有模式先进行模式类型是否匹配 的判别;
4)将实现匹配的模式的标志位进行设置;
5)通过扫描规则库,将所有模式均被设置为与步骤4)中相同的规则送入 冲突集,等待选择执行;
6)冲突集中将待选的规则,按可信度的高低,建立链表;将信度高的规则 优先级就高,被置于链表前部;将信度低的规则,被至于链表的后部。
7)执行链表中优先级最高的节点,并将新事实送入事实库中,同时该节点 被删除;
8)重复执行步骤(3),直至输出目标结果,或者推理超时结束。
本发明所述的步骤3)中的判别方式为:事实类型与模式类型不同的,则跳 过,不予匹配;模式类型相同的,则进行匹配计算;通过这样的简单预处理, 避免后面进行匹配计算的开销。
具体的说,本发明所述的步骤4)中,将实现匹配的模式的标志位设置为“1”; 所述的步骤5)中,将所有模式均被置“1”的规则送入冲突集,等待选择执行。 所述的步骤7)中,执行链表中优先级最高的节点,并将新事实送入事实库中, 同时该节点被删除,该规则的标志位被置“1”,表示本次推理中,该规则将不 会再被执行,避免的冗余操作。
本发明的有益效果是:本发明推理方向为正向推理,采用的基于优先级和 链表的冲突集解决策略;优先级按照规则可信度进行设定,可信度越高则优先 级越高;大大减少了匹配运算和冲突集中计算的开销,提高了专家系统推理机 的执行效率。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是本发明规则浅层连接示意图;
图2是本发明推理过程示意图;
图3是本发明链表节点的基本结构;
图4是本发明冲突集的工作过程;
图5是本发明执行时间降低率曲线。
具体实施方式
现在结合附图和优选实施例对本发明作进一步详细的说明。这些附图均为 简化的示意图,仅以示意方式说明本发明的基本结构,因此其仅显示与本发明 有关的构成。
如图1所示,将具有相同模式结构的规则,建立浅层次的连接关系,将所 有规则的模式统一进行编号,例如i=1,2,…N.同时为每个模式设置标志位,初 始值为“0”;为每条规则设置标志位,初始值均为“0”;
推理详细过程如图2所示:
1、将初始事实放入内存的事实库中;
2、从事实库中逐一取出未用过的事实与所有模式先进行模式类型的判别, 事实类型与模式类型不同的,则跳过,不予匹配;模式类型相同的,则进行匹 配计算;
3、将实现匹配的模式的标志位置“1”;
4、通过扫描规则库,将所有模式均被置“1”的规则送入冲突集,等待选 择执行;冲突集中将待选的规则,按可信度的高低,建立链表。可信度高的规 则优先级就高,被置于链表前部,可信度低的规则,被至于链表的后部。
5、执行链表中优先级最高的节点,并将新事实送入事实库中,同时该节点 被删除,该规则的标志位被置“1”;
6、重复执行步骤2,直至输出目标结果,或者推理超时结束。
该推理方向为正向推理,采用的基于优先级和链表的冲突集解决策略。优 先级按照规则可信度进行设定,可信度越高则优先级越高。
并且从图1可以看出,当规则库中规则模式的结构相似度越高,则事实与 模式匹配的次数将会越低,而事实上,大部分规则库中的规则模式确实具有很 高的相似性。通过建立这样的浅层连接,既避免了Rete算法中大量深层次的连 接所带来的额外开销,又较好的实现了匹配次数的降低,降低了匹配开销。
链表中节点的基本结构如图3所示。
冲突集的工作过程如图4所示。
目前,很多投入商业运行的专家系统的推理机制采用Rete匹配算法或其某 方面的改进。为了验证新算法的在执行时间上有所提高,将新算法与标准Rete 匹配算法进行仿真,采用JProfiler平台对两种不同算法运行时间进行跟踪监 视,得到如图5所示的运行时间曲线。
横坐标表示规则数量,纵坐标表示执行时间降低率。
从图5可看出,当规则条数小于约400时,采用新算法的执行时间比标准 Rete执行时间要低,规则数越少,时间降低率越高。
因此,新算法特别适用于规则数目不多的小型专家系统,根据实际建立的 电机运行故障诊断专家系统的运行情况,也证明了这一点。
以上说明书中描述的只是本发明的具体实施方式,各种举例说明不对本发 明的实质内容构成限制,所属技术领域的普通技术人员在阅读了说明书后可以 对以前所述的具体实施方式做修改或变形,而不背离发明的实质和范围。
机译: 远程控制设备的冲突解决方法及冲突解决系统
机译: 远程控制设备的冲突解决方法及冲突解决系统
机译: 远程控制设备的冲突解决方法及冲突解决系统