✅ 操作成功!

人工智能学派

发布时间:2023-06-09 作者:admin 来源:文学

人工智能学派

人工智能学派

-

2023年2月27日发(作者:vesda)

1

《人工智能》课程教案

第一章绪论

教学内容:本章首先介绍人工智能的定义、发展概况及相关学派和他们的认知观,接着

讨论人工智能的研究和应用领域,最后简介本书的主要内容和编排。

教学重点:1.从不同科学或学科出发对人工智能进行的定义;

2.介绍人工智能的起源与发展过程;

3.讨论人工智能与人类智能的关系;

4.简介目前人工智能的主要学派;

5.简介人工智能所研究的范围与应用领域。

教学难点:1.怎么样理解人工智能;

2.人工智能作为一门学科有什么意义;

3.人工智能的主要学派与其争论焦点;

教学方法:课堂教学为主,充分利用网络课程中的多媒体素材来表示抽象概念。

教学要求:重点掌握人工智能的几种定义,掌握目前人工智能的三个主要学派及对人工

智能的理解,一般了解人工智能的主要研究范围和应用领域。

1。1人工智能的定义与发展

教学内容:本小节主要介绍目前对人工智能的几种定义,并对人工智能的起源和发展进

行了总结和分析。

教学重点:几种人工智能的定义和人工智能发展的几个重要时期。

教学难点:理解人工智能的定义与本质。

教学方法:课堂讲授为主.

教学要求:从学科和能力的角度深刻理解人工智能的定义,初步了解人工智能的起源及

其发展过程。

1。1.1人工智能的定义

定义1智能机器

能够在各类环境中自主地或交互地执行各种拟人任务(anthropomorphictasks)的机器.

定义2人工智能(学科)

人工智能(学科)是计算机科学中涉及研究、设计和应用智能机器的一个分支。它的近

期主要目标在于研究用机器来模仿和执行人脑的某些智力功能,并开发相关理论和技术.

定义3人工智能(能力)

人工智能(能力)是智能机器所执行的通常与人类智能有关的智能行为,如判断、推理、

证明、识别、感知、理解、通信、设计、思考、规划、学习和问题求解等思维活动.

2

为了让读者对人工智能的定义进行讨论,以便更深刻地理解人工智能,下面综述其它几

种关于人工智能的定义。

定义4人工智能是一种使计算机能够思维,使机器具有智力的激动人心的新尝试

(Haugeland,1985)。

定义5人工智能是那些与人的思维、决策、问题求解和学习等有关活动的自动化

(Bellman,1978)。

定义6人工智能是用计算模型研究智力行为(Charniak和McDermott,1985)。

定义7人工智能是研究那些使理解、推理和行为成为可能的计算(Winston,1992)。

定义8人工智能是一种能够执行需要人的智能的创造性机器的技术(Kurzwell,1990)。

定义9人工智能研究如何使计算机做事让人过得更好(Rick和Knight,1991)。

定义10人工智能是一门通过计算过程力图理解和模仿智能行为的学科

(Schalkoff,1990)。

定义11人工智能是计算机科学中与智能行为的自动化有关的一个分支(Luger和

Stubblefield,1993).

其中,定义4和定义5涉及拟人思维;定义6和定义7与理性思维有关;定义8和定义

9涉及拟人行为;定义10和定义11与拟人理性行为有关。

1。1。2人工智能的起源与发展

人工智能的发展是以硬件与软件为基础的,经历了漫长的发展历程。特别是20世纪30

年代和40年代的智能界,发现了两件重要的事情:数理逻辑和关于计算的新思想。以维纳

(Wiener)、弗雷治、罗素等为代表对发展数理逻辑学科的贡献及丘奇(Church)、图灵和其它

一些人关于计算本质的思想,为人工智能的形成产生了重要影响.

1956年夏季,人类历史上第一次人工智能研讨会在美国的达特茅斯(Dartmouth)大学举

行,标志着人工智能学科的诞生。

1969年召开了第一届国际人工智能联合会议(InternationalJointConferenceonAI,

IJCAI),此后每两年召开一次。

1970年《人工智能》国际杂志(InternationalJournalofAI)创刊.这些对开展人工智能国

际学术活动和交流、促进人工智能的研究和发展起到积极作用.

20世纪70~80年代,知识工程的提出与专家系统的成功应用,确定

了知识在人工智能中的地位。

近十多年来,机器学习、计算智能、人工神经网络等和行为主义的研

究深入开展,形成高潮.同时,不同人工智能学派间的争论也非常热烈。

这些都推动人工智能研究的进一步发展。

1。2人类智能与人工智能

教学内容:本节主要讨论人类智能与人工智能的关系问题。

教学重点:智能信息处理系统,人类智能与人工智能的关系。

教学难点:智能信息处理系统的假设。

教学方法:课堂讲授为主。

教学要求:了解人类认知活动与计算机的比较关系,基本了解智能信息处理系统。

提问:为什

么人工智能

在1956年才

正式诞生?

3

1。2。1智能处理信息系统的假设

1、符号处理系统的六种基本功能

信息处理系统又叫符号操作系统(SymbolOperationSystem)或物理符号系统(Physical

SymbolSystem)。所谓符号就是模式(pattern)。

一个完善的符号系统应具有下列6种基本功能:

(1)输入符号(input);

(2)输出符号(output);

(3)存储符号(store);

(4)复制符号(copy);

(5)建立符号结构:通过找出各符号间的关系,在符号系统中形成符号结构;

(6)条件性迁移(conditionaltransfer):根据已有符号,继续完成活动过程。

2、可以把人看成一个智能信息处理系统

如果一个物理符号系统具有上述全部6种功能,能够完成这个全过程,那么它就是一个

完整的物理符号系统。人具有上述6种功能;现代计算机也具备物理符号系统的这6种功能.

3、理符号系统的假设

任何一个系统,如果它能表现出智能,那么它就必定能够执行上述6种功能。反之,任

何系统如果具有这6种功能,那么它就能够表现出智能;这种智能指的是人类所具有的那种

智能.把这个假设称为物理符号系统的假设。

4、物理符号系统3个推论

推论一既然人具有智能,那么他(她)就一定是个物理符号系统.

人之所以能够表现出智能,就是基于他的信息处理过程.

推论二既然计算机是一个物理符号系统,它就一定能够表现出

智能。这是人工智能的基本条件。

推论三既然人是一个物理符号系统,计算机也是一个物理符号

系统,那么就能够用计算机来模拟人的活动.

4、人类的认知行为具有不同的层次

认知生理学研究认知行为的生理过程,主要研究人的神经系统(神经元、中枢神经系

统和大脑)的活动,是认知科学研究的底层.

认知心理学研究认知行为的心理活动,主要研究人的思维策略,是认知科学研究的顶

层.

认知信息学研究人的认知行为在人体内的初级信息处理,主要研究人的认知行为如何

通过初级信息自然处理,由生理活动变为心理活动及其逆过程,即由心理活动变为生理行为。

这是认知活动的中间层,承上启下.

认知工程学研究认知行为的信息加工处理,主要研究如何通过以计算机为中心的人工

信息处理系统,对人的各种认知行为(如知觉、思维、记忆、语言、学习、理解、推理、识别

等)进行信息处理.这是研究认知科学和认知行为的工具,应成为现代认知心理学和现代认知

生理学的重要研究手段.

1.2.2人类智能的计算机模拟

1、机器智能可以模拟人类智能

提问:为什么

能够把人看做

一个物理符号

系统?

4

物理符号系统假设的推论一告诉人们,人有智能,所以他是一个物理符号系统;推论三指

出,可以编写出计算机程序去模拟人类的思维活动。这就是说,人和计算机这两个物理符号

系统所使用的物理符号是相同的,因而计算机可以模拟人类的智能活动过程。

2、智能计算机的功能

如下棋、证明定理、翻译语言文字和解决难题等。神经计算机

(neuralcomputer)能够以类似人类的方式进行“思考”,它力图重建人

脑的形象。一些国家对量子计算机的研究也已起步,希望通过对量子

计算(quantumcomputing)的研究,产生量子计算机。

1。3人工智能的学派

教学内容:本节主要介绍人工智能的几个主要学派及认知观。

教学重点:符号主义(Symbolicism),联结主义(Connectionism),行为主义(Actionism).

教学难点:各学派的对人工智能的不同观点。

教学方法:课堂讲授为主。

教学要求:了解各派别之间的关系及对人工智能发展历史的看法。

1、人工智能三大学派

·符号主义(Symbolicism),又称为逻辑主义(Logicism)、心理学派(Psychlogism)或计

算机学派(Computerism),其原理主要为物理符号系统(即符号操作系统)假设和有限合理性

原理.

·联结主义(Connectionism),又称为仿生学派(Bionicsism)或生理学派(Physiologism),

其原理主要为神经网络及神经网络间的连接机制与学习算法.

·行为主义(Actionism),又称进化主义(Evolutionism)或控制论学派(Cyberneticsism),

其原理为控制论及感知-动作型控制系统。

2、三大学派对人工智能发展历史的不同看法

符号主义认为人工智能源于数理逻辑。符号主义仍然是人工智能的主流派。这个学派

的代表有纽厄尔、肖、西蒙和尼尔逊(Nilsson)等.

联结主义认为人工智能源于仿生学,特别是人脑模型的研究。

行为主义认为人工智能源于控制论。这一学派的代表作首推布鲁克斯(Brooks)的六足

行走机器人,它被看做新一代的“控制论动物”,是一个基于感知-动作模式的模拟昆虫行为

的控制系统。

1。4人工智能的研究与应用领域

教学内容:本节主要讨论人工智能的研究与应用领域.

教学重点:人工智能的一些主要研究与应用领域。

教学难点:处理好各领域间的交叉关系。

教学方法:课堂讲授为主。

教学要求:初步了解人工智能的研究与应用领域。

讨论:为什么

能够用电脑模

拟人脑智能?

5

1。4.1问题求解

人工智能的第一个大成就是发展了能够求解难题的下棋(如国际象棋)程序,它包含问

题的表示、分解、搜索与归约等。

1。4.2逻辑推理与定理证明

逻辑推理是人工智能研究中最持久的子领域之一,特别重要的是要找到一些方法,只把

注意力集中在一个大型数据库中的有关事实上,留意可信的证明,并在出现新信息时适时修

正这些证明.

定理证明的研究在人工智能方法的发展中曾经产生过重要的影响。例如,采用谓词逻辑

语言的演绎过程的形式化有助于更清楚地理解推理的某些子命题。许多非形式的工作,包括

医疗诊断和信息检索都可以和定理证明问题一样加以形式化.因此,在人工智能方法的研究

中定理证明是一个极其重要的论题.

我国人工智能大师吴文俊院士提出并实现了几何定理机器证明的方法,被国际上承认为

“吴氏方法”,是定理证明的又一标志性成果.

1。4。3自然语言理解

语言处理也是人工智能的早期研究领域之一,并引起了进一步的重视.语言的生成和理

解是一个极为复杂的编码和解码问题。

一个能理解自然语言信息的计算机系统看起来就像一个人一样需要有上下文知识以及

根据这些上下文知识和信息用信息发生器进行推理的过程。理解口头的和书写语言的计算机

系统所取得的某些进展,其基础就是有关表示上下文知识结构的某些人工智能思想以及根据

这些知识进行推理的某些技术.

1。4。4自动程序设计

对自动程序设计的研究不仅可以促进半自动软件开发系统的发展,而且也使通过修正自

身数码进行学习(即修正它们的性能)的人工智能系统得到发展.程序理论方面的有关研究工

作对人工智能的所有研究工作都是很重要的。

自动程序设计研究的重大贡献之一是作为问题求解策略的调整概念。已经发现,对程序

设计或机器人控制问题,先产生一个不费事的有错误的解,然后再修改它(使它正确工作),

这种做法一般要比坚持要求第一个解就完全没有缺陷的做法有效得多。

1.4.5专家系统

一般地说,专家系统是一个智能计算机程序系统,其内部具有大量专家水平的某个领域

知识与经验,能够利用人类专家的知识和解决问题的方法来解决该领域的问题.

发展专家系统的关键是表达和运用专家知识,即来自人类专家的并已被证明对解决有关

领域内的典型问题是有用的事实和过程。

6

1。4.6机器学习

学习是人类智能的主要标志和获得知识的基本手段;机器学习(自动获取新的事实及新

的推理算法)是使计算机具有智能的根本途径;机器学习还有助于发现人类学习的机理和揭

示人脑的奥秘。学习是一个有特定目的的知识获取过程,其内部表现为新知识结构的不断建

立和修改,而外部表现为性能的改善.

1。4。7神经网络

神经网络处理直觉和形象思维信息具有比传统处理方式好得多的效果。

神经网络已在模式识别、图象处理、组合优化、自动控制、信息处理、机器人学和人工

智能的其它领域获得日益广泛的应用.

1.4。8机器人学

人工智能研究日益受到重视的另一个分支是机器人学,其中包括对操作机器人装置程序

的研究。这个领域所研究的问题,从机器人手臂的最佳移动到实现机器人目标的动作序列的

规划方法,无所不包。目前已经建立了一些比较复杂的机器人系统.

机器人和机器人学的研究促进了许多人工智能思想的发展.

智能机器人的研究和应用体现出广泛的学科交叉,涉及众多的课题,机器人已在各领域

获得越来越普遍的应用.

1。4。9模式识别

人工智能所研究的模式识别是指用计算机代替人类或帮助人类感知模式,是对人类感知

外界功能的模拟,研究的是计算机模式识别系统,也就是使一个计算机系统具有模拟人类通

过感官接受外界信息、识别和理解周围环境的感知能力。

1.4。10机器视觉

实验表明,人类接受外界信息的80%以上来自视觉,视觉对人类是非常重要的。

机器视觉或计算机视觉已从模式识别的一个研究领域发展为一门独立的学科;在视觉方

面,已经给计算机系统装上电视输入装置以便能够“看见”周围的东西.

机器视觉的前沿研究领域包括实时并行处理、主动式定性视觉、动态和时变视觉、三维

景物的建模与识别、实时图像压缩传输和复原、多光谱和彩色图像的处理与解释等。

1.4。11智能控制

人工智能的发展促进自动控制向智能控制发展。智能控制是一类无需(或需要尽可能少

的)人的干预就能够独立地驱动智能机器实现其目标的自动控制。

7

智能控制是同时具有以知识表示的非数学广义世界模型和数学公式模型表示的混合控

制过程,也往往是含有复杂性、不完全性、模糊性或不确定性以及不存在已知算法的非数学

过程,并以知识进行推理,以启发来引导求解过程。

1.4。12智能检索

随着科学技术的迅速发展,出现了“知识爆炸”的情况,研究智能检索系统已成为科技

持续快速发展的重要保证。

智能信息检索系统的设计者们将面临以下几个问题。首先,建立一个能够理解以自然语

言陈述的询问系统本身就存在不少问题.其次,即使能够通过规定某些机器能够理解的形式

化询问语句来回避语言理解问题,但仍然存在一个如何根据存储的事实演绎出答案的问题。

第三,理解询问和演绎答案所需要的知识都可能超出该学科领域数据库所表示的知识。

1。4。13智能调度与指挥

确定最佳调度或组合的问题是人们感兴趣的又一类问题,求解这类问题的程序会产生一

种组合爆炸的可能性,这时,即使是大型计算机的容量也会被用光.

人工智能学家们曾经研究过若干组合问题的求解方法。他们的努力集中在使“时间-问

题大小”曲线的变化尽可能缓慢地增长,即使是必须按指数方式增长.有关问题域的知识再次

成为比较有效的求解方法的关键。为处理组合问题而发展起来的许多方法对其它组合上不甚

严重的问题也是有用的。

1。4.14分布式人工智能与Agent

分布式人工智能(DistributedAI,DAI)是分布式计算与人工智能结合的结果。DAI系

统以鲁棒性作为控制系统质量的标准,并具有互操作性,即不同的异构系统在快速变化的环

境中具有交换信息和协同工作的能力。分布式人工智能的研究目标是要创建一种能够描述自

然系统和社会系统的精确概念模型。

多agent系统(MultiagentSystem,MAS)更能体现人类的社会智能,具有更大的灵

活性和适应性,更适合开放和动态的世界环境,因而倍受重视,已成为人工智能以至计算机科

学和控制科学与工程的研究热点.

1。4.15计算智能与进化计算

计算智能(ComputingIntelligence)涉及神经计算、模糊计算、进化计算等研究领域。

进化计算(EvolutionaryComputation)是指一类以达尔文进化论为依据来设计、控制和

优化人工系统的技术和方法的总称,它包括遗传算法(GeneticAlgorithms)、进化策略

(EvolutionaryStrategies)和进化规划(EvolutionaryProgramming).

8

1。4。16数据挖掘与知识发现

知识获取是知识信息处理的关键问题之一.

数据挖掘是通过综合运用统计学、粗糙集、模糊数学、机器学习和专家系统等多种学习

手段和方法,从大量的数据中提炼出抽象的知识,从而揭示出蕴涵在这些数据背后的客观世

界的内在联系和本质规律,实现知识的自动获取。

数据挖掘和知识发现技术已获广泛应用。

1。4。17人工生命

人工生命(ArtificialLife,ALife)旨在用计算机和精密机械等人工媒介生成或构造出能

够表现自然生命系统行为特征的仿真系统或模型系统。自然生命系统行为具有自组织、自复

制、自修复等特征以及形成这些特征的混沌动力学、进化和环境适应。

人工生命所研究的人造系统能够演示具有自然生命系统特征的行为,在“生命之所能”

(lifeasitcouldbe)的广阔范围内深入研究“生命之所知"(lifeasweknowit)的实质。

人工生命学科的研究内容包括生命现象的仿生系统、人工建模与仿真、进化动力学、人

工生命的计算理论、进化与学习综合系统以及人工生命的应用等。

1。4.18系统与语言工具

除了直接瞄准实现智能的研究工作外,开发新的方法也往往是人工智能研究的一个重要

方面。人工智能对计算机界的某些最大贡献已经以派生的形式表现出来。计算机系统的一些

概念,如分时系统、编目处理系统和交互调试系统等,已经在人工智能研究中得到发展.

1.5本书概要

本书包括下列内容:

1、简述人工智能的起源与发展,讨论人工智能的定义、人工智能与计算机的关系以及

人工智能的研究和应用领域。

2、比较概括地论述知识表示的各种主要方法,包括状态空间法、问题归约法、谓词逻辑

法、结构化表示法(语义网络法、框架)、剧本和过程等。

3、讨论常用搜索原理,如盲目搜索、启发式搜索和消解原理等;并研究一些比较高级

的推理求解技术,如规则演绎系统、专家系统、系统组织技术、不确定性推理和非单调推理

等。

4、介绍近期发展起来的已成为当前研究热点的人工智能技术和方法,即分布式人工智

能与agent、计算智能(含神经计算、逻辑计算与进化计算)、数据挖掘与知识发现、人工生

命等。

5、比较详细地分析人工智能的主要应用领域,涉及专家系统、机器学习、自动规划系

统和自然语言理解等。

6、叙述近年来人工智能研究中出现的争论,展望人工智能的发展。

9

1.6辩论会

主题:人工智能能否超过人类智能?

正方观点:人工智能不会超过人类智能.

反方观点:人工智能能够超过人类智能。

10

第二章知识表示方法

教学内容:本章讨论知识表示的各种方法,是人工智能课程三大内容(知识表示、知识

推理、知识应用)之一,也是学习人工智能其他内容的基础。

教学重点:状态空间法、问题归约法、谓词逻辑法、语义网络法.

教学难点:状态描述与状态空间图示、问题归约机制、置换与合一.

教学方法:课堂教学为主,同时结合《离散数学》等已学的内容实时提问、收集学生学

习情况,充分利用网络课程中的多媒体素材来表示抽象概念.

教学要求:重点掌握用状态空间法、问题归约法、谓词演算法、语义网络法来描述问题;

解决问题;掌握几种主要方法之间的差别;并对其它几种表示方法有一般了解。

2。1状态空间法

教学内容:本节是通过状态空间法来求解问题,它是以状态和算符(operator)为基础来表

示和求解问题的。

教学重点:问题的状态描述,操作符。

教学难点:选择一个好的状态描述与状态空间表示方案。

教学方法:以课堂教学为主;充分利用网络课程中的多媒体素材来阐述抽象概念。

教学要求:重点掌握对某个问题的状态空间描述,学会组织状态空间图,用搜索图来求

解问题.

2。1.1问题状态描述

1、状态(State)的基本概念

状态(state)是为描述某类不同事物间的差别而引入的一组最少变量q

0

,q

1

,…,q

n

有序集合,其矢量形式如下:

Q=[q

0

,q

1

,…,q

n

]T(2.1)

式中每个元素q

i

(i=0,1,…,n)为集合的分量,称为状态

变量.给定每个分量的一组值就得到一个具体的状态,如

Q

k

=[q0k

,q

1k

,…,q

nk

]T(2。2)

算符:使问题从一种状态变化为另一种状态的手段称

为操作符或算符.操作符可为走步、过程、规则、数学算子、

运算符号或逻辑符号等。

问题的状态空间(statespace)是一个表示该问题全部

可能状态及其关系的图,它包含三种说明的集合,即所有可

能的问题初始状态集合S、操作符集合F以及目标状态集

合G.因此,可把状态空间记为三元状态(S,F,G)。

2、状态空间的表示法

提问:1.列举已经学习过的

“状态”概念,并比较之。

2.列举算符。

举例:列举几个日常生活中

状态与算符的例子,如:棋

局。

讨论:每走一步后,棋局都

变化了,以此来理解问题的

状态空间。

11

对一个问题的状态描述,必须确定3件事:

(1)该状态描述方式,特别是初始状态描述;

(2)操作符集合及其对状态描述的作用;

(3)目标状态描述的特性。

2。1。2状态图示法

图的基本概念

图由节点(不一定是有限的节点)的集合构成.一对节点用弧线连接起来,从一个节点指

向另一个节点.这种图叫做有向图(directedgraph)。

某个节点序列(n

i1

,n

i2

,…,n

ik

)当j=2,3,…,k时,如果对于每一个n

i,j—1

都有一个后继节

点n

ij

存在,那么就把这个节点序列叫做从节点n

i1

至节点

n

ik

的长度为k的路径.

代价(cost)是给各弧线指定数值以表示加在相应

算符上的代价.

图的显式说明是指各节点及其具有代价的弧线由

一张表明确给出。

图的隐式说明是指各节点及其具有代价的弧线不

能由一张表明确给出。

2.1.3状态空间表示举例

1、产生式系统

一个产生式系统由下列3部分组成:

一个总数据库(globaldatabase),它含有与具体任务有关的信息。

一套规则,它对数据库进行操作运算。每条规则由左右两部分组成,左部鉴别规则的适

用性或先决条件,右部描述规则应用时所完成的动作。应用规则来改变数据库.

一个控制策略,它确定应该采用哪一条适用规则,而且当数据库的终止条件满足时,就

停止计算。

2、状态空间表示举例

猴子与香蕉的问题

状态空间表示用四元组(W,x,y,z)其中:W-猴子的水平位置;x—当猴子在箱子顶

上时取x=1;否则取x=0;Y—箱子的水平位置;z—当猴子摘到香蕉时取z=1;否则取z=0.

算符

(1)goto(U)猴子走到水平位置U;

(2)pushbox(V)猴子把箱子推到水平位置V;

(3)climbbox猴子爬上箱顶;

(4)grasp猴子摘到香蕉。

求解过程令初始状态为(a,0,b,0)。这时,goto(U)

是唯一适用的操作,并导致下一状态(U,0,b,0).现在有3

举例:讲解初始状态、算符、

中间状态与目标状态之间的关

系;讲解三数码难题的状态变

化过程。

提问:举已经学习过的“有向

图”、“路径”及“代价”等的概

念。

举例:针对三数码难题的状态变

化过程讲解图的几个基本概念。

举例:针对多媒体上的猴

子与香蕉问题的状态空间

图,讲解问题的状态空间

表示和产生式规则的应

12

个适用的操作,即goto(U),pushbox(V)和climbbox(若U=b)。把所有适用的操作继

续应用于每个状态,我们就能够得到状态空间图,如图所示。从图不难看出,把该初始状态变换

为目标状态的操作序列为:

{goto(b),pushbox(c),climbbox,grasp}

2.2问题归约法

教学内容:知识表示的归约法,即已知问题的描述,通过一系列变换把此问题最终变为一

个子问题集合;这些子问题的解可以直接得到,从而解决了初始问题的方法。

教学重点:问题归约的基本思想,问题描述,问题变换的操作符,与或图表示。

教学难点:如何把初始问题变换为子问题,与或图表示方法。

教学方法:课堂教学为主,充分利用网络课程中的相关多媒体素材来表示抽象概念。

教学要求:通过梵塔难题重点掌握问题归约法的机理和问题归约描述方法.学会用与或

图表示归约问题.

2。2。1问题归约描述

1、问题归约法的概念

已知问题的描述,通过一系列变换把此问题最终变为一个子问题集合;这些子问题的解

可以直接得到,从而解决了初始问题。

该方法也就是从目标(要解决的问题)出发逆向推理,建立子问题以及子问题的子问题,

直至最后把初始问题归约为一个平凡的本原问题集合.这就是问题归约的实质。

2、问题归约法的组成部分

(1)一个初始问题描述;

(2)一套把问题变换为子问题的操作符;

(3)一套本原问题描述.

3、示例:梵塔难题

问题有3个柱子(1,2,3)和3个不同尺寸的圆盘(A,B,C)。在每个圆盘的中心有个孔,

所以圆盘可以堆叠在柱子上。最初,全部3个圆盘都堆在柱子1上:最大的圆盘C在底部,

最小的圆盘A在顶部。要求把所有圆盘都移到柱子3上,每次只许移动一个,而且只能先搬

动柱子顶部的圆盘,还不许把尺寸较大的圆盘堆放在尺寸较小的圆盘上。

归约过程

(1)移动圆盘A和B至柱子2的双圆盘难题;

(2)移动圆盘C至柱子3的单圆盘难题;

(3)移动圆盘A和B至柱子3的双圆盘难题。

由上可以看出简化了难题每一个都比原始难题容易,所以问

题都会变成易解的本原问题。

4、归约描述

问题归约方法是应用算符来把问题描述变换为子问题描述。

可以用状态空间表示的三元组合(S、F、G)来规定与描述问题;对于梵塔问题,子问

讲述:梵塔问题的来源。

提问:一圆盘问题要走几

步?两圆盘问题要走几

步?三个、四个...等?

13

题[(111)=〉(122)],[(122)=>(322)]以及[(322)=〉(333)]规定了最后解答路径将要

通过的脚踏石状态(122)和(322)。

问题归约方法可以应用状态、算符和目标这些表示法来描述问题,这并不意味着问题归

约法和状态空间法是一样的。

2.2.2与或图表示

1、与或图的概念

用一个类似图的结构来表示把问题归约为后继问

题的替换集合,画出归约问题图.

例如,设想问题A需要由求解问题B、C和D来

决定,那么可以用一个与图来表示;同样,一个问题A

