配色: 字号:
漫话专家系统及其应用(1)
2024-05-13 | 阅:  转:  |  分享 
  
漫话专家系统及其应用(1)

胡经国



一、专家系统概述

专家系统(Expert System)是一个智能计算机程序系统,其内部含有大量的某个领域专家水平的知识与经验;它能够应用人工智能技术和计算机技术,根据系统中的专家水平的知识与经验,进行推理和判断,模拟人类专家的决策过程,以便解决那些需要人类专家处理的复杂问题;简而言之,专家系统是一种模拟人类专家解决某个领域问题的计算机程序系统。

二、专家系统简介

专家系统是早期人工智能的一个重要分支;是人工智能中最重要的也是最活跃的一个应用领域。它实现了人工智能“从理论研究走向实际应用”、“从一般推理策略探讨转向运用专门知识”的重大突破。它可以看作是一类“具有专门知识和经验”的计算机智能程序系统。它一般采用人工智能中的“知识表示和知识推理技术”来模拟通常由某个领域专家才能解决的复杂问题。

三、专家系统起源与演进

1、专家系统起源与演进概况

20世纪60年代初,出现了“运用逻辑学和模拟心理活动”的一些“通用问题求解程序”;它们可以“证明定理”和“进行逻辑推理。但是,这些通用方法无法解决大的实际问题,很难把实际问题改造成为适合于计算机解决的形式;并且对于解题所需的巨大的搜索空间也难于处理。

1965年,E.A.费根鲍姆等人,在总结“通用问题求解系统”的成功与失败经验的基础上,结合化学领域的专门知识,研制了世界上第一个专家系统(Dendral),可以推断化学分子结构。

20多年来,随着知识工程的研究不断发展,专家系统的理论和技术不断发展;其应用渗透到几乎各个领域,包括化学、数学、物理、生物、医学、农业、气象、地质勘探、军事、工程技术、法律、商业、空间技术、自动控制、计算机设计和制造等众多领域;开发了几千个专家系统,其中不少在功能上已达到,甚至超过同领域中人类专家的水平;并且在实际应用中产生了巨大的经济效益。

2、专家系统演进阶段

专家系统的发展已经历了3个阶段,正向第四代过渡和发展。

⑴、第一代专家系统

第一代专家系统(Dendral、Macsyma等),以高度专业化、求解专门问题的能力强为特点。但是,在体系结构的完整性、可移植性、系统的透明性和灵活性等方面存在缺陷,求解问题的能力弱。

⑵、第二代专家系统

第二代专家系统(Mycin、Casnet、Prospector、Hearsay等),属于单学科专业型、应用型系统;其体系结构较完整,移植性方面也有所改善,而且在系统的人机接口、解释机制、知识获取技术、不确定推理技术、增强专家系统的知识表示和推理方法的启发性、通用性等方面都有所改进。

⑶、第三代专家系统

第三代专家系统,属于多学科综合型系统;采用多种人工智能语言,综合采用各种知识表示方法和多种推理机制及控制策略,并且开始运用各种知识工程语言、骨架系统及专家系统开发工具和环境来研制大型综合专家系统。

⑷、第四代专家系统

在总结前三代专家系统的设计方法和实现技术的基础上,已开始采用大型多专家协作系统、多种知识表示、综合知识库、自组织解题机制、多学科协同解题与并行推理、专家系统工具与环境、人工神经网络知识获取及学习机制等最新人工智能技术,从而实现具有“多知识库、多主体”的第四代专家系统。

四、专家系统组成

1、专家系统构造

⑴、体系结构

专家系统通常由人机交互界面、知识库、推理机、解释器、综合数据库、知识获取等6个部分构成。其中,尤以“知识库”与“推理机”相互分离而别具特色。专家系统的体系结构随专家系统的类型、功能和规模的不同,而有所差异。

专家系统的基本结构如下图(图源:网络)所示,其中箭头方向为数据流动方向。







⑵、知识表示方式

