Download presentation
Presentation is loading. Please wait.
1
智能控制 授课专业:电子信息工程 授课班级: 授课时间:2010年下学期 主讲教师:谭跃
2
智能控制 课程总学时:48 学时 学分:3学分 课堂教学课时:48学时
3
智能控制 教材:《智能控制》,刘金琨编 参考教材: 1、《智能控制》,蔡自兴主编,电子工业出版社
2、《智能控制理论和方法》,李人厚主编,西安电 子科技大学出版社 3、《智能控制理论及应用》,师黎、陈铁军、李晓 媛等编,清华大学出版社
4
讲授内容和课时安排 序号 主 要 内 容 学时分配 1 绪论 1.5 2 专家控制 2.5 3 模糊控制的理论基础 4 模糊控制 10 5
主 要 内 容 学时分配 1 绪论 1.5 2 专家控制 2.5 3 模糊控制的理论基础 4 模糊控制 10 5 神经网络的理论基础 6 典型神经网络 7 高阶神经网络 8 神经网络控制 9 遗传算法及其应用 合 计 48
5
第一章 绪 论 第1节 智能控制的发展过程 1.1 智能控制的提出
传统控制方法包括经典控制和现代控制,是基于被控对象精确模型的控制方式,缺乏灵活性和应变能力,适于解决线性、时不变性等相对简单的控制问题,难以解决对复杂系统的控制。在传统控制的实际应用遇到很多难解决的问题,主要表现以下几点:
6
(1)实际系统由于存在复杂性、非线性、时变性、不确定性和不完全性等,无法获得精确的数学模型。
(2)某些复杂的和包含不确定性的控制过程无法用传统的数学模型来描述,即无法解决建模问题。
7
(3)针对实际系统往往需要进行一些比较苛刻的线性化假设,而这些假设往往与实际系统不符合。
(4)实际控制任务复杂,而传统的控制任务要求低,对复杂的控制任务,如机器人控制、CIMS、社会经济管理系统等复杂任务无能为力。
8
在生产实践中,复杂控制问题可通过熟练操作人员的经验和控制理论相结合去解决,由此,产生了智能控制。智能控制将控制理论的方法和人工智能技术灵活地结合起来,其控制方法适应对象的复杂性和不确定性。
9
1.2 智能控制的概念 智能控制是一门交叉学科,著名美籍华人傅京逊教授1971年首先提出智能控制是人工智能与自动控制的交叉,即二元论。美国学者G.N.Saridis1977年在此基础上引入运筹学,提出了三元论的智能控制概念,即 IC=AC∩AI∩OR
10
式中各子集的含义为 IC——智能控制(Intelligent Control) AI——人工智能(Artificial Intelligence) AC——自动控制(Automatic Control) OR——运筹学(Operational Research)
11
图1-1 基于三元论的智能控制 信号处理 形式语言 运筹学 启发 规划 人工智能 调度 管理 记忆 学习 智能 管理 控制 协调 动力学
智能 管理 控制 协调 动力学 动态反馈 优化 动力学 动态反馈 自动控制 图1-1 基于三元论的智能控制
12
人工智能(AI)是一个用来模拟人思维的知识处理系统,具有记忆、学习、信息处理、形式语言、启发推理等功能。
自动控制(AC)描述系统的动力学特性,是一种动态反馈。 运筹学(OR)是一种定量优化方法,如线性规划、网络规划、调度、管理、优化决策和多目标优化方法等。
13
三元论除了“智能”与“控制”外还强调了更高层次控制中调度、规划和管理的作用,为递阶智能控制提供了理论依据。
所谓智能控制,即设计一个控制器(或系统),使之具有学习、抽象、推理、决策等功能,并能根据环境(包括被控对象或被控过程)信息的变化作出适应性反应,从而实现由人来完成的任务。
14
1.3 智能控制的发展 智能控制是自动控制发展的最新阶段,主要用于解决传统控制难以解决的复杂系统的控制问题。控制科学的发展过程如图所示。
15
开环控制 确定性反馈控制 最优控制 随机控制 自适应控制 鲁棒控制 自学习控制 智能控制 控制科学的发展过程
16
从二十世纪60年代起,由于空间技术、计算机技术及人工智能技术的发展,控制界学者在研究自组织、自学习控制的基础上,为了提高控制系统的自学习能力,开始注意将人工智能技术与方法应用于控制中。
17
1966年,J.M.Mendal首先提出将人工智能技术应用于飞船控制系统的设计;
1971年,傅京逊首次提出智能控制这一概念,并归纳了三种类型的智能控制系统: (1)人作为控制器的控制系统:人作为控制器的控制系统具有自学习、自适应和自组织的功能;
18
(2)人—机结合作为控制器的控制系统:机器完成需要连续进行的并需快速计算的常规控制任务,人则完成任务分配、决策、监控等任务;
(3)无人参与的自主控制系统:为多层的智能控制系统,需要完成问题求解和规划、环境建模、传感器信息分析和低层的反馈控制任务。如自主机器人。
19
1985年8月,IEEE在美国纽约召开了第一界智能控制学术讨论会,随后成立了IEEE智能控制专业委员会;1987年1月,在美国举行第一次国际智能控制大会,标志智能控制领域的形成。
20
近年来,神经网络、模糊数学、专家系统、进化论等各门学科的发展给智能控制注入了巨大的活力,由此产生了各种智能控制方法。
智能控制的几个重要分支为专家控制、模糊控制、神经网络控制和遗传算法。
21
第2节 智能控制的几个重要分支 2.1 模糊控制 传统控制方法均是建立在被控对象精确数学模型基础上的,然而,随着系统复杂程度的提高,将难以建立系统的精确数学模型。 在工程实践中,人们发现,一个复杂的控制系统可由一个操作人员凭着丰富的实践经验得到满意的控制效果。这说明,如果通过模拟人脑的思维方法设计控制器,可实现复杂系统的控制,由此产生了模糊控制。
22
1965年美国加州大学自动控制系L.A.Zedeh提出模糊集合理论,奠定了模糊控制的基础;
1974年伦敦大学的Mamdani博士利用模糊逻辑,开发了世界上第一台模糊控制的蒸汽机,从而开创了模糊控制的历史;
23
1983年日本富士电机开创了模糊控制在日本的第一项应用—水净化处理,之后,富士电机致力于模糊逻辑元件的开发与研究,并于1987年在仙台地铁线上采用了模糊控制技术,1989年将模糊控制消费品推向高潮,使日本成为模糊控制技术的主导国家。 模糊控制的发展可分为三个阶段:
24
(1)1965年-1974年为模糊控制发展的第一阶段,即模糊数学发展和形成阶段;
(2)1974年-1979年为模糊控制发展的第二阶段,产生了简单的模糊控制器; (3)1979年—现在为模糊控制发展的第三阶段,即高性能模糊控制阶段。
25
2.2 神经网络控制 神经网络的研究已经有几十年的历史。 1943年McCulloch和Pitts提出了神经元数学模型; 1950年-1980年为神经网络的形成期,有少量成果,如1975年Albus提出了人脑记忆模型CMAC网络,1976年Grossberg提出了用于无导师指导下模式分类的自组织网络;
26
1980年以后为神经网络的发展期,1982年Hopfield提出了Hopfield网络,解决了回归网络的学习问题,1986年美国的PDP研究小组提出了BP网络,实现了有导师指导下的网络学习,为神经网络的应用开辟了广阔的发展前景。 将神经网络引入控制领域就形成了神经网络控制。
27
神经网络控制是从机理上对人脑生理系统进行简单结构模拟的一种新兴智能控制方法。神经网络具有并行机制、模式识别、记忆和自学习能力的特点,它能充分逼近任意复杂的非线性系统,能够学习与适应不确定系统的动态特性,有很强的鲁棒性和容错性等,因此,神经网络控制在控制领域有广泛的应用。
28
2.3 遗传算法 遗传算法(Genetic Algorithm,简称GA)是人工智能的一个重要分支,是基于自然选择和基因遗传学原理的搜索算法,是基于达尔文进化论,在计算机上模拟生命进化论机制而发展起来的一门学科。
29
遗传算法由美国的J.H.Holland教授在1975年提出,80年代中期开始逐步成熟。从1985年起,国际上开始举行遗传算法国际会议。目前遗传算法已经被广泛应用于许多实际问题,成为用来解决高度复杂问题的新思路和新方法。 遗传算法可用于模糊控制规则的优化及神经网络参数及权值的学习,在智能控制领域有广泛的应用。
30
第3节 智能控制的特点、工具及应用 3.1 智能控制的特点
3.1 智能控制的特点 (1)学习功能:智能控制器能通过从外界环境所获得的信息进行学习,不断积累知识,使系统的控制性能得到改善; (2)适应功能:智能控制器具有从输入到输出的映射关系,可实现不依赖于模型的自适应控制,当系统某一部分出现故障时,也能进行控制;
31
(3)自组织功能:智能控制器对复杂的分布式信息具有自组织和协调的功能,当出现多目标冲突时,它可以在任务要求的范围内自行决策,主动采取行动。
(4)优化能力:智能控制能够通过不断优化控制参数和寻找控制器的最佳结构形式,获得整体最优的控制性能。
32
3.2 智能控制的研究工具 (1)符号推理与数值计算的结合
例如专家控制,它的上层是专家系统,采用人工智能中的符号推理方法;下层是传统意义下的控制系统,采用数值计算方法。
33
(2)模糊集理论 模糊集理论是模糊控制的基础,其核心是采用模糊规则进行逻辑推理,其逻辑取值可在0与1之间连续变化,其处理的方法是基于数值的而不是基于符号的。
34
(3)神经元网络理论 神经网络通过许多简单的关系来实现复杂的函数,其本质是一个非线性动力学系统,但它不依赖数学模型,是一种介于逻辑推理和数值计算之间的工具和方法。
35
(4) 遗传算法 遗传算法根据适者生存、优胜劣汰等自然进化规则来进行搜索计算和问题求解。对许多传统数学难以解决或明显失效的复杂问题,特别是优化问题,GA提供了一个行之有效的途径。
36
(5)离散事件与连续时间系统的结合 主要用于计算机集成制造系统(CIMS)和智能机器人的智能控制。以CIMS为例,上层任务的分配和调度、零件的加工和传输等可用离散事件系统理论进行分析和设计;下层的控制,如机床及机器人的控制,则采用常规的连续时间系统方法。
37
3.3 智能控制的应用 作为智能控制发展的高级阶段,智能控制主要解决那些用传统控制方法难以解决的复杂系统的控制问题,其中包括智能机器人控制、计算机集成制造系统(CIMS)、工业过程控制、航空航天控制、社会经济管理系统、交通运输系统、环保及能源系统等。下面以智能控制在运动控制和过程控制中的应用为例进行说明。
38
(1)在机器人控制中的应用 智能机器人是目前机器人研究中的热门课题。J.S.Albus于1975年提出小脑模型关节控制器( Cerebellar Model Arculation Controller,简称CMAC),它是仿照小脑如何控制肢体运动的原理而建立的神经网络模型,采用CMAC,可实现机器人的关节控制,这是神经网络在机器人控制的一个典型应用。
39
E.H.Mamdani于20世纪80年代初首次将模糊控制应用于一台实际机器人的操作臂控制。
目前工业上用的90%以上的机器人都不具有智能。随着机器人技术的迅速发展,需要各种具有不同程度智能的机器人。
40
(2)在过程控制中的应用 过程控制是指石油、化工、冶金、轻工、纺织、制药、建材等工业生产过程的自动控制,它是自动化技术的一个极其重要的方面。智能控制在过程控制上有着广泛的应用。 在石油化工方面,1994年美国的Gensym公司和Neuralware公司联合将神经网络用于炼油厂的非线性工艺过程。
41
在冶金方面,日本的新日铁公司于1990年将专家控制系统应用于轧钢生产过程。在化工方面,日本的三菱化学合成公司研制出用于乙烯工程模糊控制系统。
将智能控制应用于过程控制领域,是过程控制发展的方向。
42
第2章 专家控制 在传统控制系统中,系统的运行排斥了人的干预,人-机之间缺乏交互。控制器对被控对象在环境中的参数、结构的变化缺乏应变能力。
传统控制理论的不足,在于它必须依赖于被控对象严格的数学模型,试图对精确模型来求取最优的控制效果。而实际的被控对象存在着许多难以建模的因素。
43
上世纪80年代初,人工智能中专家系统的思想和方法开始被引入控制系统的研究和工程应用中。
专家系统能处理定性的、启发式或不确定的知识信息,经过各种推理来达到系统的任务目标。专家系统为解决传统控制理论的局限性提供了重要的启示,二者的结合导致了专家控制这一方法。
44
2.1 专家系统 2.1.1 专家系统概述 1.定义 专家系统是一类包含知识和推理的智能计算机程序,其内部包含某领域专家水平的知识和经验,具有解决专门问题的能力。
45
2.发展历史 分为三个时期: (1) 初创期( 年) 第一代专家系统DENLDRA和MACSMA的出现,标志着专家系统的诞生。其中DENLDRA为推断化学分子结构的专家系统,由专家系统的奠基人,Stanford大学计算机系的Feigenbaum教授及其研究小组研制。MACSMA为用于数学运算的数学专家系统,由麻省理工学院完成。
46
(2)成熟期( 年): 在此期间斯坦福大学研究开发了最著名的专家系统-血液感染病诊断专家系统MYCIN,标志专家系统从理论走向应用。另一个著名的专家系统-语音识别专家系统HEARSAY的出现,标志着专家系统的理论走向成熟。
47
(3)发展期(1978-现在) 在此期间,专家系统走向应用领域,专家系统的数量增加,仅1987年研制成功的专家系统就有1000种。 专家系统可以解决的问题一般包括解释、预测、设计、规划、监视、修理、指导和控制等。目前,专家系统已经广泛地应用于医疗诊断、语音识别、图象处理、金融决策、地质勘探、石油化工、教学、军事、计算机设计等领域。
48
专家系统构成 专家系统主要由知识库和推理机构成,专家系统的结构如图2.1所示。
49
知识库 规则库 数据库 推理机 解释程序 调度程序 推理咨询 知识获取 领域专家 专家系统 用户 专家系统的结构
50
2.1.3 专家系统的建立 1.知识库 知识库包含三类知识: (1)基于专家经验的判断性规则; (2)用于推理、问题求解的控制性规则;
(3)用于说明问题的状态、事实和概念以及当前的条件和常识等的数据。
51
知识库包含多种功能模块,主要有知识查询、检索、增删、修改和扩充等。知识库通过人机接口与领域专家相沟通,实现知识的获取。
52
2.推理机 推理机是用于对知识库中的知识进行推理来得到结论的“思维”机构。推理机包括三种推理方式: (1)正向推理:从原始数据和已知条件得到结论; (2)反向推理:先提出假设的结论,然后寻找支持的证据,若证据存在,则假设成立; (3)双向推理:运用正向推理提出假设的结论,运用反向推理来证实假设。
53
3.知识的表示 常用的知识表示方法为:产生式规则,框架,语义网络,过程。其中产生式规则是专家系统最流行的表达方法。由产生式规则表示的专家系统又称为基于规则的系统或产生式系统。
54
产生式规则的表达方式为: IF E THEN H WITH CF(E,H) 其中,E表示规则的前提条件,即证据,它可以是单独命题,也可以是复合命题;H表示规则的结论部分,即假设,也是命题;CF(Certainty Factor)为规则的强度,反映当前提为真时,规则对结论的影响程度。
55
4.专家系统开发语言 (1)C语言,人工智能语言(如Prolog,Lisp等); (2)专家系统开发工具:已经建好的专家系统框架,包括知识表达和推理机。在运用专家系统开发工具开发专家系统时,只需要加入领域知识。
56
5.专家系统建立步骤 (1)知识库的设计 ① 确定知识类型:叙述性知识,过程性知识,控制性知识; ② 确定知识表达方法; ③ 知识库管理系统的设计:实现规则的保存、编辑、删除、增加、搜索等功能。
57
(2)推理机的设计 ① 选择推理方式; ② 选择推理算法:选择各种搜索算法,如深度优先搜索、广度优先搜索、启发式优先搜索等。 (3)人─机接口的设计 ① 设计“用户─专家系统接口”:用于咨询理解和结论解释; ② 设计“专家─专家系统接口”:用于知识库扩充及系统维护。
58
第二节 专家控制 一、概述 瑞典学者K.J.Astrom在1983年首先把人工智能中的专家系统引入智能控制领域,于1986年提出“专家控制”的概念,构成一种智能控制方法。
59
专家控制(Expert Control)是智能控制的一个重要分支,又称专家智能控制。
所谓专家控制,是将专家系统的理论和技术同控制理论、方法与技术相结合,在未知环境下,仿效专家的经验,实现对系统的控制。
60
专家控制试图在传统控制的基础上“加入”一个富有经验的控制工程师,实现控制的功能,它由知识库和推理机构构成主体框架,通过对控制领域知识(先验经验、动态信息、目标等)的获取与组织,按某种策略及时地选用恰当的规则进行推理输出,实现对实际对象的控制。
61
二、基本原理 1.结构 专家控制的基本结构如图2.2所示。
62
知识库 实时 推理机 A/D 被控 对象 D/A 控制 算法库 图2.2 专家控制的结构
63
2.功能 (1)能够满足任意动态过程的控制需要,尤其适用于带有时变、非线性和强干扰的控制; (2)控制过程可以利用对象的先验知识; (3)通过修改、增加控制规则,可不断积累知识,改进控制性能; (4)可以定性地描述控制系统的性能,如“超调小”、“偏差增大”等;
64
(5)对控制性能可进行解释; (6)可通过对控制闭环中的单元进行故障检测来获取经验规则。 3 与专家系统的区别 专家控制引入了专家系统的思想,但与专家系统存在区别: (1)专家系统能完成专门领域的功能,辅助用户决策;专家控制能进行独立的、实时的自动决策。专家控制比专家系统对可靠性和抗干扰性有着更高的要求。
65
(2)专家系统处于离线工作方式,而专家控制要求在线获取反馈信息,即要求在线工作方式。
4. 知识表示 专家控制将系统视为基于知识的系统,控制系统的知识表示如下: (1)受控过程的知识 ① 先验知识:包括问题的类型及开环特性; ② 动态知识:包括中间状态及特性变化。
66
(2)控制、辨识、诊断知识 ① 定量知识:各种算法; ② 定性知识:各种经验、逻辑、直观判断。 按照专家系统知识库的结构,有关知识可以分类组织,形成数据库和规则库,从而构成专家控制系统的知识源。
67
数据库包括: 事实──已知的静态数据。例如传感器测量误差、运行阈值、报警阈值、操作序列的约束条件、受控过程的单元组态等; 证据──测量到的动态数据。例如传感器的输出值、仪器仪表的测试结果等。证据的类型是各异的,常常带有噪声、延迟,也可能是不完整的,甚至相互之间有冲突;
68
假设──由事实和证据推导的中间结果,作为当前事实集合的补充。例如,通过各种参数估计算法推得的状态估计等;
目标──系统的性能指标。例如对稳定性的要求,对静态工作点的寻优、对现有控制规律是否需要改进的判断等。目标既可以是预定的,也可以是根据外部命令或内部运行状况在线地动态建立的。
69
IF 控制局势(事实和数据) THEN 操作结论
专家控制的规则库一般采用产生式规则表示: IF 控制局势(事实和数据) THEN 操作结论 由多条产生式规则构成规则库。 5 分类 按专家控制在控制系统中的作用和功能,可将专家控制器分为以下两种类型:
70
(1) 直接型专家控制器 直接专家控制器用于取代常规控制器,直接控制生产过程或被控对象。具有模拟(或延伸,扩展)操作工人智能的功能。该控制器的任务和功能相对比较简单,但是需要在线、实时控制。因此,其知识表达和知识库也较简单,通常由几十条产生式规则构成,以便于增删和修改。 直接型专家控制器的示意图见图中的虚线所示。
71
知识库 信息获 取与处理 推理机 构 被控对 象 传感器 控制 规则库 直接型 专家控制器 图 直接型专家控制器
72
(2)间接型专家控制器 间接型专家控制器用于和常规控制器相结合,组成对生产过程或被控对象进行间接控制的智能控制系统。具有模拟(或延伸,扩展)控制工程师智能的功能。该控制器能够实现优化适应、协调、组织等高层决策的智能控制。按照高层决策功能的性质,间接型专家控制器可分为以下几种类型:
73
① 优化型专家控制器:是基于最优控制专家的知识和经验的总结和运用。通过设置整定值、优化控制参数或控制器,实现控制器的静态或动态优化。
② 适应型专家控制器:是基于自适应控制专家的知识和经验的总结和运用。根据现场运行状态和测试数据,相应地调整控制规律,校正控制参数,修改整定值或控制器,适应生产过程、对象特性或环境条件的漂移和变化。
74
③ 协调型专家控制器:是基于协调控制专家和调度工程师的知识和经验的总结和运用。用以协调局部控制器或各子控制系统的运行,实现大系统的全局稳定和优化。
④ 组织型专家控制器:是基于控制工程的组织管理专家或总设计师的知识和经验的总结和运用。用以组织各种常规控制器,根据控制任务的目标和要求,构成所需要的控制系统。
75
间接型专家控制器可以在线或离线运行。通常,优化型、适应型需要在线、实时、联机运行。协调型、组织型可以离线、非实时运行,作为相应的计算机辅助系统。
间接型专家控制器的示意图如图所示。
76
专家控制器 被控对 象 传感器 控制算法 特征提取 图 间接型专家控制器
77
三、专家控制的关键技术及特点 1.专家控制的关键技术 (1) 知识的表达方法; (2)从传感器中识别和获取定量的控制信号;
(3)将定性知识转化为定量的控制信号; (4)控制知识和控制规则的获取。
78
2.专家控制的特点 (1)灵活性:根据系统的工作状态及误差情况,可灵活地选取相应的控制律; (2)适应性:能根据专家知识和经验,调整控制器的参数,适应对象特性及环境的变化; (3)鲁棒性:通过利用专家规则,系统可以在非线性、大偏差下可靠地工作。
79
第三节 专家PID控制 一、专家PID控制原理
80
PID专家控制的实质是,基于受控对象和控制规律的各种知识,无需知道被控对象的精确模型,利用专家经验来设计PID参数。专家PID控制是一种直接型专家控制器。
典型的二阶系统单位阶跃响应误差曲线如图所示。对于典型的二阶系统阶跃响应过程作如下分析。
81
图 典型二阶系统单位阶跃响应误差曲线
82
令 表示离散化的当前采样时刻的误差值, 和 分别表示前一个和前两个采样时刻的误差值,则有
83
根据误差及其变化,可设计专家PID控制器,该 控制器可分为以下五种情况进行设计:
(1)当 时,说明误差的绝对值已经很大。不论误差变化趋势如何,都应考虑控制器的输出应按最大(或最小)输出,以达到迅速调整误差,使误差绝对值以最大速度减小。此时,它相当于实施开环控制。
84
(2)当 或 时,说明误差在朝误差绝对值增大方向变化,或误差为某一常值,未发生变化。
此时,如果 ,说明误差也较大,可考虑由控制器实施较强的控制作用,以达到扭转误差绝对值朝减小方向变化,并迅速减小误差的绝对值,控制器输出为
85
如果,说明尽管误差朝绝对值增大方向变化, 但误差绝对值本身并不很大,可考虑控制器实施 一般的控制作用,只要扭转误差的变化趋势,使 其朝误差绝对值减小方向变化,控制器输出为
86
(3)当 、 或者 时,说明误差的绝对值朝减小的方向变化,或者已 经达到平衡状态。此时,可考虑采取保持控制器输 出不变。 (4)当 、 时,说明误差处于极值状态。如果此时误差的绝对值较大,即 ,可考虑实施较强的控制作用。
87
如果此时误差的绝对值较小,即 ,可考虑实施较弱的控制作用。 (5)当 时,说明误差的绝对值很小,此时加入积分,减少稳态误差。
88
图中,Ⅰ、Ⅲ、Ⅴ、Ⅶ、…区域,误差朝绝对值减小的方向变化。此时,可采取保持等待措施,相当于实施开环控制;Ⅱ、Ⅳ、Ⅵ、Ⅷ、…区域,误差绝对值朝增大的方向变化。此时,可根据误差的大小分别实施较强或一般的控制作用,以抑制动态误差。
89
仿真程序:chap3_1.m 二、仿真程序及分析 仿真实例 求三阶传递函数的阶跃响应 其中对象采样时间为1ms。
采用专家PID设计控制器。在仿真过程中, 取0.001,程序中的五条规则与控制算法的五种情况相对应。 仿真程序:chap3_1.m
90
第三章 模糊控制的理论基础 第一节 概述 一、模糊控制的提出
第三章 模糊控制的理论基础 第一节 概述 一、模糊控制的提出 以往的各种传统控制方法均是建立在被控对象精确数学模型基础上的,然而,随着系统复杂程度的提高,将难以建立系统的精确数学模型。
91
在工程实践中,人们发现,一个复杂的控制系统可由一个操作人员凭着丰富的实践经验得到满意的控制效果。这说明,如果通过模拟人脑的思维方法设计控制器,可实现复杂系统的控制,由此产生了模糊控制。
92
二、模糊控制的特点 模糊控制是建立在人工经验基础之上的。对于一个熟练的操作人员,他往往凭借丰富的实践经验,采取适当的对策来巧妙地控制一个复杂过程。若能将这些熟练操作员的实践经验加以总结和描述,并用语言表达出来,就会得到一种定性的、不精确的控制规则。如果用模糊数学将其定量化就转化为模糊控制算法,形成模糊控制理论。
93
模糊控制理论具有一些明显的特点: (1)模糊控制不需要被控对象的数学模型。模糊控制是以人对被控对象的控制经验为依据而设计的控制器,故无需知道被控对象的数学模型。 (2)模糊控制是一种反映人类智慧的智能控制方法。模糊控制采用人类思维中的模糊量,如“高”、“中”、“低”、“大”、“小”等,控制量由模糊推理导出。这些模糊量和模糊推理是人类智能活动的体现。
94
(3)模糊控制易于被人们接受。模糊控制的核心是控制规则,模糊规则是用语言来表示的,如“今天气温高,则今天天气暖和”,易于被一般人所接受。
(4)构造容易。模糊控制规则易于软件实现。 (5)鲁棒性和适应性好。通过专家经验设计的模糊规则可以对复杂的对象进行有效的控制。
95
第二节 模糊集合 一、模糊集合 对大多数应用系统而言,其主要且重要的信息来源有两种,即来自传感器的数据信息和来自专家的语言信息。数据信息常用0.5,2,3,3.5等数字来表示,而语言信息则用诸如“大”、“小”、“中等”、“非常小”等文字来表示。传统的工程设计方法只能用数据信息而无法使用语言信息,而人类解决问题时所使用的大量知识是经验性的,它们通常是用语言信息来描述。语言信息通常呈经验性,是模糊的。因此,如何描述模糊语言信息成为解决问题的关键。
96
模糊集合的概念是由美国加利福尼亚大学著名教授L. A
模糊集合的概念是由美国加利福尼亚大学著名教授L.A.Zadeh于1965年首先提出来的。模糊集合的引入,可将人的判断、思维过程用比较简单的数学形式直接表达出来。模糊集理论为人类提供了能充分利用语言信息的有效工具。 模糊集合是模糊控制的数学基础。
97
1.特征函数和隶属函数 在数学上经常用到集合的概念。 例如:集合A由4个离散值x1,x2,x3,x4组成。A={x1,x2,x3,x4} 例如:集合A由1到10之间的连续实数值组成。
98
以上两个集合是完全不模糊的。对任意元素x,只有两种可能:属于A,不属于A。这种特性可以用特征函数 来描述:
99
为了表示模糊概念,需要引入模糊集合和隶属函数的概念:
其中A称为模糊集合,由0,1及 构成。 表示元素x属于模糊集合A的程度,取值范围为[0,1],称 为x属于模糊集合A的隶属度。
100
或 2. 模糊集合的表示 ① 模糊集合A由离散元素构成,表示为:
② 模糊集合A由连续函数构成,各元素的隶属度就构成了隶属度函数(Membership Function),此时A表示为:
101
在模糊集合的表达中,符号“/”、“+”和“∫”不代表数学意义上的除号、加号和积分,它们是模糊集合的一种表示方式,表示“构成”或“属于”。
模糊集合是以隶属函数来描述的,隶属度的概念是模糊集合理论的基石。
102
例3.2 设论域U={张三,李四,王五},评语为“学习好”。设三个人学习成绩总评分是张三得95分,李四得90分,王五得85分,三人都学习好,但又有差异。
若采用普通集合的观点,选取特征函数
103
此时特征函数分别为(张三)=1,(李四)=1,(王五)=1。这样就反映不出三者的差异。假若采用模糊子集的概念,选取[0,1]区间上的隶属度来表示它们属于“学习好”模糊子集A的程度,就能够反映出三人的差异。 采用隶属函数 ,由三人的成绩可知三人“学习好”的隶属度为(张三)=0.95,(李四)=0.90,(王五)=0.85。用“学习好”这一模糊子集A可表示为: 其含义为张三、李四、王五属于“学习好”的程度分别是0.95,0.90,0.85。
104
例3.3 以年龄为论域,取 。Zadeh给出了“年轻”的模糊集Y,其隶属函数为
通过Matlab仿真对上述隶属函数作图,隶属函数曲线如图3-1所示。
105
图3-1 “年轻”的隶属函数曲线
106
二、模糊集合的运算 1 模糊集合的基本运算 由于模糊集是用隶属函数来表征的,因此两个子集之间的运算实际上就是逐点对隶属度作相应的运算。 (1)空集 模糊集合的空集为普通集,它的隶属度为0,即
107
(2)全集 模糊集合的全集为普通集,它的隶属度为1,即 (3)等集 两个模糊集A和B,若对所有元素u,它们的隶属函数相等,则A和B也相等。即
108
(4)补集 若 为A的补集,则 例如,设A为“成绩好”的模糊集,某学生 属于“成绩好”的隶属度为: 则 属于“成绩差”的隶属度为:
109
(5)子集 若B为A的子集,则 (6)并集 若C为A和B的并集,则 C=A∪B 一般地,
110
(7)交集 若C为A和B的交集,则 C=A∩B 一般地, (8)模糊运算的基本性质 模糊集合除具有上述基本运算性质外,还具有下表所示的运算性质。
111
运 算 法 则 1.幂等律 A∪A=A,A∩A=A 2.交换律 A∪B=B∪A,A∩B=B∩A 3.结合律 (A∪B)∪C=A∪(B∪C) (A∩B)∩C=A∩(B∩C)
112
4.吸收律 A∪(A∩B)=A A∩(A∪B)=A 5.分配律 A∪(B∩C)=(A∪B)∩(A∪C) A∩(B∪C)=(A∩B) ∪(A∩C) 6.复原律
113
7.对偶律 8.两极律 A∪E=E,A∩E=A A∪Ф=A,A∩Ф=Ф
114
例 设 求A∪B,A∩B。 则
115
例3.5 试证普通集合中的互补律在模糊集合中不成立,即 ,
证:设 , 则
116
2 模糊算子 模糊集合的逻辑运算实质上就是隶属函数的运算过程。采用隶属函数的取大(MAX)-取小(MIN)进行模糊集合的并、交逻辑运算是目前最常用的方法。但还有其它公式,这些公式统称为“模糊算子”。 设有模糊集合A、B和C,常用的模糊算子如下:
117
(1)交运算算子 设C=A∩B,有三种模糊算子: ① 模糊交算子 ② 代数积算子 ③ 有界积算子
118
(2)并运算算子 设C=A∪B,有三种模糊算子: ① 模糊并算子 ② 代数和算子 ③ 有界和算子
119
(3)平衡算子 当隶属函数取大、取小运算时,不可避免地要丢失部分信息,采用一种平衡算子,即“算子”可起到补偿作用。 设A和B经过平衡运算得到C,则 其中γ取值为[0,1]。 当γ=0时, ,相当于A∩B时的代数积算子。
120
当γ=1, ,相当于A∪B时的代数和算子。 平衡算子目前已经应用于德国Inform公司研制的著名模糊控制软件Fuzzy-Tech中。
121
第三节 隶属函数 一、几种典型的隶属函数 在Matlab中已经开发出了11种隶属函数,即双S形隶属函数(dsigmf)、联合高斯型隶属函数(gauss2mf)、高斯型隶属函数(gaussmf)、广义钟形隶属函数(gbellmf)、II型隶属函数(pimf)、双S形乘积隶属函数(psigmf)、S状隶属函数(smf)、S形隶属函数(sigmf)、梯形隶属函数(trapmf)、三角形隶属函数(trimf)、Z形隶属函数(zmf)。
122
在模糊控制中应用较多的隶属函数有以下6种隶属函数。
(1)高斯型隶属函数 高斯型隶属函数由两个参数 和c确定: 其中参数 通常为正,参数c用于确定曲线的中心。Matlab表示为
123
(2) 广义钟型隶属函数 广义钟型隶属函数由三个参数a,b,c确定: 其中参数a和b通常为正,参数c用于确定曲线的中心。Matlab表示为
124
(3) S形隶属函数 S形函数sigmf(x,[a c])由参数a和c决定: 其中参数a的正负符号决定了S形隶属函数的开口朝左或朝右,用来表示“正大”或“负大”的概念。Matlab表示为
125
(4)梯形隶属函数 梯形曲线可由四个参数a,b,c,d确定: 其中参数a和d确定梯形的“脚”,而参数b和c确定梯形的“肩膀”。 Matlab表示为:
126
(5)三角形隶属函数 三角形曲线的形状由三个参数a,b,c确定: 其中参数a和c确定三角形的“脚”,而参数b确定三角形的“峰”。 Matlab表示为
127
(6)Z形隶属函数 这是基于样条函数的曲线,因其呈现Z形状而得名。参数a和b确定了曲线的形状。Matlab表示为 有关隶属函数的MATLAB设计,见著作: 楼顺天,胡昌华,张伟,基于MATLAB的系统分析与设计-模糊系统,西安:西安电子科技大学出版社,2001
128
例3.6 隶属函数的设计:针对上述描述的6种隶属函数进行设计。M为隶属函数的类型,其中M=1为高斯型隶属函数,M=2为广义钟形隶属函数,M=3为S形隶属函数,M=4为梯形隶属函数,M=5为三角形隶属函数,M=6为Z形隶属函数。如图所示。
129
图3-2 高斯型隶属函数(M=1)
130
图3-3 广义钟形隶属函数(M=2)
131
图3-4 S形隶属函数(M=3)
132
图3-5 梯形隶属函数(M=4)
133
图3-6 三角形隶属函数(M=5)
134
图3-7 Z形隶属函数(M=6)
135
二、隶属函数的仿真 例3.7 设计一个三角形隶属函数,按[-3,3]范围七个等级,建立一个模糊系统,用来表示{负大,负中,负小,零,正小,正中,正大}。仿真结果如图所示。
136
图3-8 三角形隶属函数曲线
137
例3.8 设计评价一个学生成绩的隶属函数,在[0,100]之内按A、B、C、D、E分为五个等级,即{不及格,及格,中,良,优}。分别采用五个高斯型隶属函数来表示,建立一个模糊系统,仿真结果如图所示。
138
图 高斯型隶属函数曲线
139
三、 隶属函数的确定方法 隶属函数是模糊控制的应用基础。目前还没有成熟的方法来确定隶属函数,主要还停留在经验和实验的基础上。通常的方法是初步确定粗略的隶属函数,然后通过“学习”和实践来不断地调整和完善。遵照这一原则的隶属函数选择方法有以下几种。
140
(1)模糊统计法 根据所提出的模糊概念进行调查统计,提出与之对应的模糊集A,通过统计实验,确定不同元素隶属于A的程度。 对模糊集A的隶属度 =
141
(2)主观经验法 当论域为离散论域时,可根据主观认识,结合个人经验,经过分析和推理,直接给出隶属度。这种确定隶属函数的方法已经被广泛应用。 (3)神经网络法 利用神经网络的学习功能,由神经网络自动生成隶属函数,并通过网络的学习自动调整隶属函数的值。
142
第四节 模糊关系 一、模糊关系 例3.9 设有一组同学X,X={张三,李四,王五},他们的功课为Y,Y={英语,数学,物理,化学}。他们的考试成绩如下表:
143
表 考试成绩表 取隶属函数 ,其中u为成绩。如果将他们的成绩转化为隶属度,则构成一个x×y上的一个模糊关系R,见下表。
144
表 考试成绩表的模糊化 将上表写成矩阵形式,得:
145
该矩阵称作模糊矩阵,其中各个元素必须在[0,1]闭环区间上取值。矩阵R也可以用关系图来表示,如图所示。
146
二、模糊矩阵运算 设有n阶模糊矩阵A和B, , ,且 。则定义如下几种模糊矩阵运算方式:
147
例3-10 设
149
三、模糊矩阵的合成 模糊矩阵的合成类似于普通矩阵的乘积。将乘积运算换成“取小”,将加运算换成“取大”即可。 设矩阵A是x×y上的模糊关系,矩阵B是y×z上的模糊关系,则C=AοB称为A与B矩阵的合成,合成算法为:
150
例 设, , 则A和B的合成为: 其中
152
第五节 模糊推理 一、模糊语句 将含有模糊概念的语法规则所构成的语句称为模糊语句。根据其语义和构成的语法规则不同,可分为以下几种类型:
第五节 模糊推理 一、模糊语句 将含有模糊概念的语法规则所构成的语句称为模糊语句。根据其语义和构成的语法规则不同,可分为以下几种类型: (1)模糊陈述句:语句本身具有模糊性,又称为模糊命题。如:“今天天气很热”。 (2)模糊判断句:是模糊逻辑中最基本的语句。语句形式:“是a”,记作(a),且a所表示的概念是模糊的。如“张三是好学生”。
153
(3)模糊推理句:语句形式:若是,则是。则为模糊推理语句。如“今天是晴天,则今天暖和”。
二、模糊推理 常用的有两种模糊条件推理语句:If A then B else C;If A AND B then C 下面以第二种推理语句为例进行探讨,该语句可构成一个简单的模糊控制器,如图所示。
154
图 二输入单输出模糊控制器 其中A,B,C分别为论域x,y,z上的模糊集合,A为误差信号上的模糊子集,B为误差变化率上的模糊子集,C为控制器输出上的模糊子集。
155
常用的模糊推理方法有两种:Zadeh法和Mamdani法。Mamdani推理法是模糊控制中普遍使用的方法,其本质是一种合成推理方法。
156
模糊推理语句“If A and B then C”确定了三元模糊关系R,即:
R=(A×B)T1 C 其中(A×B)T1为模糊关系矩阵(A×B) (m×n)构成的m×n列向量,T1为列向量转换,n和m分别为A和B论域元素的个数。
157
基于模糊推理规则,根据模糊关系R,可求得给定输入A1和B1对应的输出C1:
C1=(A1×B1)T2 R 式中, (A1×B1)T2 为模糊关系矩阵(A×B) (m×n)构成的m×n列向量, T2为行向量转换, n和m分别为A和B论域元素的个数。
158
例3-9 设论域x={a1,a2,a3},y={b1,b2,b3},z={c1,c2,c3},已知
, 。试确定“If A and B then C”所决定的模糊关系R,以及输入为 , 时的输出C1。
159
解: 将A×B矩阵扩展成如下列向量:
160
当输入为A1和B1时,有: 将A1×B1矩阵扩展成如下行向量: 最后得: 即:
161
三、模糊关系方程 1、模糊关系方程概念 将模糊关系R看成一个模糊变换器。当A为输入时,B为输出,如图所示。 图 模糊变换器
162
可分为两种情况讨论: (1)已知输入A和模糊关系R,求输出B,这是综合评判,即模糊变换问题。 (2)已知输入A和输出B,求模糊关系R,或已知模糊关系R和输出B,求输入A,这是模糊综合评判的逆问题,需要求解模糊关系方程。
163
2、模糊关系方程的解 近似试探法是目前实际应用中较为常用的方法之一。 例3.10 解方程
164
解: 由方程得: 显然三个括弧内的值都不可能超过0.4。由于 是显然的,因此x2可以取[0,1]的任意值,即x2=[0,1]。 现在只考虑: 这两个括弧内的值可以是:其中一个等于0.4,另一个不超过0.4。分两种情况讨论:
165
(1) 设0.6∧x1=0.4,0.4∧x3≤0.4,则 , 即方程的解为 (2) 设0.6∧x1≤0.4,0.4∧x3=0.4,则 , 即方程的解为:
166
作 业 P28 题3-2、题3-3、题3-4(不需采用Matlab进行仿真)
167
第4章 模糊控制 4.1 模糊控制的基本原理
168
模糊控制原理 模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,它是从行为上模仿人的模糊推理和决策过程的一种智能控制方法。该方法首先将操作人员或专家经验编成模糊规则,然后将来自传感器的实时信号模糊化,将模糊化后的信号作为模糊规则的输入,完成模糊推理,将推理后得到的输出量加到执行器上。
169
图 模糊控制原理框图
170
模糊控制器(Fuzzy Controller—FC)也称为模糊逻辑控制器(Fuzzy Logic Controller—FLC),由于所采用的模糊控制规则是由模糊理论中模糊条件语句来描述的,因此模糊控制器是一种语言型控制器,故也称为模糊语言控制器(Fuzzy Language Controller—FLC)。
171
模糊控制器的构成 模糊控制器的组成框图如图所示。 图 模糊控制器的组成框图
172
1 模糊化接口(Fuzzy interface)
(1){负大,负小,零,正小,正大}={NB, NS, ZO, PS, PB} (2){负大,负中,负小,零,正小,正中,正大}={NB, NM, NS, ZO, PS, PM, PB} (3){大,负中,负小,零负,零正,正小,正中,正大}={NB, NM, NS, NZ, PZ, PS, PM, PB}
173
用三角型隶属度函数表示如图所示。 图 模糊子集和模糊化等级
174
2. 知识库(Knowledge Base—KB)
知识库由数据库和规则库两部分构成。 (1)数据库(Data Base—DB) 数据库所存放的是所有输入、输出变量的全部模糊子集的隶属度矢量值(即经过论域等级离散化以后对应值的集合),若论域为连续域则为隶属度函数。在规则推理的模糊关系方程求解过程中,向推理机提供数据。
175
(2)规则库(Rule Base—RB) 模糊控制器的规则是基于专家知识或手动操作人员长期积累的经验,它是按人的直觉推理的一种语言表示形式。模糊规则通常有一系列的关系词连接而成,如if-then、else、also、end、or等,关系词必须经过“翻译”才能将模糊规则数值化。最常用的关系词为if-then、also,对于多变量模糊控制系统,还有and等。例如,某模糊控制系统输入变量为e(误差)和ec(误差变化),它们对应的语言变量为E和EC,可给出一组模糊规则:
176
R1: IF E is NB and EC is NB then U is PB
R2: IF E is NB and EC is NS then U is PM 通常把if…部分称为“前提部,而then…部分称为“结论部”,其基本结构可归纳为If A and B then C,其中A为论域U上的一个模糊子集,B是论域V上的一个模糊子集。根据人工控制经验,可离线组织其控制决策表R, R是笛卡儿乘积集上的一个模糊子集,则某一时刻其控制量由下式给出:
177
式中 × 模糊直积运算; ° 模糊合成运算。 规则库是用来存放全部模糊控制规则的,在推理时为“推理机”提供控制规则。规则条数和模糊变量的模糊子集划分有关,划分越细,规则条数越多,但并不代表规则库的准确度越高,规则库的“准确性”还与专家知识的准确度有关。
178
3 推理与解模糊接口(Inference and Defuzzy-interface)
推理是模糊控制器中,根据输入模糊量,由模糊控制规则完成模糊推理来求解模糊关系方程,并获得模糊控制量的功能部分。在模糊控制中,考虑到推理时间,通常采用运算较简单的推理方法。最基本的有Zadeh近似推理,它包含有正向推理和逆向推理两类。正向推理常被用于模糊控制中,而逆向推理一般用于知识工程学领域的专家系统中。
179
推理结果的获得,表示模糊控制的规则推理功能已经完成。但是,至此所获得的结果仍是一个模糊矢量,不能直接用来作为控制量,还必须作一次转换,求得清晰的控制量输出,即为解模糊。通常把输出端具有转换功能作用的部分称为解模糊接口。 综上所述,模糊控制器实际上就是依靠微机(或单片机)来构成的。它的绝大部分功能都是由计算机程序来完成的。随着专用模糊芯片的研究和开发,也可以由硬件逐步取代各组成单元的软件功能。
180
4.1.3、模糊控制系统的工作原理 以水位的模糊控制为例,如图4-4所示。设有一个水箱,通过调节阀可向内注水和向外抽水。设计一个模糊控制器,通过调节阀门将水位稳定在固定点附近。按照日常的操作经验,可以得到基本的控制规则: “若水位高于O点,则向外排水,差值越大,排水越快”; “若水位低于O点,则向内注水,差值越大,注水越快”。 根据上述经验,按下列步骤设计模糊控制器:
181
h0 图 水箱液位控制
182
将偏差e分为五级:负大(NB),负小(NS),零(O),正小(PS),正大(PB)。
1 确定观测量和控制量 定义理想液位O点的水位为h0,实际测得的水位高度为h,选择液位差 将当前水位对于O点的偏差e作为观测量。 2 输入量和输出量的模糊化 将偏差e分为五级:负大(NB),负小(NS),零(O),正小(PS),正大(PB)。
183
根据偏差e的变化范围分为七个等级:-3,-2,-1,0,+1,+2,+3。得到水位变化模糊表4-1。
184
控制量u为调节阀门开度的变化。将其分为五级:负大(NB),负小(NS),零(O),正小(PS),正大(PB)。并根据u的变化范围分为九个等级:-4,-3,-2,-1,0,+1,+2,+3,+4。得到控制量模糊划分表4-2。
185
表4-2 控制量变化划分表
186
3 模糊规则的描述 根据日常的经验,设计以下模糊规则: (1)“若e负大,则u负大” (2)“若e负小,则u负小”
3 模糊规则的描述 根据日常的经验,设计以下模糊规则: (1)“若e负大,则u负大” (2)“若e负小,则u负小” (3)“若e为0,则u为0” (4)“若e正小,则u正小” (5)“若e正大,则u正大” 其中,排水时,u为负,注水时,u为正。
187
上述规则采用“IF A THEN B”形式来描述:
(1) if e=NB then u=NB (2) if e=NS then u=NS (3) if e=0 then u=0 (4) if e=PS then u=PS (5) if e=PB then u=PB 根据上述经验规则,可得模糊控制表4-3。
188
表4-3 模糊控制规则表 4 求模糊关系 模糊控制规则是一个多条语句,它可以表示为U×V上的模糊子集,即模糊关系R: 其中规则内的模糊集运算取交集,规则间的模糊集运算取并集。
191
由以上五个模糊矩阵求并集(即隶属函数最大值), 得:
192
5 模糊决策 模糊控制器的输出为误差向量和模糊关系的合成: 当误差e为NB时, 控制器输出为
194
6 控制量的反模糊化 由模糊决策可知,当误差为负大时,实际液位远高于理想液位,e=NB,控制器的输出为一模糊向量,可表示为: 如果按照“隶属度最大原则”进行反模糊化,则选择控制量为 ,即阀门的开度应关大一些,减少进水量。
195
仿真:按上述步骤,设计水箱模糊控制的Matlab仿真程序。通过该程序,可实现模糊控制的动态仿真。模糊控制响应表见表4-4所示。取偏差e=-3,运行该程序,得u =-4。
表4-4 模糊控制响应表
196
四、模糊控制器结构 在确定性控制系统中,根据控制器输出的个数,可分为单变量控制系统和多变量控制系统。在模糊控制系统中也可类似地划分为单变量模糊控制和多变量模糊控制。 1 单变量模糊控制器 在单变量模糊控制器(Single Variable Fuzzy Controller—SVFC)中,将其输入变量的个数定义为模糊控制的维数。
197
(1)一维模糊控制器 如图所示,一维模糊控制器的输入变量往往选择为受控量和输入给定的偏差量E。由于仅仅采用偏差值,很难反映过程的动态特性品质,因此,所能获得的系统动态性能是不能令人满意的。这种一维模糊控制器往往被用于一阶被控对象。
198
(2)二维模糊控制器 如图所示,二维模糊控制器的两个输入变量基本上都选用受控变量和输入给定的偏差E和偏差变化EC,由于它们能够较严格地反映受控过程中输出变量的动态特性,因此,在控制效果上要比一维控制器好得多,也是目前采用较广泛的一类模糊控制器。
199
(3)三维模糊控制器 如图所示,三维模糊控制器的三个输入变量分别为系统偏差量E、偏差变化量EC和偏差变化的变化率ECC。由于这些模糊控制器结构较复杂,推理运算时间长,因此除非对动态特性的要求特别高的场合,一般较少选用三维模糊控制器。
200
模糊控制系统所选用的模糊控制器维数越高,系统的控制精度也就越高。但是维数选择太高,模糊控制规律就过于复杂,这是人们在设计模糊控制系统时,多数采用二维控制器的原因。
201
2 多变量模糊控制器 一个多变量模糊控制器(Multiple Variable Fuzzy Controller)系统所采用的模糊控制器,具有多变量结构,称之为多变量模糊控制器。如图4-6所示。 要直接设计一个多变量模糊控制器是相当困难的,可利用模糊控制器本身的解耦特点,通过模糊关系方程求解,在控制器结构上实现解耦,即将一个多输入-多输出(MIMO)的模糊控制器,分解成若干个多输入-单输出(MISO)的模糊控制器,这样可采用单变量模糊控制器方法设计。
202
图4-6 多变量模糊控制器
203
第2节 模糊控制系统分类 1 按信号的时变特性分类 (1)恒值模糊控制系统 系统的指令信号为恒定值,通过模糊控制器消除外界对系统的扰动作用,使系统的输出跟踪输入的恒定值。也称为“自镇定模糊控制系统”,如温度模糊控制系统。 (2)随动模糊控制系统 系统的指令信号为时间函数,要求系统的输出高精度、快速地跟踪系统输入。也称为“模糊控制跟踪系统”或“模糊控制伺服系统”。
204
2 按模糊控制的线性特性分类 对开环模糊控制系统S,设输入变量为u,输出变量为v。对任意输入偏差Δu和输出偏差Δv,满足 , 。 定义线性度δ,用于衡量模糊控制系统的线性化程度: 其中 , , 为线性化因子,m为模糊子集V的个数。
205
设k0为一经验值,则定义模糊系统的线性特性为:(1)当 时,S为线性模糊系统;(2)当 时,S为非线性模糊系统。
3 按静态误差是否存在分类 (1)有差模糊控制系统 将偏差的大小及其偏差变化率作为系统的输入为有差模糊控制系统。 (2)无差模糊控制系统 引入积分作用,使系统的静差降至最小。
206
4 按系统控制输入变量的多少分类 控制输入个数为1的系统为单变量模糊控制系统,控制输入个数>1的系统为多变量模糊控制系统。
207
第3节 模糊控制器的设计 3.1、模糊控制器的设计步骤
第3节 模糊控制器的设计 3.1、模糊控制器的设计步骤 模糊控制器最简单的实现方法是将一系列模糊控制规则离线转化为一个查询表(又称为控制表)。这种模糊控制其结构简单,使用方便,是最基本的一种形式。本节以单变量二维模糊控制器为例,介绍这种形式模糊控制器的设计步骤,其设计思想是设计其他模糊控制器的基础。
208
1 模糊控制器的结构 单变量二维模糊控制器是最常见的结构形式。 2 定义输入输出模糊集 对误差e、误差变化ec及控制量u的模糊集及其论域定义如下: e、ec和u的模糊集均为: e、ec的论域均为:{-3,-2,-1,0,1,2,3} u的论域为:{-4.5,-3,-1.5,0,1.5,3,4.5}
209
3 定义输入输出隶属函数 模糊变量误差e、误差变化ec及控制量u的模糊集和论域确定后,需对模糊语言变量确定隶属函数,即对模糊变量赋值,确定论域内元素对模糊语言变量的隶属度。 4 建立模糊控制规则 根据人的经验,根据系统输出的误差及误差的变化趋势来设计模糊控制规则。模糊控制规则语句构成了描述众多被控过程的模糊模型。
210
5 建立模糊控制表 模糊控制规则可采用模糊规则表4-5来描述,共49条模糊规则,各个模糊语句之间是或的关系,由第一条语句所确定的控制规则可以计算出u1。同理,可以由其余各条语句分别求出控制量u2,…,u49,则控制量为模糊集合U可表示为
211
表4-5 模糊规则表
212
6 模糊推理 模糊推理是模糊控制的核心,它利用某种模糊推理算法和模糊规则进行推理,得出最终的控制量。 7 反模糊化 通过模糊推理得到的结果是一个模糊集合。但在实际模糊控制中,必须要有一个确定值才能控制或驱动执行机构。将模糊推理结果转化为精确值的过程称为反模糊化。常用的反模糊化有三种:
213
(1)最大隶属度法 选取推理结果模糊集合中隶属度最大的元素作为输出值,即 , 。 如果在输出论域V中,其最大隶属度对应的输出值多于一个,则取所有具有最大隶属度输出的平均值,即: N为具有相同最大隶属度输出的总数。
214
最大隶属度法不考虑输出隶属度函数的形状,只考虑最大隶属度处的输出值。因此,难免会丢失许多信息。它的突出优点是计算简单。在一些控制要求不高的场合,可采用最大隶属度法。
(2) 重心法 为了获得准确的控制量,就要求模糊方法能够很好的表达输出隶属度函数的计算结果。重心法是取隶属度函数曲线与横坐标围成面积的重心为模糊推理的最终输出值,即
215
对于具有m个输出量化级数的离散域情况 与最大隶属度法相比较,重心法具有更平滑的输出推理控制。即使对应于输入信号的微小变化,输出也会发生变化。
216
(3)加权平均法 工业控制中广泛使用的反模糊方法为加权平均法,输出值由下式决定 其中系数 的选择根据实际情况而定。不同的系数决定系统具有不同的响应特性。当系数 取隶属度 时,就转化为重心法。
217
反模糊化方法的选择与隶属度函数形状的选择、推理方法的选择相关。
Matlab提供五种反模糊化方法:(1)centroid:面积重心法;(2)bisector:面积等分法;(3)mom:最大隶属度平均法;(4)som最大隶属度取小法;(5)lom:大隶属度取大法; 在Matlab中,可通过setfis()设置反模糊化方法,通过defuzz()执行反模糊化运算。
218
xx=defuzz(x,mf,’centroid’); 在模糊控制中,重心法可通过下例语句来设定:
例如,重心法通过下例程序来实现: x=-10:1:10; mf=trapmf(x,[-10,-8,-4,7]); xx=defuzz(x,mf,’centroid’); 在模糊控制中,重心法可通过下例语句来设定: a1=setfis(a,'DefuzzMethod','centroid') 其中a为模糊规则库。
219
3.2 模糊控制器的Matlab仿真 根据上述步骤,建立二输入单输出模糊控制系统,该系统包括两个部分,即模糊控制器的设计和位置跟踪。 1.模糊控制器的设计 模糊规则表如表4-5所示,控制规则为49条。误差、误差变化率均为[-3,3], 控制输入的范围为[-4.5,4.5]。通过运行showrule(a),可得到用于描述模糊系统的49条模糊规则。控制器的响应表如表4-6所示。
220
表4-6 模糊响应表 ec e -3 -2 -1 1 2 3 -4 5
221
模糊控制器的设计仿真程序见chap4_2.m。在仿真时,模糊推理系统可由命令plotfis(a2)得到。系统的输入输出隶属度函数如图4-7至4-9所示。
图4-7 偏差隶属度函数
222
图 偏差变化率隶属度函数
223
图 控制器输出隶属度函数
224
2.模糊控制位置跟踪 被控对象为 首先运行模糊控制器程序chap4_2.m,并将模糊控制系统保存在a2之中。然后运行模糊控制的Simulink仿真程序,位置指令取正弦信号,仿真结果如图4-10所示。 模糊控制位置跟踪的Simulink仿真程序见chap4_3.mdl。
225
图4-10 正弦位置跟踪 图4-10 正弦位置跟踪
226
第4节 模糊控制器设计实例-洗衣机模糊控制 以模糊洗衣机的设计为例,其控制是一个开环的决策过程,模糊控制按以下步骤进行。 (1)模糊控制器的结构 选用单变量二维模糊控制器。控制器的输入为衣物的污泥和油脂,输出为洗涤时间。 (2)定义输入输出模糊集 将污泥分为三个模糊集:SD(污泥少),MD(污泥中),LD(污泥多),取值范围为[0,100]。
227
(3)定义隶属函数 选用如下隶属函数: 采用三角形隶属函数实现污泥的模糊化,如图4-11所示,仿真程序为chap4_4.m。
228
图 污泥隶属函数
229
将油脂分为三个模糊集:NG(无油脂),MG(油脂中),LG(油脂多),取值范围为[0,100]。选用如下隶属函数:
230
采用三角形隶属函数实现污泥的模糊化,如下图4-12所示。仿真程序同污泥隶属函数。
图 油脂隶属函数
231
将洗涤时间分为三个模糊集:VS(很短),S(短),M(中等),L(长),VL(很长),取值范围为[0,60]。选用如下隶属函数:
采用三角形隶属函数实现洗涤时间的模糊化,如图4-13所示,仿真程序见附录程序chap4_5.m。
232
图 洗涤时间隶属函数
233
(4)建立模糊控制规则 根据人的操作经验设计模糊规则,模糊规则设计的标准为:“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”。 (5)建立模糊控制表 根据模糊规则的设计标准,建立模糊规则表4-7。
234
表4-7 模糊洗衣机的洗涤规则
235
第*条规则为:“IF 衣物污泥少且没有油脂 THEN 洗涤时间很短”。
(6)模糊推理 分以下几步进行: ① 规则匹配。假定当前传感器测得的信息为: , 分别代入所属的隶属函数中求隶属度:
236
通过上述四种隶属度,可得到四条相匹配的模糊规则,如表4-8所示:
表4-8 模糊推理结果
237
② 规则触发。由上表可知,被触发的规则有4条:
Rule 1:IF y is MD and x is MG THEN z is M Rule 2:IF y is MD and x is LG THEN z is L Rule 3:IF y is LD and x is MG THEN z is L Rule 4:IF y is LD and x is LG THEN z is VL ③ 规则前提推理。在同一条规则内,前提之间通过“与”的关系得到规则结论,前提之间通过取小运算,得到每一条规则总前提的可信度: 规则1前提的可信度为:min(4/5,3/5)=3/5 规则2前提的可信度为:min(4/5,2/5)=2/5 规则3前提的可信度为:min(1/5,3/5)=1/5 规则4前提的可信度为:min(1/5,2/5)=1/5
238
由此得到洗衣机规则前提可信度表,即规则强度表4-9。
表4-9 规则前提可信度
239
④ 将上述两个表进行“与”运算,得到每条规则总的输出,如表4-10所示
表4-10 规则总的可信度
240
⑤ 模糊系统总的输出 模糊系统总的输出为各条规则推理结果的并,即 ⑥ 反模糊化 模糊系统总的输出实际上是三个规则推理结果的并集,需要进行反模糊化,才能得到精确的推理结果。下面以最大平均法为例,进行反模糊化。
241
将 带入洗涤时间隶属函数中的 ,得到规则前提隶属度 与规则结论隶属度
的交点: 得: , 。 采用最大平均法,可得精确输出
242
仿真实例:采用MATLAB中模糊控制工具箱中的模糊命令设计洗衣机模糊控制系统,采用本节的隶属函数,按上述步骤设计模糊系统。取x=60,y=70,反模糊化采用重心法,模糊推理结果为24.9。利用模糊命令ruleview可实现模糊控制的动态仿真。动态仿真模糊系统如图4-16所示。 仿真程序:chap4_6.m
243
图4-16 动态仿真模糊系统
244
作 业 P60:题4-1、题4-2、题4-3
245
第5节 模糊自适应整定PID控制 一、模糊自适应整定PID控制原理
246
随着计算机技术的发展,人们利用人工智能的方法将操作人员的调整经验作为知识存入计算机中,根据现场实际情况,计算机能自动调整PID参数,这样就出现了智能PID控制器。这种控制器把古典的PID控制与先进的专家系统相结合,实现系统的最佳控制。这种控制必须精确地确定对象模型,首先将操作人员(专家)长期实践积累的经验知识用控制规则模型化,然后运用推理便可对PID参数实现最佳调整。
247
由于操作者经验不易精确描述,控制过程中各种信号量以及评价指标不易定量表示,模糊理论是解决这一问题的有效途径,所以人们运用模糊数学的基本理论和方法,把规则的条件、操作用模糊集表示,并把这些模糊控制规则以及有关信息(如评价指标、初始PID参数等)作为知识存入计算机知识库中,然后计算机根据控制系统的实际响应情况(即专家系统的输入条件),运用模糊推理,即可自动实现对PID参数的最佳调整,这就是模糊自适应PID控制。模糊自适应PID控制器目前有多种结构形式,但其工作原理基本一致。
248
自适应模糊PID控制器以误差和误差变化作为输入,可以满足不同时刻的和对PID参数自整定的要求。利用模糊控制规则在线对PID参数进行修改,便构成了自适应模糊PID控制器,其结构如图4-15所示。
249
图4-15 自适应模糊控制器结构 PID参数模糊自整定是找出PID 3个参数kp、ki、kd与e和ec之间的模糊关系,在运行中通过不断检测e和ec,根据模糊控制原理来对3个参数进行在线修改,以满足不同e和ec时对控制参数的不同要求,而使被控对象有良好的动、静态性能。
250
从系统的稳定性、响应速度、超调量和稳态精度等各方面来考虑, kp, ki, kd的作用如下:
(1)比例系数kp的作用是加快系统的响应速度,提高系统的调节精度。 kp越大,系统的响应速度越快,系统的调节精度越高,但易产生超调,甚至会导致系统不稳定。 kp取值过小,则会降低调节精度,使响应速度缓慢,从而延长调节时间,使系统静态、动态特性变坏。
251
(2)积分作用系数ki的作用是消除系统的稳态误差。 ki越大,系统的静态误差消除越快,但ki过大,在响应过程的初期会产生积分饱和现象,从而引起响应过程的较大超调。若ki过小,将使系统静态误差难以消除,影响系统的调节精度。
252
(3)微分作用系数kd的作用是改善系统的动态特性,其作用主要是在响应过程中抑制偏差向任何方向的变化,对偏差变化进行提前预报。但kd过大,会使响应过程提前制动,从而延长调节时间,而且会降低系统的抗干扰性能。
253
以PI参数整定为例,必须考虑到在不同时刻两个参数的作用及相互之间的互联关系。模糊自整定PI是在PI算法的基础上,通过计算当前系统误差e和误差变化率ec,利用模糊规则进行模糊推理,查询模糊矩阵表进行参数调整。针对kp、ki两个参数分别整定的模糊控制表如下。
254
(1) Kp整定原则 当响应在上升过程时(e为P),kp取正,即增大kp ;当超调时( e为N), kp取负,即降低kp 。当误差在零附近时( e为Z), 分3种情况:ec为N时,超调越来越大,此时kp取负;ec为Z时,为了降低误差, kp取正;ec为P时,正向误差越来越大, kp取正。 Kp整定的模糊规则表见表4-11.
255
表 kp整定的模糊规则表 ec e N Z P
256
采用积分分离策略,即误差在零附近时,ki取正,否则ki取零。 ki整定的模糊规则表见表4-12。 ec e N Z P
257
将系统误差e和误差变化率ec变化范围定义为模糊集上的论域。
其模糊子集为 ,子集中元素分别代表负,零,正。设e、ec和kp、ki三个系数均服从正态分布,因此可得出各模糊子集的隶属度,根据各模糊子集的隶属度赋值表和各参数模糊控制模型,应用模糊合成推理设计PI参数的模糊矩阵表,查出修正参数代入下式计算。
258
在线运行过程中,控制系统通过对模糊逻辑规则的结果处理、查表和运算,完成对PID参数的在线自校正。其工作流程图如图4-18所示。
259
图4-18 模糊PID工作流程图
260
仿真实例 被控对象为: 采样时间为1ms,采用z变换进行离散化,离散化后的被控对象为: 位置指令为幅值为1.0的阶跃信号,r(k)=1.0。仿真时,先运行模糊推理系统设计程序chap4_7a.m,实现模糊推理系统fuzzpid.fis,并将此模糊推理系统调入内存中,然后运行模糊控制程序chap4_7b.m。
261
在程序chap4_7a.m中,根据模糊规则表4-11至4-12,分别对 、 、 、 进行隶属函数的设计。在MATLAB环境下,对模糊系统a,运行plotmf命令,可得到模糊系统的隶属函数,如图4-19至4-22所示,运行命令showrule可显示模糊规则。另外,针对模糊推理系统fuzzpid.fis,运行命令fuzzy可进行规则库和隶属函数的编辑,如图4-23所示,运行命令ruleview可实现模糊系统的动态仿真,如图4-24所示。
262
图4-19 误差的隶属函数
263
图4-20 误差变化率的隶属函数
264
图 的隶属函数
265
图 的隶属函数
266
图4-22 模糊系统fuzzpid.fis的结构
267
图4-23 模糊推理系统的动态仿真环境
268
第8节 模糊控制的应用 1 模糊控制在家电中的应用
第8节 模糊控制的应用 1 模糊控制在家电中的应用 模糊电子技术是21世纪的核心技术,模糊家电是模糊电子技术的最重要应用领域。所谓模糊家电,就是根据人的经验,在电脑或芯片的控制下实现可模仿人的思维进行操作的家用电器。
269
几种典型的模糊家电产品如下: (1)模糊电视机 根据室内光线的强弱自动调整电视机的亮度,根据人与电视机的距离自动调整音量,同时能够自动调节电视机的色度、清晰度和对比度。 1990年3月,日本的三洋公司研制并推出了一种采用模糊技术的彩色电视机,该电视机能够根据室内的亮度和观看距离,对电视机的对比度进行自动调节,保证在各种条件下 都能获得最佳的收看效果。
270
(2)模糊空调 模糊空调可灵敏地控制室内的温度。日本研制了一种模糊空调器,利用红外线传感器识别房间信息(人数、温度、大小、门开关等)快速调整室内温度,提高了舒适感。 (3)模糊微波炉 日本夏普公司生产的RE-SEI型微波炉,内部装有12个传感器,这些传感器能对食品的重量、高度、形状和温度等进行测量,并利用这些信息自动选择化霜、再热、烧烤和对流四种工作方式,并自动决定烹制时间。
271
(4)模糊洗衣机 以我国生产的小天鹅模糊控制全自动洗衣机为例,它能够自动识别洗衣物的重量、质地、污脏性质和程度,采用模糊控制技术来选择合理的水位、洗涤时间、水流程序等,其性能已达到国外同类产品的水平。 (5)模糊电动剃刀 日本三洋、松下公司推出了模糊控制电动剃刀,通过利用传感器分析胡须的生长情况和面部轮廓,自动调整刀片,并选择最佳的剃削速度。
272
2 模糊控制在过程控制中的应用 (1)工业炉方面:如退火炉、电弧炉、水泥窑、热风炉、煤粉炉的模糊控制。 (2)石化方面:如蒸馏塔的模糊控制、废水pH值计算机模糊控制系统、污水处理系统的模糊控制等。 (3)煤矿行业:如选矿破碎过程的模糊控制、煤矿供水的模糊控制等。 (4)食品加工行业:如甜菜生产过程的模糊控制、酒精发酵温度的模糊控制等。
273
3 模糊控制在机电行业中的应用 如集装箱吊车的模糊控制、空间机器人柔性臂动力学的模糊控制、单片机温度模糊控制、交流随动系统的模糊控制、快速伺服系统定位的模糊控制、电梯群控系统多目标模糊控制、直流无刷电机调速的模糊控制等。
274
第9节 模糊控制的发展概况 一、模糊控制发展的几个转折点
第9节 模糊控制的发展概况 一、模糊控制发展的几个转折点 自从Zadeh提出模糊集理论以来,模糊控制开始了它的发展历程。从历史的发展来看,模糊控制发展的几个转折点见表4-14所示。
275
表4-1 模糊控制发展的转折点 时间 研究人员 研究成果 1965 Zadeh 模糊集理论 1972 模糊控制原理 1973 复杂系统及决策过程的分析 1974 Mamdani et al 蒸汽机的模糊控制 1976 Rutherford et al 模糊算法分析 1977 Ostergaad 热交换器和水泥窑模糊控制 Willaey et al 最优模糊控制 1979 Komolov et al 有限自动机理论 1980 Tong et al 污水处理过程的模糊控制 Fukami et al 模糊条件推理 1983 Hirota et al 概率模糊集理论 Takagi et al 模糊控制规则的获取
276
时间 研究人员 研究成果 1983 Yasunobu et al 预测模糊控制 1984 Sugeno et al 汽车的停车模糊控制 1985 Kiszka et al 模糊系统的稳定性 Togai et al 模糊芯片 1986 Yamakawa 模糊控制的硬件系统 1988 Dubois et al 逼近推理 Czogala 多输入模糊控制系统 1991 De Neyer et al 内模模型的模糊控制 1992 Yager 模糊控制隶属函数的神经网络学习 L.X.Wang 模糊万能逼近器 模糊规则的获取 1993 自适应模糊控制器
277
二、 模糊控制的发展方向 模糊控制主要有以下几个发展方向: (1) Fuzzy-PID复合控制
Fuzzy-PID复合控制是将模糊控制与常规PID控制算法相结合的控制方法,以此达到较高的控制精度。它比单用模糊控制和单用PID控制均具有更好的控制性能。
278
(2) 自适应模糊控制 自适应模糊控制能自动地对模糊控制规则进行修改和完善,以提高控制系统的性能。它具有自适应、自学习的能力,对于那些具有非线性、大时滞、高阶次的复杂系统有着更好的控制效果。
279
(3) 专家模糊控制 专家模糊控制是将专家系统技术与模糊控制相结合的产物。引入专家系统可进一步提高模糊控制的智能水平。专家模糊控制保持了基于规则的方法和模糊集处理带来的灵活性,同时又把专家系统技术的知识表达方法结合进来,能处理更广泛的控制问题。
280
(4) 神经模糊控制 模糊控制规则和隶属函数的获取与确定是模糊控制中的“瓶颈”问题。神经模糊控制是基于神经网络的模糊控制方法。该方法利用神经网络的学习能力,来获取并修正模糊控制规则和隶属函数。
281
(5) 多变量模糊控制 多变量模糊控制有多个输入变量和输出变量,它适用于多变量控制系统。多变量耦合和“维数灾”问题是多变量模糊控制需要解决的关键问题。
282
3 模糊控制面临的主要任务 (1)模糊控制的机理及稳定性分析,新型自适应模糊控制系统、专家模糊控制系统、神经网络模糊控制系统和多变量模糊控制系统的分析与设计; (2)模糊集成控制系统的设计方法研究。现代控制理论、神经网络与模糊控制的相互结合及相互渗透,可构成模糊集成控制系统;
283
(3)模糊控制在非线性系统应用中的模糊建模、模糊规则的建立和推理算法的深入研究;
(4)自学习模糊控制策略的研究; (5)常规模糊控制系统稳定性的改善; (6)模糊控制芯片、模糊控制装置及通用模糊控制系统的开发及工程应用。
284
第5章 自适应模糊控制 模糊控制的突出优点是能够比较容易地将人的控制经验溶入到控制器中,但若缺乏这样的控制经验,很难设计出高水平的模糊控制器。而且,由于模糊控制器采用了IF-THRN控制规则,不便于控制参数的学习和调整,使得构造具有自适应的模糊控制器较困难。
285
自适应模糊控制是指具有自适应学习算法的模糊逻辑系统,其学习算法是依靠数据信息来调整模糊逻辑系统的参数。一个自适应模糊控制器可以用一个单一的自适应模糊系统构成,也可以用若干个自适应模糊系统构成。与传统的自适应控制相比,自适应模糊控制的优越性在于它可以利用操作人员提供的语言性模糊信息,而传统的自适应控制则不能。这一点对具有高度不确定因素的系统尤其重要。
286
自适应模糊控制有两种不同的形式: (1)直接自适应模糊控制:根据实际系统性能与理想性能之间的偏差,通过一定的方法来直接调整控制器的参数; (2)间接自适应模糊控制:通过在线辨识获得控制对象的模型,然后根据所得模型在线设计模糊控制器。
287
5.1 模糊逼近 5.1.1 模糊系统的设计 设二维模糊系统 为集合
5.1 模糊逼近 模糊系统的设计 设二维模糊系统 为集合 上的一个函数,其解析式形式未知。假设对任意一 个 ,都能得到 ,则可设计一个逼近的模糊系统。模糊系统的设计步骤为: 步骤1:在 上定义 个标准的、一致的和完备的模糊集。
288
步骤2:组建 条模糊集IF-THEN规则: :如果 为 且 为 ,则 为 其中, 将模糊集 的中心(用 表示)选择为 (5.1)
289
步骤3:采用乘机推理机,单值模糊器和中心平均解模糊器,根据 条规则来构造模糊系统
步骤3:采用乘机推理机,单值模糊器和中心平均解模糊器,根据 条规则来构造模糊系统 (5.2) 模糊系统的逼近精度
290
万能逼近定理表明模糊系统是除多项函数逼近器、神经网络之外的一个新的万能逼近器。模糊系统较之其它逼近器的优势在于它能够有效地利用语言信息的能力。万能逼近定理是模糊逻辑系统用于非线性系统建模的理论基础,同时也从根本上解释了模糊系统在实际中得到成功应用的原因。
291
万能逼近定理 令 为式(5.2)中的二维模糊系统, 为式(5.1)中的未知函数,如果 在 上是连续可微的,模糊系统的逼近精度为:
万能逼近定理 令 为式(5.2)中的二维模糊系统, 为式(5.1)中的未知函数,如果 在 上是连续可微的,模糊系统的逼近精度为: (5.3) (5.4) 式中,无穷维范数 定义为 。
292
由(5.4)式可知:假设 的模糊集的个数为 ,其变化范围的长度为 ,则模糊系统的逼近精度满足
即:
293
由该定理可得到以下结论: (1)形如式(5.2)的模糊系统是万能逼近器,对任意给定的 ,都可将 和 选得足够小,使 成立,从而保证 。 (2)通过对每个 定义更多的模糊集可以得到更为准确的逼近器,即规则越多,所产生的模糊系统越有效。 (3)为了设计具有预定精度的模糊系统,必须知道 关于 和 的导数边界,即 和 。同时,在设计过程中,还必须知道 在 处的值。
294
仿真实例 实例1 针对一维函数 ,设计一个模糊系统 ,使之一致的逼近定义在 上的连续函数 ,所需精度为 ,即 。
295
由于 ,由式(5.3)可知, ,故取 满足精度要求。取 ,则模糊集的个数为 。在 上定义31个具有三角形隶属函数的模糊集 ,如图5-1所示。所设计的模糊系统为:
296
图5-1 隶属函数
297
一维函数逼近仿真程序见chap5_1.m。逼近效果如图5-2和5-3所示 :
图5-2 模糊逼近
298
图5-3 逼近误差
299
实例2 针对二维函数 ,设计一个模糊系统 ,使之一致的逼近定义在 上的连续函数
所需精度为 。
300
由于 , 由式(5.3)可知,取 , 时,有 满足精度要求。由于 ,此时模糊集的个数为 即 和 分别在 上定义11个具有三角形隶属函数的模糊集 。
301
所设计的模糊系统为: (5.6) 该模糊系统由 条规则来逼近函数
302
二维函数逼近仿真程序见chap5_2.m。 和 的隶属函数及 的逼近效果如图5-4至5-7所示
303
图 的隶属函数
304
图 的隶属函数
305
图5-6 模糊逼近
306
图5-7 逼近误差
307
其中 和 为未知非线性函数, 和 分别为系统的输入和输出。
5.2 间接自适应模糊控制 问题描述 考虑如下 阶非线性系统: (5.7) 其中 和 为未知非线性函数, 和 分别为系统的输入和输出。 设位置指令为 ,令 (5.8)
308
选择 ,使多项式 的所有根部都在复平面左半开平面上。
取控制律为 (5.9) 将(5.9)代入(5.7),得到闭环控制系统的方程: (5.10) 由 的选取,可得 时 ,即系统的输出 渐进地收敛于理想输出 。
309
如果非线性函数 和 是已知的,则可以选择控制 来消除其非线性的性质,然后再根据线性控制理论设计控制器。
310
控制器的设计 如果 和 未知,控制律(5.9)很难实现。可采用模糊系统 和 代替 和 ,实现自适应模糊控制。
311
1. 基本的模糊系统 以 来逼近 为例,可用两步构造模糊系统: 步骤1:对变量 ( ),定义 个模糊集合 ( )。 步骤2:采用以下 条模糊规则来构造模糊系统: IF is … AND is THEN is (5.11) 其中 , 。
312
采用乘积推理机、单值模糊器和中心平均解模糊器,则模糊系统的输出为
(5.12) 其中 为 的隶属函数。
313
令 是自由参数,放在集合 中。引入向量 ,(5.12)式变为
(5.13) 其中 为 维向量,其第 个元素为 (5.14)
314
2. 自适应模糊滑模控制器的设计 采用模糊系统逼近 和 ,则控制律(5.9)变为 (5.15) , (5.16) 其中 为模糊向量,参数 和 根据自适应律而变化。
315
设计自适应律为: (5.17) (5.18) 自适应模糊控制系统如图5-8所示。
316
图5-8 自适应模糊控制系统
317
3. 稳定性分析 由式(5.15)代入式(5.7)可得如下模糊控制系统的闭环动态 (5.19) 令: , (5.20)
318
则动态方程(5.19)可写为向量形式: (5.21) 设最优参数为 (5.22) (5.23) 其中 和 分别为 和 的 集合。
319
定义最小逼近误差为 (5.24) 式(5.21)可写为: (5.25) 将式(5.16)代入式(5.25),可得闭环动态方程: (5.26) 该方程清晰地描述了跟踪误差和控制参数 、 之间的关系。自适应律的任务是为 、 确定一个调节机理,使得跟踪误差 和参数误差 、 达到最小。
320
定义Lyapunov函数 (5.27) 式中 , 是正常数, 为一个正定矩阵且满足Lyapunov方程 (5.28) 其中 是一个任意的 正定矩阵, 由式(5.20)给出。
321
取 , , 。 令 , 则(5.26)式变为:
322
即 的导数为: (5.29)
323
将 将自适应律(5.17)和(5.18)代入上式,得: (5.30) 由于 ,通过选取最小逼近误差 非常小的模糊系统,可实现 。
324
被控对象取单级倒立摆,如图5-5所示,其动态方程如下:
仿真实例 被控对象取单级倒立摆,如图5-5所示,其动态方程如下: 其中 和 分别为摆角和摆速, , 为小车质量, 为摆杆质量, , 为摆长的一半, , 为控制输入。
325
位置指令为 。取以下5种隶属函数: 由于i=1,2,则用于逼近 和 的模糊规则分别有25条。
326
图5-5 单级倒立摆系统示意图
327
根据隶属函数设计程序,可得到隶属函数图,如图5-6所示。
图5-6 的隶属函数
328
倒立摆初始状态为 , 和 的初始值取0.10,采用控制律(5.9),取
自适应参数取 , 。 在程序中,分别用 、 、 和表示模糊系统 的分子、分母及 ,仿真结果如图5-7至图5-10所示。
329
图5-7 位置跟踪
330
图5-8 控制输入信号
331
图 及 的变化
332
图 及 的变化
333
间接模糊自适应控制仿真程序有5个: (1)隶属函数设计程序:chap5_3mf.m; (2) Simulink主程序:chap5_3sim.mdl; (3) 控制器S函数:chap5_3s.m; (4) 被控对象S函数:chap5_3plant.m; (5) 作图程序:chap5_3plot.m。见附录。
334
5.3 直接自适应模糊控制 直接模糊自适应控制和间接自适应模糊控制所采用的规则形式不同。间接自适应模糊控制利用的是被控对象的知识,而直接模糊自适应控制采用的是控制知识。
335
5.3.1 问题描述 考虑如下方程所描述的研究对象 (5.31) (5.32) 式中, 为未知函数, 为未知的正常数。
336
直接自适应模糊控制采用下面IF-THEN模糊规则来描述控制知识:
如果 是 且…且 是 ,则 是 (5.33) 式中, , 为 中模糊集合,且 。 设位置指令为 ,令 (5.34)
337
选择 ,使多项式 的所有根部都在复平面左半开平面上。取控制律为
(5.35) 将(5.35)代入(5.31),得到闭环控制系统的方程: (5.36) 由 的选取,可得 时 ,即系统的输出 渐进地收敛于理想输出 。
338
直接型模糊自适应控制是基于模糊系统设计一个反馈控制器 和一个调整参数向量 的自适应律,使得系统输出 尽可能地跟踪理想输出 。
339
控制器的设计 直接自适应模糊控制器为 (5.37) 式中, 是一个模糊系统, 是可调参数集合。
340
模糊系统 可由以下两步来构造: 步骤1: 对变量 ,定义 个模糊集合 ( ) 步骤2:用以下 条模糊规则来构造模糊系统 : 如果 是 且…且 是 ,则 是 (5.38) 其中, , 。
341
采用乘积推理机、单值模糊器和中心平均解模糊器来设计模糊控制器,即
(5.39) 令 是自由参数,放在集合 中, 则模糊控制器为: (5.40) 其中 为 维向量 。
342
其第 个元素为 (5.41) 模糊控制规则(5.33)是通过设置其初始参数而被嵌入到模糊控制器中的。
343
5.3.3 自适应律的设计 将式(5.35)、(5.37)代入式(5.31),并整理得: (5.42) 令 (5.43)
344
则闭环系统动态方程(5.42)可写成向量形式: (5.44) 定义最优参数为: (5.45)
345
定义最小逼近误差为: (5.46) 由式(5.44)可得: (5.47) 由式(5.40),可将误差方程(5.47)改写为: (5.48)
346
定义Lyapunov函数: (5.49) 其中参数 是正的常数。 为一个正定矩阵且满足Lyapunov方程 (5.50) 其中 是一个任意的 正定矩阵, 由式(5.43)给出。
347
取 令 则(5.48)式变为:
348
即 的导数为: (5.51)
349
令 为 的最后一列,由 可知 则式(5.51)变为: (5.52) 取自适应律 (5.53) 则 (5.54)
350
由于 , 是最小逼近误差,通过设计足够多规则的模糊系统 ,可使 充分小,并满足 ,从而使得 。
直接型自适应模糊控制系统的结构如图5-15所示。
351
图5-15 直接型自适应模糊控制系统
352
仿真实例 被控对象为一二阶系统: 位置指令为 。
353
取以下6种隶属函数:
354
系统摆初始状态为 , 的初始值取0,采用控制律(5.39),取 , ,
自适应参数取 。 根据隶属函数设计程序,可得到隶属函数图,如图5-16所示。在控制系统仿真程序中,分别用 、 和 表示模糊系统 的分子、分母及 ,仿真结果如图5-17和图5-18所示。
355
图 的隶属函数
356
图5-13 位置跟踪
357
图5-14 控制输入信号
358
直接自适应模糊控制程序有5个: (1)隶属函数设计程序chap5_4mf.m; (2) Simulink主程序chap5_4sim.mdl; (3) 控制器S函数程序chap5_4s.m; (4) 被控对象S函数程序chap5_4plant.m; (5) 作图程序:chap5_4plot.m。
359
5.4 机器人关节数学模型 在许多生产场合,利用机器人取代人体操作,不仅提高了生产效率,而且还能完成一些人所不能完成的高强度、危险作业。机械臂是工业机器人中常见的一类被控对象。 一个典型的多关节机器人如图5-19所示。 图5-19 一个8关节机器人
360
考虑一个关节机器人,其动态性能可由二阶非线性微分方程描述:
(5.55) 式中为关节角位移量,为机器人的惯性矩阵,表示离心力和哥氏力,为重力项,表示摩擦力矩,为控制力矩,为外加扰动。 一个典型的多关节机器人如图5-20所示。 图5-20双关节刚性机械手示意图
361
机械手动力学模型的特点: 1、动力学模型包含的项数多。随着机器人关节数的增加,方程中包含的项数增加。 2、高度非线性,方程的每一项都含有正弦余弦等非线性因素。 3、高度耦合。 4、模型不确定性和时变性。当机器人搬运物体时,由于所持物件不同,负载会发生变化,另外,关节的摩擦力矩也会随时间变化。
362
机械手动力学模型有以下几个特性: 1、 为一个正定对称矩阵,且是有界的,即存在已知正常数 和 ,使得 ; 2、 有界,即存在已知 ,使得 成立; 3、矩阵 为斜对称矩阵; 4、未知扰动满足 , 为一个已知正常数。
363
5.5 基于模糊补偿的机械手自适应模糊控制 5.5.1 系统描述 机器人的动态方程为: (5.56) 其中 为惯性力矩, 是向心力和哥氏力矩, 是重力项, 是由摩擦 、扰动 、负载变化的不确定项组成。 5.5.2 基于模糊补偿的控制 假设、和为已知,且所有状态变量可测得。定义误差函数为: (5.57) 其中 为正定阵, 为跟踪误差。
364
定义 (5.58) 定义Lyapunov函数 (5.59) 其中, 则 则 (5.60)
365
其中 为未知非线性函数,采用基于MIMO的模糊系统 来逼近 。 参考文献[15],设计以下两种基于模糊补偿的自适应控制律。
1.自适应控制律的设计 设计控制律为: (5.61) 其中 , , , (5.62)
366
定模糊逼近误差为: (5.63) 将控制律式(5.61)代入式(5.60),得 其中 , 为模糊系统。
367
为了消除逼近误差造成的影响,保证系统稳定,在控制律中采用了鲁棒项。设计鲁棒自适应律为
(5.64) 则 2.鲁棒自适应控制 为了消除逼近误差造成的影响,保证系统稳定,在控制律中采用了鲁棒项。设计鲁棒自适应律为 (5.65) 其中 。 将控制律式(5.65)代入式(5.59),得
368
假设机器人关节个数为 个,如果采用基于MIMO的模糊系统 来逼近 ,则对每个关节来说,输入变量个数为3个。如果 针对个关节机器人力臂,对每个输入变量设计 个隶属函数,则规则总数为 。
例如,机器人关节个数为2,每个关节输入变量个数为3,每个输入变量设计5个隶属函数,则规则总数为,如此多的模糊规则会导致计算量过大。为了减少模糊规则的个数,应针对的具体表达形式分别进行设计。
369
5.5.3基于摩擦补偿的控制 当 只包括摩擦 项 时,可只考虑针对摩擦进行模糊逼近的模糊补偿。由于摩擦力只与速度信号有关,用于逼近摩擦的模糊系统可表示为 ,可根据基于传统模糊补偿的控制器设计方法,即式(5.61)、式(5.64)和式(5.65)来设计控制律。 模糊自适应控制律为 (5.68) 模糊系统设计为
370
当针对双关节刚性机械手,其动力学方程为(5.56),具体表达如下:
5.5.4 仿真实例 当针对双关节刚性机械手,其动力学方程为(5.56),具体表达如下: 其中 (5.68) 令 , , 。取系统参数 , , , 。
371
控制目标是使双关节的输出 、 分别跟踪期望轨迹 和 。定义隶属函数为:
控制目标是使双关节的输出 、 分别跟踪期望轨迹 和 。定义隶属函数为: 其中 分别为 , ,0, 和 , , 分别为NB,NS,ZO,PS,PB。 其中针对带有摩擦的情况,采用基于摩擦模糊补偿的机械手控制,取控制器设计参数为 , , , 。取系统始状态为 ,取摩擦项为 ,取干扰项为 。在鲁棒控制律中,取 。
372
图5-21 双关节位置跟踪 图5-22 双关节摩擦及其补偿
采用鲁棒控制律式(5.67),自适应律取式(5.68),仿真结果见图5-21至图5-23。 图5-21 双关节位置跟踪 图5-22 双关节摩擦及其补偿
373
图5-23 双关节控制输入
374
第6章 神经网络理论基础 模糊控制从人的经验出发,解决了智能控制中人类语言的描述和推理问题,尤其是一些不确定性语言的描述和推理问题,从而在机器模拟人脑的感知、推理等智能行为方面迈出了重大的一步。
375
模糊控制在处理数值数据、自学习能力等方面还远没有达到人脑的境界。人工神经网络从另一个角度出发,即从人恼的生理学和心理学着手,通过人工模拟人脑的工作机理来实现机器的部分智能行为。
376
人工神经网络(简称神经网络,Neural Network)是模拟人脑思维方式的数学模型。
神经网络是在现代生物学研究人脑组织成果的 基础上提出的,用来模拟人类大脑神经网络的结构 和行为。神经网络反映了人脑功能的基本特征,如 并行信息处理、学习、联想、模式分类、记忆等。
377
20世纪80年代以来,人工神经网络(ANN,Artificial Neural Network)研究所取得的突破性进展。神经网络控制是将神经网络与控制理论相结合而发展起来的智能控制方法。它已成为智能控制的一个新的分支,为解决复杂的非线性、不确定、未知系统的控制问题开辟了新途径。
378
6.1 神经网络发展历史 神经网络的发展历程经过4个阶段。 1、启蒙期(1890-1969年)
6.1 神经网络发展历史 神经网络的发展历程经过4个阶段。 1、启蒙期( 年) 1890年,W.James发表专著《心理学》,讨论了脑的结构和功能。 1943年,心理学家W.S.McCulloch和数学家W.Pitts提出了描述脑神经细胞动作的数学模型,即M-P模型(第一个神经网络模型)。
379
1949年,心理学家Hebb实现了对脑细胞之间相互影响的数学描述,从心理学的角度提出了至今仍对神经网络理论有着重要影响的Hebb学习法则。
1958年,E.Rosenblatt提出了描述信息在人脑中贮存和记忆的数学模型,即著名的感知机模型(Perceptron)。
380
1962年,Widrow和Hoff提出了自适应线性神经网络,即Adaline网络,并提出了网络学习新知识的方法,即Widrow和Hoff学习规则(即δ学习规则),并用电路进行了硬件设计。
2、低潮期( ) 受当时神经网络理论研究水平的限制及冯·诺依曼式计算机发展的冲击等因素的影响,神经网络的研究陷入低谷。
381
在美、日等国有少数学者继续着神经网络模型和学习算法的研究,提出了许多有意义的理论和方法。例如,1969年,S
在美、日等国有少数学者继续着神经网络模型和学习算法的研究,提出了许多有意义的理论和方法。例如,1969年,S.Grossberg提出了至今为止最复杂的ART网络,该网络可以对任意复杂的二维模式进行自组织、自稳定和大规模并行处理。1972年,Kohonen提出了自组织映射的SOM模型。
382
3 、复兴期( ) 1982年,物理学家Hopfield提出了Hopfield神经网络模型,该模型通过引入能量函数,实现了问题优化求解,1984年他用此模型成功地解决了旅行商路径优化问题(TSP)。 在1986年,在Rumelhart和McCelland等出版《Parallel Distributed Processing》一书,提出了一种著名的多层神经网络模型,即BP网络。该网络是迄今为止应用最普遍的神经网络。
383
4 、新连接机制时期(1986-现在) 神经网络从理论走向应用领域,出现了神经网络芯片和神经计算机。 神经网络主要应用领域有:模式识别与图象处理(语音、指纹、故障检测和图象压缩等)、控制与优化、预测与管理(市场预测、风险分析)、通信等。
384
6 .2 神经网络原理 人脑能完成智能、思维等高级活动,为了能利用数学模型来模拟人脑的活动,导致了神经网络的研究。
6 .2 神经网络原理 神经生理学和神经解剖学的研究表明,人脑极其复杂,由一千多亿个神经元交织在一起的网状结构构成,其中大脑皮层约140亿个神经元,小脑皮层约1000亿个神经元。 人脑能完成智能、思维等高级活动,为了能利用数学模型来模拟人脑的活动,导致了神经网络的研究。
385
神经系统的基本构造是神经元(神经细胞),它是处理人体内各部分之间相互信息传递的基本单元。
每个神经元都由一个细胞体,一个连接其他神经元的轴突和一些向外伸出的其它较短分支—树突组成。 轴突功能是将本神经元的输出信号(兴奋)传递给别的神经元,其末端的许多神经末梢使得兴奋可以同时传送给多个神经元。
386
树突的功能是接受来自其它神经元的兴奋。神经元细胞体将接收到的所有信号进行简单地处理后,由轴突输出。神经元的轴突与另外神经元神经末梢相连的部分称为突触。
图6-1 单个神经元的解剖图
387
神经元由4部分构成: (1)细胞体(主体部分):包括细胞质、细胞膜和细胞核; (2)树突:用于为细胞体传入信息; (3)轴突:为细胞体传出信息,其末端是轴突末梢,含传递信息的化学物质;
388
(4)突触:是神经元之间的接口(104~105个/每个神经元)。一个神经元通过其轴突的神经末梢,经突触与另外一个神经元的树突连接,以实现信息的传递。由于突触的信息传递特性是可变的,随着神经冲动传递方式的变化,传递作用强弱不同,形成了神经元之间连接的柔性,称为结构的可塑性。通过树突和轴突,神经元之间实现了信息的传递。
389
神经元具有如下功能: (1) 兴奋与抑制:如果传入神经元的冲动经整合后使细胞膜电位升高,超过动作电位的阈值时即为兴奋状态,产生神经冲动,由轴突经神经末梢传出。如果传入神经元的冲动经整合后使细胞膜电位降低,低于动作电位的阈值时即为抑制状态,不产生神经冲动。 (2) 学习与遗忘:由于神经元结构的可塑性,突触的传递作用可增强和减弱,因此神经元具有学习与遗忘的功能。
390
6.3 神经网络的分类 目前神经网络模型的种类相当丰富,已有近40余种神经网络模型。
6.3 神经网络的分类 目前神经网络模型的种类相当丰富,已有近40余种神经网络模型。 典型的神经网络有多层前向传播网络 (BP网络)、Hopfield网络、CMAC小脑模型、ART网络、BAM双向联想记忆网络、SOM自组织网络、Blotzman机网络和Madaline网络等。
391
根据神经网络的连接方式,神经网络可分为两种形式:
(1)前向网络 如图所示,神经元分层排列,组成输入层、隐含层和输出层。每一层的神经元只接受前一层神经元的输入。输入模式经过各层的顺次变换后,由输出层输出。在各神经元之间不存在反馈。感知器和误差反向传播网络采用前向网络形式。
392
图6-2 前馈型神经网络
393
(2)反馈网络 该网络结构在输出层到输入层存在反馈,即每一个输入节点都有可能接受来自外部的输入和来自输出神经元的反馈。这种神经网络是一种反馈动力学系统,它需要工作一段时间才能达到稳定。 Hopfield神经网络是反馈网络中最简单且应用最广泛的模型,它具有联想记忆的功能,如果将Lyapunov函数定义为寻优函数,Hopfield神经网络还可以解决寻优问题。
394
图6-3 反馈型神经网络
395
(3) 自组织网络 网络结构如图所示。Kohonen网络是最典型的自组织网络。Kohonen认为,当神经网络在接受外界输入时,网络将会分成不同的区域,不同区域具有不同的响应特征,即不同的神经元以最佳方式响应不同性质的信号激励,从而形成一种拓扑意义上的特征图,该图实际上是一种非线性映射。这种映射是通过无监督的自适应过程完成的,所以也称为自组织特征图。
396
Kohonen网络通过无导师的学习方式进行权值的学习,稳定后的网络输出就对输入模式生成自然的特征映射,从而达到自动聚类的目的。
图6-4 自组织神经网络
397
6.4 神经网络学习算法 神经网络学习算法是神经网络智能特性的重要标志,神经网络通过学习算法,实现了自适应、自组织和自学习的能力。
6.4 神经网络学习算法 神经网络学习算法是神经网络智能特性的重要标志,神经网络通过学习算法,实现了自适应、自组织和自学习的能力。 目前神经网络的学习算法有多种,按有无导师分类,可分为有导师学习(Supervised Learning)、无导师学习(Unsupervised Learning)和再励学习(Reinforcement Learning)等几大类。
398
在有导师的学习方式中,网络的输出和期望的输出(即导师信号)进行比较,然后根据两者之间的差异调整网络的权值,最终使差异变小。
在无导师的学习方式中,输入模式进入网络后,网络按照一预先设定的规则(如竞争规则)自动调整权值,使网络最终具有模式分类等功能。 再励学习是介于上述两者之间的一种学习方式。
399
图6-5 有导师指导的神经网络学习
400
图6-6 无导师指导的神经网络学习
401
Hebb学习规则 Hebb学习规则是一种联想式学习算法。生物学家D.O.Hebbian基于对生物学和心理学的研究,认为两个神经元同时处于激发状态时,它们之间的连接强度将得到加强,这一论述的数学描述被称为Hebb学习规则,即 其中, 为连接从神经元i到神经元 j的当前权值, 和 为神经元的激活水平。
402
Hebb学习规则是一种无教师导师的学习方法,它只根据神经元连接间的激活水平改变权值,因此,这种方法又称为相关学习或并联学习。
403
6.4.2 Delta(δ)学习规则 假设误差准则函数为:
其中, 代表期望的输出(导师信号); 为网络的实际输出, ; 为网络所有权值组成的向量,即 为输入模式,即 其中训练样本数为 。
404
神经网络学习的目的是通过调整权值W,使误差准则函数最小。
权值的调整采用梯度下降法来实现,其基本思想是沿着E的负梯度方向不断修正W值,直到E达到最小。数学表达式为: 其中
405
令 ,则 W的修正规则为 上式称为δ学习规则,又称误差修正规则。
406
6.5 神经网络特征及要素 1. 神经网络特征 神经网络具有以下几个特征: (1)能逼近任意非线性函数; (2)信息的并行分布式处理与存储;
6.5 神经网络特征及要素 1. 神经网络特征 神经网络具有以下几个特征: (1)能逼近任意非线性函数; (2)信息的并行分布式处理与存储; (3)可以多输入、多输出; (4)便于用超大规模集成电路(VISI)或光学集成电路系统实现,或用现有的计算机技术实现; (5)能进行学习,以适应环境的变化。
407
2、神经网络要素 决定神经网络模型性能的三大要素为: (1)神经元(信息处理单元)的特性; (2)神经元之间相互连接的形式—拓扑结构; (3)为适应环境而改善性能的学习规则。
408
6.6 神经网络控制的研究领域 1、基于神经网络的系统辨识
6.6 神经网络控制的研究领域 1、基于神经网络的系统辨识 ① 将神经网络作为被辨识系统的模型,可在已知常规模型结构的情况下,估计模型的参数。 ② 利用神经网络的线性、非线性特性,可建立线性、非线性系统的静态、动态、逆动态及预测模型,实现非线性系统的建模和辨识。
409
(2) 神经网络控制器 神经网络作为实时控制系统的控制器,对不确定、不确知系统及扰动进行有效的控制,使控制系统达到所要求的动态、静态特性。 (3) 神经网络与其他算法相结合 将神经网络与专家系统、模糊逻辑、遗传算法等相结合,可设计新型智能控制系统。
410
(4) 优化计算 在常规的控制系统中,常遇到求解约束优化问题,神经网络为这类问题的解决提供了有效的途径。 目前,神经网络控制已经在多种控制结构中得到应用,如PID控制、模型参考自适应控制、前馈反馈控制、内模控制、预测控制、模糊控制等。
411
第7章 典型神经网络 7.1 单神经元网络 图7-1中 为神经元的内部状态, 为阈值, 为输入信号, , 表示从单元 到单元 的连接权系数, 为外部输入信号。 图7-1 单神经元模型
412
单神经元模型可描述为: 通常情况下,取 即
413
常用的神经元非线性特性有以下3种: (1)阈值型 图7-2 阈值型函数
414
(2)分段线性型 图7-3 分段线性函数
415
(3)Sigmoid函数型 图7-4 Sigmoid函数
416
7.2 BP神经网络 1986年,Rumelhart等提出了误差 反向传播神经网络,简称BP网络 (Back Propagation),该网络是一 种单向传播的多层前向网络。 误差反向传播的BP算法简称BP 算法,其基本思想是梯度下降法。它 采用梯度搜索技术,以期使网络的实 际输出值与期望输出值的误差均方值 为最小。
417
BP网络特点 (1)是一种多层网络,包括输入层、隐含层和输出层; (2)层与层之间采用全互连方式,同一层神经元之间不连接; (3)权值通过δ学习算法进行调节; (4)神经元激发函数为S函数; (5)学习算法由正向传播和反向传播组成; (6)层与层的连接是单向的,信息的传播是双向的。
418
7.2.2 BP网络结构 含一个隐含层的BP网络结构如图7-5所示,图中 i为输入层神经元, j为隐层神经元,k为输出层神经元。
419
BP网络的逼近 BP网络逼近的结构如图7-6所示,图中k为网络的迭代步骤,u(k)和y(k)为逼近器的输入。BP为网络逼近器,y(k)为被控对象实际输出,yn(k)为BP的输出。将系统输出y(k)及输入u(k)的值作为逼近器BP的输入,将系统输出与网络输出的误差作为逼近器的调整信号。 图 BP神经网络逼近
420
用于逼近的BP网络如图7-7所示。 图7-7 用于逼近的BP网络
421
BP算法的学习过程由正向传播和反向传播组成。在正向传播过程中,输入信息从输入层经隐层逐层处理,并传向输出层,每层神经元(节点)的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则转至反向传播,将误差信号(理想输出与实际输出之差)按连接通路反向计算,由梯度下降法调整各层神经元的权值,使误差信号减小。
422
(1)前向传播:计算网络的输出。 隐层神经元的输入为所有输入的加权之和: 隐层神经元的输出采用S函数激发: 则
423
输出层神经元的输出: 网络输出与理想输出误差为: 误差性能指标函数为:
424
(2)反向传播:采用δ学习算法,调整各层间的权
值。 根据梯度下降法,权值的学习算法如下: 输出层及隐层的连接权值学习算法为: k+1时刻网络的权值为:
425
隐层及输入层连接权值学习算法为: 其中 k+1时刻网络的权值为:
426
如果考虑上次权值对本次权值变化的影响,需要加入动量因子 ,此时的权值为:
如果考虑上次权值对本次权值变化的影响,需要加入动量因子 ,此时的权值为: 其中, 为动量因子, 。
427
阵(即为对象的输出对控制输入的灵敏度信息)算法为:
其中取
428
BP网络的优缺点 BP网络的优点为: (1)只要有足够多的隐层和隐层节点,BP网络可以逼近任意的非线性映射关系; (2)BP网络的学习算法属于全局逼近算法,具有较强的泛化能力。 (3)BP网络输入输出之间的关联信息分布地存储在网络的连接权中,个别神经元的损坏只对输入输出关系有较小的影响,因而BP网络具有较好的容错性。
429
BP网络的主要缺点为: (1)待寻优的参数多,收敛速度慢; (2)目标函数存在多个极值点,按梯度下降法进行学习,很容易陷入局部极小值; (3)难以确定隐层及隐层节点的数目。目前,如何根据特定的问题来确定具体的网络结构尚无很好的方法,仍需根据经验来试凑。
430
由于BP网络具有很好的逼近非线性映射的能力,该网络在模式识别、图像处理、系统辨识、函数拟合、优化计算、最优预测和自适应控制等领域有着较为广泛的应用。
由于BP网络具有很好的逼近特性和泛化能力,可用于神经网络控制器的设计。但由于BP网络收敛速度慢,难以适应实时控制的要求。
431
BP网络逼近仿真实例 使用BP网络逼近对象: BP网络逼近程序见chap7_1.m
432
BP网络逼近效果
433
BP网络逼近误差
434
Jacobian 信息的辨识
435
BP网络模式识别 由于神经网络具有自学习、自组织和并行处理等特征,并具有很强的容错能力和联想能力,因此,神经网络具有模式识别的能力。 在神经网络模式识别中,根据标准的输入输出模式对,采用神经网络学习算法,以标准的模式作为学习样本进行训练,通过学习调整神经网络的连接权值。当训练满足要求后,得到的神经网络权值构成了模式识别的知识库,利用神经网络并行推理算法对所需要的输入模式进行识别。
436
当待识别的输入模式与训练样本中的某个输入模式相同时,神经网络识别的结果就是与训练样本中相对应的输出模式。当待识别的输入模式与训练样本中所有输入模式都不完全相同时,则可得到与其相近样本相对应的输出模式。当待识别的输入模式与训练样本中所有输入模式相差较远时,就不能得到正确的识别结果,此时可将这一模式作为新的样本进行训练,使神经网络获取新的知识,并存储到网络的权值矩阵中,从而增强网络的识别能力。
437
BP网络的训练过程如下:正向传播是输入信号从输入层经隐层传向输出层,若输出层得到了期望的输出,则学习算法结束;否则,转至反向传播。
438
以第p个样本为例,用于训练的BP网络结构如图7-11所示。
439
则 (1)前向传播:计算网络的输出。 隐层神经元的输入为所有输入的加权之和: 隐层神经元的输出 采用S函数激发 : 网络的学习算法如下:
输出层神经元的输出:
440
网络第 个输出与相应理想输出 的误差为: 第p个样本的误差性能指标函数为: 其中N为网络输出层的个数。
441
(2)反向传播:采用梯度下降法,调整各层间的权值。权值的学习算法如下:
输出层及隐层的连接权值 学习算法为:
442
隐层及输入层连接权值 学习算法为: 其中
443
如果考虑上次权值对本次权值变化的影响,需要加入动量因子 ,此时的权值为:
如果考虑上次权值对本次权值变化的影响,需要加入动量因子 ,此时的权值为: 其中 为动量因子, 。
444
7.2.7 仿真实例: 取标准样本为3输入2输出样本,如表7-1所示。
仿真实例: 取标准样本为3输入2输出样本,如表7-1所示。 表7-1 训练样本 输 入 输 出 1 0.5 BP网络模式识别程序包括网络训练程序, chap7_2 a.m和网络测试程序chap7_2b.m。
445
样本训练的收敛过程
446
测试样本及结果 输 入 输 出 0.970 0.001 0.9877 0.0156 0.000 0.980 0.0090 0.5027 0.002 1.040 1.0107 0.500 0.2540 0.4217 1.000 1.0000 0.0000 0.5000
447
7.3 RBF神经网络 径向基函数(RBF-Radial Basis Function)神经网络是由J.Moody和C.Darken在80年代末提出的一种神经网络,它是具有单隐层的三层前馈网络。由于它模拟了人脑中局部调整、相互覆盖接收域(或称感受野-Receptive Field)的神经网络结构,因此,RBF网络是一种局部逼近网络,已证明它能任意精度逼近任意连续函数。
448
RBF网络特点 (1) RBF网络的作用函数为高斯函数,是局部的,BP网络的作用函数为S函数,是全局的; (2) 如何确定RBF网络隐层节点的中心及基宽度参数是一个困难的问题; (3) 已证明RBF网络具有唯一最佳逼近的特性,且无局部极小。
449
RBF网络结构 RBF网络是一种三层前向网络,由于输入到输出的映射是非线性的,而隐含层空间到输出空间的映射是线性的,从而可以大大加快学习速度并避免局部极小问题。 图7-13 RBF网络结构
450
RBF网络的逼近 采用RBF网络逼近一对象的结构如图7-14所示。 图7-14 RBF神经网络逼近
451
在RBF网络结构中, 为网络的输入向量。设RBF网络的径向基向量
,其中hj为高斯基函数: 网络的第j个结点的中心矢量为: 其中,i=1,2,…n,|| ||为2-范数,也称为欧氏范数(见附录A)。
452
设网络的基宽向量为: 为节点的基宽度参数,且为大于零的数。 网络的权向量为: k时刻网络的输出为: 设理想输出为y(k),则性能指标函数为:
453
根据梯度下降法,输出权、节点中心及节点基宽参数的迭代算法如下:
454
其中, 为学习速率, 为动量因子。 阵(即为对象的输出对控制输入的灵敏度信息)算法为: 其中取 。
455
RBF网络逼近仿真实例 使用RBF网络逼近下列对象: RBF网络逼近程序见chap7_3.m。
456
图7-15 RBF网络辨识结果
457
图7-16 RBF网络辨识误差
458
图7-17 Jacobian信息的辨识
459
7.3.4 高斯基函数参数对RBF网络逼近效果的影响
高斯基函数的有效性与中心向量Cj和基宽度参数bj的取值有关。基于高斯基的5个隶属度函数仿真程序为chap7_3design.m,仿真结果如图7-18所示。 图7-18 基于高斯基的5个隶属度函数
460
由图可得以下结论: ① 基宽参数bj的取值代表了高斯基函数形状的宽度。bj值越大,高斯基函数越宽,反之越窄。高斯基函数越宽,对网络输入的覆盖范围越大,但敏感性越差,高斯基函数越窄,对网络输入的覆盖范围越小,但敏感性越好。 ② 中心向量Cj的取值代表了高斯基函数中心点的坐标。网络的输入值与Cj越接近,则以Cj为中心点坐标的高斯基函数对该输入的敏感性越好,反之越差。
461
用于测试中心向量Cj和基宽度参数bj对RBF网络逼近影响的仿真程序见chap7_3test.m。
③网络的输入值应在隶属函数的覆盖范围内,如图7-18所示,假设被逼近对象的输入值范围在[-3,+3]附近,如果采用具有5个隶属度函数作为隐层节点的RBF网络进行逼近,RBF网络的输入值应在[-3,+3]范围内设定。 用于测试中心向量Cj和基宽度参数bj对RBF网络逼近影响的仿真程序见chap7_3test.m。
462
Mb=1 、Mc=1的仿真结果 Mb=1 、Mc=2的仿真结果 Mb=1 、Mc=3的仿真结果
463
Mb=2 、Mc=1的仿真结果 Mb=2 、Mc=2的仿真结果 Mb=1 、Mc=3的仿真结果
464
7.4 回归神经网络 对角回归型神经网络(DRNN: Diagonal Recurrent Neural Network)是具有反馈的动态神经网络,该网络能够更直接更生动地反映系统的动态特性,它在BP网络基本结构的基础上,通过存储内部状态使其具备映射动态特征的功能,从而使系统具有适应时变特性的能力,DRNN网络代表了神经网络建模和控制的方向。
465
DRNN网络结构 DRNN网络是一种三层前向网络,其隐含层为回归层。正向传播是输入信号从输入层经隐层传向输出层,若输出层得到了期望的输出,则学习算法结束;否则,转至反向传播。反向传播就是将误差信号(理想输出与实际输出之差)按联接通路反向计算,由梯度下降法调整各层神经元的权值和阈值,使误差信号减小。
466
DRNN网络结构如图7-18所示。 图7-18 DRNN神经网络结构
467
在该网络中, 设 为网络输入向量, 为输入层第 i个神经元的输入,网络回归层第 j 个神经元的输出为 , 为第 个回归神经元输入总和, 为S函数, 为 DRNN网络的输出。 DRNN神经网络的算法为: 和 为网络回归层和输出层的权值向量, 为网络输入层的权值向量。
468
DRNN网络的逼近 DRNN网络逼近的结构如图7-19所示,图中k为网络的迭代步骤,u(k)和y(k)为辨识器的输入。DRNN为网络辨识器。y(k)为被控对象实际输出,ym(k)为DRNN的输出。将系统输出y(k)及输入u(k)的值作为辨识器DRNN的输入,将系统输出与网络输出的误差作为辨识器的调整信号。
469
图7-19 DRNN神经网络逼近
470
网络输出层的输出为 网络回归层的输出为 网络回归层的输入为
471
逼近误差为: 性能指标函数为: 学习算法采用梯度下降法
473
其中回归层神经元取双函数为 其中, 分别为输入层、回归层和输出层的学习速率, 为惯性系数。
474
DRNN网络逼近仿真实例 使用DRNN网络逼近下列对象: DRNN网络逼近程序见chap7_4.m。
475
图7-20 DRNN网络逼近效果
476
图7-21 DRNN网络逼近误差
477
第8章 高级神经网络 8.1 模糊RBF网络 在模糊系统中,模糊集、隶属度函数和模糊规则的设计是建立在经验知识基础上的。这种设计方法存在很大的主观性。将学习机制引到模糊系统中,使模糊系统能够通过不断学习来修改和完善隶属函数和模糊规则,是模糊系统的发展方向。
478
模糊系统与模糊神经网络既有联系又有区别,其联系表现为模糊神经网络在本质上是模糊系统的实现,其区别表现为模糊神经网络又具有神经网络的特性。
神经网络与模糊系统的比较见表8-1。模糊神经网络充分地利用了神经网络和模糊系统各自的优点,因而受到了重视。
479
表8-1 模糊系统与神经网络的比较 模糊系统 神经网络 获取知识 专家经验 算法实例 推理机制 启发式搜索 并行计算 推理速度 低 高
表8-1 模糊系统与神经网络的比较 模糊系统 神经网络 获取知识 专家经验 算法实例 推理机制 启发式搜索 并行计算 推理速度 低 高 容错性 非常高 学习机制 归纳 调整权值 自然语言实现 明确的 不明显 自然语言灵活性
480
将神经网络的学习能力引到模糊系统中,将模糊系统的模糊化处理、模糊推理、精确化计算通过分布式的神经网络来表示是实现模糊系统自组织、自学习的重要途径。在模糊神经网络中,神经网络的输入、输出节点用来表示模糊系统的输入、输出信号,神经网络的隐含节点用来表示隶属函数和模糊规则,利用神经网络的并行处理能力使得模糊系统的推理能力大大提高。
481
模糊神经网络是将模糊系统和神经网络相结合而构成的网络。利用RBF网络与模糊系统相结合,构成了模糊RBF网络。
模糊神经网络在本质上是将常规的神经网络赋予模糊输入信号和模糊权值,其学习算法通常是神经网络学习算法或其推广。模糊神经网络技术已经获得了广泛的应用,当前的应用主要集中在以下几个领域:模糊回归、模糊控制、模糊专家系统、模糊矩阵方程、模糊建模和模糊模式识别。 模糊神经网络是将模糊系统和神经网络相结合而构成的网络。利用RBF网络与模糊系统相结合,构成了模糊RBF网络。
482
8.1. 1 网络结构 采用图8-1所示的模糊神经网络系统,其模糊推理系统主要由输入层、模糊化层、模糊推理层和输出层构成。
483
输出层(o) 模糊推理层(k) 模糊化层(j) 输入层(i) 图8-1 模糊RBF神经网络结构
484
模糊RBF网络中信号传播及各层的功能表示如下:
第一层:输入层 该层的各个节点直接与输入量的各个分量连接,将输入量传到下一层。对该层的每个节点i的输入输出表示为:
485
第二层:隶属函数层,即模糊化层 该层的每个节点具有隶属函数的功能,采用高斯函数作为隶属函数。对第j个节点: 其中 和 分别是第i个输入变量的第j个模糊集合高斯函数的均值和标准差。
486
其中, , 为输入层中第i个输入隶属函数的个数,即模糊化层节点数。
第三层:规则层,即模糊推理层 该层通过与模糊化层的连接来完成模糊规则的匹配,各个节点之间实现模糊运算,即通过各个模糊节点的组合得到相应的点火强度。每个节点j的输出为该节点所有输入信号的乘积,即 其中, , 为输入层中第i个输入隶属函数的个数,即模糊化层节点数。
487
该层的每个节点的输出为该节点所有输入信号的加权和,即
第四层:输出层 该层的每个节点的输出为该节点所有输入信号的加权和,即 其中 为输出层节点的个数,W为输出节点与第三层各节点的连接权矩阵。 ,
488
在此模糊神经网络中,可调参数有三类:一类为规则的权系数 ;第二类和第三类为高斯函数的均值 和标准差 ,即输入隶属函数的参数。
在此模糊神经网络中,可调参数有三类:一类为规则的权系数 ;第二类和第三类为高斯函数的均值 和标准差 ,即输入隶属函数的参数。 基于模糊RBF网络的逼近算法 采用模糊RBF网络逼近对象,取网络结构为2-4-1,如图8-2所示。
489
图8-2 模糊RBF神经网络逼近 8.1.2 基于模糊RBF网络的逼近算法
490
取 , 和 分别表示网络输出和理想输出。网络的输入为u(k)和y(k),网络的输出为 ,则网络逼近误差为:
采用梯度下降法来修正可调参数,定义目标函数为:
491
网络的学习算法如下: 输出层的权值通过如下方式来调整:
网络的学习算法如下: 输出层的权值通过如下方式来调整: 则输出层的权值学习算法为: 其中 为学习速率, 为动量因子。
492
输入隶属函数参数修正算法为: 其中
493
隶属函数参数学习算法为:
494
仿真实例 使用模糊RBF网络逼近对象: 其中采样时间为1ms。 模糊RBF网络逼近程序见chap8_1.m。
495
图8-3 模糊RBF网络逼近效果
496
图8-4 模糊RBF网络逼近误差
497
8.2 Pi-Sigma神经网络 神经模糊建模是近年来基于模糊集理论发展起来的一种新的方法。模糊建模技术缺点是过分地依赖隶属函数的准确性。采用高木-关野模糊系统,用一种混合型的pi-sigma神经网络,可以建立一种自适应能力很强的模糊模型。这种模型不但实现了模糊模型的自动更新,而且能不断修正各模糊子集的隶属函数,使模糊建模更具合理性。
498
8.2.1 高木-关野模糊系统 在高木-关野模糊系统中,高木和关野用以下“ ”规则的形式来定义模糊系统的规则:
8.2.1 高木-关野模糊系统 在高木-关野模糊系统中,高木和关野用以下“ ”规则的形式来定义模糊系统的规则: :If is , is , … , is then
499
对于输入向量,高木-关野模糊系统的各规则输出 等于各 的加权平均:
对于输入向量,高木-关野模糊系统的各规则输出 等于各 的加权平均: 式中,加权系数 包括了规则 作用于输入所取得的值。 即:
500
混合型pi-sigma神经网络 常规的前向型神经网络含有求和节点,这给处理某些复杂问题带来了困难。一种基于混合型pi-sigma神经网络模型如图8-5所示,在该网络中,输入神经元有4个,S、P和·分别表示相加、相乘和相乘运算。
501
图8-5 具有4个输入的混合型pi-sigma神经网络
502
显然,这种结构的神经网络属于高木-关野模糊系统。采用该网络实现的模糊系统可方便地在线修正隶属函数和参数,适合于复杂系统的模糊预测和控制。
网络的输出为: 显然,这种结构的神经网络属于高木-关野模糊系统。采用该网络实现的模糊系统可方便地在线修正隶属函数和参数,适合于复杂系统的模糊预测和控制。 为方便神经网络的学习,各模糊子集的隶属函数均取高斯型,即:
503
混合型pi-sigma神经网络学习算法:
假设网络的期望输出为 定义代价函数: 根据梯度下降法有:
504
其中 其中 。
505
对 有: 其中
507
其中α、β为学习速率。
508
仿真实例 使用混合型pi-sigma神经网络逼近对象: 混合型pi-sigma神经网络逼近程序见chap8_2.m
509
图8-6 混合型pi-sigma神经网络逼近效果
510
图8-7 混合型pi-sigma神经网络逼近误差
511
8.3 小脑模型神经网络 8.3. 1 CMAC概述 小脑模型神经网络(CMAC-Cerebellar Model Articulation Controller)是一种表达复杂非线性函数的表格查询型自适应神经网络,该网络可通过学习算法改变表格的内容,具有信息分类存储的能力。
512
CMAC已被公认为是一类联想记忆网络的重要组成部分,能够学习任意多维非线性映射,CMAC算法被证明可有效地用于非线性函数逼近、动态建模、控制系统设计等。
(1)小脑模型是基于局部学习的神经网络,它把信息存储在局部结构上,使每次修正的权极少,在保证函数非线性逼近性能的前提下,学习速度快,适合于实时控制; (2)具有一定的泛化能力,即所谓相近输入产生相近输出,不同输入给出不同输出;
513
(3) 具有连续(模拟)输入输出能力; (4) 采用寻址编程方式,在利用串行计算机仿真时,它将使响应速度加快; (5) CMAC函数非线性逼近器对学习数据出现的次序不敏感。 由于CMAC所具有的上述优越性能,使它比一般神经网络具有更好的非线性逼近能力,更适合于复杂动态环境下非线性实时控制的要求。 CMAC神经网络的结构如图8-8所示。
514
图8-8 CMAC神经网络结构
515
CMAC神经网络的设计主要包括输入空间的化分、输入层至输出层非线性映射的实现及输出层权值学习算法。
516
(1)概念映射(UAC) 概念映射是从输入空间U至概念存储器AC的映射。考虑单输入映射至AC中c个存储单元的情况。取作u(k)为网络的输入,采用如下线性化函数对输入状态进行量化,实现CMAC的概念映射 式中, 和 为输入的最大、最小值,M为量化后所对应的初始地址,round()为四舍五入Matlab函数, 。 当u(k)为 ,u(k)映射地址为 ;u(k)为 时, u(k)映射地址为 。
517
映射原则为:在输入空间邻近的两个点,在AC中有部分的重叠单元被激励。距离越近,重叠越多;距离越远的点,在AC中不重叠,这称为局域泛化,c为泛化常数。
(2)实际映射 (ACAP) 实际映射是由概念存储器AC中的c个单元映射至实际存储器AP的c个单元,c个单元中存放着相应权值。网络的输出为AP中c个单元的权值的和。
518
采用杂散编码技术中除留余数法实现CMAC的实际映射。设杂凑表长为m(m为正整数),以元素值
除以某数N 后所得余数+1作为杂凑地址,实现实际映射,即 式中,MOD()为取余的Matlab函数, 。 若只考虑单输出,则输出为:
519
CMAC采用的学习算法如下: 采用δ学习规则调整权值,权值调整指标为 其中 为理想的输出。 采用梯度下降法,权值按下式调整:
520
其中 为惯性系数, 。
521
仿真实例 采用CMAC网络逼近非线性对象: 取u(k)作为网络的输入,采用线性化函数对输入状态进行量化,实现CMAC的概念映射:
522
在仿真中,网络输入取方波信号,Matlab表示万为 ,采用时间取0. 05s,网络参数取M=200,N=100,取泛化参数c=5,=0
CMAC网络逼近程序为chap8_3.m。
523
图8-9 CMAC的逼近
524
8.4 Hopfield神经网络 Hopfield网络原理 1986年美国物理学家J.J.Hopfield利用非线性动力学系统理论中的能量函数方法研究反馈人工神经网络的稳定性,提出了Hopfield神经网络,并建立了求解优化计算问题的方程。
525
基本的Hopfield神经网络是一个由非线性元件构成的全连接型单层反馈系统,Hopfield网络中的每一个神经元都将自己的输出通过连接权传送给所有其它神经元,同时又都接收所有其它神经元传递过来的信息。Hopfield神经网络是一个反馈型神经网络,网络中的神经元在时刻的输出状态实际上间接地与自己的时刻的输出状态有关。
526
反馈型网络的一个重要特点就是它具有稳定状态,当网络达到稳定状态的时候,也就是它的能量函数达到最小的时候。
Hopfield神经网络的能量函数表征网络状态的变化趋势,并可以依据Hopfield工作运行规则不断进行状态变化,最终能够达到的某个极小值的目标函数。网络收敛就是指能量函数达到极小值。
527
如果把一个最优化问题的目标函数转换成网络的能量函数,把问题的变量对应于网络的状态,那么Hopfield神经网络就能够用于解决优化组合问题。
528
图8-10 Hopfield网络模型
529
如果把一个最优化问题的目标函数转换成网络的能量函数,把问题的变量对应于网络的状态,那么Hopfield神经网络就能够用于解决优化组合问题。
530
对于Hopfield神经网络第i个神经元,采用微分方程建立其输入输出关系,即:
其中 。
531
其中g(•)为双曲函数,一般取为: 为n个神经元的网络状态向量; 为网络的输出向量; 为网络的输入向量。
532
定义Hopfield网络的Lyapunov能量函数为
若权值矩阵 是对称的( ),则
533
由于 ,则 由于 ,双曲函数是单调上升函数,显然它的反函数 也为单调上升函数,即有 ,则可得到 ,即能量函数 具有负的梯度,当且仅当 时 , ( )。
534
由此可见,随着时间的演化,网络的解在状态空间中总是朝着能量EN减少的方向运动。网络最终输出向量V为网络的稳定平衡点,即EN的极小点。
Hopfield网络在优化计算中得到成功应用,有效地解决了著名的旅行推销商问题(TSP问题),另外,它在智能控制和系统辨识中也有广泛应用。
535
8.5 基于Hopfield网络的路径优化 旅行商问题的描述 在旅行商问题(Traveling Salesman Problem,简称TSP)可描述为:已知N个城市,并且每个城市只能访问一次,最后又必须返回出发城市。并且对如何安排他对这些城市的访问次序,使其旅行路线总长度最短。 旅行商问题是一个典型的组合优化问题,其可能的路径数目与城市数目呈指数型增长的,一般很难精确的求出其最优解,因而寻找其有效的近似求解算法具有重要的理论意义。另一方面,很多实际应用问题,经过简化处理后,均可化为旅行商问题,因而对旅行商问题求解方法的研究具有重要的应用价值。
536
旅行商问题是一个典型的组合优化问题,特别是当的数目很大时,用常规的方法求解计算量太大。对庞大的搜索空间中寻求最优解,对于常规方法和现有的计算工具而言,存在着诸多的计算困难。使用Hopfield网络的优化能力可以很容易地解决这类问题。 Hopfield等[1]采用神经网络求得经典组合优化问题(TSP)的最优解,开创了优化问题求解的新方法。
537
第9章 神经网络控制 9.1 概述 神经网络是一种具有高度非线性的连续时间动力系统,它有着很强的自学习功能和对非线性系统的强大映射能力,已广泛应用于复杂对象的控制中。神经网络所具有的大规模并行性、冗余性、容错性、本质的非线性及自组织、自学习、自适应能力,给不断面临挑战的控制理论带来生机。
538
从控制角度来看,神经网络用于控制的优越性主要表现为:
(1)神经网络可是处理那些难以用模型或规则描述的对象; (2)神经网络采用并行分布式信息处理方式,具有很强的容错性; (3)神经网络在本质上是非线性系统,可以实现任意非线性映射。神经网络在非线性控制系统中具有很大的发展前途;
539
(4)神经网络具有很强的信息综合能力,它能够同时处理大量不同类型的输入,能够很好地解决输入信息之间的互补性和冗余性问题;
(5)神经网络的硬件实现愈趋方便。大规模集成电路技术的发展为神经网络的硬件实现提供了技术手段,为神经网络在控制中的应用开辟了广阔的前景。
540
神经网络控制所取得的进展为: (1) 基于神经网络的系统辨识:可在已知常规模型结构的情况下,估计模型的参数;或利用神经网络的线性、非线性特性,建立线性、非线性系统的静态、动态、逆动态及预测模型; (2) 神经网络控制器:神经网络作为控制器,可实现对不确定系统或未知系统进行有效的控制,使控制系统达到所要求的动态、静态特性; (3) 神经网络与其他算法相结合:神经网络与专家系统、模糊逻辑、遗传算法等相结合可构成新型控制器;
541
(4) 优化计算:在常规控制系统的设计中,常遇到求解约束优化问题,神经网络为这类问题提供了有效的途径;
(5) 控制系统的故障诊断:利用神经网络的逼近特性,可对控制系统的各种故障进行模式识别,从而实现控制系统的故障诊断。
542
神经网络控制在理论和实践上,以下问题是研究的重点:
(1) 神经网络的稳定性与收敛性问题; (2) 神经网络控制系统的稳定性与收敛性问题; (3) 神经网络学习算法的实时性; (4) 神经网络控制器和辨识器的模型和结构。
543
9.2 神经网络控制结构 根据神经网络在控制器中的作用不同,神经网络控制器可分为两类,一类为神经控制,它是以神经网络为基础而形成的独立智能控制系统;另一类为混合神经网络控制,它是指利用神经网络学习和优化能力来改善传统控制的智能控制方法,如自适应神经网络控制等。 综合目前的各种分类方法,可将神经网络控制的结构归结为以下七类。
544
9.2.1 神经网络监督控制 通过对传统控制器进行学习,然后用神经网络控制器逐渐取代传统控制器的方法,称为神经网络监督控制。神经网络监督控制的结构如图9-1所示。 神经网络控制器实际上是一个前馈控制器,它建立的 是被控对象的逆模型。神经网络控制器通过对传统控制器 的输出进行学习,在线调整网络的权值,使反馈控制输入 趋近于零,从而使神经网络控制器逐渐在控制作用中占据 主导地位,最终取消反馈控制器的作用。一旦系统出现干 扰,反馈控制器重新起作用。这种前馈加反馈的监督控制 方法,不仅可以确保控制系统的稳定性和鲁棒性,而且可 有效地提高系统的精度和自适应能力。
545
图9-1 神经网络监督控制
546
神经网络直接逆动态控制 神经网络直接逆控制就是将被控对象的神经网络逆模型直接与被控对象串联起来,以便使期望输出与对象实际输出之间的传递函数为1。则将此网络作为前馈控制器后,被控对象的输出为期望输出。 显然,神经网络直接逆控制的可用性在相当程度上取决于逆模型的准确精度。由于缺乏反馈,简单连接的直接逆控制缺乏鲁棒性。为此,一般应使其具有在线学习能力,即作为逆模型的神经网络连接权能够在线调整。
547
图9-2为神经网络直接逆控制的两种结构方案。在图9-2(a)中,NN1和NN2为具有完全相同的网络结构,并采用相同的学习算法,分别实现对象的逆。在图9-2(b)中,神经网络NN通过评价函数进行学习,实现对象的逆控制。
548
(a)
549
(b) 图9-2 神经网络直接逆控制
550
神经网络自适应控制 与传统自适应控制相同,神经网络自适应控制也分为神经网络自校正控制和神经网络模型参考自适应控制两种。自校正控制根据对系统正向或逆模型的结果调节控制器内部参数,使系统满足给定的指标,而在模型参考自适应控制中,闭环控制系统的期望性能由一个稳定的参考模型来描述。
551
1 神经网络自校正控制 神经网络自校正控制分为直接自校正控制和间接自校正控制。间接自校正控制使用常规控制器,神经网络估计器需要较高的建模精度。直接自校正控制同时使用神经网络控制器和神经网络估计器。 (1)神经网络直接自校正控制 在本质上同神经网络直接逆控制,其结构如图9-2所示。
552
(2)神经网络间接自校正控制 其结构如图9-3所示。假设被控对象为如下单变量仿射非线性系统: 若利用神经网络对非线性函数 和 进行逼近,得到 和 ,则控制器为: 其中 为 时刻的期望输出值。
553
图9-3 神经网络间接自校正控制
554
2. 神经网络模型参考自适应控制 分为直接模型参考自适应控制和间接模型参考自适应控制两种。 (1)直接模型参考自适应控制 如图9-4所示。神经网络控制器的作用是使被控对象与参考模型输出之差为最小。但该方法需要知道对象的 信息 。
555
图9-4 神经网络直接模型参考自适应控制
556
(2)间接模型参考自适应控制 如图9-5所示。神经网络辨识器NNI向神经网络控制器NNC提供对象的信息,用于控制器NNC的学习。
557
NNI 图9-5 神经网络间接模型参考自适应控制
558
神经网络内模控制 经典的内模控制将被控系统的正向模型和逆模型直接加入反馈回路,系统的正向模型作为被控对象的近似模型与实际对象并联,两者输出之差被用作反馈信号,该反馈信号又经过前向通道的滤波器及控制器进行处理。控制器直接与系统的逆有关,通过引入滤波器来提高系统的鲁棒性。 图9-6为神经网络内模控制,被控对象的正向模型及控制器均由神经网络来实现。
559
图9-6 神经网络内模控制
560
预测控制又称为基于模型的控制,是70年代后期发展起来的新型计算机控制方法,该方法的特征是预测模型、滚动优化和反馈校正。
神经网络预测控制 预测控制又称为基于模型的控制,是70年代后期发展起来的新型计算机控制方法,该方法的特征是预测模型、滚动优化和反馈校正。 神经网络预测控制的结构如图9-7所示,神经网络预测器建立了非线性被控对象的预测模型,并可在线进行学习修正。 利用此预测模型,通过设计优化性能指标,利用非线性优化器可求出优化的控制作用 。
561
图9-7 神经网络预测控制
562
神经网络自适应评判控制 神经网络自适应评判控制通常由两个网络组成,如图9-8所示。自适应评判网络通过不断的奖励、惩罚等再励学习,使自己逐渐成为一个合格的“教师”,学习完成后,根据系统目前的状态和外部激励反馈信号产生一个内部再励信号,以对目前的控制效果作出评价。控制选择网络相当于一个在内部再励信号指导下进行学习的多层前馈神经网络控制器,该网络在进行学习后,根据编码后的系统状态,在允许控制集中选择下一步的控制作用。
563
图9-8 神经网络自适应评判控制
564
神经网络混合控制 该控制方法是集成人工智能各分支的优点,由神经网络技术与模糊控制、专家系统等相结合而形成的一种具有很强学习能力的智能控制系统。 由神经网络和模糊控制相结合构成模糊神经网络,由神经网络和专家系统相结合构成神经网络专家系统。神经网络混合控制可使控制系统同时具有学习、推理和决策能力。
565
9.3 单神经元网络控制 单神经元自适应控制算法 单神经元自适应控制的结构如图9-9所示。 图9-9 单神经元自适应控制结构
566
单神经网络控制器
567
单神经元自适应控制器是通过对加权系数的调整来实现自适应、自组织功能,控制算法为
如果权系数的调整按有监督的Hebb学习规则实现,即在学习算法中加入监督项 ,则神经网络权值学习算法为:
568
式中, 为学习速率, 为神经元的比例系数, 。
569
K值的选择非常重要。K越大,则快速性越好,但超调量大,甚至可能使系统不稳定。当被控对象时延增大时,K值必须减少,以保证系统稳定。K值选择过小,会使系统的快速性变差。
570
9.3.2 仿真实例 被控对象为 输入指令为一方波信号 采样时间为1ms,采用单神经元自适应控制律进行控制。 仿真程序:chap9_1.m
571
图9-10 基于Hebb学习规则的位置跟踪
572
图9-11 误差信号的变化情况
573
图9-12 权值w1的变化
574
图9-13 权值w2的变化
575
图9-14 权值w3的变化
576
9.4 RBF网络监督控制 9.4.1 RBF网络监督控制算法 基于RBF网络的监督控制系统结构如图9-14所示。
图9-14 神经网络监督控制
577
在RBF网络结构中,取网络的输入为 ,网络的径向基向量为 , 为高斯基函数:
网络的权向量为: RBF网络的输出为: 其中,m为RBF网络隐层神经元的个数。 控制律为:
578
设神经网络调整的性能指标为: 采用梯度下降法调整网络的权值: 神经网络权值的调整过程为: 其中为学习速率,为动量因子。
579
仿真实例 被控对象为: RBF网络监督控制程序为chap9_2.m
580
9.5.1 神经网络自校正控制原理 自校正控制有两种结构:直接型与间接型。直接型自校正控制也称直接逆动态控制,是前馈控制。间接自校正控制是一种由辨识器将对象参数进行在线估计,用调节器(或控制器)实现参数的自动整定相结合的自适应控制技术,可用于结构已知而参数未知但恒定的随机系统,也可用于结构已知而参数缓慢时变的随机系统。
581
神经间接自校正控制结构如图9-17所示,它由两个回路组成:
(1)自校正控制器与被控对象构成的反馈回路。 (2)神经网络辩识器与控制器设计,以得到控制器的参数。 辩识器与自校正控制器的在线设计是自校正控制实现的关键。
582
控制器设计 神 经 网 络 辩 识 器 自校正 控 制 器 被 控 对 象 图9-17 神经网络间接自校正控制框图
583
9.5.2 自校正控制算法 考虑被控对象: 其中 、 分别为对象的输入、输出, 为非零函数。 若 , 已知,根据“确定性等价原则”,控制器的控制算法为:
584
若 , 未知,则通过在线训练神经网络辨识器,由辨识器结果 、 代替
,控制器的控制算法为:
585
采用两个RBF网络分别实现未知项 、 的辨识。RBF网络辨识器的结构如图9-18所示, 和 分别为两个神经网络的权值向量。
图9-18 神经网络辨识器
586
在RBF网络结构中,取网络的输入为 ,网络的径向基向量为 , 为高斯基函数:
其中 。 为节点 的基宽度参数, 为网络第 个结点的中心矢量, , 。
587
网络的权向量为: 两个RBF网络的输出分别为: 其中 为RBF网络隐层神经元的个数。 辨识后,对象的输出为:
588
设神经网络调整的性能指标为: 采用梯度下降法调整网络的权值:
589
神经网络权值的调整过程为: 其中 和 为学习速率, 为动量因子。
590
神经网络自校正控制系统的结构如图9-19所示。
图9-19 神经网络自校正控制框图
591
仿真实例 被控对象为: 其中 , 。 RBF网络自校正控制程序为chap9_3.m。
592
9.6 基于RBF网络直接模型参考自适应控制 9.6.1 基于RBF网络的控制器设计 控制系统的结构如图9-23所示。 设参考模型输出为 ,控制系统要求对象的输出 能够跟踪参考模型的输出 。 则跟踪误差为:
593
图9-23 基于RBF网络的直接模型参考自适应控制
594
指标函数为: 控制器为RBF网络的输出: 其中 为RBF网络隐层神经元的个数, 为第 个网络隐层神经元与输出层之间的连接权, 为第个 隐层神经元的输出。
595
在RBF网络结构中, 为网络的输入向量。RBF网络的径向基向量为 ,为高斯基函数:
其中 , 为节点 的基宽度参数, , 为网络第 个结点的中心矢量, , 。
596
网络的权向量为: 按梯度下降法及链式法则,可得权值的学习算法如下: 其中 为学习速率, 为动量因子。
597
同理,可得RBF网络隐层神经元的高斯函数的中心参数及基宽的学习算法如下:
598
在学习算法中, 称为 信息,表示系统的输出对控制输入的敏感性,其值可由神经网络辨识而得。在神经网络算法中,对
值的精确度要求不是很高,不精确部分可通过网络参数及权值的调整来修正,关键是其符号,因此可用 的正负号来代替,这样可使算法更加简单。
599
仿真实例 被控对象为一非线性模型: 取采样周期为 ,参考模型为 ,其中 为正弦信号, 。 RBF网络直接模型参考自适应控制程序为chap9_4.m
600
第10章 遗传算法 10.1 遗传算法的基本原理 遗传算法简称GA(Genetic Algorithms)是1962年由美国Michigan大学的Holland教授提出的模拟自然界遗传机制和生物进化论而成的一种并行随机搜索最优化方法。 遗传算法是以达尔文的自然选择学说为基础发展起来的。自然选择学说包括以下三个方面:
601
(1)遗传:这是生物的普遍特征,亲代把生物信息交给子代,子代总是和亲代具有相同或相似的性状。生物有了这个特征,物种才能稳定存在。
(2)变异:亲代和子代之间以及子代的不同个体之间的差异,称为变异。变异是随机发生的,变异的选择和积累是生命多样性的根源。 (3)生存斗争和适者生存:具有适应性变异的个体被保留下来,不具有适应性变异的个体被淘汰,通过一代代的生存环境的选择作用,性状逐渐逐渐与祖先有所不同,演变为新的物种。
602
遗传算法将“优胜劣汰,适者生存”的生物进化原理引入优化参数形成的编码串联群体中,按所选择的适应度函数并通过遗传中的复制、交叉及变异对个体进行筛选,使适适应度高的个体被保留下来,组成新的群体,新的群体既继承了上一代的信息,又优于上一代。这样周而复始,群体中个体适应度不断提高,直到满足一定的条件。遗传算法的算法简单,可并行处理,并能到全局最优解。
603
遗传算法的基本操作为: (1)复制(Reproduction Operator) 复制是从一个旧种群中选择生命力强的个体位串产生新种群的过程。具有高适应度的位串更有可能在下一代中产生一个或多个子孙。 复制操作可以通过随机方法来实现。首先产生0~1之间均匀分布的随机数,若某串的复制概率为40%,则当产生的随机数在0.40~1.0之间时,该串被复制,否则被淘汰。
604
(2)交叉(Crossover Operator)
复制操作能从旧种群中选择出优秀者,但不能创造新的染色体。而交叉模拟了生物进化过程中的繁殖现象,通过两个染色体的交换组合,来产生新的优良品种。 交叉的过程为:在匹配池中任选两个染色体,随机选择一点或多点交换点位置;交换双亲染色体交换点右边的部分,即可得到两个新的染色体数字串。
605
交叉体现了自然界中信息交换的思想。交叉有一点交叉、多点交叉、还有一致交叉、顺序交叉和周期交叉。一点交叉是最基本的方法,应用较广。它是指染色体切断点有一处,例:
606
(3)变异(Mutation Operator)
变异运算用来模拟生物在自然的遗传环境中由于各种偶然因素引起的基因突变,它以很小的概率随机地改变遗传基因(表示染色体的符号串的某一位)的值。在染色体以二进制编码的系统中,它随机地将染色体的某一个基因由1变为0,或由0变为1。
607
若只有选择和交叉,而没有变异,则无法在初始基因组合以外的空间进行搜索,使进化过程在早期就陷入局部解而进入终止过程,从而影响解的质量。为了在尽可能大的空间中获得质量较高的优化解,必须采用变异操作。
608
10.2 遗传算法的特点 (1)遗传算法是对参数的编码进行操作,而非对参数本身,这就是使得我们在优化计算过程中可以借鉴生物学中染色体和基因等概念,模仿自然界中生物的遗传和进化等机理; (2)遗传算法同时使用多个搜索点的搜索信息。传统的优化方法往往是从解空间的单个初始点开始最优解的迭代搜索过程,单个搜索点所提供的信息不多,搜索效率不高,有时甚至使搜索过程局限于局部最优解而停滞不前。
609
遗传算法从由很多个体组成的一个初始群体开始最优解的搜索过程,而不是从一个单一的个体开始搜索,这是遗传算法所特有的一种隐含并行性,因此遗传算法的搜索效率较高。
(3)遗传算法直接以目标函数作为搜索信息。传统的优化算法不仅需要利用目标函数值,而且需要目标函数的导数值等辅助信息才能确定搜索方向。而遗传算法仅使用由目标函数值变换来的适应度函数值,就可以确定进一步的搜索方向和搜索范围,无需目标函数的导数值等其他一些辅助信息。
610
遗传算法可应用于目标函数无法求导数或导数不存在的函数的优化问题,以及组合优化问题等。
(4)遗传算法使用概率搜索技术。遗传算法的选择、交叉、变异等运算都是以一种概率的方式来进行的,因而遗传算法的搜索过程具有很好的灵活性。随着进化过程的进行,遗传算法新的群体会更多地产生出许多新的优良的个体。
611
(5)遗传算法在解空间进行高效启发式搜索,而非盲目地穷举或完全随机搜索;
(6)遗传算法对于待寻优的函数基本无限制,它既不要求函数连续,也不要求函数可微,既可以是数学解析式所表示的显函数,又可以是映射矩阵甚至是神经网络的隐函数,因而应用范围较广; (7)遗传算法具有并行计算的特点,因而可通过大规模并行计算来提高计算速度,适合大规模复杂问题的优化。
612
10.3 遗传算法的发展及应用 遗传算法的发展 遗传算法起源于对生物系统所进行的计算机模拟研究。早在20世纪40年代,就有学者开始研究如何利用计算机进行生物模拟的技术,他们从生物学的角度进行了生物的进化过程模拟、遗传过程模拟等研究工作。进入20世纪60年代,美国密歇根大学的Holland教授及其学生们受到这种生物模拟技术的启发,创造出一种基于生物遗传和进化机制的适合于复杂系统优化计算的自适应概率优化技术—遗传算法。
613
以下是在遗传算法发展进程中一些关键人物所做出的主要贡献:
(1)J.H.Holland 20世纪70年代初,Holland教授提出了遗传算法的基本定理—模式定理,从而奠定了遗传算法的理论基础。模式定理揭示了群体中优良个体(较好的模式)的样本数将以指数级规律增长,从理论上保证了遗传算法用于寻求最优可行解的优化过程。1975年,Holland出版了第一本系统论述遗传算法和人工自适应系统的专著《自然系统和人工系统的自适应性》。20世纪80年代,Holland教授实现了第一个基于遗传算法的机器学习系统—分类器系统,开创了基于遗传算法的机器学习的新概念。
614
(3)K.A.De Jong 1975年,De Jong博士在其博士论文中结合模式定理进行了大量纯数值函数优化计算实验,树立了遗传算法的工作框架。他推荐了在大多数优化问题中都较适用的遗传算法的参数,建立了著名的De Jong五函数测试平台,定义了评价遗传算法性能的在线指标和离线指标。 (4)D.J.Goldberg 1989年,Goldberg出版了专著《搜索、优化和机器学习中的遗传算法》,该书全面地论述了遗传算法的基本原理及其应用,奠定了现代遗传算法的科学基础。
615
(2)J.D.Bagley 1967年,Holland的学生Bagley在其博士论文中首次提出了“遗传算法”一词,并发表了遗传算法应用方面的第一篇论文。他发展了复制、交叉、变异、显性、倒位等遗传算子,在个体编码上使用了双倍体的编码方法。在遗传算法的不同阶段采用了不同的概率,从而创立了自适应遗传算法的概念。
616
(5)L.Davis 1991年,Davis编辑出版了《遗传算法手册》一书,为推广和普及遗传算法的应用起到了重要的指导作用。 (6)J.R.Koza 1992年,Koza将遗传算法应用于计算机程序的优化设计及自动生成,提出了遗传编程的概念,并成功地将遗传编程的方法应用于人工智能、机器学习和符号处理等方面。
617
遗传算法的应用 (1)函数优化。 函数优化是遗传算法的经典应用领域,也是遗传算法进行性能评价的常用算例。尤其是对非线性、多模型、多目标的函数优化问题,采用其他优化方法较难求解,而遗传算法却可以得到较好的结果。 (2)组合优化。 随着问题的增大,组合优化问题的搜索空间也急剧扩大,采用传统的优化方法很难得到最优解。遗传算法是寻求这种满意解的最佳工具。例如,遗传算法已经在求解旅行商问题、背包问题、装箱问题、图形划分问题等方面得到成功的应用。
618
(3)生产调度问题 在很多情况下,采用建立数学模型的方法难以对生产调度问题进行精确求解。在现实生产中多采用一些经验进行调度。遗传算法是解决复杂调度问题的有效工具,在单件生产车间调度、流水线生产车间调度、生产规划、任务分配等方面遗传算法都得到了有效的应用。
619
(4)自动控制。 在自动控制领域中有很多与优化相关的问题需要求解,遗传算法已经在其中得到了初步的应用。例如,利用遗传算法进行控制器参数的优化、基于遗传算法的模糊控制规则的学习、基于遗传算法的参数辨识、基于遗传算法的神经网络结构的优化和权值学习等。
620
(5)机器人 例如,遗传算法已经在移动机器人路径规划、关节机器人运动轨迹规划、机器人结构优化和行为协调等方面得到研究和应用。 (6)图像处理 遗传算法可用于图像处理过程中的扫描、特征提取、图像分割等的优化计算。目前遗传算法已经在模式识别、图像恢复、图像边缘特征提取等方面得到了应用。
621
(7)人工生命 人工生命是用计算机、机械等人工媒体模拟或构造出的具有生物系统特有行为的人造系统。人工生命与遗传算法有着密切的联系,基于遗传算法的进化模型是研究人工生命现象的重要基础理论。遗传算法为人工生命的研究提供了一个有效的工具。 (8)遗传编程 遗传算法已成功地应用于人工智能、机器学习等领域的编程。
622
(9)机器学习 基于遗传算法的机器学习在很多领域都得到了应用。例如,采用遗传算法实现模糊控制规则的优化,可以改进模糊系统的性能;遗传算法可用于神经网络连接权的调整和结构的优化;采用遗传算法设计的分类器系统可用于学习式多机器人路径规划。
623
10.4 遗传算法的优化设计 10.4.1 遗传算法的构成要素 (1)染色体编码方法
遗传算法的优化设计 遗传算法的构成要素 (1)染色体编码方法 基本遗传算法使用固定长度的二进制符号来表示群体中的个体,其等位基因是由二值符号集{0,1}所组成。初始个体基因值可用均匀分布的随机值生成,如 就可表示一个个体,该个体的染色体长度是18。
624
(2)个体适应度评价:基本遗传算法与个体适应度成正比的概率来决定当前群体中每个个体遗传到下一代群体中的概率多少。为正确计算这个概率,要求所有个体的适应度必须为正数或零。因此,必须先确定由目标函数值J到个体适应度f之间的转换规则。
625
(3)遗传算子:基本遗传算法使用下述三种遗传算子:
① 选择运算:使用比例选择算子; ② 交叉运算:使用单点交叉算子; ③ 变异运算:使用基本位变异算子或均匀变异算子。
626
(4)基本遗传算法的运行参数 有下述4个运行参数需要提前设定: M:群体大小,即群体中所含个体的数量,一般取为20~100; G:遗传算法的终止进化代数,一般取为100~500; Pc:交叉概率,一般取为0.4~0.99; Pm:变异概率,一般取为0.0001~0.1。
627
10.4.2 遗传算法的应用步骤 对于一个需要进行优化的实际问题,一般可按下述步骤构造遗传算法:
遗传算法的应用步骤 对于一个需要进行优化的实际问题,一般可按下述步骤构造遗传算法: 第一步:确定决策变量及各种约束条件,即确定出个体的表现型X和问题的解空间; 第二步:建立优化模型,即确定出目标函数的类型及数学描述形式或量化方法; 第三步:确定表示可行解的染色体编码方法,即确定出个体的基因型x及遗传算法的搜索空间;
628
第四步:确定解码方法,即确定出由个体基因型x到个体表现型X的对应关系或转换方法;
第五步:确定个体适应度的量化评价方法,即确定出由目标函数值到个体适应度的转换规则; 第六步:设计遗传算子,即确定选择运算、交叉运算、变异运算等遗传算子的具体操作方法。 第七步:确定遗传算法的有关运行参数,即M,G,Pc,Pm等参数。
629
以上操作过程可以用图10-1来表示。 图10-1 遗传算法流程图
630
10.5 遗传算法求函数极值 利用遗传算法求Rosenbrock函数的极大值
631
10.5.1 二进制编码遗传算法求函数极大值 求解该问题遗传算法的构造过程: (1)确定决策变量和约束条件; (2)建立优化模型;
二进制编码遗传算法求函数极大值 求解该问题遗传算法的构造过程: (1)确定决策变量和约束条件; (2)建立优化模型; (3)确定编码方法
632
用长度为10位的二进制编码串来分别表示两个 决策变量x1,x2。10位二进制编码串可以表示从0到 1023之间的1024个不同的数,故将x1,x2的定义域离散 化为1023个均等的区域,包括两个端点在内共有 1024个不同的离散点。 从离散点-2.048到离散点2.048 ,分别对应于从 (0)到 (1023)之间的二进制编码。
633
将x1,x2分别表示的两个10位长的二进制编码 串连接在一起,组成一个20位长的二进制编码串, 它就构成了这个函数优化问题的染色体编码方法。 使用这种编码方法,解空间和遗传算法的搜索空间 就具有一一对应的关系。 例如: 表示 一个个体的基因型,其中前10位表示x1,后10位表 示x2。
634
(4)确定解码方法:解码时需要将20位长的二进制编码串切断为两个10位长的二进制编码串,然后分别将它们转换为对应的十进制整数代码,分别记为y1和y2。
依据个体编码方法和对定义域的离散化方法可知,将代码y转换为变量x的解码公式为 例如,对个体
635
它由两个代码所组成 上述两个代码经过解码后,可得到两个实际的值
(5)确定个体评价方法:由于Rosenbrock函数的值域总是非负的,并且优化目标是求函数的最大值,故可将个体的适应度直接取为对应的目标函数值,即
636
选个体适应度的倒数作为目标函数 (6)设计遗传算子:选择运算使用比例选择算子,交叉运算使用单点交叉算子,变异运算使用基本位变异算子。 (7)确定遗传算法的运行参数:群体大小M=80,终止进化代数G=100,交叉概率Pc=0.60,变异概率Pm=0.10。 上述七个步骤构成了用于求函数极大值的优化计算基本遗传算法。
637
采用上述方法进行仿真,经过100步迭代,最佳样本为
即当 时,Rosenbrock函数具有极大值,极大值为3905.9。 仿真程序:chap5_1.m
638
遗传算法的优化过程是目标函数J和适应度函数F的变化过程。
由仿真结果可知,随着进化过程的进行,群体中适应度较低的一些个体被逐渐淘汰掉,而适应度较高的一些个体会越来越多,并且它们都集中在所求问题的最优点附近,从而搜索到问题的最优解。
639
实数编码遗传算法求函数极大值 求解该问题遗传算法的构造过程: (1)确定决策变量和约束条件; (2)建立优化模型; (3)确定编码方法:用2个实数分别表示两个决策变量,分别将的定义域离散化为从离散点-2.048到离散点2.048的Size个实数。
640
(4)确定个体评价方法: 个体的适应度直接取为对应的目标函数值,即 选个体适应度的倒数作为目标函数
641
(5)设计遗传算子:选择运算使用比例选择算子,交叉运算使用单点交叉算子,变异运算使用基本位变异算子。
(6)确定遗传算法的运行参数:群体大小M=500,终止进化代数G=200,交叉概率Pc=0.90,采用自适应变异概率 即变异概率与适应度有关,适应度越小,变异概率越大。
642
上述六个步骤构成了用于求函数Rosenbrock极大值的优化计算的实数编码遗传算法。
十进制编码求函数Rosenbrock极大值。仿真程序见chap10_2.m。 仿真程序经过200步迭代,最佳样本为 即当 , 时,函数具有极大值,极大值为3880.3。
643
10.6 基于遗传算法优化的RBF网络逼近 10.6.1 遗传算法优化原理
遗传算法优化原理 在7.3节的RBF网络逼近算法中,网络权值、高斯函数的中心矢量和基宽向量的初值难以确定,如果这些参数选择不当,会造成逼近精度的下降甚至RBF网络的发散。采用遗传算法可实现RBF网络参数的优化。
644
为获取满意的逼近精度,采用误差绝对值指标作为参数选择的最小目标函数。
式中, 为逼近的总步骤, 为第 步RBF网络的逼近误差。 在应用遗传算法时,为了避免参数选取范围过大,可以先按经验选取一组参数,然后再在这组参数的周围利用遗传算法进行设计,从而大大减少初始寻优的盲目性,节约计算量。
645
仿真实例 使用RBF网络逼近下列对象: 在RBF网络中,网络输入信号为2个,即 和 ,网络初始权值及高斯函数参数初始值通过遗传算法优化而得。
646
遗传算法优化程序为chap10_3a. m,取逼近总步骤为,每一步的逼近误差由chap10_3b
遗传算法优化程序为chap10_3a.m,取逼近总步骤为,每一步的逼近误差由chap10_3b.m求得。采用二进制编码方式,用长度为10位的二进制编码串来分别表示向量b、c和w中的每个值。
647
遗传算法优化中,取样本个数为Size=30,交叉概率为Pc=0.60,采用自适应变异概率,即适应度越小,变异概率越大,取变异概率为
取用于优化的RBF网络结构为2-3-1,网络权值wj的取值范围为[-1,+1],高斯函数基宽向量的取值范围为[0.1,3.0],高斯函数中心矢量的取值范围为[-3,+3]。取 则共有12个参数需要优化。
648
经过150代遗传算法进化,优化后的结果为: p=[2.7732,2.6343,2.2630,1.8680, , , ,2.2669, , ,0.7478, ]。 则RBF网络高斯基函数参数的初始值及权值的初始值为:
649
RBF网络遗传算法优化程序包括三部分,即遗传算法优化程序chap10_3a. m、RBF网络逼近函数程序chap10_3b
RBF网络遗传算法优化程序包括三部分,即遗传算法优化程序chap10_3a.m、RBF网络逼近函数程序chap10_3b.m和RBF网络逼近测试程序chap10_3c.m。
650
10.8 基于遗传算法的TSP问题优化 在第8.5节已经对旅行商问题进行了描述。遗传算法由于其全局搜索的特点,在解决TSP问题中有明显的优势。 TSP问题的编码 设 是由城市i和城市j之间的距离组成的距离矩阵,旅行商问题就是求出一条通过所有城市且每个城市只通过一次的具有最短距离的回路。
651
在旅行商问题的各种求解方法中,描述旅行路线的方法主要有如下两种:(1)巡回旅行路线经过的连接两个城市的路线的顺序排列;(2)巡回旅行路线所经过的各个城市的顺序排列。大多数求解旅行商问题的遗传算法是以后者为描述方法的,它们大多采用所遍历城市的顺序来表示各个个体的编码串,其等位基因为N个整数值或N个记号。 以城市的遍历次序作为遗传算法的编码,目标函数取路径长度。在群体初始化、交叉操作和变异操作中考虑TSP问题的合法性约束条件(即对所有的城市做到不重不漏)。
652
TSP问题的遗传算法设计 采用遗传算法进行路径优化,分为以下几步: 第一步:参数编码和初始群体设定 一般来说遗传算法对解空间的编码大多采用二进制编码形式,但对于TSP一类排序问题,采用对访问城市序列进行排列组合的方法编码,即某个巡回路径的染色体个体是该巡回路径的城市序列。 针对TSP问题,编码规则通常是N取进制编码,即每个基因仅从1到N的整数里面取一个值,每个个体的长度为N,N为城市总数。定义一个s行t列的pop矩阵来表示群体,t为城市个数N+1,即N+1,s为样本中个体数目。针对30个城市的TSP问题,t取值31,
653
即矩阵每一行的前30个元素表示经过的城市编号,最后一个元素表示经过这些城市要走的距离。
参数编码和初始群体设定程序为: pop=zeros(s,t); for i=1:s pop(i,1:t-1)=randperm(t-1); end 第二步:计算路径长度的函数设计 在TSP的求解中,用距离的总和作为适应度函数,来衡量求解结果是否最优。将POP矩阵中每一行表示经过的距离的最后一个元素作为路径长度。
654
两个城市m和n间的距离为: 用于计算路径长度的程序为chap10_1dis.m。 通过样本的路径长度可以得到目标函数和自适应度函数。根据t的定义,两两城市组合数共有t-2组,则目标函数为: 自适应度函数取目标函数的倒数,即: (10.18)
655
第三步:计算选择算子 选择就是从群体中选择优胜个体、淘汰劣质个体的操作,它是建立在群体中个体适应度评估基础上。仿真中采用最优保存方法,即将群体中适应度最大的c个个体直接替换适应度最小的c个个体。选择算子函数为chap10_7select.m。仿真中,取 。 第四步:计算交叉算子 交叉算子在遗传算法中起着核心的作用,它是指将个体进行两两配对,并以交叉概率将配对的父代个体加以替换重组而生成新个体的操作。仿真中,取 。 有序交叉法实现的步骤是:
656
有序交叉法实现的步骤是: 步骤 1 随机选取两个交叉点crosspoint(1)和crosspoint(2); 步骤 2 两后代先分别按对应位置复制双亲X1和X2匹配段中的两个子串A1和B1; 步骤 3 在对应位置交换双亲匹配段以外的城市,如果交换后,后代X1中的某一城市a与子串中A1的城市重复,则将该城市取代子串B1与A1中的城市a具有相同位置的新城市,直到与子串A1中的城市均不重复为止,对后代X2也采用同样方法,如图10-15所示:
657
图10-15 有序交叉算子 从图10-15可知,有序交叉算子能够有效地继承双亲的部分基因成分,达到了进化过程中的遗传功能,使该算法并不是盲目搜索,而是趋向于使群体具有更多的优良基因,最后实现寻优的目的。交叉算子函数为chap10_7corss.m
658
第五步:计算变异算子 变异操作是以变异概率 对群体中个体串某些基因位上的基因值作变动,若变异后子代的适应度值更加优异,则保留子代染色体,否则,仍保留父代染色体。仿真中,取 。 这里采用倒置变异法:假设当前个体X为( ),如果当前随机概率值< ,则随机选择来自同一个体的两个点mutatepoint(1)和mutatepoint(2),然后倒置该两个点的中间部分,产生新的个体。 例如,假设随机选择个体X的两个点“7”和“9”,则倒置该两个点的中间部分,即将“4805”变为“5084”,产生新的个体X为( )。变异算子函数为chap10_7mutate.m。
659
仿真实例 以8个城市的路径优化为例,其城市路径坐标保存在路径e:\ljkmb\的程序cities8.txt中。遗传算法参数设定为:群体中个体数目 ,交叉概率 ,变异概率 。通过改变进化代数为K,观察不同进化代数下路径的优化情况,仿真结果见图10-16和图10-17所示,经过1000次进化,城市组合路径达到最小。最短路程为2.8937 仿真过程表明,在20次仿真实验中,有15次可收敛到最优解。
660
图10-16 进化代次数为300时的轨迹,距离L=
661
图10-17 进化代次数为500时的轨迹,距离L=2.8937。
Similar presentations