或者由求解问题B、或者由求解问题C来决定,则可

以用一个或图来表示。

2、与或图的有关术语

父节点是一个初始问题或是可分解为子问题的问题节点;

子节点是一个初始问题或是子问题分解的子问题节点;

或节点只要解决某个问题就可解决其父辈问题的节点集

合;

与节点只有解决所有子问题,才能解决其父辈问题的节点

集合;

弧线是父辈节点指向子节点的圆弧连线;

终叶节点是对应于原问题的本原节点。

3、与或图的有关定义

可解节点与或图中一个可解节点的一般定义可以归纳如

下:

(1)终叶节点是可解节点(因为它们与本原问题相关连)。

(2)如果某个非终叶节点含有或后继节点,那么只有当其

后继节点至少有一个是可解的时,此非终叶节点才是可解的.

(3)如果某个非终叶节点含有与后继节点,那么只要当其后继节点全部为可解时,此

非终叶节点才是可解的。

不可解节点不可解节点的一般定义归纳于下:

(1)没有后裔的非终叶节点为不可解节点。

(2)如果某个非终叶节点含有或后继节点,那么只有

当其全部后裔为不可解时,此非终叶节点才是不可解的.

(3)如果某个非终叶节点含有与后继节点,那么只要当

其后裔至少有一个为不可解时,此非终叶节点才是不可解

的。

4、与或图构图规则

(1)与或图中的每个节点代表一个要解决的单一问题或问题集合.图中所含起始节点对

应于原始问题。

举例:含有与图与或图的混合图。

提问:对于一个与或图如何引入附

加节点,使得后继问题的每个集合

能够聚集在它们各自的父辈节点

之下。

举例:对于一个与或图。

提问:指出图中的父节点、

子节点、或节点、与节点、

弧线和终叶节点。

举例:对于一个与或图。

提问:指出图中的终叶节点、

可解节点、不可解节点。

举例:对于三圆盘梵塔难题根

据构图规则画出其归约图。

提问:指出图中的终叶节点、

可解节点、不可解节点。

课后作业:教材第二章习题2

-2与2-5

14

(2)对应于本原问题的节点,叫做终叶节点,它没有后裔.

(3)对于把算符应用于问题A的每种可能情况,都把问题变换为一个子问题集合;有

向弧线自A指向后继节点,表示所求得的子问题集合.

(4)一般对于代表两个或两个以上子问题集合的每个节点,有向弧线从此节点指向此

子问题集合中的各个节点。

(5)在特殊情况下,当只有一个算符可应用于问题A,而且这个算符产生具有一个以上

子问题的某个集合时,由上述规则3和规则4所产生的图可以得到简化。

2。3谓词逻辑法

教学内容:本节主要讲述问题的谓词逻辑表示的基本方法。

教学重点:谓词逻辑、谓词公式、谓词演算、置换与合一。

教学难点:如何选择谓词,问题的谓词逻辑表示及运算。

教学方法:课堂教学为主,充分利用网络课程中的示例程序.

教学要求:重点掌握谓词逻辑表示的语言与方法,掌握谓词公式的性质及谓词演算,学

会谓词公式的置换与合一,运用谓词推理来解决问题.

2.3.1谓词演算

1、语法和语义

谓词逻辑的基本组成部分是谓词符号、变量符号、函数符号和常量符号,并用圆括弧、

方括弧、花括弧和逗号隔开,以表示论域内的关系。

原子公式是由若干谓词符号和项组成,只有当其对应的语句在定义域内为真时,才具

有值T(真);而当其对应的语句在定义域内为假时,该原子公式才具有值F(假).

2、连词和量词

连词有∧(与)、∨(或),全称量词(x),存在量词(x)。

原子公式是谓词演算的基本积木块,运用连词能够组合多个原子公式以构成比较复杂

的合适公式.

3、几个有关定义

用连词∧把几个公式连接起来而构成的公式叫做合取,而此合取式的每个组成部分叫

做合取项.一些合适公式所构成的任一合取也是一个合适公式。

用连词∨把几个公式连接起来所构成的公式叫做析取,而此析取式的每一组成部分叫

做析取项。由一些合适公式所构成的任一析取也是一个合适公式。

用连词=>连接两个公式所构成的公式叫做蕴涵。蕴涵的左式叫做前项,右式叫做后项。

如果前项和后项都是合适公式,那么蕴涵也是合适公式。

前面具有符号~的公式叫做否定。一个合适公式的否定也是合适公式.

量化一个合适公式中的某个变量所得到的表达式也是合适公式.如果一个合适公式中

某个变量是经过量化的,就把这个变量叫做约束变量,否则就叫它为自由变量。在合适公式

中,感兴趣的主要是所有变量都是受约束的。这样的合适公式叫做句子。

15

2.3。2谓词公式

1、谓词合适公式的定义

在谓词演算中合适公式的递归定义如下:

(1)原子谓词公式是合适公式。

(2)若A为合适公式,则~A也是一个合适公式.

(3)若A和B都是合适公式,则(A∧B),(A

∨B),(A=>B)和(A←→B)也都是合适公式。

(4)若A是合适公式,x为A中的自由变元,则

(x)A和(x)A都是合适公式.

(5)只有按上述规则(1)至(4)求得的那些公式,才是合适公式。

2、合适公式的性质

(1)否定之否定

~(~P)等价于P

(2)P∨Q等价于~P=〉Q

(3)狄·摩根定律

~(P∨Q)等价于~P∧~Q

~(P∧Q)等价于~P∨~Q

(4)分配律

P∧(Q∨R)等价于(P∧Q)∨(P∧R)

P∨(Q∧R)等价于(P∨Q)∧(P∨R)

(5)交换律

P∧Q等价于Q∧P

P∨Q等价于Q∨P

(6)结合律

(P∧Q)∧R等价于P∧(Q∧R)

(P∨Q)∨R等价于P∨(Q∨R)

(7)逆否律

P=>Q等价于~Q=〉~P

此外,还可建立下列等价关系:

(8)~(x)P(x)等价于(x)[~P(x)]

~(x)P(x)等价于(x)[~P(x)]

(9)(x)[P(x)∧Q(x)]等价于

(x)P(x)∧(x)Q(x)

(x)[P(x)∨Q(x)]等价于

(x)P(x)∨(x)Q(x)

(10)(x)P(x)等价于(y)P(y)

(x)P(x)等价于(y)P(y)

举例:试把下列命题表示为谓词公

式:任何整数或者为正或者为负。

提问:指出此例题谓词公式中的量

词、连词及蕴涵符号。

证明:否定之否定,~

(~P)等价于P。

16

2。3.3置换与合一

1、置换

假元推理,就是由合适公式W

1

和W

1

=〉W

2

产生合适公式W

2

的运算.

全称化推理,是由合适公式(x)W(x)产生合适公式W(A),其中A为任意常量符号.

一个表达式的置换就是在该表达式中用置换项置换变量.

一般说来,置换是可结合的,但置换是不可交换的。

2、合一

寻找项对变量的置换,以使两表达式一致,叫做合一

(unification)。如果一个置换s作用于表达式集{E

i

}的每个

元素,则用{E

i

}s来表示置换例的集。称表达式集{E

i

}是

可合一的.如果存在一个置换s使得:E

1s

=E

2s

=E

3s

=…那么称

此s为{E

i

}的合一者,因为s的作用是使集合{E

i

}成为单

一形式.

2。4语义网络法

教学内容:本节主要讲述知识的语义网络表示法.

教学重点:语义网络表示的词法、结构、过程、语义。

教学难点:如何选择节点和弧线来构成语义网络.

教学方法:课堂教学.

教学要求:重点掌握语义网络的结构,掌握二元语义网络表示方法,了解语义网络的特

点.

2.4。1二元语义网络的表示

1.语义网络的基本概念

语义网络是知识的一种结构化图解表示,它由节点和弧线或链线组成。节点用于表示实

体、概念和情况等,弧线用于表示节点间的关系。

语义网络表示由下列4个相关部分组成:

(1)词法部分决定表示词汇表中允许有哪些符号,它涉及各个节点和弧线.

(2)结构部分叙述符号排列的约束条件,指定各弧线连接的节点对。

(3)过程部分说明访问过程,这些过程能用来建立和修正描述,以及回答相关问题.

(4)语义部分确定与描述相关的(联想)意义的方法即确定有关节点的排列及其占有

物和对应弧线。

语义网络具有下列特点:

(1)能把实体的结构、属性与实体间的因果关系显式地和简明地表达出来,与实体相

关的事实、特征和关系可以通过相应的节点弧线推导出来。

(2)由于与概念相关的属性和联系被组织在一个相应的节点中,因而使概念易于受访

和学习。

(3)表现问题更加直观,更易于理解,适于知识工程师与领域专家沟通。

举例:表达式P[x,f(y),B]

的一个置换为s1={z/x,w/y},

则:P[x,f(y),B]s1=P

[z,f(w),B]

17

(4)语义网络结构的语义解释依赖于该结构的推理过程而没有结构的约定,因而得到的

推理不能保证像谓词逻辑法那样有效.

(5)节点间的联系可能是线状、树状或网状的,甚至是递归状的结构,使相应的知识

存储和检索可能需要比较复杂的过程。

2.二元语义网络的表示

用两个节点和一条弧线可以表示一个简单的事实,对于表示占有关系的语义网络,是通

过允许节点既可以表示一个物体或一组物体,也可以表示情况和动作。每一情况节点可以有

一组向外的弧(事例弧),称为事例框,用以说明与该事例有关的各种变量.

在选择节点时,首先要弄清节点是用于表示基本的物体或

概念的,或是用于多种目的的。否则,如果语义网络只被用来

表示一个特定的物体或概念,那么当有更多的实例时就需要更

多的语义网络。

选择语义基元就是试图用一组基元来表示知识。这些基元

描述基本知识,并以图解表示的形式相互联系。

2.4。2多元语义网络的表示

语义网络是一种网络结构.节点之间以链相连.从本质上

讲,接点之间的连接是二元关系。语义网络从本质上来说,只

能表示二元关系,如果所要表示的事实是多元关系,则把这个

多元关系转化成一组二元关系的组合,或二元关系的合取。具

体来说,多元关系R(X

1

,X

2

,…,X

n

)总可以转换成R

1

(X

11

X

12

)∧R

2

(X

21

,X

22

)∧…∧R

n

(X

n1

,X

n2

).要在语义网络中

进行这种转换需要引入附加节点。

2.4。3连词和量化的表示

可以用语义网络表示谓词逻辑法中的各种连词及量化。

1.合取

多元关系可以被转换成一组二元关系的合取,从而可以用语义网络的形式表示出来。

2.析取

在语义网络中,为与合取关系相区别,在析取关系的连接上加注析取界限,并标记DIS。

3.否定

采用~ISA和~PARTOF关系或标注NEG界限来表示否定。

4.蕴涵

在语义网络中可用标注ANTE和CONSE界限来表示蕴涵关系.

5.量化

存在量化在语义网络中可直接用ISA链来表示。而全称量化就要用分割方法来表示。

举例:用二元语义网络表

示:小燕是一只燕子,燕

子是鸟;巢-1是小燕的

巢,巢-1是巢中的一个。

举例:用”Limingisa

man”的语义网络和谓词

逻辑表示说明谓词逻辑

与语义网络的等效性。

18

2。5其他方法

教学内容:简介知识表示的其他三种表示方法,即框架表示法、剧本表示法和过程表示

法,阐述了三种表示法的原理和应用范围。

教学重点:各方法的基本原理及基本结构.

教学难点:各方法的推理过程.

教学方法:课堂教学为主。适当提问,加深学生对概念的理解。

教学要求:初步了解三种方法的基本原理。

2.5。1框架

1、框架的构成

框架通常由描述事物的各个方面的槽组成,每个槽可以拥有若干个侧面,而每个侧面又

可以拥有若干个值。一个框架的一般结构如下:

〈框架名>

<槽1〉<侧面11〉…

〈侧面12>〈值121〉…

〈侧面21>〈值211>…

〈槽n〉<侧面n1〉…

〈侧面nm〉〈值nm1〉…

较简单的情景是用框架来表示诸如人和房子等事物.例如,一个人可以用其职业、身高和

体重等项描述,因而可以用这些项目组成框架的槽。当描述一个具体的人时,再用这些项目

的具体值填入到相应的槽中.表2.2给出的是描述John的框架。

表2.2简单框架示例

JOHN

Isa:PERSON

Profession:PROGRAMMER

Height:1.8m

Weight:79kg

框架是一种通用的知识表达形式,对于如何运用框架系统还没有一种统一的形式,常常

由各种问题的不同需要来决定。

2、框架的推理

如前所述,框架是一种复杂结构的语义网络。因此语义网络推理中的匹配和特性继承在

框架系统中也可以实行。除此以外,由于框架用于描述具有固定格式的事物、动作和事件,

因此可以在新的情况下,推论出未被观察到的事实。框架用以下几种途径来帮助实现这一点:

(1)框架包含它所描述的情况或物体的多方面的信息。

(2)框架包含物体必须具有的属性。在填充框架的各个槽时,要用到这些属性。

(3)框架描述它们所代表的概念的典型事例.

19

用一个框架来具体体现一个特定情况的过程,经常不是很顺利的。但当这个过程碰到障

碍时,经常不必放弃原来的努力去从头开始,而是有很多办法可想的:

(1)选择和当前情况相对应的当前的框架片断,并把这个框架片断和候补框架相匹配。选

择最佳匹配.

(2)尽管当前的框架和要描述的情况之间有不相匹配的地方,但是仍然可以继续应用

这个框架。

(3)查询框架之间专门保存的链,以提出应朝哪个方向进行试探的建议。

(4)沿着框架系统排列的层次结构向上移动(即从狗框架→哺乳动物框架→动物框

架),直到找到一个足够通用,并不与已有事实矛盾的框架。

2。5.2剧本

剧本是框架的一种特殊形式,它用一组槽来描述某些事件的发生序列,就像剧本中的事

件序列一样,故称为“剧本"或脚本。

一个剧本一般由以下各部分组成:

(1)开场条件给出在剧本中描述的事件发生的前提条件。

(2)角色用来表示在剧本所描述的事件中可能出现的有关人物的一些槽.

(3)道具这是用来表示在剧本所描述的事件中可能出现的有关物体的一些槽.

(4)场景描述事件发生的真实顺序,可以由多个场景组成,每个场景又可以是其

它的剧本。

(5)结果给出在剧本所描述的事件发生以后通常所产生的结果.

例子:以餐厅剧本为例说明剧本各个部分的组成.

根据剧本的重要性,可以有二种准备剧本的方法。

(1)对于不属于事件核心部分的剧本,只需设置指向该剧本的指针即可,以便当它成

为核心时启用。

(2)对于符合事件核心部分的剧本,则应使用在当前事件中涉及到的具体对象和人物去

填写剧本的槽。剧本的前提、道具、角色和事件等常能起到启用剧本的指示器的作用。

一旦剧本被启用,则可以应用它来进行推理。其中最重要的是运用剧本可以预测没有明

显提及的事件的发生.

剧本结构,比起框架这样的一些通用结构来,要呆板得多,知识表达的范围也很窄,因此

不适用于表达各种知识,但对于表达预先构思好的特定知识,如理解故事情节等,是非常有

效的。

2。5。3过程

语义网络、框架和剧本等知识表示方法,均是对知识和事实的一种静止的表达方法,是

知识的一种显式表达形式。而对于如何使用这些知识,则通过控制策略来决定.

和知识的陈述式表示相对应的是知识的过程式表示.所谓过程式表示就是将有关某一问

题领域的知识,连同如何使用这些知识的方法,均隐式地表达为一个求解问题的过程.它所给

出的是事物的一些客观规律,表达的是如何求解问题。知识的描述形式就是程序,所有信息

均隐含在程序之中。从程序求解问题的效率上来说,过程式表达要比陈述式表达高得多。但

因其知识均隐含在程序中,因而难于添加新知识和扩充功能,适用范围较窄。

20

2。6小结

知识表示方法很多,本章介绍了其中的7种,有图示法和公式法,结构化方法,陈述式

表示和过程式表示等.

状态空间法是一种基于解答空间的问题表示和求解方法,它是以状态和操作符为基础

的。在利用状态空间图表示时,从某个初始状态开始,每次加一个操作符,递增地建立起操

作符的试验序列,直到达到目标状态为止。由于状态空间法需要扩展过多的节点,容易出现“组

合爆炸”,因而只适用于表示比较简单的问题.

问题归约法从目标(要解决的问题)出发,逆向推理,通过一系列变换把初始问题变换为

子问题集合和子子问题集合,直至最后归约为一个平凡的本原问题集合.这些本原问题的解

可以直接得到从而解决了初始问题,用与或图来有效地说明问题归约法的求解途径。问题归

约法能够比状态空间法更有效地表示问题。状态空间法是问题归约法的一种特例。在问题归

约法的与或图中,包含有与节点和或节点,而在状态空间法中只含有或节点。

谓词逻辑法采用谓词合适公式和一阶谓词演算把要解决的问题变为一个有待证明的问

题,然后采用消解定理和消解反演来证明一个新语句是从已知的正确语句导出的,从而证明

这个新语句也是正确的。谓词逻辑是一种形式语言,能够把数学中的逻辑论证符号化。谓词

逻辑法常与其它表示方法混合使用,灵活方便,可以表示比较复杂的问题。

语义网络是一种结构化表示方法,它由节点和弧线或链线组成.节点用于表示物体、概念

和状态,弧线用于表示节点间的关系.语义网络的解答是一个经过推理和匹配而得到的具有明

确结果的新的语义网络。语义网络可用于表示多元关系,扩展后可以表示更复杂的问题.

框架是一种结构化表示方法。框架通常由指定事物各个方面的槽组成,每个槽拥有若干

个侧面,而每个侧面又可拥有若干个值.大多数实用系统必须同时使用许多框架,并可把它

们联成一个框架系统。框架表示已获广泛应用,然而并非所有问题都可以用框架表示。

剧本是框架的一种特殊形式,它使用一组槽来描述事件的发生序列。剧本表示特别适用

于描述顺序性动作或事件,但使用不如框架灵活,因此应用范围也不如框架那么广泛。

过程是一种知识的过程式表示,它将某一有关问题领域知识同这些使用方法一起,隐式

地表示为一个问题求解过程.过程表示用程序来描述问题,具有很高的问题求解效率。由于

知识隐含在程序中难以操作,所以适用范围较窄。

在表示和求解比较复杂的问题时,采用单一的知识表示方法是远远不够的。往往必须采

用多种方法混合表示。例如,综合采用框架、语义网络、谓词逻辑的过程表示方法(两种以上),

可使所研究的问题获得更有效的解决.

此外,在选择知识表示方法时,还要考虑所使用的程序设计语言所提供的功能和特点,

以便能够更好地描述这些表示方法.

21

第三章搜索推理技术

教学内容:本章在上一章知识表示的基础上研究问题求解的方法,是人工智能研究的又

一核心问题.内容包括早期搜索推理技术,如图搜索策略和消解原理;以及高级搜索推理技术,

如规则演绎系统、产生式系统、系统组织技术、不确定性推理和非单调推理.

教学重点:图搜索策略、消解原理、规则演绎系统、产生式系统。

教学难点:启发式搜索、规则双向演绎系统等。

教学方法:课堂教学为主,辅以恰当的实验。注意结合前面所学知识表示的基础内容,将

其与问题求解方法融为一体。及时提问、收集学生学习情况。尽量使用实例和网络课程中的

多媒体素材进行讲解。

教学要求:重点掌握一般图搜索策略和消解原理,掌握各种搜索方法和产生式系统原理,

了解规则演绎系统的基本原理,对系统组织技术、不确定性推理和非单调推理等高级推理技

术作一般性了解。

3。1图搜索策略

教学内容:本节介绍图搜索的一般策略,作为各种图搜索技术的基础。

教学重点:图搜索的一般过程、OPEN表和CLOSE表的概念。

教学难点:OPEN表和CLOSE表的物理意义.

教学方法:课堂教学为主,通过提问彻底弄清图搜索的基本概念.

教学要求:重点掌握图搜索一般策略,掌握OPEN表和CLOSE表的构成及作用。

1、图搜索策略的定义

图搜索策略可看作一种在图中寻找路径的方法。初始节点和目标节点分别代表初始数据

库和满足终止条件的数据库。求得把一个数据库变换为另一数据库的规则序列问题就等价于

求得图中的一条路径问题。研究图搜索的一般策略,能够给出图搜索过程的一般步骤.

2、图搜索算法中的几个重要名词术语

(1)OPEN表与CLOSE表

(2)搜索图与搜索树

3、图搜索(GRAPHSEARCH)的一般过程

(1)建立一个只含有起始节点S的搜索图G,把S放到一个叫做OPEN的未扩展节

点表中。

(2)建立一个叫做CLOSED的已扩展节点表,其初始为空表.

(3)LOOP:若OPEN表是空表,则失败退出.

(4)选择OPEN表上的第一个节点,把它从OPEN表移出并放进CLOSED表中.称此

节点为节点n。

(5)若n为一目标节点,则有解并成功退出,此解是追踪图G中沿着指针从n到S这

条路径而得到的(指针将在第7步中设置)。

(6)扩展节点n,同时生成不是n的祖先的那些后继节点的集合M。把M的这些成

员作为n的后继节点添入图G中。

(7)对那些未曾在G中出现过的(既未曾在OPEN表上或CLOSED表上出现过的)M

成员设置一个通向n的指针.把M的这些成员加进OPEN表。对已经在OPEN或CLOSED

22

表上的每一个M成员,确定是否需要更改通到n的指针方向。对

已在CLOSED表上的每个M成员,确定是否需要更改图G中通

向它的每个后裔节点的指针方向。

(8)按某一任意方式或按某个探试值,重排OPEN表.

(9)GOLOOP.

4、图搜索方法分析:

图搜索过程的第8步对OPEN表上的节点进行排序,以便能够从中选出一个“最好”的

节点作为第4步扩展用。这种排序可以是任意的即盲目的(属于盲目搜索),也可以用以后

要讨论的各种启发思想或其它准则为依据(属于启发式搜索)。每

当被选作扩展的节点为目标节点时,这一过程就宣告成功结束。

这时,能够重现从起始节点到目标节点的这条成功路径,其办法

是从目标节点按指针向S返回追溯。当搜索树不再剩有未被扩展

的端节点时,过程就以失败告终(某些节点最终可能没有后继节

点,所以OPEN表可能最后变成空表)。在失败终止的情况下,

从起始节点出发,一定达不到目标节点。

3。2盲目搜索

教学内容:介绍三种盲目搜索方法,即宽度优先搜索、深度优先搜索和等代价搜索。

教学重点:盲目搜索的特点,宽度优先搜索。

教学难点:等代价搜索中代价的概念。

教学方法:以实例强化内容的学习,通过提问引导学生对三种方法的特点进行比较.

教学要求:掌握盲目搜索的特点,比较三种盲目搜索方法的优缺点。

3。2。1宽度优先搜索

1、定义

如果搜索是以接近起始节点的程度依次扩展节点的,那么这种搜索就叫做宽度优先搜索

(breadth-firstsearch)。

2、特点

这种搜索是逐层进行的;在对下一层的任一节点进行搜索之前,必须搜索完本层的所有节

点。

3、宽度优先搜索算法

(1)把起始节点放到OPEN表中(如果该起始节点为一目标节点,则求得一个解答)。

(2)如果OPEN是个空表,则没有解,失败退出;否则继续。

(3)把第一个节点(节点n)从OPEN表移出,并把它放入CLOSED的扩展节点表中.

(4)扩展节点n.如果没有后继节点,则转向上述第(2)步。

(5)把n的所有后继节点放到OPEN表的末端,并提供从这些后继节点回到n的指针。

(6)如果n的任一个后继节点是个目标节点,则找到一个解答,成功退出;否则转向第(2)

步。

4、宽度优先搜索方法分析:

提问:图搜索是针对

什么知识表示方法

的问题求解方法?

提问:什么是图搜索?

其中,重排OPEN表

意味着什么,重排的

原则是什么?

23

宽度优先搜索是图搜索一般过程的特殊情况,将图搜索一般过程中的第8步具体化为本

算法中的第6步,这实际是将OPEN表作为“先进先出”的队列进行操作.

宽度优先搜索方法能够保证在搜索树中找到一条通向目标节点的最短途径;这棵搜索树

提供了所有存在的路径(如果没有路径存在,那么对有限图来说,我们就说该法失败退出;

对于无限图来说,则永远不会终止)。

5、例:把宽度优先搜索应用于八数码难题时所生成的

搜索树,这个问题就是要把初始棋局变为如下目标棋局的

问题:

123

84

765

3。2.2深度优先搜索

1、定义

在此搜索中,首先扩展最新产生的(即最深的)节点。深度相等的节点可以任意排列。

这种盲目(无信息)搜索叫做深度优先搜索(depth—firstsearch)。

2、特点

首先,扩展最深的节点的结果使得搜索沿着状态空间某条单一的路径从起始节点向下进

行下去;只有当搜索到达一个没有后裔的状态时,它才考虑另一条替代的路径。

3、深度界限

为了避免考虑太长的路径(防止搜索过程沿着无益的路径扩展下去),往往给出一个节点

扩展的最大深度-—深度界限。任何节点如果达到了深度界限,那么都将把它们作为没有后

继节点处理。

4、含有深度界限的深度优先搜索算法

请同学们课后自学,并回答课后思考题.

思考题:有界深度优先搜索方法能够保证在搜索树中找到一条通向目标节点的最短途径吗?

3.2。3等代价搜索

1、定义

宽度优先搜索可被推广用来解决寻找从起始状态至目标状态的具有最小代价的路径问

题,这种推广了的宽度优先搜索算法叫做等代价搜索算法.

2、等代价搜索中的几个记号

起始节点记为S;

从节点i到它的后继节点j的连接弧线代价记为c(i,j);

从起始节点S到任一节点i的路径代价记为g(i)。

3、等代价搜索算法

(请同学们课后认真阅读本算法,指出与宽度优先、深度优先

算法有何特别之处。)

4、等代价搜索方法分析

提问:宽度优先搜索方法中

OPEN表需要按什么方式进行

操作?

A.先进后出B.先进先出

思考:试比较各种盲

目搜索搜索方法的

效率,找出影响算法

效率的原因。

24

如果所有的连接弧线具有相等的代价,那么等代价算法就简化为宽度优先搜索算法。

3.3启发式搜索

教学内容:启发式搜索策略概述和有序搜索。启发式搜索弥补盲目搜索的不足,提高搜索

效率.

教学重点:启发式搜索策略、启发信息和有序搜索.

教学难点:估价函数的设计、A*算法原理.

教学方法:通过实例加深对原理的理解,鼓励同学扩大阅读范围。

教学要求:掌握启发式搜索策略和估价函数的设计方法,了解A*算法原理。

3.3。1启发式搜索策略和估价函数

1、为什么需要启发式搜索

盲目搜索效率低,耗费过多的计算空间与时间,这是组合爆炸的一种表现形式。

2、定义