为了使计算机能运用专家的领域知识,必须要采用一定的方式“表示知识”。目前,常用的“知识表示方式”有:产生式规则、语义网络、框架、状态空间、逻辑模式、脚本、过程、面向对象等。

基于“规则的产生式系统”,是目前实现知识运用最基本的方法。“产生式系统”由综合数据库、知识库和推理机3个主要部分组成。其中:

综合数据库,包含求解问题的世界范围内的事实和断言。

知识库,包含所有用“如果〈前提〉,于是〈结果〉”形式表达的知识规则。

而推理机(又称为规则解释器)的任务则是运用控制策略找到可以应用的规则。

⑶、知识库

知识库用来存放专家提供的知识。由于专家系统的问题求解过程是通过知识库中的知识来模拟专家的思维方式的,因而知识库是专家系统质量是否优越的关键所在,即知识库中知识的质量和数量决定着专家系统的质量水平。一般来说,在专家系统中的知识库与专家系统程序是相互独立的,用户可以通过改变、完善知识库中的知识内容来提高专家系统的性能。

人工智能中的“知识表示形式”有:产生式、框架、语义网络等;而在专家系统中运用得较为普遍的知识是“产生式规则”。产生式规则以“IF…THEN…”(如果…那么…)的形式出现,就像BASIC等编程语言里的条件语句一样:在IF后面跟的是条件(前件),在THEN后面的是结论(后件);条件与结论均可以通过逻辑运算AND、OR、NOT进行复合。在这里,“产生式规则”的理解非常简单:如果前提条件得到满足,那么就产生相应的动作或结论。

⑷、推理机

推理机针对当前问题的条件或已知信息,反复匹配知识库中的规则,获得新的结论,从而得到问题求解结果。在这里,“推理方式”可以有“正向和反向推理”两种。

①、正向链策略(正向推理)

正向链策略,是寻找出前提可以同数据库中的事实或断言相匹配的那些规则,并且运用冲突的消除策略,从这些都可满足的规则中挑选出一个执行,从而改变原来数据库的内容。这样反复地进行寻找,直到数据库的事实与目标一致即找到解答;或者到没有规则可以与之匹配时才停止。

②、逆向链策略(反向推理)

逆向链策略,是从选定的目标出发,寻找执行后果可以达到目标的规则;如果这条规则的前提与数据库中的事实相匹配,那么问题就得到解决;否则把这条规则的前提作为新的子目标,并且对于新的子目标寻找可以运用的规则,执行逆向序列的前提,直到最后运用的规则的前提可以与数据库中的事实相匹配,或者直到没有规则再可以应用时,系统便以对话形式请求用户回答并且输入必需的事实。

由此可见,推理机就如同专家解决问题的思维方式,知识库是通过推理机来实现其价值的。

⑸、其它组成部分

①、人机交互界面

人机交互界面,是系统与用户进行交流时的界面。通过该界面,用户输入基本信息、回答系统提出的相关问题,并且输出推理结果及相关的解释等。

②、综合数据库

综合数据库,专门用于存储推理过程中所需的原始数据、中间结果和最终结论,往往是作为暂时的存储区。

③、解释器

解释器,能够根据用户的提问,对结论、求解过程做出说明。它使专家系统更加具有人情味。

④、知识获取

知识获取,是专家系统知识库是否优越的关键,也是专家系统设计的“瓶颈”问题。通过知识获取,可以扩充和修改知识库中的内容,也可以实现自动学习功能。

⑹、实现方式

早期的专家系统,采用通用的程序设计语言(如Fortran、Pascal、Basic等)和人工智能语言(如Lisp、Prolog、Smalltalk等),通过人工智能专家与领域专家的合作,直接编程来实现的。其研制周期长、难度大,但是灵活实用,至今尚为人工智能专家所使用。

大部分专家系统研制工作,已采用“专家系统开发环境”或“专家系统开发工具”来实现;领域专家可以选用合适的工具开发自己的专家系统,大大缩短了专家系统的研制周期;从而为专家系统在各领域的广泛应用提供了条件。

(未完待续)











4







献花(0)
+1
(本文系现代科普图...原创)