专家系统

专家系统的基本组成

专家系统是人工智能在信息系统中的应用,它是一个智能计算机程序系统,其内部具有大量专家水平的某个领域知识与经验,能够利用人类专家的知识和解决问题的方法来解决该领域的问题。专家系统的主要功能取决于大量的知识。设计专家系统的关键是知识表达和知识运用。专家系统与一般计算机程序最本质的区别在于:专家系统所解决的问题一般没有算法解,并且往往是要在不完全、不精确或不确定的信息基础上做出结论。一般的专家系统包括数据库,知识库,推理机,解释器及知识获取五个部分组成,它的结构如图10-9所示。

../../_images/img_110.png

图10-9:专家系统结构图

1)知识库

知识库用于存取和管理所获取的专家知识和经验,供推理机利用,具有知识存储、检索、编辑、增删、修改和扩充功能。

2)数据库

用来存放系统推理过程中用到的控制信息,中间假设和中间结果。

3)推理机

用于利用知识进行推理,求解专门问题,具有启发推理、算法推理;正向、反向或双向推理;串行或并行推理等功能。

4)解释器

解释器用于作为专家系统与用户的“人——机”接口,其功能是向用户解释系统的行为,包括:

(4.1) 咨询理解:对用户咨询的提问进行“理解”,将用户输入的提问及有关事实、数据和条件、转换为推理机可接收的信息。

(4.2) 结论解释:向用户输出推理的结论或答案,并且根据用户需要对推理过程进行解释,给出结论的可信度估计。

5)知识获取器

知识获取是专家系统与专家的“界面”。知识库中的知识一般都是通过“人工移植”方法获得,“界面”就是知识工程师(专家系统的设计者),采用“专题面谈”,“口语记录分析”等方式获取知识,经过整理后,再输入知识库。为了提高知识工程师获得专家知识的效率,可以借助“知识获取辅助工具”来辅助专家整理知识或辅助扩充和修改数据库。近年来,开始机器学习、机器识别、半自动化等方法获取知识。

专家系统的知识处理

人工智能与专家系统

人工智能的目的是用计算机模拟人类,其中包括模拟人类的动作——机器人,模拟人类的视听能力——计算机视觉、听觉的模式识别,模拟人类语言——计算机自然语言,模拟人脑——电脑。在模拟人脑研究时,本来是想从幼儿开始,随着大脑的发育过程模拟人脑的,但是发现这样模拟难度太大了,转而研究领域专家的思维过程,因为领域专家能够阐述清楚知识与逻辑。随着专家系统工具软件的出现,许多领域展开了专家系统的研究,其中最成功的是国际象棋的专家系统。人工智能主要的目的是模拟人脑的功能,但是目前人们对人脑的思维过程并不十分清楚,因此人工智能的概念也不可能非常清楚。许多人工智能的研究只局限于形式逻辑的推导,凡是超出了形式逻辑范畴的,都被是认为无法解决的问题。现在理解的人工智能主要是指用计算机完成逻辑推理的过程。

知识表示

知识表示就是知识的形式化,就是研究用机器表示知识的可行的、有效的、通用的原则和方法。目前常用的知识表示方法有:产生式规则、语义网络法、框架表示法、与或图法,过程表示法、特征表示法、黑板结构、Petri网络法、神经网络等。其中效果最好的是产生式规则,其它表示方法单独使用的不多,大多是以产生式规则为主体增加和扩展语义、框架和程式式知识。

产生式规则使用“若……,则……。”语句(If…,Then)。“若”可以是一个条件,也可以是多个条件;“则”也可以是一个结论,也可以是多个结论。也称为正向式推理,有以下几种情况:

  1. 一对一:If (1), then (a)

  2. 一对多:If (1),then (a), (b),… (n)

  3. 多对一:If (1), (2), …,(m); then (a)

  4. 多对多:If (1), (2), …,(m); then (a),(b),…,(n)