进行搜索技术一般需要某些有关具体问题领域的特性的信息,把此种信息叫做启发信息.

利用启发信息的搜索方法叫做启发式搜索方法.

3、启发式搜索策略

有关具体问题领域的信息常常可以用来简化搜索.一个比较灵活(但代价也较大)的利用

启发信息的方法是应用某些准则来重新排列每一步OPEN表中所有节点的顺序。然后,搜

索就可能沿着某个被认为是最有希望的边缘区段向外扩展.应用这种排序过程,需要某些估

算节点“希望”的量度,这种量度叫做估价函数(evalutionfunction)。

4、估价函数

为获得某些节点“希望"的启发信息,提供一个评定侯选扩展节点的方法,以便确定哪个

节点最有可能在通向目标的最佳路径上.

f(n)——表示节点n的估价函数值

建立估价函数的一般方法:试图确定一个处在最佳路径上的节点的概率;提出任意节点与

目标集之间的距离量度或差别量度;或者在棋盘式的博弈和难题中根据棋局的某些特点来决

定棋局的得分数。这些特点被认为与向目标节点前进一步的希望程度有关.

3。3。2有序搜索

1、定义

用估价函数f来排列GRAPHSEARCH第8步中OPEN表上的节点。应用某个算法(例

如等代价算法)选择OPEN表上具有最小f值的节点作为下一个要扩展的节点。这种搜索方

法叫做有序搜索(orderedsearch)或最佳优先搜索(best—firstsearch),而其算法就叫做有

序搜索算法或最佳优先算法.

尼尔逊(Nilsson)曾提出一个有序搜索的基本算法。估价函数f是这样确定的:一个节

点的希望程序越大,其f值就越小.被选为扩展的节点,是估价函数最小的节点。

2、实质

25

选择OPEN表上具有最小f值的节点作为下一个要扩展的节点,即总是选择最有希望的

节点作为下一个要扩展的节点。

3、有序状态空间搜索算法

(1)把起始节点S放到OPEN表中,计算f(S)并把其值与节点S联系起来。

(2)如果OPEN是个空表,则失败退出,无解。

(3)从OPEN表中选择一个f值最小的节点i。结果有几个节点合格,当其中有一个为

目标节点时,则选择此目标节点,否则就选择其中任一个节点作为节点i。

(4)把节点i从OPEN表中移出,并把它放入CLOSED的扩展节点表中.

(5)如果i是个目标节点,则成功退出,求得一个解。

(6)扩展节点i,生成其全部后继节点。对于i的每一个后继节点j:

(a)计算f(j)。

(b)如果j既不在OPEN表中,又不在CLOSED表中,则用估价函数f把它

添入OPEN表。从j加一指向其父辈节点i的指针,以便一旦找到目标节点时记住一

个解答路径。

(c)如果j已在OPEN表上或CLOSED表上,则比较刚刚对j计算过的f值和前

面计算过的该节点在表中的f值。如果新的f值较小,则

(i)以此新值取代旧值.

(ii)从j指向i,而不是指向它的父辈节点。

(iii)如果节点j在CLOSED表中,则把它移回OPEN表。

(7)转向(2),即GOTO(2)。

4、有序搜索方法分析

宽度优先搜索、等代价搜索和深度优先搜索统统是有序搜索技术的特例.对于宽度优先

搜索,选择f(i)作为节点i的深度。对于等代价搜索,f(i)是从起始节点至节点i这段路径的

代价。

有序搜索的有效性直接取决于f的选择,如果选择的f不合适,有序搜索就可能失去一

个最好的解甚至全部的解。如果没有适用的准确的希望量度,那么f的选择将涉及两个方面

的内容:一方面是一个时间和空间之间的折衷方案;另一方面是保证有一个最优的解或任意

解。

5、例:八数码难题

采用了简单的估价函数

f(n)=d(n)+W(n)

其中:d(n)是搜索树中节点n的深度;W(n)用来计算对应于节点n的数据库中错放

的棋子个数。因此,起始节点棋局

283

164

75

的f值等于0+4=4。

3。3.3A*算法

A*算法是一种有序搜索算法,其特点在于对估价函数的定义上。

1、几个记号

26

令k(n

i

,n

j

)表示任意两个节点n

i

和n

j

之间最小代价路径的实际代价(对于两节点间

没有通路的节点,函数k没有定义).于是,从节点n到某个具体的目标节点t

i

,某一条最小

代价路径的代价可由k(n,t

i

)给出。令h*(n)表示整个目标节点集合{t

i

}上所有k(n,t

i

)中最

小的一个,因此,h*(n)就是从n到目标节点最小代价路径的代价,而且从n到目标节点

能够获得h*(n)的任一路径就是一条从n到某个目标节点的最佳路径(对于任何不能到达目

标节点的节点n,函数h*没有定义)。

2、估价函数的定义

定义g*为g*(n)=k(S,n)

定义函数f*,使得在任一节点n上其函数值f*(n)就是从节点S到节点n的一条最佳

路径的实际代价加上从节点n到某目标节点的一条最佳路径的代价之和,即

f*(n)=g*(n)+h*(n)

希望估价函数f是f*的一个估计,此估计可由下式给出:

f(n)=g(n)+h(n)

其中:g是g*的估计;h是h*的估计.对于g(n)来说,一个明显的选择就是搜索树中

从S到n这段路径的代价,这一代价可以由从n到S寻找指针时,把所遇到的各段弧线的

代价加起来给出(这条路径就是到目前为止用搜索算法找到的从S到n的最小代价路径)。这

个定义包含了g(n)≥g*(n)。h*(n)的估计h(n)依赖于有关问题的领域的启发信息.

这种信息可能与八数码难题中的函数W(n)所用的那种信息相似。把h叫做启发函数。

3、A*算法定义

定义1在GRAPHSEARCH过程中,如果第8步的重排OPEN表是依据f(x)=g(x)

+h(x)进行的,则称该过程为A算法。

定义2在A算法中,如果对所有的x存在h

(x)≤h*(x),则称h(x)为h*(x)的下界,它表

示某种偏于保守的估计。

定义3采用h*(x)的下界h(x)为启发函

数的A算法,称为A*算法。当h=0时,A*算法

就变为有序搜索算法.

4、A*算法

A*算法描述参考教材.

3。4消解原理

教学内容:消解原理是针对谓词逻辑知识表示的问题求解方法。本节内容主要包括子句

集的求取、消解推理的规则和消解反演问题求解方法。

教学重点:子句集的求取、消解推理的规则和消解反演问题求解方法.

教学难点:消解反演的思想.

教学方法:实例讲解,注重课堂练习。

教学要求:重点掌握子句集的求解步骤和消解反演过程,掌握消解推理的规则。

消解原理的基础知识:

(1)谓词公式、某些推理规则以及置换合一等概念.

(2)子句:由文字的析取组成的公式(一个原子公式和原子公式的否定都叫做文字)。

(3)消解:当消解可使用时,消解过程被应用于母体子句对,以便产生一个导出子句。

提问:由g*(n)和g(n)的定义知

g*(n)≤g(n)

A.对B.错

思考:试比较宽度优先搜索、有界

深度优先搜索及有序搜索的搜索效

率,并以实例数据加以说明

27

例如,如果存在某个公理E

1

∨E

2

和另一公理~E

2

∨E

3

,那么E

1

∨E

3

在逻辑上成立。这就是消

解,而称E

1

∧E

3

为E

1

∨E

2

和~E

2

∨E

3

的消解式(resolvent)。

3.4.1子句集的求取

1、步骤

(1)消去蕴涵符号

只应用∨和~符号,以~A∨B替换A=>B。

(2)减少否定符号的辖域

每个否定符号~最多只用到一个谓词符号

上,

并反复应用狄·摩根定律。例如:

以~A∨~B代替~(A∧B)

以~A∧~B代替~(A∨B)

以A代替~(~A)

以(x){~A}代替~(x)A

以(x){~A}代替~(x)A

(3)对变量标准化

在任一量词辖域内,受该量词约束的变量为一哑元(虚构变量),它可以在该辖域内处

处统一地被另一个没有出现过的任意变量所代替,而不改变公式的真值。合适公式中变量的

标准化意味着对哑元改名以保证每个量词有其自己唯一的哑元。

(4)消去存在量词

用Skolem函数代替存在的x,就可以消去全部存在量词,并写成:

(y)P[g(y),y]

从一个公式消去一个存在量词的一般规则是以一个Skolem函数代替每个出现的存在量

词的量化变量,而这个Skolem函数

的变量就是由那些全称量词所约束

的全称量词量化变量,这些全称量

词的辖域包括要被消去的存在量词

的辖域在内。Skolem函数所使用的

函数符号必须是新的,即不允许是

公式中已经出现过的函数符号.例

如:

(y)(x)P(x,y)被〔(y)

P(g(y),y)〕代替,其中g(y)为一

Skolem函数。

如果要消去的存在量词不在任

提问:现有公式[(AB)B]∨

C,在消去蕴涵符号后得到公式:

A.[~(AB)∨B]∨C

B.[~(A∨B)∧B]∨C

C.[~(~A∨B)∨B]∨C

D.[(A∨B)∨B]∨C

提问:设有公式(x)(y){(y)P(x,y)

(x)Q(x,y)},在经过对变量标准化后得到公式为:

A.(x)(y){(y)P(x,y)(y)Q(y,y)}

B.(x)(y){(x)P(x,x)(x)Q(x,y)}

C.(x)(y){(z)P(x,z)(q)Q(q,y)}

D.(x)(y){(z)P(x,z)(q)Q(q,z)}

E.(x)(y){(z)P(q,z)(q)Q(q,z)}

