专家系统是具备某种专业领域知识并根据知识推理出正确结论的系统,主要有以下特征:编辑器
1)能够经过某特殊领域专家的帮助获取相关的知识。ide
2)知识库具备很强的可维护性学习
3)利用现有知识推理出有用的结论(不必定准确,视应用场合而定)并具有必定的学习能力spa
知识库经过何种形式去学习(主动or被动),知识如何表达决定了专家系统的成败,目前的专家系统主要有3类:基于规则,基于模型,基于案例(也可混合使用)接口
基于规则的专家系统是将大量复杂的“if 。。。else。。。”做为知识表现的形式,它通常由知识库,推理引擎,规则编辑器,用户接口组成。常见的应用场合每每是在企业级系统当中(一般就是BRMS),这其中又主要以电信,金融为主,拿金融领域来讲,典型的应用就是信用卡,保险的智能审批,银行我的信用评估等等,这类应用的特色是业务逻辑复杂,能够根据业务需求或商业分析由业务专家变动规则,只要有正确的知识库,那么绝大多数状况下咱们能够获得想要的结论。drools是jboss的开源BRMS,功能强大,商业BRMS公司有ilog(已被IBM收购),fair isaac这家公司目前刚刚进驻中国,不过来头不小,客户包括Fortune 500(财富 500 强)前 10 名中的 9 家企业。sandia国家实验室的 jess是基于规则的推理引擎,若是你想所见即所得,just do it youself开发
基于模型,案例,why,难道一大堆if else不够吗?首先咱们应该明确一点,所谓知识的表示并不单单只是一堆谓词演算,每一个人在大脑中推理结论的时候须要作的不单单是搜索出一堆规则而后获得结论而已,咱们还须要经验,回忆相似状况发生时某种处理方式的成功率,或者咱们须要某种直觉,又或者咱们须要参考特定的上下文,这些东西已经超出了规则所能表现的范畴,因而模型,案例出现了,基于模型的应用最著名的应该是NASA的智能太空探测器,将物理模型转化为数据模型来帮助系统做出正确的决策,而基于案例嘛,想一想人机对弈,好比samuel不败的西洋跳棋,基于案例的专家系统具有了很强的学习能力。能够想象到,以上的例子若是仅仅使用规则是很难实现的。it
专家系统是否具备足够丰富的知识,这是专家系统分析问题能力的关键,也是开发中必须注意的重点。 class