If…,then 语句是从已知条件,推论结果的语句,反之,从结果推出条件称为后向式推理。同样有四种情况,一对一,一对多,多对一,多对多:

  1. 一对一:Conclusion (a);Need(1)

  2. 一对多:Conclusion (a);Need(1),(2),…,(m)

  3. 多对一:Conclusion (a),(b),…,(n);Need (1)

  4. 多对多:Conclusion (a),(b),…,(n);Need (1),(2),…,(m)

由此可见,产生式规则的正向式推理与逆向式推理都是在确定性问题中的处理方法。对于不确定性的问题,产生式规则不能解决问题,需要结合其它的表示方法。

知识推理

推理是指依据一定规则从已有的事实推出结论的过程。专家系统中的自动推理是知识推理,它是专家系统中问题求解的主要手段。

知识推理与知识表示有密切关系,根据知识表示的特点,知识推理方法可分为图搜索方法和逻辑论证方法两类。

图搜索方法

在专家系统的知识表示中,许多基本的、常用的表达方式都具有“图”的形式,或者可以变换为相应的图的形式,而且通常可以用与或图来进行表达。例如,状态空间图、与或图、语义网格图,以及由产生式规则或框架表示方法所转换的与或图或网络图。

基于图的知识表达,问题求解的知识推理过程,就是从图中相当于初始状态的出发节点到相当于目标状态的终止节点的路线搜索过程,即搜索从初始状态有效的转移到目标所经历的最优的或最经济的线路,相应的知识推理方法即图搜索方法。例如,对于具有树状的状态空间图,称为“问题树”,基本的图搜索方法有:宽度优先搜索、深度优先搜索法等。

逻辑论证方法

当知识表示采用谓词(Predicate)逻辑或其他形式逻辑方法时,知识推理也可以采取逻辑论证方法。在这种情况下,求解一个问题相应于证明一个定理或几个定理,问题求解的知识推理过程,相应于用数理逻辑方法进行定理证明的过程。知识推理方法即逻辑论证方法。例如,若用一组谓词逻辑表达式A描述有关的事实、情况或条件,而用另一组谓词逻辑表达式B描述问题的答案或结论,那么,只要通过逻辑演算方法论证定理A-B成立,也就相应论证了从有关事实、情况和条件出发,可以推出正确的答案或结论B。

根据问题求解的推理过程是否运用启发性知识,知识推理方法可分为启发推理和非启发推理两类。

启发推理

在问题求解的过程中,运用与问题有关的启发性知识,即解决问题的策略、技巧,对解的特性及其规律的估计等实践经验或知识,以加快推理过程,提高搜索效率,这种推理过程称为“启发式推理”。例如,在图搜索的推理方法中,利用启发性知识改进的深度优先搜索法,如局部择优搜索法,最好优先搜索法等,只需要对部分状态空间进行搜索,可提高搜索效率。

非启发推理

在问题求解的推理过程中,不运用启发性知识,只按照一般的逻辑法则和控制性知识,进行通用性的推理。这种方法缺乏对求解问题的针对性,需要进行全状态空间的搜索,而没有选择最优的搜索途径,大多搜索效率低。例如宽度优先搜索法,虽然是完备的算法,但其搜索效率低。

根据问题求解的推理过程中结论是否精确,知识推理方法可分为精确推理和不精确推理两类。

精确推理 精确推理是指在专家系统中,把特定领域的知识表示成必然的因果关系、逻辑关系,推理的结论是肯定的。这种推理是精确推理。

不精确推理 在人类知识中,有相当一类属于人们的主观判断,是不精确和含糊的。由这些知识归纳出来的推理规则也往往是不确定的,基于这种不确定的推理规则进行推理,形成结论,称为不精确推理。常用的不精确推理方法有概率论方法、可信度方法、模糊子集法和证据论方法。

根据问题求解过程中特殊和一般的关系,知识推理方法可分为演绎推理和归纳推理;根据求解推理过程中的推理的方向,知识推理方法可分为正向推理、反向推理和正反向混合推理三类。

空间分类专家系统实例——土地类型分类