提问:对于公式(z)(y){(x)P(x,y,z)∨

(q)(w)(e)Q(q,w,e,z),在经过消去存在量

词后,正确的公式为:

A.(y){P(B,y,A)∨(w)Q(C,w,D,A)

B.(y){P(B,y,A)∨(w)Q(C,w,g(w),A),g(w)

为一Skolem函数

C.(y){P(g1(y),y,A)∨(w)Q(g2(y),w,g3

(w),A)

式中,(g1(y),g2(y)和g3(w)为Skolem函数

D.(y){P(g1(y),y,A)∨(w)Q(g2(y),w,g3

(y,w),A)

式中,(g

1

(y),g2(y)和g3(y,w)为Skolem函数

28

何一个全称量词的辖域内,则用不含变量的Skolem函数即常量.例如,(x)P(x)化为P(A),

其中常量符号A用来表示人们知道的存在实体。A必须是个新的常量符号,它未曾在公式

中其它地方使用过。

(5)化为前束形

把所有全称量词移到公式的左边,并使每个量词的辖域包括这个量词后面公式的整个部

分。所得公式称为前束形。

(6)把母式化为合取范式

任何母式都可写成由一些谓词公式和(或)谓词公式的否定的析取的有限集组成的合取。

这种母式叫做合取范式。

(7)消去全称量词

消去明显出现的全称量词.

(8)消去连词符号∧

用{A,B}代替(A∧B),以消去明显的符号∧。反复代替的结果,最后得到一个有限

集,其中每个公式是文字的析取。任一个只由文字的析取构成的合适公式叫做一个子句。

(9)更换变量名称

可以更换变量符号的名称,使一个变量符号不出现在一个以上的子句中。

2、例

将下列谓词演算公式化为一个子句集

(x){P(x){(y)[P(y)P(f(x,y))]∧~(y)[Q(x,y)P(y)]}}

3、说明

并不是所有问题的谓词公式化为子句集都需要上述9个步骤。对于某些问题,可能不需

要其中的一些步骤。

3。4。2消解推理规则

1、消解式

令L

1

为任一原子公式,L

2

为另一原子公式;L

1

和L

2

具有相同的谓词符号,但一般具有

不同的变量.已知两子句L

1

∨α和~L

2

∨β,如果L

1

和L

2

具有最一般合一者σ,那么通过

消解可以从这两个父辈子句推导出一个新子句(α∨β)σ.这个新子句叫做消解式。它是由

取这两个子句的析取,然后消去互补对而得到的。

2、消解式求法

(a)假言推理

父辈子句P~P∨Q(即P=>Q)

消解式Q

(b)合并

(c)重言式

(d)空子句(矛盾)

~PP

NIL

(e)链式(三段论)

即取各子句的析取,然后消去互补对。

说明:对合并、

重言式、链式(三

段论)请同学们

自行阅读。

29

3.4。3含有变量的消解式

1、消解式求法

为了对含有变量的子句使用消解规则,必须找到一个置换,作用于父辈子句使其含有互补

文字。

2、例子

P(x)∨Q(x)~Q[f(y)]

置换σ={f(y)/x}

P[f(y)]

3.4.4消解反演求解过程

1、基本思想

把要解决的问题作为一个要证明的命题,其目标公式被否定并化成子句形,然后添加到

命题公式集中去,把消解反演系统应用于联合集,并推导出一个空子句(NIL),产生一个

矛盾,这说明目标公式的否定式不成立,即有目标公式成立,定理得证,问题得到解决,与

数学中反证法的思想十分相似。

2、消解反演

反演求解的步骤

给出一个公式集S和目标公式L,通过反证或反演来求证目标公式L,其证明步骤如下:

(1)否定L,得~L;

(2)把~L添加到S中去;

(3)把新产生的集合{~L,S}化成子句集;

(4)应用消解原理,力图推导出一个表示矛盾的空子句NIL。

反演求解的正确性

设公式L在逻辑上遵循公式集S,那么按照定义满足S的每个解释也满足L。决不会有

满足S的解释能够满足~L的,所以不存在能够满足并集S∪{~L}的解释。如果一个公式

集不能被任一解释所满足,那么这个公式是不可满足的。因此,如果L在逻辑上遵循S,那

么S∪{~L}是不可满足的.可以证明,如果消解反演反复应用到不可满足的子句集,那么

最终将要产生空子句NIL。因此,如果L在逻辑上遵循S,那么由并集S∪{~L}消解得到的

子句,最后将产生空子句;反之,可以证明,如果从S∪{~L}的子句消解得到空子句,那

么L在逻辑上遵循S。

3、反演求解过程

步骤:

(1)把由目标公式的否定产生的每个子句添加到目标公式否定之否定的子句中去.

(2)按照反演树,执行和以前相同的消解,直至在根部得到某个子句止.

(3)用根部的子句作为一个回答语句。

分析:

答案求取涉及到把一棵根部有NIL的反演树

变换为在根部带有可用作答案的某个语句的一颗

证明树.由于变换关系涉及到把由目标公式的否

定产生的每个子句变换为一个重言式,所以被变

换的证明树就是一棵消解的证明树,其在根部的

思考:应用消解反演求解如下问题:

“如果无论约翰(John)到哪里去,菲

多(Fido)也就去那里,那么如果约翰

在学校里,菲多在哪里呢?”

30

语句在逻辑上遵循公理加上重言式,因而也单独地遵循公理。因此被变换的证明树本身就证

明了求取办法是正确的。

例:储蓄问题

前提:每个储蓄钱的人都获得利息。

结论:如果没有利息,那么就没有人去储蓄钱

3.5规则演绎系统

教学内容:规则演绎系统属于高级搜索推理技术,用于解决比较复杂的系统和问题.本

节介绍规则演绎系统的定义及其三种推理方法:规则正向演绎系统、规则逆向演绎系统和规

则双向演绎系统。

教学重点:规则演绎系统的定义、正向推理和逆向推理过程。

教学难点:双向演绎的匹配问题等。

教学方法:课堂教学为主.通过比较揭示正向推理、逆向推理和双向推理的特点。

教学要求:掌握规则演绎系统的定义和正向推理、逆向推理的过程,了解规则双向演绎

系统.

规则演绎系统的定义:

基于规则的问题求解系统运用下述规则来建立:

If→Then

其中,If部分可能由几个if组成,而Then部分可能由一个或一个以上的then组成.

在所有基于规则系统中,每个if可能与某断言(assertion)集中的一个或多个断言匹配。

有时把该断言集称为工作内存。在许多基于规则系统中,then部分用于规定放入工作内存的

新断言。这种基于规则的系统叫做规则演绎系统(rulebaseddeductionsystem)。在这种系统

中,通常称每个if部分为前项(antecedent),称每个then部分为后项(consequent)。

3.5.1规则正向演绎系统

1、定义

正向规则演绎系统是从事实到目标进行操作的,即从状况条件到动作进行推理的,也就

是从if到then的方向进行推理的。

2、正向推理过程

(1)事实表达式的与或形变换把事实表示为非蕴涵形式的与或形,作为系统的总数据

库。具体变换步骤与前述化为子句形类似。

注意:我们不想把这些事实化为子句形,而是把它们表示为谓词演算公式,并把这些

公式变换为叫做与或形的非蕴涵形式。

例:有事实表达式

(u)(v){Q(v,u)∧~[(R(v)∨P(v))∧S(u,v)]}把它化为

Q(v,A)∧{[~R(v)∧~P(v)]∨~S(A,v)}

对变量更名标准化,使得同一变量不出现在事实表达式的不同主要合取式中,得:

Q(w,A)∧{[~R(v)∧~P(v)]∨~S(A,v)}

(2)事实表达式的与或图表示

31

将上例与或形的事实表达式用与或图来表示,见图3。1。

图3.1一个事实表达式的与或树表示

一般把事实表达式的与或图表示倒过来画,即把根节点画在最下面,而把其后继节点

往上画。上节的与或图表示,就是按通常方式画出的,即目标在上面.

(3)与或图的F规则变换

这些规则是建立在某个问题辖域中普通陈述性知识的蕴涵公式基础上的。把允许用作规

则的公式类型限制为下列形式:

L=〉W

式中:L是单文字;W为与或形的唯一公式。

将这类规则应用于与或图进行推演。假设有一条规则L=〉W,根据此规则及事实表达

式F(L),可以推出表达式F(W).F(W)是用W代替F中的所有L而得到的。当用规则L=〉

W来变换以上述方式描述的F(L)的与或图表示时,就产生一个含有F(W)表示的新图;

也就是说,它的以叶节点终止的解图集以F(W)子句形式代表该子句集。这个子句集包括在

F(L)的子句形和L=〉W的子句形间对L进行所有可能的消解而得到的整集.该过程以极其

有效的方式达到了用其它方法要进行多次消解才能达到的目的.

(4)作为终止条件的目标公式

应用F规则的目的在于从某个事实公式和某个规则集出发来证明某个目标公式.在正向

推理系统中,这种目标表达式只限于可证明的表达式,尤其是可证明的文字析取形的目标公

式表达式。用文字集表示此目标公式,并设该集各元都为析取关系。

结论:

当正向演绎系统产生一个含有以目标节点作为终止的解图时,此系统就成功地终止。

3。5.2规则逆向演绎系统

1、定义

基于规则的逆向演绎系统,其操作过程与正向演绎系统相反,即为从目标到事实的操作

过程,从then到if的推理过程.

2、逆向推理过程

(1)目标表达式的与或形式

逆向演绎系统能够处理任意形式的目标表达式.首先,采用与变换事实表达式同样的过

Q(w,A)∧{[~R(v)∧~P(v)]∨~S(A,v)}

Q(w,A)[~R(v)∧~P(v)]∨~S(A,v)

~R(v)∧~P(v)~S(A,v)

~R(v)

~P(v)

32

程,把目标公式化成与或形.

(2)与或图的B规则变换

B规则是建立在确定的蕴涵式基础上的,正如正向系统的F规则一样。不过,我们现在

把这些B规则限制为

WL(3。4)

形式的表达式.其中,W为任一与或形公式,L为文字,而

且蕴涵式中任何变量的量词辖域为整个蕴涵式.

(3)作为终止条件的事实节点的一致解图

逆向系统成功的终止条件是与或图包含有某个终止在事实

节点上的一致解图.

3.5。3规则双向演绎系统

1、基于规则的正向演绎系统和逆向演绎系统的特点和局限性

正向演绎系统能够处理任意形式的if表达式,但被限制在then表达式为由文字析取组

成的一些表达式.逆向演绎系统能够处理任意形式的then表达式,但被限制在if表达式为文

字合取组成的一些表达式。双向(正向和逆向)组合演绎系统具有正向和逆向两系统的优点,

克服各自的缺点.

2、双向(正向和逆向)组合演绎系统的构成

正向和逆向组合系统是建立在两个系统相结合的基础上的。此组合系统的总数据库由表

示目标和表示事实的两个与或图结构组成,并分别用F规则和B规则来修正.

3、终止条件

组合演绎系统的主要复杂之处在于其终止条件,终止涉及两个图结构之间的适当交接处.

当用F规则和B规则对图进行扩展之后,匹配就可以出现在任何文字节点上.

在完成两个图间的所有可能匹配之后,目标图中根节点上的表达式是否已经根据事实图

中根节点上的表达式和规则得到证明的问题仍然需要判定。只有当求得这样的一个证明时,

证明过程才算成功地终止。若能够断定在给定方法限度内找不到证明时过程则以失败告终.

3。6产生式系统

教学内容:本节介绍产生式系统的定义、组成和推理技术。

教学重点:产生式系统与规则演绎系统的差别和产生式系统的组成。

教学难点:产生式系统的控制策略等。

学方法:课堂教学和实验相结合.重点讲解原理,通过实验进一步领会系统的精髓。充

分利用网络课程中的多媒体素材来表示抽象概念。

教学要求:掌握产生式系统的组成结构,通过实践掌握产生式系统的设计和工作过程。

定义:

在基于规则系统中,每个if可能与某断言(assertion)集中的一个或

多个断言匹配,then部分用于规定放入工作内存的新断言。当then部

分用于规定动作时,称这种基于规则的系统为反应式系统(reaction

system)或产生式系统(productionsystem)。

提问:逆向推理与正向

推理的区别有哪些?

提问:产生式系

统与规则演绎系

统有什么区别?

33

3。6。1产生式系统的组成

1、产生式系统的组成

产生式系统由3个部分组成,即总数据库(或全局数据库)、产生式规则和控制策略,

如图3.2所示.

图3.2产生式系统的主要组成

总数据库有时也被称作上下文,当前数据库或暂时存储器。总数据库是产生式规则的注

意中心。产生式规则的左边表示在启用这一规则之前总数据库内必须准备好的条件.例如在

上述例子中,在得出该动物是食肉动物的结论之前,必须在总数据库中存有“该动物是哺乳动

物”和“该动物吃肉"这两个事实。执行产生式规则的操作会引起总数据库的变化,这就使

其他产生式规则的条件可能被满足.

产生式规则是一个规则库,用于存放与求解问题有关的某个领域知识的规则之集合及其

交换规则。规则库知识的完整性、一致性、准确性、灵活性和知识组织的合理性,将对产生

式系统的运行效率和工作性能产生重要影响。

控制策略为一推理机构,由一组程序组成,用来控制产生式系统的运行,决定问题求解

过程的推理线路,实现对问题的求解。产生式系统的控制策略随搜索方式的不同可分为可撤

回策略、回溯策略、图搜索策略等。

2、产生式系统的控制策略

控制策略的作用是说明下一步应该选用什么规则,也就是如何应用规则.通常从选择规则

到执行操作分3步:匹配、冲突解决和操作。

(1)匹配

在这一步,把当前数据库与规则的条件部分相匹配.如果两者完全匹配,则把这条规则

称为触发规则.当按规则的操作部分去执行时,称这条规则为启用规则。被触发的规则不一定

总是启用规则,因为可能同时有几条规则的条件部分被满足,这就要在解决冲突步骤中来解

决这个问题。在复杂的情况下,在数据库和规则的条件部分之间可能要进行近似匹配。

(2)冲突解决

当有一条以上规则的条件部分和当前数据库相匹配时,就需要决定首先使用哪一条规则,

这称为冲突解决。

(3)操作

操作就是执行规则的操作部分,经过操作以后,当前数据库将被修改.然后,其他的规

则有可能被使用.

3。6。2产生式系统的推理

1、正向推理

控制策略

产生式规则总数据库

34

从一组表示事实的谓词或命题出发,使用一组产生式规则,用以证明该谓词公式或命题

是否成立。

一般策略:先提供一批事实(数据)到总数据库中。系统利用这些事实与规则的前提相匹

配,触发匹配成功的规则,把其结论作为新的事实添加到总数据库中.继续上述过程,用更新

过的总数据库的所有事实再与规则库中另一条规则匹配,用其结论再次修改总数据库的内

容,直到没有可匹配的新规则,不再有新的事实加到总数据库中。

2、逆向推理

从表示目标的谓词或命题出发,使用一组产生式规则证明事实谓词或命题成立,即首先

提出一批假设目标,然后逐一验证这些假设.

一般策略:首先假设一个可能的目标,然后由产生式系统试图证明此假设目标是否在总

数据库中。若在总数据库中,则该假设目标成立;否则,若该假设为终叶(证据)节点,则询

问用户。若不是,则再假定另一个目标,即寻找结论部分包含该假设的那些规则,把它们的

前提作为新的假设,并力图证明其成立.这样反复进行推理,直到所有目标均获证明或者所

有路径都得到测试为止.

3、双向推理

双向推理的推理策略是同时从目标向事实推理和从事实向目标推理,并在推理过程中

的某个步骤,实现事实与目标的匹配。

3。6。3产生式系统举例

3。7系统组织技术

教学内容:系统组织技术属于高级搜索推理技术,能够用于求解比较复杂的系统。本节

简要介绍三种系统组织技术:议程表法、黑板法和△极小搜索法。

教学重点:系统组织技术如何实现模块之间的合作。

教学难点:无要求。

教学方法:课堂教学.

教学要求:了解系统组织技术的基本原理.

3.7。1议程表

1、定义

议程表(agenda)是一个系统能够执行的任务表列.与每个任务有关的有两件事,即提

出该任务的理由和表示对该任务是有用的证据总权的评价。

2、模块间的合作

说明:请同学们课后认真阅读本部分内容,并以此为参考进行实验准备!

思考:规则演绎系统和产生式系统有哪几种推理方式?各自的特点为何?

35

从组织大系统的观点看,议程表方法的意义在于它允许几个独立模块进行通讯。其通讯

方法是每个模块可将支持(或反对)某个具体任务的证据,加到一个证明选择该任务是正确

的表中。这样就使系统能够选出从各方面都有充分证据的任务。虽然各模块共同使用关于为

什么要执行各项任务的证据,但一个模块并不需要了解其它模块如何工作,以及它们所包含

的知识。这样,议程表方法便具有大系统中模块化的一切优点,而无相互隔离的缺点。

3。7。2黑板法

1、定义

黑板法(theBlackboardApproach)首先是在HEARSAY-Ⅱ语音理解系统中发展起来的。

它的思想比较简单.整个系统由一组称为知识资源(KS)的独立模块和一块黑板组成。这里,

知识资源含有系统中专门领域的知识,而黑板则是一切KS可以访问的公用数据结构.

2、模块间的合作

当一个KS被激发时,它检查当时黑板上的内容,并应用其知识产生一个新的假设写到

黑板上,直到完成任务为止。当时间表没有发现未解决的活动记录时,系统便停止执行。

3.7.3Δ-极小搜索法

1、定义

Δ值表示一假设的级别与参加竞争的最佳假设的级别之差,提供了一种选择最有希望假

设的技术.

2、工作过程

一次接受一串输入,顺序地处理,使其形成一个关于输入的统一而相容的解释。Δ—极

小法是这样来解决这类问题的:在适当的时刻,触发某KS,然后为它生成所有它认为是可

能的假设,并赋给某个假设一种级别.由这些级别计算出的Δ值,表示一假设的级别与参加竞

争的最佳假设的级别之差。而在该假设最后导致不相容时,再考虑参加竞争的另一假设。

3.8不确定性推理

教学内容:本节介绍两种不确定性(uncertainty),即关于证据的不确定性和关于结论的

不确定性.

教学要点:不确定性如何表示和推理。

教学难点:不确定性的推理.

教学方法:课堂教学为主.

教学要求:了解不确定性的表示和推理方法。

3。8。1关于证据的不确定性

1、不确定性的表示

一般通过对事实赋于一个介于0和1之间的系数来表示事实的不确定性。1代表完全确

定,0代表完全不确定。这个系数被称为可信度(也有一些专家系统,如MYCIN和EXPERT

等,取可信度的范围为—1到+1)。

36

2、不确定性的处理

当规则具有一个以上的条件时,就需要根据各条件的可信度来求得总条件部分的可信度.

已有的方法有两类:

(1)以模糊集理论为基础的方法

按这种方法,把所有条件中最小的可信度作为总条件的可信度。这种方法类似于当把几

根绳子连接起来使用时,总的绳子强度与强度最差的绳子的相同。

(2)以概率为基础的方法

这种方法同样赋予每个证据以可信度。但当把单独条件的可信度结合起来求取总的可信

度时,它取决于各可信度的乘积。

3。8。2关于结论的不确定性

1、不确定性的表示

关于结论的不确定性也叫做规则的不确定性,它表示当规则的条件被完全满足时,产生

某种结论的不确定程度。它也是以赋予规则在0和1之间的系数的方法来表示的。

例:有以下规则:

如果启动器发生刺耳的噪声那么这个启动器坏的可能性是0.5

以上规则表示,如果“启动器发生刺耳的噪声”这事实完全肯定的可信度为1。0,那么

得出“这个启动器坏”的结论的可信度为0。8。

2、不确定性的处理

如果规则的条件部分不完全确定,即可信度不为1时,如何求得结论的可信度的方法有

以下两种:

(1)取结论可信度为条件可信度与上述系数的乘积。

(2)按照某种概率论的解释,我们假设规则的条件部分的可信度C

in

和其结论部分的可

信度C

out

存在某种关系,这种关系可用来代表规则的不确定性.

3.8。3多个规则支持同一事实时的不确定性

当多个规则支持同一事实时,这些规则之间的关系是析取.如何根据证据的可信度求得

事实的可信度?与关于证据的可信度类似,也有两种方法,分别基于模糊集理论和概率理论。

1、基于模糊集理论的方法

取支持这个事实的各规则的可信度的最大值作为事实的可信度。

2、基于概率论的方法

这里介绍的只是基于概率的方法中的一种.按这种方法由一组规则支持的事实的可信度,

可用以下方法求得,首先把各个证据的可信度转换成可信性比例r。可信性比例r和可信度c

之间的关系可表示为

1

,

1r

r

c

c

c

r

把各证据的可信性比例简单地相乘就可以求得这些证据所支持的事实的可信性比例。然

后,再利用上述公式转换回相应的可信度。这样就求得这个事实的可信度。

37

3。9非单调推理

教学内容:用于解决现实问题领域中的3类情况:不完全的信息、不断变化的情况、以及

求解复杂问题过程中生成的假设,具有较为有效的求解效率。本节简要介绍两种非单调推理

技术:缺省推理和正确性维持系统TMS。

教学要点:缺省推理和正确性维持系统TMS的基本原理.

教学难点:无特别要求.

教学方法:课堂教学.

教学要求:了解缺省推理和正确性维持系统TMS的基本原理。

3。9.1缺省推理

1、定义

当缺乏信息时,只要不出现相反的证据,就可以作一些有益的猜想。构造这种猜想称为

缺省推理(defaultreasoning)。

缺省推理的定义1:如果X不知道,那么得结论Y.

缺省推理的定义2:如果X不能被证明,那么得结论Y。

缺省推理的定义3:如果X不能在某个给定的时间内被证明,那么得结论Y。

2、例子

一个安排会议程序:程序必须求解一个约束满足问题,即找出每个参加者都有空闲的开会

日期与时刻,并有可供开会的房间。

3。9.2非单调推理系统

1、正确性维持系统(TruthMaintenaneSystem,TMS)

这是一个已经实现的非单调推理系统。它用以协助其它推理程序维持系统的正确性,所

以它的作用不是生成新的推理,而是在其它程序所产生的命题之间保持相容性.一旦发现某

个不相容,它就调出自己的推理机制,面向从属关系的回溯,并通过修改最小的信念集来消除

不相容。

2、工作原理

在TMS中,每一命题或规则均称为节点,且对任一节点,以下两种状态必居其一:

IN相信为真

OUT不相信为真,或无理由相信为真,或当前没有可相信的理由。

IN节点是指那些至少有一个在当前说来是有效证实的节点。OUT结点则指那些当前无

任何有效证实的节点.

在系统中,有两种方式可用来证实一个节点的有效性可依赖于其它节点的有效性:

(1)支持表(SL(IN—节点)(OUT-节点))

(2)条件证明(CP(结论)

(IN—假设)

(OUT—假设))

38

3.10小结

对本章讨论过的各种搜索推理技术加以归纳总结.

39

第四章计算智能(1)

教学内容:本章讨论计算智能所涉及的领域和范围,计算智能的含义及它与传统的人工

智能的区别。介绍人工神经网络的由来、特性、结构、模型和算法;神经网络的表示和推理.

简要地介绍模糊数学的基本概念、运算法则、模糊逻辑推理和模糊判决等.

教学重点:计算智能;人工神经网络的结构、模型和算法,以及表示和推理。

教学难点:人工神经网络的结构、算法和推理;模糊数学的运算法则和模糊逻辑推理。

教学方法:课堂教学为主。适当提问,加深学生对概念的理解。

教学要求:通过对本章的学习,使学生掌握人工神经网络的结构、模型和算法,了解计

算智能所涉及的领域和范围,了解人工神经网络的特性、表示和推理,了解模糊数学的基本

概念、运算法则、模糊逻辑推理和模糊判决等。

4。1概述

教学内容:本节介绍计算智能所涉及的领域和范围,计算智能的含义及其与传统人工智

能的区别。贝兹德克提出的“ABC",及它与神经网络(NN)、模式识别(PR)和智能(I)

之间的关系。

教学重点:计算智能的含义及其与传统的人工智能的区别。

教学难点:“ABC”及其与神经网络(NN)、模式识别(PR)和智能(I)之间的关系.

教学方法:课堂教学。

教学要求:掌握计算智能的含义,了解计算智能与传统的人工智能有何区别。了解贝兹

德克提出的“ABC”及其与神经网络(NN)、模式识别(PR)和智能(I)之间的关系.

信息科学与生命科学的相互交叉、相互渗透和相互促进是现代科学技术发展的一个显著

特点。

计算智能涉及神经网络、模糊逻辑、进化计算和人工生命等领域,它的研究和发展正是

反映了当代科学技术多学科交叉与集成的重要发展趋势.

把神经网络(NN)归类于人工智能(AI)可能不大合适,而归类于计算智能(CI)更能说

明问题实质。进化计算、人工生命和模糊逻辑系统的某些课题,也都归类于计算智能。

计算智能取决于制造者(manufacturers)提供的数值数据,不依赖于知识;另一方面,

人工智能应用知识精品(knowledgetidbits)。人工神经网络应当称为计算神经网络。

第一个对计算智能的定义是由贝兹德克(Bezdek)于1992年提出的。

尽管计算智能与人工智能的界限并非十分明显,然而讨论它们的区别和关系是有益的。

马克斯(Marks)在1993年提到计算智能与人工智能的区别,而贝兹德克则关心模式识别

(PR与生物神经网络(BNN)、人工神经网络(ANN)和计算

神经网络(CNN)的关系,以及模式识别与其它智能的关系。

忽视ANN与CNN的差别可能导致对模式识别中神经网络模

型的混淆、误解、误表示和误用.

贝兹德克对这些相关术语给予一定的符号和简要说明或定义.

他给出有趣的ABC:

提问:计算智能与人工智

能的区别和关系如何。

40

A-Artificial,表示人工的(非生物的),即人造的

B-Biological,表示物理的+化学的+(??)=生物的

C-Computational,表示数学+计算机

图4.1表示ABC及其与神经网络(NN)、模式识别(PR)和智能(I)之间的关系。

图4.1ABC的交通关系图

计算智能是一种智力方式的低层认知,它与人工智能的区别只是认知层次从中层下降至

低层而已.中层系统含有知识(精品),低层系统则没有。

当一个系统只涉及数值(低层)数据,含有模式识别部分,不应用人工智能意义上的知

识,而且能够呈现出:

(1)计算适应性;

(2)计算容错性;

(3)接近人的速度;

(4)误差率与人相近,

则该系统就是计算智能系统。

当一个智能计算系统以非数值方式加上知识(精品)值,

即成为人工智能系统。

4。2神经计算

教学内容:本节将介绍人工神经网络的由来、特性、结构、模型和算法;然后讨论神经

网络的表示和推理。这些内容是神经网络的基础知识.神经计算是以神经网络为基础的计算。

教学重点:人工神经网络的结构、模型和算法;神经网络的表示和推理.

教学难点:人工神经网络的结构和算法及其表示和推理。

教学方法:课堂教学为主,并适当提问、收集学生学习情况。

教学要求:掌握人工神经网络的结构、模型和算法,了解人工神经网络的由来和特性,

一般了解神经网络的表示和推理方法.

4.2.1人工神经网络研究的进展

1960年威德罗和霍夫率先把神经网络用于自动控制研究。

60年代末期至80年代中期,神经网络控制与整个神经网络研究一样,处于低潮。

输入

人类知识

(+)传感输入

知识

(+)传感数据

计算

(+)传感器

C-数值的

A-符号的

B-生物的

输入复杂性

BNNBPRBI

ANNAPRAI

CNNCPRCI

提问:计算智能的主

要特征是什么?

41

80年代后期以来,随着人工神经网络研究的复苏和发展,对神经网络控制的研究也十分

活跃。这方面的研究进展主要在神经网络自适应控制和模糊神经网络控制及其在机器人控制

中的应用上。

人工神经网络的特性:

(1)并行分布处理神经网络具有高度的并行结构和并行实现能力,因而能够有较好

的耐故障能力和较快的总体处理能力.

(2)非线性映射神经网络具有固有的非线性特性,这源于其近似任意非线性映射(变

换)能力。

(3)通过训练进行学习神经网络是通过所研究系统过去的数据记录进行训练的.一

个经过适当训练的神经网络具有归纳全部数据的能力。

(4)适应与集成神经网络能够适应在线运行,并能同时进行定量和定性操作。神经网络

的强适应和信息熔合能力使得网络过程可以同时输入大量不同的控制信号,解决输入信息间

的互补和冗余问题,并实现信息集成和熔合处理.

(5)硬件实现神经网络不仅能够通过软件而且可借助软件实现并行处理。近年来,

一些超大规模集成电路实现硬件已经问世,而且可从市场上购到。

4。2。2人工神经网络的结构

神经网络的结构是由基本处理单元及其互连方法决定的.

图4.2所示神经元单元由多个输入x

i

,i=1,2,.。.,n和一个输出y组成。中间状态由输

入信号的权和表示,而输出为:

ytfwx

jjiij

i

n

()()



1

图4。2神经元模型

式中,

j

为神经元单元的偏置(阈值),

w

ji

为连接权系数(对于激发状态,

w

ji

取正值,对

于抑制状态,

w

ji

取负值),n为输入信号数目,

y

j

为神经元输出,t为时间,f(_)为输出变

换函数,有时叫做激励函数,往往采用0和1二值函数或S形函数,见图4。3,这三种函

数都是连续和非线性的.一种二值函数可由下式表示:

fx

xx

xx

()

,

,

1

0

0

0

如图4。3(a)所示。一种常规的S形函数见图4。3(b),可由下式表示:

42

fx

e

fx

ax

(),()



1

1

01

常用双曲正切函数(见图4.3(c))来取代常规S形函数,因为S形函

数的输出均为正值,而双曲正切函数的输出值可为正或负。双曲正

切函数如下式所示:

fx

e

e

fx

ax

ax

(),()



1

1

11

图4。3神经元中的某些变换(激励)函数

1、人工神经网络的基本特性和结构

人工神经网络由神经元模型构成;这种由许多神经元组成的信息处理网络具有并行分布

结构。每个神经元具有单一输出,并且能够与其它神经元连接;存在许多(多重)输出连接

方法,每种连接方法对应一个连接权系数。严格地说,人工神经网络是一种具有下列特性的

有向图:

(1)对于每个节点i存在一个状态变量x

i

(2)从节点j至节点i,存在一个连接权系统数

w

ij

;

(3)对于每个节点i,存在一个阈值

i

(4)对于每个节点i,定义一个变换函数

fxwij

iijii

(,,),;对于最一般的情况,

此函数取fwx

iijji

j

()形式.

人工神经网络的结构基本上分为两类:递归(反馈)网络和前馈网络。

(1)递归网络

在递归网络中,多个神经元互连以组织一个互连神经网络,如图4。4所示。有些神经

元的输出被反馈至同层或前层神经元。因此,信号能够从正向和反向流通。Hopfield网

络,Elmman网络和Jordan网络是递归网络有代表性的例子。递归网络又叫做反馈网络。

提问:神经网络有

哪几种激励函数?

43

图4。4递归(反馈)网络图4。5前馈(多层)网络

图4.4中,V

i

表示节点的状态,x

i

为节点的输入(初始)值,x

i

'为收敛后的输出值,

i=1,2,。..,n。

(2)前馈网络

前馈网络具有递阶分层结构,由一些同层神经元间不存在互连的层级组成.从输入层至

输出层的信号通过单向连接流通;神经元从一层连接至下一层,不存在同层神经元间的连接,

如图4。5所示。图中,实线指明实际信号流通而虚线表示反向传播.前馈网络的例子有多层感

知器(MLP)、学习矢量量化(LVQ)网络、小脑模型联接控制(CMAC)网络和数据

处理方法(GMDH)网络等。

2、人工神经网络的主要学习算法

神经网络主要通过指导式(有师)学习算法和非指导式(无师)学习算法。此外,还存在第

三种学习算法,即强化学习算法;可把它看做有师学习的一种特例。

(1)有师学习

有师学习算法能够根据期望的和实际的网络输出(对应于给定输入)间的差来调整神经

元间连接的强度或权。因此,有师学习需要有个老师或导师来提供期望或目标输出信号.有

师学习算法的例子包括Delta规则、广义Delta规则或反向传播算法以及LVQ算法等.

(2)无师学习

无师学习算法不需要知道期望输出。在训练过程中,只要向神经网络提供输入模式,神

经网络就能够自动地适应连接权,以便按相似特征把输入模式分组聚集.无师学习算法的例

子包括Kohonen算法和Carpenter-Grossberg自适应谐振理论(ART)等.

(3)强化学习

如前所述,强化(增强)学习是有师学习的特例。它不需要

老师给出目标输出。强化学习算法采用一个“评论员"来评价与

给定输入相对应的神经网络输出的优度(质量因数).强化学习

算法的一个例子是遗传算法(GA)。

4。2.3人工神经网络的典型模型

根据伊林沃思(W。T。Illingworth)提供的综合资料,最典型的ANN模型(算法)及其

学习规则和应用领域如表4。2所列(见表4。2)。

提问:神经网络主要

有哪二类学习算法?

44

4.2.4基于神经网络的知识表示与推理

1、基于神经网络的知识表示

基于神经网络系统中知识的表示方法与传统人工智能系统中所用的方法(如产生式、框

架、语义网络等)完全不同,传统人工智能系统中所用的方法是知识的显式表示,而神经网络

中的知识表示是一种隐式的表示方法。在这里,知识并不像在产生式系统中那样独立地表示

为每一条规则,而是将某一问题的若干知识在同一网络中表示。

例:对图4。6所示的异或逻辑的神经网络来说,其邻接矩阵为:

图4。6异或逻辑的神经网络表示

00000

121.30000

102.20000

0100.1135.100

0070.1004.100

如果用产生式规则描述,则该网络代表下述四条规则:

IFx

1

=0ANDx

2

=0THENy=0

IFx

1

=0ANDx

2

=1THENy=1

IFx

1

=1ANDx

2

=0THENy=1

IFx

1

=1ANDx

2

=1THENy=0

2、基于神经网络的推理

基于神经网络的推理是通过网络计算实现的。把用户提供的初始证据用作网络的输入,

通过网络计算最终得到输出结果。

一般来说网络推理有正向网络推理,其步骤如下:

(1)把已知数据输入网络输入层的各个节点。

(2)利用特性函数分别计算网络中各层的输出.计算中,前一层的输出作为后一层有关节

点的输入,逐层进行计算,直至计算出输出层的输出值。

(3)用阈值函数对输出层的输出进行判定,从而得到输出结果.

4。3模糊计算

教学内容:本节简要地介绍模糊数学的基本概念、运算法则、模糊逻辑推理和模糊判决

等。这些内容构成模糊逻辑的基础知识。模糊计算就是以模糊逻辑为基础的计算。

提问:神经网络中

的知识表示采用

了什么样的表示

方法?结合这个

例子回答。

45

教学重点:模糊数学的模糊逻辑推理和模糊判决.

教学难点:模糊数学的运算法则和模糊逻辑推理.

教学方法:课堂教学为主,注意结合例子进行讲解。

教学要求:掌握模糊数学的基本概念、运算法则、模糊逻辑推理方法。

4.3.1模糊集合、模糊逻辑及其运算

首先,让我们介绍模糊集合与模糊逻辑的若干定义.

设U为某些对象的集合,称为论域,可以是连续的或离散的;u表示U的元素,记作U=

{u}.

定义4。1模糊集合(fuzzysets)论域U到[0,1]区间的任一映射

F

,即

F

U:[,]01,

都确定U的一个模糊子集F;

F

称为F的隶属函数(membershipfunction)或隶属度(gradeof

membership)。在论域U中,可把模糊子集表示为元素u与其隶属函数

F

u()的序偶集合,

记为:

FuuuU

F

{(,())|}

(4.7)

定义4。2模糊支集、交叉点及模糊单点如果模糊集是论域U中所有满足

F

u()0的

元素u构成的集合,则称该集合为模糊集F的支集。当u满足

F

10.,则称此模糊集为

模糊单点.

定义4.3模糊集的运算设A和B为论域U中的两个模糊集,其隶属函数分别为

A

B

,则对于所有

uU

,存在下列运算:

(1)A与B的并(逻辑或)记为AB,其隶属函数定义为:



ABAB

uuu

()()()

max(),()

AB

uu

(2)A与B的交(逻辑与)记为

AB

,其隶属函数定义为:



ABAB

uuu

()()()

min(),()

AB

uu

(3)A的补(逻辑非)记为A,其传递函数定义为:



A

A

uu()()1

定义4。4直积(笛卡儿乘积,代数积)若AAA

n12

,,,分别为论域UUU

n12

,,,中的

模糊集合,则这些集合的直积是乘积空间UUU

n12

中一个模糊集合,其隶属函数为:



AAnAAn

nn

uuuuu

11

121

(,,,)min(),,()



AAAn

uuu

n12

12

()()()

定义4。5模糊关系若U,V是两个非空模糊集合,则其直积U×V中的一个模糊子集R

称为从U到V的模糊关系,可表示为:

UVuvuvuUvV

R

((,),(,))|,

定义4。6复合关系若R和S分别为U×V和V×W中的模糊关系,则R和S的复合RS

是一个从U到W的模糊关系,记为:

RSuwuvvw

vV

RS



{[(,);sup(,)(,)]

46

uUvVwW,,}

其隶属函数为:



RS

vV

RS

uwuvuv

(,)((,)(,))

(,)()uwUW

式(4。15)中的*号可为三角范式内的任意一种算子,包括模糊交、代数积、有界积和直

积等。

定义4。7正态模糊集、凸模糊集和模糊数

以实数R为论域的模糊集F,若其隶属函数满足

max()

xR

F

x

1

则F为正态模糊集;若对于任意实数x,a〈x〈b,有



FFF

xab()min(),()

则F为凸模糊集;若F既是正态的又是凸的,则称F为一模糊数。

定义4。8语言变量一个语言变量可定义为多元组

(,(),,,)xTxUGM。其中,x为变量名;Tx()为x的词集,即

语言值名称的集合;U为论域;G是产生语言值名称的语法规则;

M是与各语言值含义有关的语法规则.

4。3.2模糊逻辑推理

模糊逻辑推理是建立在模糊逻辑基础上的,它是一种不确定性推理方法,已经提出了

Zadeh法,Baldwin法、Tsukamoto法、Yager法和Mizumoto法等方法,在此仅介绍Zadeh

的推理方法。

在模糊逻辑和近似推理中,有两种重要的模糊推理规则,即广义取式(肯定前提)假言

推理法(GMP,GeneralizedModusPonens)和广义拒式(否定结论)假言推理法(GMT,

GeneralizedModusTollens),分别简称为广义前向推理法和广义后向推理法。

GMP推理规则可表示为:

前提1:x为A’

前提2:若x为A,则y为B

结论:y为B’

GMT推理规则可表示为:

前提1:y为B

前提2:若x为A,则y为B

结论:x为A'

上述两式中的A、A’、B和B'为模糊集合,x和y为语言变量。

4.3。3模糊判决方法

在推理得到的模糊集合中取一个相对最能代表这个模糊集合的单值的过程就称作解模

糊或模糊判决(Defuzzification)。模糊判决可以采用不同的方法:重心法、最大隶属度方法、

讨论:隶属函数也是

函数,它与通常的实

函数有什么区别?

47

加权平均法、隶属度限幅元素平均法。

下面介绍各种模糊判决方法,并以“水温适中”为例,说明不同方法的计算过程。

1、重心法

所谓重心法就是取模糊隶属函数曲线与横坐标轴围成面积的重心作为代表点。理论上应

该计算输出范围内一系列连续点的重心,即

u

xxdx

xdx

N

x

N

x

()

()

但实际上是计算输出范围内整个采样点(即若干离散值)的重心。这样,在不花太多时

间的情况下,用足够小的取样间隔来提供所需要的精度,这是一种最好的折衷方案.

(举例说明)

2、最大隶属度法

这种方法最简单,只要在推理结论的模糊集

合中取隶属度最大的那个元素作为输出量即可.不

过,要求这种情况下其隶属函数曲线一定是正规

凸模糊集合(即其曲线只能是单峰曲线).如果该曲

线是梯形平顶的,那么具有最大隶属度的元素就可

能不止一个,这时就要对所有取最大隶属度的元

素求其平均值。

3、系数加权平均法

系数加权平均法的输出执行量由下式决定:ukxk

iii

/

式中,系数k

i

的选择要根据实际情况而定,不同的系统就决定系统

有不同的响应特性。当该系数选择kx

iNi

()时,即取其隶属函

数时,这就是重心法.在模糊逻辑控制中,可以通过选择和调整该系

数来改善系统的响应特性.

4、隶属度限幅元素平均法

用所确定的隶属度值α对隶属度函数曲线进行切割,再对切割后等于该隶属度的所有元

素进行平均,用这个平均值作为输出执行量,这种方法就称为隶属度限幅元素平均法。

4。4小结

举例:对于“水温适中”,按最大隶

属度原则,有两个元素40和50具有

最大隶属度1.0,那就要对所有取最

大隶属度的元素40和50求平均值,

执行量应取:

u

max

()/4050245

提问:系数加权平均

法优点是什么?

48

第五章计算智能(2)

教学内容:遗传算法的基本机理和求解步骤;进化策略的算法模型、进化策略和遗传算

法的区别;进化编程的机理与表示和算法步骤;人工生命的起源、发展、定义和研究意义,

及其研究内容和方法。

教学重点:遗传算法的基本机理和求解步骤;进化策略的算法模型;进化编程表示和算

法步骤;人工生命的定义、研究内容和方法。

教学难点:遗传算法的交叉和变异机制;进化编程的表示。

教学方法:课堂教学为主,结合适当提问,收集学生学习情况。

教学要求:通过对本章的学习,使学生了解三种进化算法和人工生命是如何工作的,并

初步了解这些算法研究的进展和应用情况,以及它们的研究意义,掌握主要算法的求解步骤.

生物群体的生存过程普遍遵循达尔文的物竞天择、适者生存的进化准则;生物通过个体

间的选择、交叉、变异来适应大自然环境。生物染色体用数学方式或计算机方式来体现就是

一串数码,仍叫染色体,有时也叫个体;适应能力用对应一个染色体的数值来衡量;染色体

的选择或淘汰问题是按求最大还是最小问题来进行.

20世纪60年代以来,如何模仿生物来建立功能强大的算法,进而将它们运用于复杂的优

化问题,越来越成为一个研究热点。进化计算(evolutionarycomputation)正是在这一背景

下蕴育而生的.进化计算包括遗传算法(geneticalgorithms,GA),进化策略(evolution

strategies)、进化编程(evolutionaryprogramming)和遗传编程(geneticprogramming).

人类不满足于模仿生物进化行为,希望能够建立具有自然生命特征的人造生命和人造生

命系统。对人工生命(ArtificialLife,ALife)的研究,自1987年起取得了重要进展.这是人

工智能和计算智能的一个新的研究热点.

5。1遗传算法

教学内容:介绍遗传算法的基本机理和求解步骤,评介遗传算法研究进展和应用情况.教

学重点:遗传算法的基本机理。

教学难点:遗传算法的交叉和变异机制。

教学方法:课堂教学为主,并通过演示程序sga。exe加深对遗传算法的理解。

教学要求:理解遗传算法的基本机理,了解遗传算法的框图,掌握一般遗传算法的主要

步骤,初步了解遗传算法研究的进展和应用情况.

遗传算法是模仿生物遗传学和自然选择机理,通过人工方式构造的一类优化搜索算法,

是对生物进化过程进行的一种数学仿真,是进化计算的一种最重要形式.

49

5.1.1遗传算法的基本机理

霍兰德提出的遗传算法通常称为简单遗传算法(SGA).现以此作为讨论主要对象,加上

适应的改进,来分析遗传算法的结构和机理。在讨论中会结合销售员旅行问题(TSP)来说

明.

1、编码与解码

许多应用问题的结构很复杂,但可以化为简单的位串形式编码表示。将问题结构变换为

位串形式编码表示的过程叫编码;而相反将位串形式编码表示变换为原问题结构的过程叫解

码或译码。把位串形式编码表示叫染色体,有时也叫个体。

GA的算法过程简述如下。首先在解空间中取一群点,作为遗传开始的第一代。每个点

(基因)用一个二进制数字串表示,其优劣程度用一目标函数——适应度函数(fitnessfunction)

来衡量。

遗传算法最常用的编码方法是二进制编码。

二进制编码的最大缺点之一是长度较大,对很多问题

用其他主编码方法可能更有利。其他编码方法主要有:浮

点数编码方法、格雷码、符号编码方法、多参数编

码方法等.

举例:对于销售员旅行问题,按一条回路中城市的次

序进行编码。从城市w

1

开始,依次经过城市w

2

,……,w

n

最后回到城市w

1

,我们就有如下编码表示:

w

1

w

2

……w

n

由于是回路,记w

n+1

=w

1

。它其实是1,……,n的一个

循环排列。要注意w

1

,w

2

,……,w

n

是互不相同的.

2、适应度函数

为了体现染色体的适应能力,引入了对问题中的每一个染色体都能进行度量的函数,叫

适应度函数(fitnessfunction)。TSP的目标是路径总长度

为最短,自然地,路径总长度就可作为TSP问题的适应度

函数.

适应度函数要有效反映每一个染色体与问题的最优

解染色体之间的差距.适应度函数的取值大小与求解问

题对象的意义有很大的关系.

3、遗传操作

简单遗传算法的遗传操作主要有有三种:选择(selection)、交叉(crossover)、变异

(mutation)。改进的遗传算法大量扩充了遗传操作,以达到更高的效率。

选择操作也叫复制(reproduction)操作,根据个体的适应度函数值所度量的优劣程度

决定它在下一代是被淘汰还是被遗传。

交叉操作的简单方式是将被选择出的两个个体P1和P2作为父母个体,将两者的部分

码值进行交换。

变异操作的简单方式是改变数码串的某个位置上的数码。二进制编码表示的简单变异

操作是将0与1互换:0变异为1,1变异为0。

提问:二进制编码存在的缺点

是什么?

课后查资料:浮点数编码方

法、格雷码、符号编码方

法、多参数编码方法

举例:销售员旅行问题采用符

号编码方法。

举例:TSP问题的适应度函数。

讨论:适应度函数如何有效反

映每一个染色体与问题的最优

解染色体之间的差距?

50

5。1。2遗传算法的求解步骤

1、遗传算法的特点

遗传算法是一种基于空间搜索的算法,它通过自然选择、遗传、变异等操作以及达尔文

适者生存的理论,模拟自然进化过程来寻找所求问题的解答。遗传算法具有以下特点:

(1)遗传算法是对参数集合的编码而非针对参数本身进行进化;

(2)遗传算法是从问题解的编码组开始而非从单个解开始搜索;

(3)遗传算法利用目标函数的适应度这一信息而非利用导

数或其它辅助信息来指导搜索;

(4)遗传算法利用选择、交叉、变异等算子而不是利用确定

性规则进行随机操作。

2、遗传算法的框图

简单遗传算法框图如图5。2所示。

算法的停止条件最简单的有如下二种:(1)完成了预先

给定的进化代数则停止;(2)群体中的最优个体在连续若干代

没有改进或平均适应度在连续若干代基本没有改进时停止。

一般遗传算法的主要步骤如下:

(1)随机产生一个由确定长度的特征字符串组成的初

始群体。

(2)对该字符串群体迭代的执行下面的步①和②,直

到满足停止标准:

①计算群体中每个个体字符串的适应值;

②应用复制、交叉和变异等遗传算子产生下一代群

体。

(3)把在后代中出现的最好的个体字符串指定为遗传

算法的执行结果,这个结果可以表示问题的一个解.

根据遗传算法思想可以画出简单遗传算法框图5。2。

3、遗传算法求解举例

为了便于理解,下面通过一个简单的例子来说明遗传算法的主要内容及其运行步骤。

例:设

)1ln()(2xxf,用SGA求

]15,0[),(maxxxf

首先用程序SGA。exe对例2进行实算.

其求解步骤如下:

(1)方案表示

初始化种群

变异操作

计算适应度值

选择操作

交叉操作

初始化种群

终止条件

开始

图5.2简单遗传算法框图

提问:遗传算法的主

要优点有哪些?

演示:看例子的演示,

观察SGA是否收敛,参

数对算法有什么影响。

51

用一个二进制矢量表示一个染色体,由染色体来代表变量x的实数值,每个染色体的每

一位二进制数称为遗传因子。

(2)群体初始化

随机产生一定数量的染色体,每个染色体为22位字节的二进制数。

(3)适应度函数

适应度函数必须有能力计算搜索空间中每个确定长度的特征字符串的适应值。

(4)遗传操作

采用的遗传操作分别是复制、交叉和变异。交叉相对于复制和变异的不同之处在于:交

叉需要两个父代染色体配合进行,而复制和变异只需要一个父代染色体即可进行。变异可根

据一定的变异率来改变一个或多个遗传因子。

(5)算法参数

遗传算法的主要参数有群体规模和算法执行的最大代数目,次要参数有复制概率、杂交

概率和变异概率等参数.

5。2进化策略

教学内容:介绍进化策略的算法模型、进化策略和遗传算法的区别。

教学重点:进化策略的算法模型。

教学难点:没有要求。

教学方法:课堂教学为主.

教学要求:了解进化策略的算法模型,一般了解进化策略和遗传算法的区别.

进化策略是一类模仿自然进化原理以求解参数优化问题的算法。它是由雷切伯格

(Rechenberg)、施韦费尔(Schwefel)和彼得·比纳特(PeterBienert)于1964年提出的,并在

德国共同建立的。

5。2.1进化策略的算法模型

最简单形式的进化策略可描述如下:

(1)问题被定义为寻求与函数的极值相关联的实数n维矢量x,F(x):Rn→R。

(2)从每个可能的范围内随机选择父矢量的初始群体,初始试探的分布具有典型的一

致性。

(3)父矢量x

i

,i=1,…,p通过加入一个零均方差的高斯随机变量以及预先选择x

的标准偏差来产生子代矢量x

i

(4)通过对误差x

F

i

'

(i=1,…,p)排序以选择和决定保持哪些矢

量。那些拥有最小误差的P矢量成为下一代的新的父代。

(6)产生新的试验数据以及选择最小误差矢量的过程将继续到

找到符合条件的答案或者所有的计算已经全部完成为止。

(举例说明)

举例:求一个3维

问题的最小值。

52

5。2。2进化策略和遗传算法的区别

除了研究和应用领域外,进化策略和遗传算法

还有以下区别:

(1)进化策略和遗传算法表示个体的方式不同,

进化策略在浮点矢量上运行,而遗传算法一般运行在二进制矢量上.

(2)进化策略和遗传算法的选择过程不同.

(3)进化策略和遗传算法的复制参数不同,遗传算法的复制参数

(交叉和变异的可能性)在进化过程中保持恒定,而进化策略时时改

变它们。

随着技术的发展,进化策略和遗传算法以上的差别越来越不明显.

5。3进化编程

教学内容:介绍进化编程的机理与表示及算法步骤。

教学重点:进化编程的机理与表示。

教学难点:进化编程的表示。

教学方法:课堂教学为主,充分利用网络课程中的有关素材及示例程序阐述抽象概念.

教学要求:了解进化编程的机理与表示,一般了解算法步骤。

进化编程又称为进化规划(EvolutionaryPlanning),是由福格尔(Fogel)在1962年提出的

一种模仿人类智能的方法。他们为有限状态机的演化而提出进化规划来预测问题。这些状态

机的状态变换表是通过对应的离散有界集上进行的均匀随机变异来修改的。进化编程根据正

确预测的符号数来度量适应值。通过变异,为父代群体中的每个机器状态产生一个子代。父

代和子代中最好的部分被选择生存下来.

5。3。1进化编程的机理与表示

进化编程的过程,可理解为从所有可能的计算机程序形成的空间中,搜索具有高的适应

度的计算机程序个体。在进化编程中,可能有几百或几千个计算机程序参与遗传进化。

进化编程最初由一随机产生的计算机程序群体开始,这些计算机程序由适合于问题空间

领域的函数所组成,这样的函数可以是标准的算术运算函数、标准的编程操作、逻辑函数或

由领域指定的函数。群体中每个计算机程序个体是用适应度来评价的,该适应值与特定的问

题领域有关。

提问:进化策略

和遗传算法还

有什么区别?

53

5.3。2进化编程的步骤

进化编程可繁殖出新的计算机程序以

解决问题,它分为三个步骤:

(1)产生出初始群体,它由关于问题

(计算机程序)的函数随机组合而成.

(2)迭代完成下述子步骤,直至满足选

种标准为止:

①执行群体中的每个程序,根据它解

决问题的能力,给它指定一个适应值。

②应用变异等操作创造新的计算机程

序群体。

(3)在后代中适应值最高的计算机程

序个体被指定为进化编程的结果.

进化编程的基本过程如图5。6所示.

进化计算的三种算法—-遗传算法、进化

策略和进化编程都是模拟生物界自然进化

过程而建立的鲁棒性计算机算法。在统一框

架下对三种算法进行比较,可以发现它们有

许多相似之处,同时也存在较大的差别.进化

策略和进化编程都把变异作为主要搜索算

子,而在标准的遗传算法中,变异只处于次要位置.交叉在遗传算法中起着重要作用,而在进

化编程中却被完全省去,在进化策略中与自适应结合使用,起了很重要的作用。标准遗传算

法和进化编程都强调随机选择机制的重要性,而从

进化策略的角度看,选择(复制)是完全确定的。进

化策略和进化编程确定地把某些个体排除在被选

择(复制)之外,而标准遗传算法一般都对每个个

体指定一个非零的选择概率.

5。4人工生命

教学内容:本节介绍人工生命的起源、发展、定义和研究意义,及其研究内容和方法,

并列出几个人工生命的实例。

教学重点:人工生命的定义、研究内容和方法。

教学难点:人工生命的研究方法。

讨论:试考虑进化计算的三种算法

——遗传算法、进化策略和进化编

程的相似之处和存在的差别。

图5.6进化编程的基本过程

变异和创造子代

评估已存在的FSM

用最好的状态机

预测和添加符号

选择父代

初始化观测顺序

是否预测

初始化群体

54

教学方法:课堂教学为主,并及时提问、收集学生学习情况、调整施教手段.

教学要求:了解人工生命的定义、研究内容和方法,一般了解人工生命的起源和发展.

人工生命(ArtificialLife,AL)试图通过人工方法建造具有自然生命特征的人造系统.

进化计算的主要方法,即遗传算法、遗传编程和进化策略,是开发人工生命系统的有效

工具.

5.4。1人工生命研究的起源和发展

人类长期以来一直力图用科学技术方法模拟自然界,包括人脑本身.

人工生命的许多早期研究工作也源于人工智能.20世纪60年代罗森布拉特研究感知机,

斯塔尔(Stahl)建立细胞活动模型,林登迈耶(Lindenmayer)提出了生长发育中的细胞交互作用

数学模型.这些模型支持细胞间的通信和差异。

20世纪70年代以来,康拉德(Conrad)等研究人工仿生系统中的自适应、进化和群体动

力学,提出不断完善的“人工世界”模型。

80年代,人工神经网络再度兴起促进人工生命的发展。在1987

年第一次人工生命研讨会上,美国圣塔菲研究所(SantaFe

Institute,SFI)非线性研究组的兰顿(Langton)正式提出人工生命

的概念,建立起人工生命新学科.此后,人工生命研究进入一个蓬

勃发展的新时期.

5。4。2人工生命的定义和研究意义

人工生命研究是一项抽象地提取控制生物现象的基本动态原理,并通过物理媒介(如计

算机)模拟生命系统动态发展过程的工作。

1、人工生命的定义

通俗地讲,人工生命即人造的生命,非自然的生命.然而,要对人工生命做出严格的定义,

却需要对问题进行深入研究。

1987年兰德提出的人工生命定义为:“人工生命是研究能够演示出自然生命系统特征行

为的人造系统”。通过计算机或其它机器对类似生命的行为进行综合研究,以便对传统生物

科学起互补作用。地球上存在着由进化而来的碳链生命,而人工生命则在“生命之所能”

(life-as-it-could—be)的广泛意象中把“生命之所识”(life-as—we-know—it)加以定位,

为理论生物学的发展做出贡献.兰德在计算机上演示了他们研制的具有生命特征的软件系

统,并把这类具有生命现象和特征的人造系统称为人工生命系统。

从各种不同的自然生命的特征和现象中,可以归纳和抽象出自然生命的共同特征和现

象,包括但不限于:

(1)自繁殖、自进化、自寻优.

(2)自成长、自学习、自组织。

(3)自稳定、自适应、自协调。

(4)物质构造。

(5)能量转换。

(6)信息处理.

提问:简述人工生命

和人工智能的关系。

提问:人工生命和自然

生命有些什么联系?

55

如果把人工生命定义为具有自然生命现象和(或)特征的人造系统,那么,凡是具有上

述自然生命现象和(或)特征的人造系统,都可称为人工生命。

2、研究人工生命的意义

人工生命是自然生命的模拟、延伸与扩展,其研究开发有重大的科学意义和广泛的应用

价值.

(1)发基于人工生命的工程技术新方法、新系统、新产品。

(2)为自然生命的研究提供新模型、新工具、新环境。

人工生命的研究开发可以为自然生命的研究探索提供新模型、新工具、新环境。

(3)延伸人类寿命、减缓衰老、防治疾病。

(4)扩展自然生命,实现人工进化和优生优育。

(5)促进生命科学、信息科学、系统科学的交叉与发展。

5.4。3人工生命的研究内容和方法

人工生命的研究对象包括人工动物、人工植物和人工人等,而人工人的研究又涉及人工

脑和其它人工器官。

1、人工生命的研究内容

(1)构成生物体的内部系统,包括脑、神经系统、内分泌系统、免疫系统、遗传系统、

酶系统、代谢系统等。

(2)生物体及其群体的外部系统,包括环境适应系统和遗传进化系统等。

人工生命的科学框架可由下列主要内容构成:

(1)生命现象仿生系统

(2)生命现象的建模与仿真

(3)进化动力学

(4)人工生命的计算理论和工具

(5)进化机器人

(6)进化和学习等方面的结合

(7)人工生命的应用

2、人工生命的研究方法

从生物体内部和外部系统的各种信息出发,可得到人工生命的不同研究方法,主要可分

为两类:

(1)信息模型法。(2)工作原理法。

人工生命的研究技术途径也可分为两种:

(1)工程技术途径。(2)生物科学途径。

5.4.4人工生命的实例

人工生命的理论可通过有代表性的研究实例来阐述。下面简要介绍几个比较成功的研究

和应用范例。

1、人工脑

2、计算机病毒

3、计算机进程

4、细胞自动机

讨论:人工生命的研究内容

与自然生命有何密切联系。

思考:什么是人工生命?人

工生命包括哪些研究内容?

其研究方法如何?

56

5、人工核苷酸

5。5小结

57

第六章专家系统

教学内容:本章主要介绍专家系统的定义、结构、特点和类型,分析了基于规则的专家

系统、基于框架的专家系统和基于模型的专家系统,归纳了协同式和分布式等新型专家系统,

并结合实例介绍了专家系统的设计方法和开发工具。

教学重点:专家系统的特点、专家系统的类型、专家系统的设计等.

教学难点:专家系统的设计。

教学方法:课堂教学为主.注意结合学生前面所学的人工智能原理、知识的表示等内容,

及时提问加深学生对基本原理和概念以及专家系统开发设计等的理解.利用网络课程中的相

关内容,协助对抽象概念的理解。

教学要求:重点掌握专家系统的基本概念和设计,掌握基于规则、基于模型、基于框架

的专家系统,了解新型专家系统的一些概念和类型,一般了解专家系统的开发工具以及评价

方法。

6.1专家系统概述

教学内容:本小节讨论专家系统的一些基本概念,介绍专家系统的定义、结构、特点和

类型。本小节内容是本章的一个重点,是深入学习讨论专家系统的基础。

教学重点:专家系统的定义、专家系统的结构、专家系统的一般特点、各类专家系统的

任务和特点。

教学难点:专家系统的结构与建造步骤。

教学方法:主要通过课堂教学,讲解各种基本概念和系统结构,归纳专家系统的一般特

点,分析各类专家系统的任务、特点并进行举例

教学要求:重点掌握专家系统的定义与基本结构,掌握专家系统的特点,了解专家系统

的类型

6.1。1专家系统的特点

1、定义

专家系统是一个含有大量的某个领域专家水平的知识与经验智能计算机程序系统,能够

利用人类专家的知识和解决问题的方法来处理该领域问题。简而言之,专家系统是一种模拟

人类专家解决领域问题的计算机程序系统.

2、专家系统特点

启发性:专家系统能运用专家的知识与经验进行推理、判断和决策。

透明性:专家系统能够解释本身的推理过程和回答用户提出的问题,以便让用户能够了

解推理过程,提高对专家系统的信赖感。

灵活性:专家系统能不断地增长知识,修改原有知识,不断更新。

3、专家系统的优点

具体地说,包括下列八个方面:

(1)专家系统能够高效率、准确、周到、迅速和不知疲倦地进行工作.

(2)专家系统解决实际问题时不受周围环境的影响,也不可能遗漏忘记。

(3)可以使专家的专长不受时间和空间的限制,以便推广珍贵和稀缺的专家知识与经验。

58

(4)专家系统能促进各领域的发展。

(5)专家系统能汇集多领域专家的知识和经验以及他们协作解决重大问题的能力。

(6)军事专家系统的水平是一个国家国防现代化的重要标志之一。

(7)专家系统的研制和应用,具有巨大的经济效益和社会效益。

(8)研究专家系统能够促进整个科学技术的发展.

6。1。2专家系统的类型

1、解释专家系统

任务通过对过去和现在已知状况的分析,推断未来可能发生的情况

特点数据量很大,常不准确、有错误、不完全能从不完全的信息中得出解释,并能对数

据做出某些假设,推理过程可能很复杂和很长

例子语音理解、图象分析、系统监视、化学结构分析和信号解释等。

2、预测专家系统

任务通过对已知信息和数据的分析与解释,确定它们的涵义。

特点系统处理的数据随时间变化,且可能是不准确和不完全,系统需要有适应时间变

化的动态模型

例子有气象预报、军事预测、人口预测、交通预测、经济预测和谷物产量预测等

3、诊断专家系统

任务根据观察到的情况(数据)来推断出某个对象机能失常(即故障)的原因

特点能够了解被诊断对象或客体各组成部分的特性以及它们之间的联系,能够区分一

种现象及其所掩盖的另一种现象,能够向用户提出测量的数据,并从不确切信息中得出尽可

能正确的诊断

例子医疗诊断、电子机械和软件故障诊断以及材料失效诊断等。

4、设计专家系统

任务寻找出某个能够达到给定目标的动作序列或步骤。

特点从多种约束中得到符合要求的设计;系统需要检索较大的可能解空间;能试验性地

构造出可能设计;易于修改;能够使用已有设计来解释当前新的设计。

例子VAX计算机结构设计专家系统等.

5、规划专家系统

任务寻找出某个能够达到给定目标的动作序列或步骤。

特点所要规划的目标可能是动态的或静态的,需要对未来动作做出预测,所涉及的问

题可能很复杂。

例子军事指挥调度系统、ROPES机器人规划专家系统、汽车和火车运行调度专家系统

等。

6、监视专家系统

任务对系统、对象或过程的行为进行不断观察,并把观察到的行为与其应当具有的行

为进行比较,以发现异常情况,发出警报.

特点系统具有快速反应能力,发出的警报要有很高的准确性,能够动态地处理其输入信

息。

例子粘虫测报专家系统.

7、控制专家系统

任务自适应地管理一个受控对象或客体的全面行为,使之满足预期要求。

特点控制专家系统具有解释、预报、诊断、规划和执行等多种功能。

59

例子空中交通管制、商业管理、自主机器人控制、作战管理、生产过程控制和质量控

制等。

8、调试专家系统

任务对失灵的对象给出处理意见和方法。

特点同时具有规划、设计、预报和诊断等专家系统的功能。

例子在这方面的实例还比较少见.

9、教学专家系统

任务

教学专家系统的任务是根据学生的特

点、弱点和基础知识,以最适当的教案和教

学方法对学生进行教学和辅导。

特点

(1)同时具有诊断和调试等功能。

(2)具有良好的人机界面。

例子MACSYMA符号积分与定理证明

系统,计算机程序设计语言和物理智能计算

机辅助教学系统以及聋哑人语言训练专家系

统等。

10、修理专家系统

任务对发生故障的对象(系统或设备)

进行处理,使其恢复正常工作。修理专家系

统具有诊断、调试、计划和执行等功能.

例子美国贝尔实验室的ACI电话和有

线电视维护修理系统。

此外,还有决策专家系统和咨询专家系统等。

6.1。3专家系统的结构和建造步骤

1、专家系统的简化结构

专家系统的结构是指专家系统各组成部分的

构造方法和组织形式。系统结构选择恰当与否,是

与专家系统的适用性和有效性密切相关的。选择什

么结构最为恰当,要根据系统的应用环境和所执行

任务的特点而定.

图6。1表示专家系统的简化结构图。

图6.1专家系统简化结构图图6。2理想专家系统的结构图

习题:

1.能根据学生的特点、弱点和基础知识,以

最适当的教案和教学方法对学生进行教

学和辅导的专家系统是:

A.解释专家系统B.调试专家系统

C.监视专家系统D.教学专家系统

答案:D.

2.用于寻找出某个能够达到给定目标的动作

序列或步骤的专家系统是:

A.设计专家系统B.诊断专家系统

C.预测专家系统D.规划专家系统

答案:D.

3.能对发生故障的对象(系统或设备)进行

处理,使其恢复正常工作的专家系统是:

A.修理专家系统B.诊断专家系统

C.调试专家系统D.规划专家系统

答案:A.

4.能通过对过去和现在已知状况的分析,推

断未来可能发生的情况的专家系统是:

A.修理专家系统B.预测专家系统

C.调试专家系统D.规划专家系统

答案:B.

60

2、理想专家系统的结构

如图6.2所示。由于每个专家系统所需要完成的任务和特点不相同,其系统结构也不尽相

同,一般只具有图中部分模块。

接口是人与系统进行信息交流的媒介,它为用户提供

了直观方便的交互作用手段。

黑板是用来记录系统推理过程中用到的控制信息、

中间假设和中间结果的数据库.它包括计划、议程和中

间解3部分。

知识库包括两部分内容.一部分是已知的同当前问题有关的数据信息;另一部分是进行

推理时要用到的一般知识和领域知识。

调度器按照系统建造者所给的控制知识,从议程中选择一个项作为系统下一步要执行的

动作。执行器应用知识库中的及黑板中记录的信息,执行调度器

所选定的动作。协调器的主要作用就是当得到新数据或新假设时,

对已得到的结果进行修正,以保持结果前后的一致性。

解释器的功能是向用户解释系统的行为,包括解释结论的正

确性及系统输出其它候选解的原因。

3、一般应用程序与专家系统的区别

前者把问题求解的知识隐含地编入程序,而后者

则把其应用领域的问题求解知识单独组成一个实体,

即为知识库.知识库的处理是通过与知识库分开的

控制策略进行的.更明确地说,一般应用程序把知识组

织为两级:数据级和程序级;大多数专家系统则将知识组织

成三级;数据、知识库和控制。

4、专家系统的建造步骤

参见图6.3,建立系统的一般步骤如下:

(1)设计初始知识库,包括:

(a)问题知识化,即辨别所研究问题的实质,如要解决的任务是什么,它是如何定义的,

可否把它分解为子问题或子任务,它包含哪些典型数据等.

(b)知识概念化,即概括知识表示所需要的关键概念及其关系,如数据类型、已知条件

(状态)和目标(状态)、提出的假设以及控制策略等。

(c)概念形式化,即确定用来组织知识的数据结构形式,应用人工智能中各种知识表

示方法把与概念化过程有关的关键概念、子问题及信息流特性等变换为比较正式的表达,它

包括假设空间、过程模型和数据特性等.

(d)形式规则化,即编制规则、把形式化了的知识变换为由编程语言表示的可供计算

机执行的语句和程序.

(e)规则合法化,即确认规则化了知识的合理性,检验规则的有效性.

(2)原型机的开发与试验

在选定知识表达方法之后,即可着手建立整个系统所需要的实验子集,它包括整个模型

的典型知识,而且只涉及与试验有关的足够简单的任务和推理过程。

图6.3专家系统的建造步骤

提问:已学过的知识

表示的方法有那些?

提问:1专家系统的定义?

2专家系统程序与常规的应

用程序之间有何不同呢?

61

(3)知识库的改进与归纳

反复对知识库及推理规则进行改进试验,归纳出更完善的结果。经过相当长时间(例如

数月至二、三年)的努力,使系统在一定范围内达到人类专家的水平。

6。2基于规则的专家系统

教学内容:本小节介绍基于规则的专家系统。

教学重点:基于规则专家系统的工作模型和结构。

教学难点:基于规则专家系统的工作模型.

教学方法:课堂讲解.

教学要求:掌握基于规则的专家系统的工作原理.

1、基于规则专家系统的工作模型

基于规则的专家系统是个计算机程序,该程序使用一套包含在知识库内的规则对工作存

储器内的具体问题信息(事实)进行处理,通过推理机推断出新的信息。其工作模型如图6.4

所示.

知识库

(规则)

工作储存器

(事实)

推理机

图6。4基于规则专家系统的工作模型

基于规则的专家系统不需要一个人类问题求解的精确匹配,而能够通过计算机提供一

个复制问题求解的合理模型.

2、基于规则专家系统的结构

一个基于规则专家系统的完整结构示于图6。5。其中,知识库、推理机和工作存储器

是构成本专家系统的核心。系统的主要部分是知识库和推理引擎。根据到目前为止讨论的推

理系统,知识库由谓词演算事实和有关讨论主题的规则构成。推理引擎由所有操纵知识库来

演绎用户要求的信息的过程构成—如消解、前向链或反向链。用户接口可能包括某种自然语

言处理系统,它允许用户用一个有限的自然语言形式与系统交互。也可是用带有菜单的图形

接口界面.解释子系统分析被系统执行的推理结构,并把它解释给用户。

提问:您学过的知识

推理方法有哪些?

62

推理机

工作存储器知识库

解释器

用户界面

开发界面

外部程序

用户知识工程师

图6。5基于规则专家系统的结构

6。3基于框架的专家系统

教学内容:本小节介绍基于框架的专家系统。

教学重点:面向目标编程与基于框架设计,基于框架专家系统的结构和一般设计方法.

教学难点:基于框架专家系统的结构.

教学方法:课堂教学.

教学要求:掌握基于框架专家系统的结构。

1、面向目标编程与基于框架设计

基于框架的专家系统建立在框架的基础之上,采用面向目标编程技术,框架的设计和面

向目标的编程共享许多特征。在设计基于框架系统时,专家系统的设计者们把目标叫做框架。

2、基于框架专家系统的结构

基于框架的专家系统是个计算机程序,该程序使用

一组包含在知识库内的框架对工作存储器内的具体

问题信息进行处理,通过推理机推断出新的信息。

这里采用框架而不是采用规则来表示知识。

为了说明设计和表示框架中的某些知识值,让我们考虑图6。6所示的人类框架结构。

类、子类和例子(物体)用于表示对基于框架系统的组织。

3、基于框架专家系统的一般设计方法

基于框架专家系统的主要设计步骤与基于规则的专家系统相似。主要差别在于如何看待

和使用知识,在设计基于框架的专家系统时,把整个问题和每件事想像为编织起来的事物

在辨识事物之后,寻找把这些事物组织起来的方法,对于任何类型的专家系统,其设计

是高度交互的过程。

63

人类

女人男人

特征

名称

侧面

李红

丽达

李勇约翰

规则目标议程表

图6。6人类的框架分层结构

思考:1.知识表示中,框架的构成、表示和推理为何?

2。如何区别“目标”和“框架"这两个易混淆的术语?

思考:试述基于框架的专家系统与基于规则的专家系统的异同点。

提问:基于框架的专家系统与基于规则的专家系统看待和使用知识上有何差别?

6。4基于模型的专家系统

教学内容:本小节介绍基于模型的专家系统。

教学重点:基于模型专家系统的模型与集成模式,神经网络专家系统的基本结构。

教学难点:基于神经网络的专家系统的工作原理。

教学方法:课堂教学。

教学要求:掌握基于模型的专家系统工作原理。

1、基于模型专家系统的提出

对人工智能的研究内容有着各种不同的看法.有一种观点认为:人工智能是对各种定性模

型的获得、表达及使用的计算方法进行研究的学问.基于该观点人们提出了基于模型的专家

系统。

采用各种定性模型来设计专家系统,其优点是显而易见的.

在诸多模型中,人工神经网络模型的应用最为广泛。

2、基于神经网络的专家系统

神经网络模型从知识表示、推理机制到控制方式,与目前专家系统中的基于逻辑的心理

模型有本质的区别。

3、三种神经网络模型与专家系统集成模式

1)神经网络支持专家系统以传统的专家系统为主,以神经网络的有关技术为辅.

2)专家系统支持神经网络以神经网络的有关技术为核心,建立相应领域的专家系统,

采用专家系统的相关技术完成解释等方面的工作

3)协同式的神经网络专家系统针对大的复杂问题,将其分解为若干子问题,针对每个子

问题的特点,选择用神经网络或专家系统加以实现,在神经网络和专家系统之间建立一种耦

合关系

4、神经网络专家系统的基本结构

64

自动获取模块输入、组织并存储专家提供的学习实例、选定神经网络的结构、调用神经

网络的学习算法,为知识库实现知识获取。当新的学习实例输入后,知识获取模块通过对新

实例的学习,自动获得新的网络权值分布,从而更新了知识库。如图6。7所示.

学习示例网络结构学习算法

专家

神经网络

解释器

用户

知识获取

知识库推理机

图6。7神经网络专家系统的基本结构

5、神经网络专家系统的几个问题讨论

1)神经网络的知识表示是一种隐式表示.

2)神经网络通过实例学习实现知识自动获取。

3)神经网络的推理是个正向非线性数值计算过程,同时也是一种并

行推理机制,神经网络各输出节点的输出是数值,因而需要一个解释器对

输出模式进行解释.

4)同一知识领域的几个独立的专家系统可组合成更大的神经网络专

家系统。

6。5新型专家系统

教学内容:一般新型专家系统的特征,两种新型专家系统:协同式和分布式专家系统。

教学重点:新型专家系统的特征,协同式专家系统,分布式专家系统。

教学难点:新型专家系统特征的内涵。

教学方法:课堂教学。

教学要求:掌握新型专家系统的特征并与一般专家系统加以区别.

6.5。1新型专家系统的特征

1、并行与分布处理

基于各种并行算法,采用各种并行推理和执行技术,适合在多处理器的硬件环境中工作,

即具有分布处理的功能。

2、多专家系统协同工作

在这种系统中,有多个专家系统协同合作。

3、高级语言和知识语言描述

专家系统生成系统就能自动或半自动地生成所要的专家系统。

提问:为什么不能把

基于规则的专家系

统组合成大系统?

65

4、具有自学习功能

新型专家系统应提供高级的知识获取与学习功能。

5、引入新的推理机制

在新型专家系统中,除演绎推理之外,还应有归纳推理,各种非标准逻辑推理,以及各

种基于不完全知识和模糊知识的推理等等。

6、具有自纠错和自完善能力

为了排错必须首先有识别错误的能力,为了完善必须首先有鉴别优劣的标准。

7、先进的智能人机接口

理解自然语言,实现语声、文字、图形和图象的直接输入输出是如今人们对智能计算机

提出的要求。

6.5.2分布式专家系统

1、主要目的:把一个专家系统的功能经分解以后分布到多个处理器上去并行地工作,

从而在总体上提高系统的处理效率。

2、环境要求:可以工作在紧耦合的多处理器系统环境中,也可工作在松耦合的计算机

网络环境里,所以其总体结构在很大程度上依赖于其所在的硬件环境.

3、设计和实现分布式专家系统,需要解决的问题:

功能分布把分解得到的系统各部分功能或任务合理均衡地分配到各处理节点上去

知识分布根据功能分布的情况把有关知识经合理划分以后分配到各处理节点上,

接口设计各部分间接口的设计目的是要达到各部分之间互相通讯和同步容易进行,

在能保证完成总的任务的前提下,要尽可能使各部分之间互相独立,部分之间联系越少越好。

系统结构一方面依赖于应用的环境与性质,另一方面依赖于其所处的硬件环境.

驱动方式可供选择的几种驱动方式。

1)控制驱动当需要某模块工作时,就直接将控制转到该模块,或将它作为一个过程

