CLIPS专家系统性能改进

来源 :哈尔滨工业大学 | 被引量 : 0次 | 上传用户:tanmh
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
众所周知,为了达到良好的预测效果,一个必须的条件是大量的知识。我们可以使用人工输入、机器学习等方法来获得大量的知识,这些知识大都表示为if-then的形式。随着规则引擎系统中知识的不断增加,系统运行的速度也会大幅度的下降。这是因为,规则越多,将规则与当前事实匹配所花费的时间也就越多。同理,事实越多,匹配所花费的时间也越多。CLIPS专家系统是一款开源的规则推理引擎,它采用了RETE模式匹配算法。RETE算法通过空间换时间的方式来提高效率。该算法记录了所有匹配的中间结果,每次插入、删除或者修改工作内存中的事实对象都要对相关的部分匹配进行更新并在网络中传播。由于保存了大量的中间结果,在删除或者修改时都需要将旧的事实插入到网络中传播并与之前的部分匹配进行比较,删除掉相同部分,接着再插入新的事实并在网络中传播。这种方式导致该算法对处理大规模知识库有一定负面的影响。本文针对CLIPS这一不足,在事实处理过程阶段分别采用TREAT算法、记录中间节点、对中间节点进行散列、增加规则分组的特性等方法进行改进。TREAT算法削减了beta存储区,当事实通过模式匹配生成部分匹配保存在alpha存储区之后直接更新冲突集。由于TREAT算法降低了网络的复杂程度,每次插入、删除或者修改时对网络的维护时间会有所减少,但测试结果表明TREAT算法的效率不如原有算法。本文认为是算法实现方式和测试用例选择不当造成的。记录中间节点可以减少删除时对中间结果的匹配和在网络中的传输。对中间节点进行散列即在原CLIPS对节点元素进行散列的基础上增加对alpha存储节点、模式节点的散列。该方法可以减少匹配及传播过程中对中间节点查找、比较和复制的时间开销。为CLIPS增加了规则分组的特性就可以相对减少每个规则集中的规则数,从而在一定程度上提高CLIPS性能。实验结果表明,对原CLIPS算法实现方式的改进使性能有所提升。
其他文献
学位
网络与通信技术的迅速发展,使得结构复杂的网络环境和灵活多样的业务应用对网络管理的依赖性日益增强,同时也对网络管理系统在自动化、智能化及快速反应和动作协作等方面的能
近年来Linux系统在服务器领域的占有率一路攀升,尤其是在云计算领域。但是由于源代码开放,Linux面临着日趋严峻的安全挑战。Linux环境下的内核级Rootkit类型木马拥有与操作系统
RFID (Radio Frequency Identification)射频识别技术,是采用无线射频方式进行非接触通讯,自动识别物品并获取数据的一种快速识别技术,已在各个领域得到广泛应用。基于RFID技
PC机是以其低廉的价格、灵活的架构、不错的性能被人们广泛地应用在各行各业中。近十几年来,PC机性能飞速发展。但是PC机重要的存储部件——硬盘的性能发展速度缓慢。而人们
无线射频识别(Radio Frequency Identification,RFID)技术的快速多样化发展对传统RFID应用的适应性、灵活性及可维护性提出了挑战,导致了RFID中间件的出现。RFID中间件为应用提
P2P网络中的节点既是服务的提供者也是消费者。由于P2P网络大多排斥集中的CA,没有权威机构来规定节点的交易规则,使得网络中的节点经常是在未知环境下进行交易的,一些节点可
随着信息技术的发展和计算机的广泛应用,如何保证和提高软件质量成为软件工程最为关心的问题之一,以软件测试为中心的软件质量保障技术在软件生产实践中得到了迅速的发展。但
如今对于标准编码文字的检索已非常成熟,其应用几乎无处不在。如果能用与检索标准编码文字相类似的方法来实现对以计算机文件形式存储的手写文档的查询和检索的话,则能够大大
数据挖掘是目前信息领域和数据库技术的前沿研究课题,被公认为是最具发展前景的关键技术之一。数据挖掘涉及到统计学、人工智能(特别是机器学习)、模糊理论和数据库技术等多