空间分类是GIS和遥感信息系统最常用的功能,将空间单元归组分类是智能GIS的基本功能。传统的分类基于二值逻辑,认为区域分类界限是明显的,基本空间单元(矢量或栅格结构)属于且只属于一个空间类别。然而,事实上空间类别之间的界限通常是模糊的,是渐变的而不是突变的,所以在空间分类中引入模糊逻辑会提高分类的精度。另外空间分类也是一个基于人们对空间现象的认知和知识的心理判断过程,开发一个带有GIS的专家系统是很有必要的。

当然可以使用那些结构化的分类算法(程式式知识),但是这种方法往往是很机械,且不能有效地与用户进行关于分类的知识相互交流。专家系统的分类方法则更为灵活、智能,它不是一个算法,而是一个关于空间分类的抽象和空间数据如何分类的规则,可以在不修改任何程序的情况下在知识库里修改、删除、增加专家和非专家的判断,分类知识和规则。基于规则的专家分类系统往往具有传播知识和教育的成分。下面是一个基于遥感影象的土地类型专家分类系统实例。

数据采用4波段LANDSAT MSS影象数据,分类系统所采用的分类依据如图10-10所示:

../../_images/img_26.png

图10-10:土地利用分类

由于分类问题是一个数据驱动的过程,采用了正向推理方式。产生式规则是从领域专家获取的,如下表所示,存入知识库。

知识库存储的分类规则

rule r1
If(x1<8.0000,12.0000)
and (x4<5.0000,10.0000)
then pretype1 is water
Certainty is 1
rule r2
If ( x3>=8.0000,12.0000)
and (x4>=5.0000,10.0000 )
then pretype1 is land
rule r3
If ( pretype1 is water )
and (x1>20.0000,24.0000)
and (x2>13.0000,16.0000)
and (x3>5.0000,10.0000)
then type is turbid
Certainty is 1
rule r4
If ( pretype1 is water)
and ( x1<=20.0000,24.0000)
or (x2<13.0000,16.0000 )
or (x3<=5.0000,10.0000 )
then type is clear
Certainty is 1
rule r5
If ( pretype1 is land )
and (x1<17.0000,25.0000)
and (x2<13.0000,30.0000)
and (x3>27.0000,50.0000)
and (x4>30.0000,65.0000)
then type is vegetation
Certainty is 1
rule r6
If ( pretype1 is land)
and ( x1>=17.0000,25.0000)
or (x2>=13.0000,30.0000 )
or (x3<=27.0000,50.0000 )
or (x4<=30.0000,65.0000 )
then pretype2 is non-vegetation
Certainty is 1
rule r7
If ( pretype2 is non-vegetation )
and (x1>27.0000,39.0000)
and (x2<26.0000,52.0000)
and (x3>26.0000,49.0000)
and (x4>21.0000,41.0000)
then type is barren
Certainty is 1
rule r8
If ( pretype2 is non-vegetation)
and ( x1<20.0000,30.0000)
and (x2<20.0000,30.0000)
and (x3>20.0000,35.0000)
and (x4>15.0000,25.0000)
then type is urban_or_other
Certainty is 1

根据专家的经验,不能武断的使用一个波段数值作为分类的界限,为反映光谱反射的渐变性,使用了模糊逻辑方法表示推理规则。以规则r1为例,在划分水域时不是只取波段3(x3)的一个数值5和波段4(x4)中的一个数值8作为分类依据,而是用了模糊集的方法允许渐变特征。模糊集表示如图10-11。

../../_images/img_37.png

图10-11:模糊集

由于专家对分类规则非常确定,所以确定性因子为1。若确定性水平的不同,确定性因子可在[0,1]范围内取值。

分类的结果通过地理信息系统进行显示,当分类结果精确时,系统会自动显示分类结果。当分类结果存在误差时,混合象元同时被标识和显示,同时土地类型渐变造成的模糊边界也可显示,模糊边界的宽度在土地类型混杂的地方用不同的阀值控制。