直接调用它,使它立即工作.

2)数据驱动一般一个系统的模块功能都是根据一定的输入,启动模块进行处理以后,

给出相应的输出。

3)需求驱动这种驱动方式亦称“目的驱动”,是一种自顶向下的驱动方式。与此同

时又按数据驱动的原则让数据(或其他条件)具备的模块进行工作,输出相应的结果并送到

各自该去的模块。

4)事件驱动即当且仅当模块的相应事件集合中所有事件都已发生时,才能驱动该模

块开始工作.否则只要其中有一个事件尚未发生,模块就要等待,即使模块的输入数据已经全

部齐备也不行。

6。5。3协同式专家系统

1、概述

一般专家系统解题的领域面很窄单个专家系统的应用局限性很

大,很难获得满意的应用。

协同式多专家系统是克服一般专家系统的局限性的一个重要途径。

协同式多专家系统亦可称“群专家系统”,表示能综合若干个相近领域的或一个领域的

多个方面的子专家系统互相协作共同解决一个更广领域问题的专家系统。

思考:与分布式专

家系统的区别?

66

系统更强调子系统之间的协同合作,而不着重处理的

分布和知识的分布。

2、设计与建立一个协同式多专家系统,需要解决的问题:

1)任务的分解

根据领域知识,将确定的总任务分解成几个分任务,分别由几个分专家系统来完成.

2)公共知识的导出

把解决各分任务所需知识的公共部分分离出来形成一个公共知识库,供各子专家系统共

享。对解决各分任务专用的知识则分别存放在各子专家系统的专用知识库中.

3)讨论方式

目前很多作者主张采用“黑板”作为各分系统进行讨论的“园地"。为了保证在多用户

环境下黑板中数据或信息的一致性,需要采用管理数据库的一些手段来管理它,使用它,因

此黑板有时也称作“中间数据库”。

4)裁决问题

这个问题的解决办法往往十分依赖于问题本身的性质。

5)驱动方式

这个问题是与分布数据库中要考虑的相应问题一致的。尽管协同式多专家系统、各子系

统可能工作在一个处理机上,但仍然有以什么方式将各子系统根据总的要求激活执行的问

题,即所谓驱动方式问题。

6。6专家系统设计

教学内容:本小节以设计一个基于规则的维修咨询系统为例,说明专家系统的设计过程。

教学重点:描述专家知识和应用知识,解释决策。

教学难点:专家系统知识的表示和决策。

教学方法:课堂教学,实例讲解。

教学要求:通过实例使学生更深入地了解专家系统,初步掌握专家系统的设计技术.

6。6。1专家知识的描述

按照EXPERT表达知识的方式,在系统设计过程中主要利用以下3个表达成分:假设

或结论,观测或观察,推理或决策规则.在EXPERT中,观测和假设之间是严格区分的。观测

是观察或量测,它的值可以是“真(T)",“假(F)”,数字或“不知道”等形式。假设是由系

统推理得到的可能结论.通常假设附有不确定性的量度.推理或决策规则表示成产生式规则

1、论的表示

结论规定了所涉及专门知识的范围.在EXPERT中,每个假设

用简写的助记符号和用自然语言(中文、英语或其它设计者希望使

用的语言)

写的正式的说明语句来表示.助记符号用于编写决策

规则时引用假设。

2、观测的表示观测是得到结论所需要的观察或量测结果.它们通常可以用逻辑值:真

(T),假(F)或“不知道",或用数字来表示。把问题组织成菜单那样的编组是一种很有效的

方法。

3、推理规则的表示产生式规则是决策规则最为常用的表示形式可根据观测和假设之

举例:汽车修理的

问题用表表示。

67

间的逻辑关系分成3类:

1)从观测到观测的规则(FF规则)

FF规则规定那些可从已确定的观测直接推导出来的观测的真值。因为通过把观测和假

设相组合可以描述功能更强的产生式规则形式。

2)从观测到假设的规则(FH规则)

在许多用于分类的专家系统中,产生式规则可对产生式结论的可信程度进行量度。

3)从假设到假设的规则(HH规则)

HH(从假设到假设)规则用来规定假设之间的推理。

6.6.2知识的使用和决策解释

建立专家系统还不是一门精确的科学。专家经常提供大量的信息,必须力图抽取专家推

理过程中的关键内容,并且尽可能准确而简洁地表示这些知识。

1、结论的分级与选择

按评价的先后次序,把规则分成等级和选择规则是推理过程中控制策略的基本部分。可

以根据专家的意见来排列与评价规则的次序.与此同时,还必须研究规则的评价次序的影响。

规则评价次序的编排应该使不论采取什么次序,都得到相同的结论.

在产生式规则中应用可信度量测,不仅可以反映实际存在于专家知识中的不确定性,而且

可以减少产生式规则的数量。

2、询问问题的策略

要给出一个询问问题的最佳策略是很困难的,询问的质量在很大程度上取决于在事先是

否把问题清楚地组织好.一个好的询问策略,关键之一是使问题包含尽可能多的结构。应该

根据共同的主题,把问题分成组。用FF规则这样的很简单的规则,可以在问题调查表里强制

按主题进行分枝.如果系统推理所需的信息不是同时接受的话,可以有以下两种提问策略:

1)在某些场合下,专家是以预先仔细规定的序列或固定顺序收集所需的知识。

2)系统不是按固定的顺序询问,而是根据具体情况作出某种选择。

3、决策的解释

系统的设计者和使用者都需要系统对它

所作出的决策给予解释。但是它们对决策解释

的要求又各不相同。

1)对系统设计者的解释。

2)对系统使用者的解释。

一种解释方法是用语句来说明结论。

系统所用的假设可能是任何形式的包含

说明和建议的语句。有时系统的设计者

可以预先提出某些适合于给定假设的解

释.

6。7专家系统开发工具

教学内容:本小节介绍四种主要的专家系统开发工具.

教学重点:骨架型工具(又称外壳)、语言型工具、构造辅助工具和支撑环境。

问题:如果,所有的观测可以同时被获得,

并且所研究的只是分类的问题,那么如何应

用简单的控制策略?

举例:在修理汽车的例子中,可以给出一个

总的来说多少是解释性的说明,而不是生硬

地把结论分成诊断和处理两类。这样的语句

可以是以下形式:“因为汽车的汽缸被淹,

所以把风门踏板踩到底或等待10分钟。”

68

教学难点:语言型工具和支撑环境.

教学方法:课堂讲解。

教学要求:了解专家系统的常用开发工具,掌握语言型开发工具的应用和支撑环境.

1、骨架型开发工具

专家系统一般都有推理机和知识库两部分,而规则集存于知识库内.在一个理想的专家系

统中,推理机完全独立于求解问题领域。系统功能上的完善或改变,只依赖于规则集的完善

和改变。由此,借用以前开发好的专家系统,将描述领域知识的规则从原系统中“挖掉”,

只保留其独立于问题领域知识的推理机部分,这样形成的工具称为骨架型工具.这类工具因

其控制策略是预先给定的,使用起来很方便,用户只须将具体领域的知识明确地表示成为一

些规则就可以了.

因其程序的主要骨架是固定的,除了规则以外,用户不可改变任何东西,因而骨架型工

具存在一些有待解决的问题,影响它的广泛应用。

2、语言型开发工具

语言型工具提供给用户的是建立专家系统所需要的基本机制,其控制策略也不固定于一

种或几种形式,用户可以通过一定手段来影响其控制策略。因此,语言型工具的结构变化范

围广泛,表示灵活,所适应的范围要比骨架型工具广泛得多。

3、构造辅助工具

系统构造辅助工具由一些程序模块组成,有些程序能帮助获得和表达领域专家的知识,

有些程序能帮助设计正在构造的专家系统的结构。它主要分两类,一种是设计辅助工具,另

一种是知识获取辅助工具。

4、支撑环境

支撑设施是指帮助进行程序设计的工具,它常被作为知识工程语言的一部分.工具支撑

环境仅是一个附带的软件包,以便使用户界面更友好.它包括四个典型组件:调试辅助工具、

输入输出设施、解释设施和知识库编辑器。

6。8小结

本章在产生式系统的基础上,首先研究了专家系统的基本问题,包括专家系统的定义、

类型、特点、结构和建造步骤等.接着讨论了基于不同技术建立的专家系统,即第二节基于

规则的专家系统、第三节基于框架的专家系统和第四节基于模型的专家系统。从这些系统的

工作原理和模型可以看出,人工智能的各种技术和方法在专家系统中得到很好的结合和应

用,为人工智能的发展提供很好的范例。

计算机科学的一些新思想和新技术也对专家系统的发展起了重要作用。本章第五章归纳

的新型专家系统,就是应用计算机科学中分布式处理和协同工作机制的结果,它们分别是分

布式专家系统和协同式专家系统。

本章第六节介绍了专家系统的设计,以一个基于规则的维修咨询系统为例,说明了专家

系统的设计过程,并采用EXPERT开发工具进行设计.这将对专家系统有更具体和深入的了

解.

为了提高专家系统的开发效率、质量和自动化水平,需要专家系统的开发工具。本章第

七节简介了4种主要开发工具,即骨架型工具、语言型工具、构造辅助工具和支撑环境。

专家系统是人工智能应用研究的一个最早最有成效领域。人们期待它有新的发展和新的

突破。

69

第七章机器学习

教学内容:机器学习是继专家系统之后人工智能应用的又一重要研究领域。本章主要介

绍机器学习的有关知识及其主要的几种学习方法,并介绍了知识发现的相关内容。

教学重点:机器学习的基本结构、类比学习、神经学习、知识发现

教学难点:学习系统的结构,知识发现的处理过程,

教学方法:课堂教学为主.注意结合学生已学的内容。及时提问、收集学生学习情况,

多实用具体实例来加以说明,注意难易结合,将课程讲述得较为浅显易懂。

教学要求:重点掌握类比学习和知识发现,掌握机器学习的发展史和神经学习,了解解

释学习、归纳学习,一般了解机械学习。

7.1机器学习的定义和发展历史

教学内容:本小节主要介绍了机器学习的定义以及其发展的过程,为后面的进一步学习

打下基础。

教学重点:机器学习的定义

教学难点:对定义的准确把握和理解

教学方法:通过举例引入机器学习的定义,在讲述发展历史时,简介各阶段的具体产物,

让学生有较为具体的感受和体会。

教学要求:重点掌握机器学习的定义,了解机器学习的发展史。

7。1。1机器学习的定义

1。机器学习的基本概念:

按照人工智能大师西蒙的观点,学习就是系统在不断重复的工作中对本身能力的增强或

者改进,使得系统在下一次执行同样任务或类似任务时,会比现在做得更好或效率更高。

2.机器学习的定义

机器学习是研究如何使用机器来模拟人类学习活动的一门学科。稍为严格的提法是:机

器学习是一门研究机器获取新知识和新技能,并识别现有知识的学问.

举例:列举1959年美国的塞缪尔设计的一下棋程序,由这一事件引出关于机器学习的

概念的相关讨论。

提问:讨论关于机器学习的各种概念的提出以及其区别.

7。1.2机器学习的发展史

机器学习是人工智能应用研究较为重

要的分支,它的发展过程大体上可分为4个时期:

1。第一阶段是在50年代中叶到60年代中叶,属于热烈时期.在这个时期,所研究的是

“没有知识"的学习,即“无知"学习;其研究目标是各类自组织系统和自适应系统;指导本

阶段研究的理论基础是早在40年代就开始研究的神经网络模型.在这个时期,我国研制了数

70

字识别学习机.

2。第二阶段在60年代中叶至70年代中叶,被称为机器学习的冷静时期.本阶段的研究目

标是模拟人类的概念学习过程,并采用逻辑结构或图结构作为机器内部描述。这个时期正是

我国“史无前例”的十年,对机器学习的研究不可能取得实质进展。

3。第三阶段从70年代中叶至80年代中叶,称为复兴时期.在这个时期,人们从学习单个

概念扩展到学习多个概念,探索不同的学习策略和各种学习方法。本阶段已开始把学习系统

与各种应用结合起来,中国科学院自动化研究所进行质谱分析和模式文法推断研究,表明我

国的机器学习研究得到恢复。1980年西蒙来华传播机器学习

的火种后,我国的机器学习研究出现了新局面。

4。机器学习的最新阶段始于1986年.一方面,由于神经

网络研究的重新兴起,另一方面,对实验研究和应用研究得

到前所未有的重视。我国的机器学习研究开始进入稳步发展

和逐渐繁荣的新时期。

7.2机器学习的主要策略与基本结构

内容与作用:本小节概括了机器学习的主要策略,同时给出了机器学习的基本结构,让

学生对机器学习的机制有了基本的认识。

教学重点:机器学习的基本结构。

教学难点:机器学习基本结构的内在联系。

教学方法:通过概括介绍让学生了解几种基本的策略,按从易到难的顺序,层层铺垫,

为后面的学习埋下伏笔。详细讲述机器学习的基本结构,通过图示让更为形象的说明。

教学要求:重点掌握机器学习的基本结构,了解机器学习的几种主要策略,一般了解影响

学习系统设计的因素。

7。2。1机器学习的主要策略

学习过程与推理过程是紧密相连的,按照学习中使用推理的多少,机器学习所采用的

策略大体上可分为4种-—机械学习、示教学习、类比学习和示例学习。学习中所用的推

理越多,系统的能力越强.

1。机械学习就是记忆,是最简单的学习策略。这种学习策略不需要任何推理过程。

2。比机械学习更复杂一点的学习是示教学习策略。系统在接受外部知识时需要一点推

理,翻译和转化工作.

3.类比学习系统只能得到完成类似任务的有关因此,他比

上述两种学习策略需要更多的推理。

4。采用示例学习策略的计算机系统,事先完全没有完成

任务的任何规律性的信息,因此需要推理是最多的。

讨论:根据对四个时期的

划分和分段了解,讨论机

器学习在现实生活中的

具体运用及其影响。

讨论:通过对比四种主要

策略,讨论其各自的优缺

点以及其适用的环境。

71

7。2。2机器学习系统的基本结构

1。基本结构

图7。1表示学习系统的基本结构:

图7.1学习系统的基本结构

通过对这个简单模型的讨论,总结出设计学习

系统应当注意的某些总的原则:

环境向系统的学习部分提供某些信息,学习部

分利用这些信息修改知识库,以增进系统执行部分完

成任务的效能,执行部分根据知识库完成任务,同时把获

得的信息反馈给学习部分。在具体的应用中,环境,知识

库和执行部分决定了具体的工作内容,学习部分所需要解

决的问题完全由上述3部分确定.

2.影响学习系统设计的重要因素

(1)。影响学习系统设计的最重要的因素是环境向系统提供的信息.整个过程要遵循“取

之精华,弃之糟粕”的原则,同时谨记“实践是检验真理的唯一标准”。

(2)。知识库是影响学习系统设计的第二个因素。知识的表示有多种形式,在选择表示

方式时要兼顾以下4个方面:

错误!表达能力强。所选择的表示方式能很容易地表达有关的知识.

错误!易于推理。为了使学习系统的计算代价比较低,希望知识表示方式能使推理较为

容易。

错误!容易修改知识库。学习系统的本质要求它不断地修改自己的知识库,当推广得出

一般执行规则后,要加到知识库中。

错误!知识表示易于扩展.

学习系统不能在全然没有任何知识的情况下凭空获取知识,

每一个学习系统都要求具有某些知识理解环境提供的信息,分析

比较,做出假设,检验并修改这些假设。因此,更确切地说,学习

系统是对现有知识的扩展和改进。

7。3机械学习

教学内容:本小节详细介绍了机械学习,对机械学习模式和一种数据化简模式以及机械

学习的主要缺点都有较为细致的讲解.通过对这种最基本的机器学习的了解,为以后学习更

为复杂的策略打下良好的基础.

教学重点:机械学习的模式和其数据化简模式

环境

学习

知识库执行

举例:以人为例,说明机器学

习和人学习一样,有着其自身

的规律和基本过程。而且,其

学习过程也有着共性。

提问:能否就机器学习的基本

结构,举出相关的例子,并参

照其基本结构对其进行分析。

举例:可举特征向量

的例子来说明表达

能力和推理的问题。

72

教学难点:基本原理

教学方法:用较为通俗的语言将机械学习的模式讲通彻,同时通过图表对其数据化简过

程进行讲解。多结合日常生活中常有的学习过程,和机械学习参照,让学生更容易接受。

教学要求:重点掌握机械学习模式,了解机械学习的数据化简模式以及机械学习的优缺

点。

1、机械学习的模式

机械学习是最简单的机器学习方法.机械学习就是记忆,即

把新的知识存储起来,供需要时检索调用,而不需要计算和推理.

机械学习又是最基本的学习过程。任何学习系统都必须记住它

们获取的知识.在机械学习系统中,知识的获取是以较为稳定和

直接的方式进行的,不需要系统进行过多的加工。

2、数据化简

Lenat,HayesRoth,和Klahr等人于1979年关于机械学习提出一种有趣的观点。他

们指出,可以把机械学习看成是数据化简分级中的第一级。数据化简与计算机语言编译类似;

其目的是把原始信息变成可执行的信息.在机械学习中我们只记忆计算的输入输出,忽略了计

算过程,这样就把计算问题化简成存取问题.见图7。2:

图7。2数据化简级别图

3、主要问题

对于机械学习,需要注意3个重要的问题:存储组织,

稳定性和存储与计算之间的权衡。

(1)存储组织信息:采用适当的存储方式,使检索速度

尽可能地快,是机械学习中的重要问题。

(2)环境的稳定性与存储信息的适用性问题:机械学习系统必须

保证所保存的信息适应于外界环境变化的需要,这也就是所谓的信息

适用性问题.

(3)存储与计算之间的权衡:对于机械学习来说很重要的一点是它

不能降低系统的效率。

7。4归纳学习

教学内容:本小节详细介绍了归纳学习,对归纳学习的模式有较为细致的讲解,对其定

义有详细的介绍,后半部分介绍了几种常见的归纳学习的方法。

教学重点:归纳学习的定义和其学习模式

教学难点:归纳学习的基本原理

算法和理论

机械记忆

搜索规则

计算存储推导

归纳

举例:可用婴儿刚开

始学东西时所才用的

学习方式和成人的思

维方式比较。

讨论:机械学习

中存在的主要

问题以及对学

习模型的影响。

73

教学方法:仍然使用到图表对归纳学习的模式进行讲授,结合几种常用的归纳学习方法,

让学生形成系统的认识.

教学要求:重点掌握归纳学习的定义及其模式,了解归纳学习的几种常见方法。

归纳学习的定义

(1)归纳(induction)是人类拓展认识能力的重要方法,是一种从个别到一般的,从

部分到整体的推理行为。

(2)归纳推理是应用归纳方法,从足够多的具体事例中归纳出一般性知识,提取事物

的一般规律;它是一种从个别到一般的推理.

(3)归纳学习(inductionlearning)是应用归纳推理进行学习的一种方法.根据归纳学习

有无教师指导,可把它分为示例学习和观察与发现学习.前者属于有师学习,后者属于无师学

习。

7。4.1归纳学习的模式和规则

归纳学习的一般模式为:

给定:(1)观察陈述(事实)F,用以表示有关某些对象、状态、过程等的特定知识;(2)

假定的初始归纳断言(可能为空);(3)背景知识,用于定义有关观察陈述、候选归纳断言以

及任何相关问题领域知识、假设和约束,其中包括能够刻画所求归纳断言的性质的优先准则。

求:归纳断言(假设)H,能重言蕴涵或弱蕴涵观察陈述,并满足背景知识。

假设H永真蕴涵事实F,说明F是H的逻辑推理,则有:

H|〉F(读作H特殊化为F)

或F|〈H(读作F一般化或消解为H)

这里,从H推导F是演绎推理,因此是保真的;而从事实F推导出假设H是归纳推理,

因此不是保真的,而是保假的。

归纳学习系统的模型如图7。3所示。

图7.3归纳学习系统模型

图7.3归纳学习系统模型

实验规划过程通过对实例空间的搜索完成实例选择,并将这

些选中的活跃实例提交解释过程。解释过程对实例加以适当转换,

把活跃实例变换为规则空间中的特定概念,以引导规则空间的搜

索。

实例空间

规则空间

解释过程

规划工程

思考:引导学生通过对归

纳学习模型的学习,结合

身边的实例加以分析。

74

7.4.2归纳学习方法

1、示例学习

示例学习(learningfromexamples)又称为实例学习,它是通过环境中若干与某概念有

关的例子,经归纳得出一般性概念的一种学习方法。

在这种学习方法中,外部环境提供的是一组例子(正例和反例),

示例学习就是要从这些特殊知识中归纳出适用于更大范围的一般性知识,以覆盖所有的

正例并排除所有反例。

2、观察发现学习

观察发现学习又称为描述性概括,其目标是确定一个定律或

理论的一般性描述,刻画观察集,指定某类对象的性质。观察发现

学习可分为观察学习与机器发现两种。前者用于对事例进行聚类,

形成概念描述;后者用于发现规律,产生定律或规则。

7.5类比学习

教学内容:本小节详细介绍了类比学习,首先介绍类比推理,然后讨论类比学习的形式

和学习步骤,最后研究类比学习的过程和研究类型。

教学重点:类比推理,类比学习的学习过程

教学难点:类比推理的步骤

教学方法:本节的知识较为枯燥,讲述的时候要尽量多结合相关的示例让学生能有具体

的感受,更有力于接受知识。

教学要求:重点掌握类比推理的定义,了解类比学习的过程。

7.5。1类比推理和类比学习形式

类比推理是由新情况与已知情况在某些方面的相似来推出它们在其它相关方面的相似。

显然,类比推理是在两个相似域之间进行的:类比推理的目的是从源域中选出与当前问题最

近似的问题及其求解方法以求解决当前的问题,或者建立起目标域中已有命题间的联系,形

成新知识.

其推理过程如下:

(1)回忆与联想

遇到新情况或新问题时,首先通过回忆与联想在S中找出与当前情况相似的情况,这些

情况是过去已经处理过的,有现成的解决方法及相关的知识。

(2)选择

从找出的相似情况中选出与当前情况最相似的情况及其有关知识.

(3)建立对应映射

在S与T的相似情况之间建立相似元素的对应关系,并建立起相

应的映射。

(4)转换

在上一步建立的映射下,把S中的有关知识引到T中来,从而建

举例:通过书上的例

子引出示例学习的

概念,并加以说明。

举例:举出现实

中的具体实例,

按推理过程对

其步骤进行一

步步的细分。

75

立起求解当前问题的方法或者学习到关于T的新知识。

7。5。2类比学习过程与研究类型

类比学习主要包括如下四个过程:

(1)输入一组已知条件(已解决问题)和一组未完全确定的条件(新问题).

(2)对输入的两组条件,根据其描述,按某种相似性的定义寻找两者可类比的对应关系。

(3)按相似变换的方法,将已有问题的概念、特性、方法、关系等映射到新问题上,

以获得待求解新问题所需的新知识。

(4)对类推得到的新问题的知识进行校验.验证正确的知识存入知识库中,而暂时还无

法验证的知识只能作为参考性知识,置于数据库中。

7。6解释学习

教学内容:本小节对两种基本的学习进行了介绍,对相关知识能有所了解,对以后的学习

有很大的帮助。

教学重点:解释学习的过程和算法,神经学习的相关知识

教学难点:解释学习的过程和算法

教学方法:由于本节知识只做一般了解,所以只需对相关概念做个简介即可。

教学要求:了解解释学习的过程及神经学习的概念.

7.6.1解释学习过程和算法

解释学习一般包括下列3个步骤:

(1)利用基于解释的方法对训练例子进行分析与解释。

(2)对例子的结构进行概括性解释。

(3)从解释结构中识别出训练例子的特性,获取一般控制知识。

1986年米切尔(Mitchell)等人为基于解释的学习提出了一个统一的算法EBG,该算法建

立了基于解释的概括过程,并运用知识的逻辑表示和演绎推理进行问题求解。图7。4表示

EBG问题。

图7.4EBG问题

操作准则

新规则

知识库

目标概念

训练例子

76

EBG求解问题的形式可描述于下:

给定:

(1)目标概念描述TC;

(2)训练实例TE;

(3)领域知识DT;

(4)操作准则OC.

求解:训练实例的一般化概括,使之满足:

(1)目标概念的充分概括描述TC;

(2)操作准则OC。

7。6.2解释学习举例

例子:通过解释学习获得一个物体(x)可安全放置到另一个物体(y)上的概念。

7.7神经学习

教学内容:讨论基于神经网络学习的基本原理.

教学重点:基于反向传播网络的学习,基于Hopfield网络的学习.

教学难点:上述两种神经学习的算法.

教学方法:课堂讲授为主.

教学要求:掌握上述神经学习的结构,了解神经学习的算法.

7。7.1基于反向传播网络的学习

反向传播算法是一种计算单个权值变化引起网络性能变化值的较为简单的方法。由于

BP算法过程包含从输出节点开始,反向地向第一隐含层(即最接近输入层的隐含层)传播由

总误差引起的权值修正,所以称为“反向传播”。反向传播特性与所求解问题的性质和所作

细节选择有极为密切的关系.

7.7。2基于Hopfield网络的学习

反馈神经网络,它是一种动态反馈系统,比前馈网络具有更强的计算能力。

Hopfield网络是一种具有正反相输出的带反馈人工神经元。Hopfield网络系统不仅能够

实现联想记忆,而且能够执行线性和非线性规划等优化求解任务。

7.8知识发现

教学内容:知识发现的发展过程和定义,知识发现的处理过程,知识发现的方法和应用。

教学重点:知识发现的处理过程,知识发现的方法.

教学难点:知识发现的方法

思考:引导学生自

学本小节的某些

知识,结合书上的

示例对数学推理

有一定了解。

77

教学方法:通过实例激发学生对知识发现的学习兴趣,进而重点讲解知识发现的过程和

方法。

教学要求:重点掌握知识发现的过程,了解知识发现的方法,了解知识发现的应用。

6。8。1知识发现的发展和定义

1。知识发现的产生和发展

知识发现最早是于1989年8月在第11届国际人工智能联合会议的专题讨论会上提出。

随着互联网的发展,网上已设立了不少研究KDD的网站、论坛和新闻报导.在研究的基础上,

也出现一些KDD产品和应用系统,引起企业界的关注。

2。定义:数据库中的知识发现是从大量数据中辨识出有效的、新颖的、潜在有用的、

并可被理解的模式的高级处理过程.

(1)数据集:是指一个有关事实F的集合,它是用来描述事物有关方面的信息,是进一步发

现知识的原材料。

(2)新颖:经过知识发现提取出的模式必须是新颖的.

(3)潜在有用:提取出的模式应该是有意义的,这可以通过某些函数的值来衡量。

(4)可被人理解:知识发现的一个目标就是将数据库中隐含的模式以容易被人理解的

形式表现出来,从而帮助人们更好地了解数据库中所包含的信息。

7。8。2知识发现的处理过程

1、数据选择.根据用户的需求从数据库中提取与KDD相关的数据。

2、数据预处理。主要是对上述数据进行再加工,检查数据的完整性及数据的一致性,

对丢失的数据利用统计方法进行填补,形成发掘数据库。

3、数据变换.即从发掘数据库里选择数据。

4。数据挖掘。根据用户要求,确定KDD的

目标是发现何种类型的知识。

5、知识评价。这一过程主要用于对所获得的

规则进行价值评定,以决定所得的规则是否存入基础知识

库。

上述KDD全过程的几个步骤可以进一步归纳为三个步骤,

即数据挖掘预处理(数据挖掘前的准备工作)、数据挖掘、数

据挖掘后处理(数据挖掘后的处理工作)。

简单介绍几种新的对数据发掘的改进过程。

7.8.3知识发现的方法

知识发现的方法有统计方法、机器学习、神经计算和可视化方法等。

1、统计方法

统计方法是从事物的外在数量上的表现去推断该事物可能的规律性。

2、机器学习方法

举例:参照上述的处理

过程,举出具体实例,

详细讲述每步的过程。

78

可能用于机器发现的机器学习方法有:

(1)规则归纳。规则反映数据项中某些属性或数据集中某些数据项之间的统计相关性.

(2)决策树。决策树的每一个非终叶节点表示所考虑的数据项的测试或决策.

(3)范例推理.范例推理是直接使用过去的经验或解法来求解给定的问题。

(4)贝叶斯信念网络.贝叶斯信念网络是概率分布的图表示。

(5)科学发现。科学发现是在实验环境下发现科学定律。

(6)遗传算法。在求解过程中,通过最好解的选择和彼此组

合,使期望解的集合愈来愈好。

3、神经计算方法

4、可视化方法

可视化(visualization)就是把数据、信息和知识转化为可视

的表示形式的过程。

7.8。4知识发现的应用

知识发现已在许多领域得到应用,且应用领域越来越广.

现在,知识发现已在银行业、保险业、零售业、医疗保健、

工程和制造业、科学研究、卫星观察和娱乐业等行业和部门

得到成功应用,为人们的科学决策提供很大帮助。

7。9小结

本章只对机器学习作个入门介绍。

机器学习在过去十多年中获得较大发展.今后机器学习将在理论概念、计算机理、综

合技术和推广应用等方面开展新的研究。其中,对结构模型、计算理论、算法和混合学习的

开发尤为重要。在这些方面,有许多事要做,有许多新问题需要人们去解决.

举例:举出几个具

体的实例让学生对

机器学习的几种方

法有基本了解。

思考:举出有关的几种应

用,再想想再现实生活中

是否有其它的应用。

79

第八章自动规划

教学内容:介绍自动规划的基本概念和各种规划系统。

教学重点:机器人规划的作用与任务、积木世界的规划系统、具有学习能力的规划系统、

基于专家系统的规划机理。

教学难点:具有学习能力的规划系统。

教学方法:课堂教学为主,注意结合例子来说明抽象概念.

教学要求:本章为选修内容,掌握机器人规划的作用与任务,并一般了解有哪几种规划

方法。

8.1机器人规划的作用与任务

教学内容:引入规划的概念,说明问题分解途径,然后讨论自动规划系统的任务。

教学重点:机器人规划的作用.

教学方法:课堂教学.

教学要求:掌握机器人规划的作用与任务.

8。1.1规划的作用与问题分解途径

1、规划的概念及作用

规划的概念:规划是一种重要的问题求解技术,它从某个特定的问题状态出发,寻求一系

列行为动作,并建立一个操作序列,直到求得目标状态为止。

规划的作用:规划可用来监控问题求解过程,并能够在造成较大的危害之前发现差错.

规划的好处可归纳为简化搜索、解决目标矛盾以及为差错补偿提供基础。

2、问题分解途径及方法

把某些较复杂的问题分解为一些较小的子问题。有两条实现这

种分解的重要途径。

第一条重要途径是当从一个问题状态移动到下一个状态时,无需

计算整个新的状态,而只要考虑状态中可能变化了的那些部分。

第二条重要途径是把单一的困难问题分割为几个有希望的较为

容易解决的子问题。

3、域的预测和规划的修正

8。1。2机器人规划系统的任务与方法

在规划系统中,必须具有执行下列各项任务的方法:

(1)根据最有效的启发信息,选择应用于下一步的最好规则.

(2)应用所选取的规则来计算由于应用该规则而生成的新状态。

(3)对所求得的解答进行检验.

举例:以工作日

计划来形象地说

明规划的作用。

80

(4)检验空端,以便舍弃它们,使系统的求解工作向着更有效的方向进行.

(5)检验殆正确的解答,并应用具体的技术使之完全正确。

下面讨论能够执行上述5项任务的方法。

1、选择和应用规则

在选择合适的应用规则时最广泛采用的技术是:首先要查出期望目标状态与现有状态之

间的差别集合,然后辨别出那些与减少这些差别有关的规则。

2、检验解答与空端

当规划系统找到一个能够把初始问题状态变换为目标状态的操作符序列时,此系统就成

功地求得问题的一个解答。

如果搜索过程是从初始状态正向推理的,那么可以删去任何导致某种状态的路径,从这

种状态出发是无法达到目标状态的.

如果搜索过程是从目标状态逆向推理的,那么当确信无法达到初始状态,或者搜索过程

进展甚微时,可以终止该路径的搜索。

3、修正殆正确解

一个求解殆可分解问题的办法是:当执行与所提出的解答相对应的操作符序列时,检查

求得的状态,并把它与期望目标加以比较。

修正一个殆正确的解答的较好办法是注意有关出错的知识,然后加以直接修正。

8.2积木世界的机器人规划

教学内容:寻求某个机器人的动作序列(可能包括路径等).

教学重点:机器人问题求解。

教学难点:用F规则求解机器人规划序列。

教学方法:课堂教学。

教学要求:了解问题求解的目标与一般过程、掌握积木世界的机器人规划方法。

8。2.1积木世界的机器人问题

机器人问题既比较简单,又很直观。在机器人问题的典型表示中,机器人能够执行一套

动作。

在这个例子中机器人能够执行的动作举例如下:

unstack(a,b):把堆放在积木b上的积木a拾起.在进行这个动作之前,要求机器人

的手为空手,而且积木a的顶上是空的。

stack(a,b):把积木a堆放在积木b上.动作之前要求机械手必须已抓住积木a,

而且积木b顶上必须是空的。

pickup(a):从桌面上拾起积木a,并

抓住它不放.在动作之前要求机械手为空手,

而且积木a顶上没有任何东西.

putdown(a):把积木a放置到桌面上.

要求动作之前机械手已抓住积木a.

采用状态描述作为数据库的产生式系统是一

种最简单的问题求解系统。机器人问题的状态描

述和目标描述均可用谓词逻辑公式构成.为了指定

举例:积木世界由一些有标记的立方

形积木,互相堆迭在一起构成;机器

人有个可移动的机械手,它可以抓起

积木块并移动积木从一处至另一处。

提问:请同学就图8.1积木世界的机

器人问题应用谓词公式的合取来表

示为:ON(B,C)∧ON(A,B)。

81

机器人所执行的操作和执行操作的结果,需要应用下列谓词:

ON(a,b):积木a在积木b之上.

ONTABLE(a):积木a在桌面上。

CLEAR(a):积木a顶上没有任何东西。

HOLDING(a):机械手正抓住积木a。

HANDEMPTY:机械手为空手.

8。2。2用F规则求解规划序列

采用F规则表示机器人的动作,这是一个叫做STRIPS规划系统的规则,它由3部分组

成.

第一部分是先决条件.为了使F规则能够应用到状态描述中去。

第二部分是一个叫做删除表的谓词.当一条规则被应用于某个状态描述或数据库时,就

从该数据库删去删除表的内容。

第三部分叫做添加表.当把某条规则应用于某数据库时,就把该添加表的内容添进该数

据库.

8。3STRIPS规划系统

教学内容:STRIPS规划系统的机理,规划的目标与实现方法.

教学重点:STRIPS系统的组成

教学难点:对STRIPS规划过程的描述

教学方法:课堂教学

教学要求:掌握STRIPS机器人规划系统的组成,了解规划过程的描述

8。3。1STRIPS系统的组成

整个STRIPS系统的组成如下:

(1)世界模型。为一阶谓词演算公式。

(2)操作符(F规则)。包括先决条件、删除表和添加表.

(3)操作方法。应用状态空间表示和中间-结局分析。

例如:状态:(M,G),包括初始状态、中间状态和目标状态。

初始状态:(M0,(G0))

目标状态:得到一个世界模型,其中不遗留任何未满足的目标。

8.3。2STRIPS系统规划过程

每个STRIPS问题的解答为某个实现目标的操作符序列,即达到目标的规划。下面举例

说明STRIPS系统规划的求解过程。

例1考虑STRIPS系统一个比较简单的情况,即要求机器人到邻室去取回一个箱子.机

器人的初始状态和目标状态的世界模型示于图8。4。设有两个操作符,即gothru和pushthru

(“走过”和“推过”),分别描述于下:

OP1:gothru(d,r1,r2);

82

机器人通过房间r1和房间r2之间的d,即机器人从房间r1走过门d而进入房间r2。先

决条件:INROOM(ROBOT,r1)∧CONNECTS(d,r1,r2);机器人在房间r1内,而且门

d连接r1和r2两个房间.

删除表:INROOM(ROBOT,S);对于任何S值。

添加表:INROOM(ROBOT,r2).

OP2:pushthru(b,d,r1,r2)

机器人把物体b从房间r1经过门d推到房间r2。

先决条件:INROOM(b,r1)∧INROOM(ROBOT,r1)∧CONNECTS(d,r1,r2)

删除表:INROOM(ROBOT,S),INROOM(b,S);对于任何S。

添加表:INROOM(ROBOT,r2),INROOM(b,r2)。

8.4具有学习能力的规划系统

教学内容:介绍一个叫做PULP—Ⅰ(PurdueUniversityLearningProgram)的具有学习

能力的机器人规划系统的结构和操作方式,了解规划系统的模型和规划方

法。

教学重点:系统的结构与操作方式。

教学难点:规划系统的学习方法.

教学方法:课堂教学。

教学要求:了解具有学习能力的机器人规划系统的规划方法及其与一般规划系统的异同

8。4.1PULP—Ⅰ系统的结构与操作方式

1、PULP—Ⅰ系统的结构

字典、模型和过程是系统的内存部分,它们集中了所有信息。“字典"是英语词汇的集合,

它的每个词汇都保持在LISP的特性表上。“模型”部分包括模型世界内物体现有状态的事

实.

模型的信息不是固定不变的,它可能随着环境而改变。此外,无论什么时候应用某个操

作符,此模型就被适时修正。“过程”集中了予先准备好的过程知识。这种过程知识是一个

表式结构,包含一个指令序列。每个指令可能是一个任务语句,这些语句与该任务的过程、

局部定义的物体或某个操作符有关。

2、PULP—Ⅰ系统的操作方式

PULP—Ⅰ系统具有两种操作方式,即学习方式和规划方式。

在学习方式下,输入至系统的知识是由操作人员或者所谓“教师”提供的。系统首先把

给出的过程知识分解为一个子过程的集合,本原过程知识被分解为几个知识块,每块为一知

识包。然后,由任务分析程序进行试验,这个程序对知识包进行分析,并通过一个语义匹配

程序求得其提取表示。

当某个命令句子送入系统时,PULP-Ⅰ就进入规划方式。此规划系统的主要作用是形成

一个能够把现有世界变换为满足给定命令的世界状态的规划。所生成的规划由一些本原操作

符的有序排列组成。当求得一个成功的规划之后,对世界模型进行修正,而且系统输出规划

时间和规划细节,以满足输入命令.

83

8。4。2PULP—Ⅰ的世界模型和规划结果

8。5分层规划

教学内容:通过ABSTRIPS系统了解针对困难问题的分层规划方法.

教学方法:课堂教学。

教学重点:本规划机理及实例。

教学难点:规划实例分析.

教学要求:本节作为选讲内容,只要求一般了解相关内容.

8.5。1长度优先搜索

探索规划时首先只考虑一层的细节,然后再注意规划中比这一层低一层的细节,所以把它

叫做长度优先搜索。

8.5。2NOAH规划系统

1、应用最小约束策略

一个寻找非线性规划而不必考虑操作符序列的所有排列的方法是把最少约束策略应用

来选择操作符执行次序的问题.

问题求解系统NOAH采用一种网络结构来记录它所选取的操作符之间所需要的排序。

它也分层进行操作运算,即首先建立起规划的抽象轮廓,然后在后续的各步中,填入越来越多

的细节。

2、检验准则

准则法已被应用于各种规划生成系统.对于早期的系统,如HACKER系统,准则只用于

舍弃不满足的规划。在NOAH系统中,准则被用来提出推定的方法以便修正所产生的规划。

第一个涉及的准则是归结矛盾准则。

第二个准则叫做消除多余先决条件准则,包括除去对子目标的多余说明。

可以把分层规划和最少约定策略十分直接地结合起来,以求得非线性规划而不产生一个

庞大的搜索树。

8.6基于专家系统的机器人规划

内容与作用:本节将结合作者对机器人规划专家系统的研究,介绍基于专家系统的机器

人规划。

提问:请同学比较具有学习能力的机器人规划系统与一般规划系统的异同,并总结前者

的特点。

84

教学重点:基于专家系统的系统结构和规划机理.

教学难点:基于专家系统的规划机理。

教学方法:课堂教学。

教学要求:了解基于专家系统的机器人规划系统的结构和实现方法.

8。6。1系统结构和规划机理

1、系统结构及规划机理

(1)知识库:用于存储某些特定领域的专家知识和经验,包括机器人工作环境的世界

模型、状态、物体描述等事实和可行操作或规则等.

(2)控制策略:包含综合机理,确定系统应当应用什么规则以及采取什么方式去寻找

该规则。

(3)推理机:用于记忆所采用的规则和控制策略及推理策略.

(4)知识获取:首先获取某特定域的专家知识.然后用程序设计语言把这些知识变换为计

算机程序.最后把它们存入知识库待用。

(5)解释与说明:通过用户接口,在专家系统与用户之间进行对话,从而使用户能够

输入数据、提出问题、知道推理结果以及了解推理过程等.

2、任务级机器人规划三要素

(1)建立模型。

(2)任务说明。

(3)程序综合。

8。6。2ROPES机器人规划系统

8。7小结

本章在说明了机器人规划的作用和任务后,主要讨论了几种机器人规划的方法:

(1)规划演绎法.用F规则求解规划序列。

(2)逻辑演算和通用搜索法。STRIPS和ABSTRIPS系统即属此法。

(3)具有学习能力的规划系统。如PULP—Ⅰ系统,它采用类比技术和语义网络表示.

(4)分层规划方法。如NOAH规划系统,它特别适用于非线性规划。

(5)基于专家系统的规划。如ROPES规划系统,它具有更快的规划速度、更强的规划

能力和更大的适应性

作业:根据简化框图8.18,举例说明应用专家系统的机器人规划系统。

85

第九章Agent(艾真体)

教学内容:介绍Agent的基本概念,使读者对Agent有个初步了解.

教学重点:艾真体及其要素

教学难点:艾真体的BDI(信念、愿望和意图)模型、艾真体的结构分类

教学方法:课堂教学为主,注意结合例子来说明抽象概念.

教学要求:本章为选修内容,要求掌握艾真体及其要素;了解艾真体的结构,一般了解艾

真体通信、多艾真体技术等知识。

9。1分布式人工智能

教学内容:本小节介绍分布式人工智能的起源与发展,并介绍分布式人工智能的特点与

分类。

教学重点:分布式人工智能的特点

教学难点:分布式人工智能的分类

教学方法:课堂教学

教学要求:掌握分布式人工智能的几个主要特点

9。1。1分布式人工智能的特点

1.分布性:整个系统的信息,包括数据、知识和控制等,无论在逻辑上或者物理上都是

分布的,不存在全局控制和全局数据存储。

2.连接性:在问题求解过程中,各个子系统和求解机构通过计算机网络相互连接。

3.协作性:各子系统协调工作.

4.开放性:通过网络互连和系统的分布,便于扩充系统规模,具有比单个系统广大得

多的开发性和灵活性。

5.容错性:系统具有较多的冗余处理结点、通讯路径和

知识,能够使系统在出现故障时,仅仅降低响应速度或求解精

度,以保持系统正常工作,提高工作可靠性。

6.独立性:系统把求解任务归约为几个相对独立的子任

务,从而降低了各个处理结点和子系统问题求解的复杂性,也

降低了软件设计开发的复杂性。

9.1.2分布式人工智能的分类

1.分布式问题求解(DPS:DistributedProblemSolving)

2.多Agent系统(MAS,Multi-agentSystem)

不同点:概念模型和成功标准;研究目标;设计方法等方面。

举例:多领域专家系统

可以协作求解单领域或

者单个专家系统无法解

决的问题,提高求解能

力,扩大应用领域。

通过课堂提问引导分析

DPS与MAS的异同

共同点:研究如何对资

源、知识、控制等进行

划分。

86

9。2Agent及其要素

教学内容:本小节介绍分布式Agent的定义以及其要素,分析了艾真体的要素。

教学重点:艾真体的要素、艾真体的特性

教学难点:艾真体的BDI(信念、愿望和意图)模型

教学方法:课堂教学

教学要求:掌握艾真体的要素,并了解艾真体的主要特性

9.2.1Agent的译法

把agent译为“艾真体”的理由:

(1)agent是一种通过传感器感知其环境,并通过执行器作用于该环境的实体。这

个实体也可叫做“真体"。

(2)“主体"是用得较多的一种译法。译为“主体”不能反映agent的本意。

(3)“代理"是另一种译法,也不能表示出agent的原义。

(4)agent的读音为“艾金特”或“爱金体”,其相近发音为“艾真体”或“爱真

体”.

(5)把agent译为艾真体,不仅发音相近,而且含有一定的物理意义,即某种“真

体”或事物.

(6)历史上,把英文或其它外文名词术语按发音或其近似发音翻译成中文的成功

先例很多。

9.2.2艾真体的要素

艾真体的行动受其心理状态驱动.人类心理状态的要素有认知(信念、知识、学习等)、

情感(愿望、兴趣、爱好等)和意向(意图、目标、规

划和承诺等)三种。着重研究信念(belief)、愿望(desire)

和意图(intention)的关系及其形式化描述,力图建立艾

真体的BDI(信念、愿望和意图)模型,已成为艾真体

理论模型研究的主要方向。

举例说明主体与代理与Agent的内涵

例如:中央十层大厦是这个建筑群的主体。又如,粤海铁路主体工程竣工。在

哲学“主体”指有认识和实践能力的人;其对立面是客体,指主体以外的客观事物,

是主体认识和实践的对象。

在汉语中,“代理”也有其明确的含义,指暂时代人担任某种负责职务。在法

律上,“代理”指受委托代表当事人进行某种活动,如诉讼、签订合同、纳税等。

可见,“代理”的含义也不能表示出agent的原义。

作业:画图说明Agent的信念、

愿望、意图与行为具有的某种

因果关系(图9.2)。

87

9。2.3艾真体的特性

艾真体与分布式人工智能系统一样具有协作性、适应性等特性.此外,艾真体还具有自

主性、交互性以及持续性等重要性质.

(1)行为自主性艾真体能够控制它的自身行为,其行为是主动的、自发的和有目标和

意图的,并能根据目标和环境要求对短期行为做出规划。

(2)作用交互性也叫反应性,艾真体能够与环境交互作用,能够感知其所处环境,

并借助自己的行为结果,对环境做出适当反应。

(3)环境协调性艾真体存在于一定的环境中,感知环境的状态、事件和特征,并通

过其动作和行为影响环境,与环境保持协调。

(4)面向目标性艾真体不是对环境中的事件做出简单的反应,它能够表现出某种目标

指导下的行为,为实现其内在目标而采取主动行为。

(5)存在社会性艾真体存在于由多个艾真体构成的社会环境中,与其它艾真体交换信

息、交互作用和通讯。艾真体的存在及其每一行为都不是孤立的,甚至表现出人类社会的某

些特性.

(6)工作协作性各艾真体合作和协调工作,求解单个艾真体无法处理的问题,提高处

理问题的能力.在协作过程中,可以引入各种新的机制和算法。

(7)运行持续性艾真体的程序在起动后,能够在相当长的一段时间内维持运行状态,

不随运算的停止而立即结束运行.

(8)系统适应性艾真体不仅能够感知环境,对环境做出反应,而且能够把新建立的艾

真体集成到系统中而无需对原有的多艾真体系统进行重新设计,因而具有很强的适应性和可

扩展性。也可把这一特点称为开放性。

(9)结构分布性在物理上或逻辑上分布和异构的实体(或真体),如主动数据库、知识

库、控制器、决策体、感知器和执行器等,在多艾真体系统中具有分布式结构,便于技术集

成、资源共享、性能优化和系统整合.

(10)功能智能性艾真体强调理性作用,可作为

描述机器智能、动物智能和人类智能的统一模型。艾真

体的功能具有较高智能,而且这种智能往往是构成社会

智能的一部分。

9。3艾真体的结构特点

教学内容:本小节介绍艾真体的结构特点,并介绍艾真体的分类。

教学重点:艾真体的结构特点

教学难点:艾真体的类型

教学方法:课堂教学

教学要求:掌握艾真体的结构特点,了解主要的艾真体类型

9。3.1艾真体的结构特点

体系结构使得传感器的感知对程序可用,运行程序并把该程序的作用选择反馈给执行器.

作业:以分布式多移动机器人

的控制为例说明艾真体的自

主性、自适应性、协作性。

88

艾真体、体系结构和程序之间具有如下关系:

艾真体=体系结构+程序

(1)在计算机系统中,艾真体相当于一个独立的功能模块、独立的计算机应用系统,

它含有独立的外部设备、输入/输出驱动装备、各种功能操作处理程序、数据结构和相应输

出。

(2)艾真体程序的核心部分叫做决策生成器或问题求解器,起到主控作用,它接收全

局状态、任务和时序等信息,指挥相应的功能操作程序模块工作,并把内部工作状态和执行

的重要结果送至全局数据库。艾真体的全局数据库设有存放艾真体状态、参数和重要结果的

数据库,供总体协调使用.

(3)艾真体的运行是一个或多个进程,并接受总体调度.特别是当系统的工作状态随工作

环境而经常变化时以及各艾真体的具体任务时常变更

时,更需搞好总体协调。

(4)各个艾真体在多个计算机CPU上并行运行,其

运行环境由体系结构支持.体系结构还提供共享资源(黑

板系统)、艾真体间的通讯工具和艾真体间的总体协调,

使各艾真体在统一目标下并行协调地工作.

9。3。2艾真体的结构分类

(1)反应式艾真体:反应式(reflex或reactive)艾真

体只简单地对外部刺激产生响应,没有任何内部状态。每

个艾真体既是客户,又是服务器,根据程序提出请求或做

出回答。

(2)慎思式艾真体:慎思式(deliberative)艾真体又

称为认知式(cognitive)艾真体,是个具有显式符号模型的

基于知识的系统.

(3)跟踪式艾真体:具有内部状态的反应式艾真体通过

找到一条条件与现有环境匹配的规则进行工作,然后执行与

规则相关的作用。这种结构叫做跟踪世界艾真体或跟踪式艾

真体。

(4)基于目标的艾真体:艾真体还需要某种描述环境情

况的目标信息。艾真体的程序能够与可能的作用结果信息结

合起来,以便选择达到目标的行为.

(5)基于效果的艾真体:效果是一种把状态映射到实

数的函数,该函数描述了相关的满意程度。一个完整规范的

效果函数允许对两类情况做出理性的决策。

举例:基于分布式艾真体的未

知环境中自主移动的机器人

系统的体系结构。

作业:画图说明反应式艾

真体的结构(图9.3)。

作业:画图说明慎思式艾

真体的结构(图9.4)。

作业:画图说明跟踪式艾

真体的结构(图9.5)。

作业:画图说明基于目标

艾真体的结构(图9.6)

作业:画图说明基于效果

的艾真体的结构(图9.7)。

89

(6)复合式艾真体:复合式艾真体即在一个艾真体内组

合多种相对独立和并行执行的智能形态,其结构包括感知、

动作、反应、建模、规划、通信和决策等模块。

9。4艾真体通信

教学内容:本小节介绍为什么艾真体要相互交换信息以及如何通信、艾真体的通信语言.

教学方法:课堂教学

教学要求:本节作为选讲内容,只要求一般了解

9。4。1通信的过程

(1)通知相互通知该世界中已经探索过的部分,使

每个艾真体可以少做一些探索.

(2)询问向其它艾真体询问世界特定部分的情况.

(3)回答回答问题。

(4)请求请求或者命令其它艾真体采取行动。

(5)许诺许诺做某事或者提供帮助。

(6)确认确认请求和提议。

(7)分享分享感受和经验.

9。4。2艾真体通信的类型和方式

1、艾真体通信的类型

(1)使用TELL和ASK通信

(2)使用形式语言通信

2、艾真体通信的方式

(1)黑板结构方式

(2)消息/对话通信

作业:画图说明复合式艾

真体的结构(图9.8)。

举例:为什么一个艾真体不

采取它的"常规"行动而要不

厌其烦地执行说话行为呢?

想像一下一组艾真体正在一

起探索无名普斯世界

(Wumpus,一种格子棋类游

戏,以该游戏中的反面角色

Wumpus命名。该角色为一

怪物,与其它艾真体作对。

双方为争夺金子而战)。

举例:结合无名普斯例子

对通信进行描述。

90

9.4。3交谈的规划与实现

1、交谈的规划

能够像处理艾真体的其它动作一样对待交谈.艾真体能够使用一个规划产生系统制订由

言语行为和其它动作构成的计划。为此,需要一个描述这些动作效果的模型.例如,考虑一个表

示型交谈φα,TELL,它表示该艾真体告知另一艾真体φ:α是真的.使用STRIPS规划,可

对该动作的效果建立模型:

φα,TELL

φα,KφαNext_to:PC~

φ,K:D~

φα,K:A

根据STRIPS规划和前述TELL规则,可构造艾真体的规划如下:

{Move(A,B,F1),TELL(A1,Clear(B)∧On(B,C))}

2、交谈的实现

通过讲话实现交谈。通信动作,如φα,TELL,是如何像讲话双方之间的交谈一样从

讲话者传输至受话者的。有两种可能性:其一是从讲话者到受话者的某个逻辑公式的直接传

输;其二,受话者把讲话者所讲的一些符号串翻译为它的认知结构。

如果交谈双方共享同类的基于特征的世界模型,使用相同符号的逻辑公式,那么该交谈

就可以通过传输一个逻辑公式来实现。例如,交谈TELL((A1,Clear(B)∧On(B,C))就能

通过艾真体A1发送公式Clear(B)∧On(B,C)和一种有代表性的表示来实现.

9。5多艾真体系统

教学内容:本小节介绍多艾真体系统的结构模型、协作机制、通信、规划等问题,并讨

论多艾真体系统的研究方向与应用领域。

教学方法:课堂教学

教学要求:本节作为选讲内容,要求一般了解

说明:使用基于符号串的语言预示了两个可能的问题解决方案。其一,给定某个交

谈,如何生成一个符号串;其二,如何把一个符号串译成对认知结构的作用。对艾

真体间通过符号串的通信,也主要集中在类似自然语言(如英语、汉语等)句子的

讲话来处理。

91

9。5。1多艾真体系统的模型和结构

1、多艾真体的基本模型

(1)BDI模型

这是一个概念和逻辑上的理论模型,它渗透于其它模型中,成为研究艾真体理性和推理

机制的基础.在把BDI模型扩展至多艾真体研究时,提出了联合意图、社会承诺、合理行为等

描述艾真体行为的形式化定义.

(2)协商模型

协商思想产生于经济活动理论,它主要用于资源竞争、任务分配和冲突消解等问题。多

艾真体的协作行为一般是通过协商产生的。虽然各个艾真体的行动目标是要使自身效用最大

化,然而在完成全局目标时,就需要各艾真体在全局上建立一致的目标。

(3)协作规划模型

多艾真体的规划模型主要用于制订其协调一致的问题求解规划.每个艾真体都具有自己

的求解目标,考虑其它艾真体的行动与约束,并进行独立规划(部分规划)。

(4)自协调模型

该模型是为适应复杂控制系统的动态实时控制和优化而提出的.自协调模型随环境变化

自适应调整行为,是建立在开放和动态环境下的多艾真体模型。

2、多艾真体系统的体系结构

(1)艾真体网络

(2)艾真体联盟

(3)黑板结构

9.5。2多艾真体的协作、协商和协调

1、多艾真体的协作方法

(1)决策网络和递归建模

(2)Markov对策

(3)艾真体学习方法

(4)决策树和对策树

2、多艾真体的协商技术

(1)协商协议

(2)协商策略

(3)协商处理

3、多艾真体的协调方法

艾真体间的不同协作类型将导致不同的协调过程。当前主要有4种协调方法,即基于集

中规划的协调、基于协商的协调、基于对策的协调和基于社会规划的协调.

9。5。3多艾真体的学习与规划

1、多艾真体的学习

多艾真体学习要比单艾真体学习复杂得多,因为前者的学习对象处于动态变化中,且其

说明:该部分内

容一般了解。

92

学习离不开艾真体间的通信。为此,多艾真体学习需付出更大的代价。

2、多艾真体的规划

对MAS的规划研究,目前主要方法有二。其一,一种可在世界状态间转换的抽象结构,

如与或图。其二,一类复杂的艾真体精神状态。

9。5。4多艾真体系统的研究和应用领域

1、多机器人协调

自主式多机器人系统,尤其是移动机器人系统。

2、过程智能控制

采用MAS方法对柔性制造系统的任务进行分解,根据合同网协议把任务分配给各艾真

体(生产单元),由多个生产单元通过对策与协商,协同完成生产任务。

3、网络通信与管理

网络通信与管理领域的其它艾真体应用还有网络负荷平衡、通信网络的故障相关性分析

与诊断、网络控制和传输、通信业务管理和网络业务管理等.

4、交通控制

城市交通控制方面,已建立一个基于多艾真体的市区交通控制系统。该系统把每个交通

路口信号控制器定义为艾真体,这些艾真体不仅具有路口交通流状态和相应控制方法的知识,

而且具有紧急情况下的反应能力,一般情况下的自调节和自优化能力以及对未来短期车流状

况做出预测的能力.艾真体间通过联合优化实现全局优化目标。

5、其它应用

因特网已成为多艾真体技术的天然试验平台,促进MAS的广泛应

用。电子商务在于建立因特网上的自动交易标准、协议和相应的应用

系统。

9。6小结

(1)艾真体性质、结构、通信

(2)agent译法的讨论(艾真体的提出)

(3)艾真体的信念、愿望和意图

(4)反应式、慎思式、跟踪式艾真体,基于目标的、基于效果的和复合式艾真体

(5)艾真体的通信问题

(6)艾真体通信语言KQML和KIF

(7)多艾真体系统的基本模型和体系结构

举例:以足球机器人比赛为

例说明协调中的角色分配。

说明:该部分内

容一般了解。

93

第十章机器视觉

教学内容:本章所研究的机器视觉是诸多传感信息中包含信息最丰富、最复杂和最重要

的感觉之一,也是应用最为广泛的机器感觉之一。内容包括图象的理解与分析、视觉的知识

表示与控制策略和物体形状的分析与识别等。

教学重点:物体边缘距离的计算、表面方向的计算、物体形状识别方法

教学难点:图匹配法、松弛标示法、多层匹配法等

教学方法:用较为通俗的语言将机器视觉的相关知识讲透彻,同时结合图表,对不同线

条的标示方法进行讲解。多结合日常生活中常有的现象,让学生对所学知识有更深入的认识。

教学要求:重点掌握视觉信息的表达方法,包括初始简图、二维半简图和三维模型;掌

握物体边缘距离和表面方向的生理学基础及计算原理和计算方法;了解复杂形状物体的表示

和三维物体的形状描述方法;一般了解机器视觉应用系统的构成、视觉系统的设计思想。

10。1图象的理解与分析

教学内容:对图象进行理解和解释是计算机视觉的研究中心,也是人工智能研究的焦点

之一.

教学重点:初始简图、二维半简图和三维模型

教学难点:松弛算法、边缘距离的计算

教学方法:以课堂书本知识为主,采取提问,讨论等方式提高学生学习的积极性,自主

性和创造性.

教学要求:重点掌握视觉信息的表达方法,包括初始简图、二维半简图和三维模型;掌

握物体边缘距离和表面方向的生理学基础及计算原理和计算方法

10.1。1视觉信息的表达方法

根据马氏(Marr)提出的假设,视觉信息处理过程包括3个主要表达层次,即初始简图、

二维半简图和三维简图,如图10.1所示.

图10。1视觉信息的表达层次

1、初始简图的基本概念:

亮度图象含有两种重要信息:图象的亮度变化和局部几何特征。初始简图是一种本原表

达法,它能完全而又清楚地表示上述信息。初始简图所包含的信息大部分集中在与实际边缘

94

以及边缘终止点有关的剧烈灰度变化上。对于每一边缘亮度变化,在初始简图上都有对应的

描述。这些描述包括:与边缘有关的亮度变化率、总的亮度变化、边缘长度、曲率和方向等。

粗略地说,初始简图是以勾划草图的形式来表示图象中的亮度变化的。

图10.2用初始简图表示灰度变化图10.3二维半简图举例

2、二维半简图的基本概念:

二维半简图包含景物表面的信息,可以把它看做某些内在特性的混合信息.二维

半简图清楚地表示物体表面方向的信息。物体表面法线从物体内部穿出来,使物体好象穿刺。

3、三维模型的表示方法

三维表达法能够完全而又清晰地表示有关物体形状的信息,其方法之一即为广义柱体.广

义柱体的概念十分重要,而其表示方法又十分简单,如图10.4所示.图中,柱体的横截面沿轴

线的投影不变.一个普通圆柱可看作是一个圆周沿其中心垂线移动而成;一个楔形物是一个三

角形沿其中垂线移动而得的,等等.一般地说,一个广义柱体是二维轮廓图沿其轴线移动而成

的。在移动过程中,轮廓与轴线之间保持固定的角度不变。轮廓可为任何形状,而且在移动

过程中其尺寸可能是变化的,其轴线也不一定是垂线或直线,如图10。4所示。

图10。4广义锥体10。5截面形状变化或轴线为曲线时的广义柱

10。1.2边缘距离的计算

1、图象辉亮边缘的平均与差分

产生噪声边缘问题是因为在获得图象时,会遇到传感器的亮度灵敏性波动、图象坐标信

息误差、电子噪声、光源扰动以及无力接收大范围变化的亮度信息等。另一个原因是图象本

95

身很复杂,其实际边缘并不是陡削的,而是逐步过渡的;还可能存在相互照明效应、意外划痕

和灰尘等。

一种处理噪声边缘的方法包括下列四个步骤:

(1)从图象建立平均亮度阵列。

(2)从平均亮度阵列产生平均一阶差分阵列。

(3)从一次平均差分阵列建立二次平均差分阵列。

(4)据所得阵列,记下峰点、陡变斜率和过零点,以寻求边缘信号的集合。

2、灵长目动物视网膜特性

图10.6灵长目动物视网膜输入图10。7视网膜实验特性与墨西哥

-输出特性实验草帽形滤波结果的比较

墨西哥草帽形滤波器与一些了解灵长目动物早期视觉的实验相一致。关键实验如图10.6

所示。被试动物注视各种从白色背景前移过的色质(stimuli)。这些色质包括一条窄的黑带、

一条宽的黑带以及一个单白黑边缘.记录探针测定各种神经反应。把此神经反应与据墨西哥

形草帽滤波器作出的预计进行比较.

图10.7给出比较结果。在图10。7中,(a)表示3个自左向右移动的色质的亮度分布曲

线;(b)表示以适当宽度的墨西哥草帽形滤波器对所给出的亮度分布进行滤波的结果;(c)

为所谓X神经节细胞上记录的实验数据。比较图10。7(b)和(c)可见,两者极其相似。

这表明灵长目动物的视网确实进行了某些与墨西哥草帽形滤波器十分相似的处理工作.如果

对墨西哥草帽形滤波器稍加修改,就能够改善相似性,如图10.7(d)所示。

比较结果得到的高度相似性,使我们有足够的根据作出下列假设:

(1)灵长目动物视膜所进行的滤波处理功能在运算上是与由墨西哥草帽形点扩散函数

所进行的滤波相似.

(2)存在有两种视膜细胞,一种用于传输滤波图象的正向部分,另一种传递滤波图象的

负向部分.

(3)对于每种细胞,墨西哥草帽形滤波器是通过激发与禁止这两种操作的组合来实现的.这个

滤波器等价于两个以二维高斯滤波器滤波所得图象的差。

96

3、物体距离的测定

图10。8表示两眼立体视觉中的相对位置关系。图中,P点为一物体。两个透镜的轴

线是平行的。f为两透镜与图象平面的距离,即为其焦距。b为两透镜轴线在基线上的距离,

即为两眼的距离.l和r分别为P点与左、右透镜轴的距离。α和β分别为左右图象与其相应

透镜轴线的距离.

从两相似三角形,可求得观察者双眼

至物体的距离:



fb

d

图10。8双眼立体视觉的几何位置

由于双眼距离b为已知,焦距f也是确定的,因此,一个物体与双眼的距离和(α+β)成

反比。(α+β)为该点的一幅图象点位置相对于另一幅图象点位置的位移,称为视差

(disparity)。

立体视觉的实际问题就是据左右两图象找到相应的物体,以便能够测量视差。已有许多

不同的立体视觉系统能在不同程度上成功地寻找出相应的物体.

10。1.3表面方法的计算

1、反射图体现光照约束

把从所有可能位置观察到的亮度都相同的表面定义为朗伯表面(LambertianSurface),

它的亮度只由光源的方向决定。这一关系遵循下列公式:E=ρcosi.式中,E为被观察亮度;

ρ为表面反射率(对于特定的表面材料,ρ为一常数);i为入射角.

2、表面方向的确定

上面我们研究了利用表面方向预测表面的亮度.下面研究从感测到的亮度来计算表面各

方向参数f和g.

由f和g来确定表面方向,初看起来似乎是不可能的.因为一小块表面只能确定切面FG

上的一条曲线,而不是单一的点。但是,事实上这样做却是可能的,因为大部分表面是平滑

的,在不同深度和方向上只出现有少数不连续的情况。因此,可以利用下面两个约束:

(1)亮度。由f和g所确定的表面方向应与表面亮度所要求的表面方向无多大不同。

(2)表面平滑度。一点的表面方向应与邻近各点的表面方向无多大变化。

对于每个点,计算的f和g值应兼顾上述两个约束计算所得的值。据亮度要求特定点的

f和g值应落在等亮度线上,而据表面平滑度则要求f和g值接近相邻点f和g的平均值。

3、松弛算法

(1)对所有非边界点,令f=0和g=0。对所有边界点,令f和g规定一个长度为2的垂

直于边界的矢量。称输入阵列为当前阵列.

(2)进行下列步骤(直到所有的值变化得足够慢为止):

(a)对当前阵列中的每个点:

i)如果是个边界点,则不做任何事;

97

ii)如果是个非边界点,那么用松弛公式计算新的f和g值。

(b)把所得新阵列称为当前阵列.

10.2积木世界的景物分析

教学内容:可见的景物的传感器编码,检测器搜索图象主要成分(如线段、简单曲线和

角度等)的处理,利用知识推断有关景物的三维特征信息.

教学重点:无断裂和阴影时三面顶点的标示方法,有断裂和阴影时线条图的分析。

教学难点:无断裂和阴影时三面顶点的标示方法。

教学方法:以课堂教育为主,通过多种途径开发学生的学习热情,结合实践。

教学要求:基本了解积木世界景物的线条标示方法,掌握无断裂和阴影时三面顶点的标

示方法和有断裂和阴影时线条图的分析。

10.2.1积木世界景物的线条标示方法

图10。9几种典型的线条图

积木世界视觉研究的主要目标是理解从一堆玩具积木的图象得到对于景物的描述。所谓

描述就是把出现在图象中的大量的线条聚集成代表景物中各个积木的线条组.研究积木世界

景物时,输入的图象可以是积木景物的照片、电视摄影图象或是线条图.如果是属于前二种,

那么第一步就是从图象得到线条图。这属于马氏初始简图的范围,但没有那样复杂,只是用

了边缘检测算子.在以下的讨论中,我们都假设已经得到了积木世界的线条图的情况。

积木世界景物分析的研究对象比较狭窄,并且是有意地进行了简化,但仍不失为合适的

计算机视觉研究的初步目标。在这个领域中的研究已经取得了一些有实用意义的成果.积木

世界可以推广为类似工业零件的多面体,而理解简单的三维工程图是建立有视觉的工业机器

人装配系统的第一步.

98

10。2。2无断裂和阴影时三面顶点的标示方法

1、线条和接点的分类

先研究无断裂的三面顶点,并且设想合适的光照条件,避免了所有的阴影.在这样的环

境下,图中的所有线条代表了各种天然产生的边缘。这些线条的简单分类如下.

2、标志三面接点的方法

为了对围绕接点的线条的标示方式进行分类,需要从每个可能的方向来观察每种

实际可能的三面顶点。但这样做会遇到可供选择的方向过多的困难,为此把除了一般的观察

位置以外的方向都排除在外,以减少可能出现的情况。假设在这一节的其余部分仅讨论只包

含三面顶点的线条图。任何三面顶点的3个面规定了3个相交的平面,这3个相交的平面把

空间分成8个间隔.很明显,某个形成一个顶角的物体就占有上述8个间隔(或八分体)中的

一个或几个。接点标志所说明的是物体如何占有八分体.可以通过以下两个步骤来构成完整

的包含所有连接可能性的字典:先考虑所有的以物体来充满这8个八分体的方式;然后,从

未被充满的八分体观察所得到的顶点。

10.2.3有断裂和阴影时线条图的分析

改善线条描述可使约束的数目增加,从而提高分析的速度。要进一步研究是否有别的方

法对线条的解释作进一步的分类。在介绍具体方法以前,有一个问题需要注意,即随着线标

志集合的扩展,实际接点标志的集合将显著增加。将会有几千种合法的接点标志,而不是只

有18种。因此不可能建立一个合法接点标志表和企图让摸拟计算机利用这个表格来做些什

么。

以下介绍两种对线条解释作进一步分类的方法:

1.对凹面标志进一步分类并引入断裂线标志

考虑到物体经常放在一起。所以,凹面标志可以分成3类,这3类表示有关物体的数目和

认出哪个物体是在前面的.设一条凹面边缘表示两个物体接触在一起的地方。然后想象把这

两个物体稍为拉开一点。这样,这个凹面边缘就成为边界,其上标志指向两个可能方向中的一

个。这两种可能性以一个由原来的负号标志和一个新的箭头标志组成的合成标志来表示。如

果有3个物体相接触,同样可利用一个合成标志表示如果物体稍为离开一些时可以看到什么。

断裂线也可以类似地处理:每一根断裂线被标以1个c和1个箭头,表示这两个有关的物体

如何配合在一起。

2。用光照条件增加标志数量和严格约束

另一种改善线条描述的方法是结合单光源的光照条件.

概括起来,线条解释的每一次改进都促使一次线条标志的大扩展。开始时只考虑基本的

线条、边界线、内部的凹面线和凸面线。这些初始的线条种类扩展到包括阴影线。凹面线又

所有线条

内边线

边界线

凹面线

凸面线

99

分成四类以反映接触在一起的物体个数,以及这些物体间如何相

互遮挡。这引入了断裂线并以和凹面线相类似的方式分成2类。

最后,线条的信息和照明信息相结合.从最后这次扩展产生50种线

条标志。

10。3视觉的知识表示与控制策略

教学内容:研究在人工智能其它领域中发展起来的知识表达方法,主要是语义网络在视

觉领域中的应用。

教学重点:语义网络,位置网络

教学难点:位置网络

教学方法:以课堂教育为主,通过多种途径开发学生的学习热情,例如:课堂练习,思考,讨

论及提问等,并结合实践,加深对课堂知识的理解。

教学要求:了解语义网络及位置网络,一般了解视觉系统的控制策略。

10.3.1视觉信息的语义网络表示

着重介绍语义网络,它具有如下特点:

(1)可作为一种很方便地存取模拟知识的表达方

法以及命题逻辑的知识表达的数据结构.

(2)可作为一种反映在有关领域中事物之间相互关

系的模拟结构.

(3)可用作一种具有特殊的推理规则的命题逻辑表

达法。

10。3.2位置网络表示

在一般的应用场合中,景物中所期望的特征的相对位置都已表示在网络中,这样网络就

把图象的所期望的结构模型化了.物体之间几何关系的基本运算有以下4种:

(1)方向性运算(左、反射、北、上、下等):以相对于其他点集的位置和方向来规定点

集。

(2)区域运算(靠近于、在四边形内、在圆周内等等):建立一个和其他点集无方向关系的

点集。

(3)集合运算:完成并、交以及求差等集合运算.

(4)谓词运算:对区域进行的谓词运算可通过测量某些数据的特征来删除某些点集。

10.3。3视觉系统的控制策略

视觉控制策略支配着通过各表达层次的信息流和活动,哪个触发机构在处理?是像视网

思考:合法的标志数

目相对于不合法的

标志数如何增加。

习题:试用语义网络表示以下

景物:

“在道路57(road57)与河流

3(river3)交叉处的桥梁位于建

筑物30(building30)附近。”

100

膜上色块一般的低级输入呢,还是一种高层期望,对于这两种极端作不同的强调是一个基本

控制问题,这两个极端表征如下:

(1)图象数据的驱动。这里控制的进行过程是从建立广义图象到已分割图象结构,最后

为描述,这也叫由底向上控制(bottom-upcontrol)。

(2)内部模型驱动.知识库内的高层模型产生对输入的几何、分割的或广义图象的期望

或预测,图象理解是这种预测的验证,这也称为自顶向下控制(top-downcontrol).

(3)非层次控制。这个术语似乎由麦卡洛克(McCulloch)提出来的,他使用这个术语描

述脑神经反应连通性所蕴涵的反应的本质,其思想是在任何给定时刻使用能够完成最终任务

的办法,提供最多帮助的专家。

10.4物体形状的分析与识别

教学内容:多面体化为对非多面体景物的描述问题,并以这些描述为基础,对物体形状进

行分析与识别。

教学重点:讨论非多面物体的分析,并特别集中于形状分析.

教学难点:松弛标示法、多层匹配法。

教学方法:课堂讲解

教学要求:了解物体形状分析与识别的基本概念

10。4.1复杂形状物体的表示

一个好的形状表示能够由物体的部分视图来识别物体,而且物体形状的小变化只引起形

状描述的小变化.物体各部分的连接表示应当是很方便的,它能够比较两个物体的差别和相似

性,而不仅是进行简单的分类.

如果把复杂物体表示为被分割的比较简单的部分以及这些部分间的相互关系,那么上述

要求就比较容易得到满足。

对形状的识别是由两个相关描述的匹配获得的.一个物体的部分视图所产生的描述图是

完整的物体描述子图,并能适当匹配过程的需要。

1、曲线形状的描述与量度

曲线描述对于一些特别物体(如字母符号)和三维景物(如某地区照片上的道路)分析

是很重要的.此外,三维物体的形状描述也往往被简化为“轮廓”线条结构。

(1)曲线的存储方法。依次采用曲线上各点的坐标序列来表示线条是最容易的描述方法。

如果只要存储曲线的起点坐标和依次各点的坐标增量,那么就能够显著节省计算机内存.

(2)曲线的近似描述。曲线的紧密和结构描述可以采用近似方法.一种方法是把曲线展

开为正交级数;另一种是把曲线分段为一些比较简单的曲线.线性分割分段近似是最常见的,

而样条函数(对多项式分段,在各连接点规定连续条件)具有普遍意义。

(3)曲线形状分析量度法。把一些与某曲线的分析近似法有关的系数用来表示该曲线形

状的特征。不同形状的曲线具有不同的系数.不过,随着比例尺、旋转和遮断情况的不同,

这些系数可能变化很大。因此,这种分析量度法只适用于曲线数目较少及预期变化较小的情

况.

2、面积形状的描述与量度

采用图形内部不在边界上的点来描述图形,比较健全,因为比较小的面积变化能引起大

得多的边界变化。

👁️ 阅读量:0