1、定义
专家系统是一类包含知识和推理的智能计算机程序,其内部包含某领域专家水平的知识和经验,具有解决专门问题的能力。
2、应用
专家系统可以解决的问题一般包括解释、预测、设计、规划、监视、修理、指导和控制等。目前,专家系统已经广泛地应用于医疗诊断、语音识别、图象处理、金融决策、地质勘探、石油化工、教学、军事、计算机设计等领域。
3、专家系统构成
专家系统主要由知识库和推理机构成,专家系统的结构如图2-1所示。
4、专家系统的建立
1 知识库
知识库包含三类知识:
(1)基于专家经验的判断性规则;
(2)用于推理、问题求解的控制性规则;
(3)用于说明问题的状态、事实和概念以及当前的条件和常识等的数据。
2 推理机
推理机是用于对知识库中的知识进行推理来得到结论的“思维”机构。推理机包括三种推理方式:
(1)正向推理:从原始数据和已知条件得到结论;
(2)反向推理:先提出假设的结论,然后寻找支持的证据,若证据存在,则假设成立;
(3)双向推理:运用正向推理提出假设的结论,运用反向推理来证实假设。
3 知识的表示
常用的知识表示方法为:产生式规则,框架,语义网络,过程。其中产生式规则是专家系统最流行的表达方法。由产生式规则表示的专家系统又称为基于规则的系统或产生式系统。
产生式规则的表达方式为:
IF E THEN H WITH CF(E,H)
其中,E表示规则的前提条件,即证据,它可以是单独命题,也可以是复合命题;H表示规则的结论部分,即假设,也是命题;CF(Certainty Factor)为规则的强度,反映当前提为真时,规则对结论的影响程度。
5 、专家系统建立步骤
(1)知识库的设计
① 确定知识类型:叙述性知识,过程性知识,控制性知识;
② 确定知识表达方法;
③ 知识库管理系统的设计:实现规则的保存、编辑、删除、增加、搜索等功能。
(2)推理机的设计
① 选择推理方式;
② 选择推理算法:选择各种搜索算法,如深度优先搜索、广度优先搜索、启发式优先搜索等。
(3)人─机接口的设计
① 设计“用户─专家系统接口”:用于咨询理解和结论解释;
② 设计“专家─专家系统接口”:用于知识库扩充及系统维护。
1、概述
专家控制(Expert Control)是智能控制的一个重要分支,又称专家智能控制。所谓专家控制,是将专家系统的理论和技术同控制理论、方法与技术相结合,在未知环境下,仿效专家的经验,实现对系统的控制。
专家控制试图在传统控制的基础上“加入”一个富有经验的控制工程师,实现控制的功能,它由知识库和推理机构构成主体框架,通过对控制领域知识(先验经验、动态信息、目标等)的获取与组织,按某种策略及时地选用恰当的规则进行推理输出,实现对实际对象的控制。
2、结构
专家控制的基本结构如图2-2所示。
3、功能
(1)能够满足任意动态过程的控制需要,尤其适用于带有时变、非线性和强干扰的控制;
(2)控制过程可以利用对象的先验知识;
(3)通过修改、增加控制规则,可不断积累知识,改进控制性能;
(4)可以定性地描述控制系统的性能,如“超调小”、“偏差增大”等;
(5)对控制性能可进行解释;
(6)可通过对控制闭环中的单元进行故障检测来获取经验规则。
4、与专家系统的区别
专家控制引入了专家系统的思想,但与专家系统存在区别:
(1) 专家系统能完成专门领域的功能,辅助用户决策;专家控制能进行独立的、实时的自动决策。专家控制比专家系统对可靠性和抗干扰性有着更高的要求。
(2) 专家系统处于离线工作方式,而专家控制要求在线获取反馈信息,即要求在线工作方式。
5、知识表示
专家控制将系统视为基于知识的系统,控制系统的知识表示如下:
(1)受控过程的知识
① 先验知识:包括问题的类型及开环特性;
② 动态知识:包括中间状态及特性变化。
(2)控制、辨识、诊断知识
① 定量知识:各种算法;
② 定性知识:各种经验、逻辑、直观判断。
按照专家系统知识库的结构,有关知识可以分类组织,形成数据库和规则库,从而构成专家控制系统的知识源。
数据库包括:
① 事实──已知的静态数据。例如传感器测量误差、运行阈值、报警阈值、操作序列的约束条件、受控过程的单元组态等;
② 证据──测量到的动态数据。例如传感器的输出值、仪器仪表的测试结果等。证据的类型是各异的,常常带有噪声、延迟,也可能是不完整的,甚至相互之间有冲突;
③假设─由事实和证据推导的中间结果,作为当前事实集合的补充。例如,通过各种参数估计算法推得的状态估计等;
④目标─系统的性能指标。例如对稳定性的要求,对静态工作点的寻优、对现有控制规律是否需要改进的判断等。目标既可以是预定的,也可以是根据外部命令或内部运行状况在线地动态建立的。
专家控制的规则库一般采用产生式规则表示:
IF 控制局势(事实和数据) THEN 操作结论由多条产生式规则构成规则库。
6、分类
按专家控制在控制系统中的作用和功能,可将专家控制器分为以下两种类型:
(1) 直接型专家控制器
直接专家控制器用于取代常规控制器,直接控制生产过程或被控对象。具有模拟(或延伸,扩展)操作工人智能的功能。该控制器的任务和功能相对比较简单,但是需要在线、实时控制。因此,其知识表达和知识库也较简单,通常由几十条产生式规则构成,以便于增删和修改。
直接型专家控制器的示意图见图2-3中的虚线所示。
(2)间接型专家控制器
间接型专家控制器用于和常规控制器相结合,组成对生产过程或被控对象进行间接控制的智能控制系统。具有模拟(或延伸,扩展)控制工程师智能的功能。该控制器能够实现优化适应、协调、组织等高层决策的智能控制。按照高层决策功能的性质,间接型专家控制器可分为以下几种类型:
① 优化型专家控制器:是基于最优控制专家的知识和经验的总结和运用。通过设置整定值、优化控制参数或控制器,实现控制器的静态或动态优化。
② 适应型专家控制器:是基于自适应控制专家的知识和经验的总结和运用。根据现场运行状态和测试数据,相应地调整控制规律,校正控制参数,修改整定值或控制器,适应生产过程、对象特性或环境条件的漂移和变化。
③ 协调型专家控制器:是基于协调控制专家和调度工程师的知识和经验的总结和运用。用以协调局部控制器或各子控制系统的运行,实现大系统的全局稳定和优化。
④ 组织型专家控制器:是基于控制工程的组织管理专家或总设计师的知识和经验的总结和运用。用以组织各种常规控制器,根据控制任务的目标和要求,构成所需要的控制系统。
间接型专家控制器可以在线或离线运行。通常,优化型、适应型需要在线、实时、联机运行。协调型、组织型可以离线、非实时运行,作为相应的计算机辅助系统。
间接型专家控制器的示意图如图2-4所示。
7、专家控制的关键技术及特点
1专家控制的关键技术
(1) 知识的表达方法;
(2)从传感器中识别和获取定量的控制信号;
(3)将定性知识转化为定量的控制信号;
(4)控制知识和控制规则的获取。
2 专家控制的特点
(1)灵活性:根据系统的工作状态及误差情况,可灵活地选取相应的控制律;
(2)适应性:能根据专家知识和经验,调整控制器的参数,适应对象特性及环境的变化;
(3)鲁棒性:通过利用专家规则,系统可以在非线性、大偏差下可靠地工作。
1、专家PID控制原理
PID专家控制的实质是,基于受控对象和控制规律的各种知识,无需知道被控对象的精确模型,利用专家经验来设计PID参数。专家PID控制是一种直接型专家控制器。
典型的二阶系统单位阶跃响应误差曲线如图2-5所示。对于典型的二阶系统阶跃响应过程作如下分析。
图2-5中,Ⅰ、Ⅲ、Ⅴ、Ⅶ、…区域,误差朝绝对值减小的方向变化。此时,可采取保持等待措施,相当于实施开环控制;Ⅱ、Ⅳ、Ⅵ、Ⅷ、…区域,误差绝对值朝增大的方向变化。此时,可根据误差的大小分别实施较强或一般的控制作用,以抑制动态误差。
令e(k)表示离散化的当前采样时刻的误差值,e(k-1)和e(k-2)分别表示前一个和前两个采样时刻的误差值,则有:
根据误差及其变化,可设计专家PID控制器,该控制器可分为以下五种情况进行设计:
(1)当|e(k)|>M1 时,说明误差的绝对值已经很大。不论误差变化趋势如何,都应考虑控制器的输出应按最大(或最小)输出,以达到迅速调整误差,使误差绝对值以最大速度减小。此时,它相当于实施开环控制。
(2)当e(k)Δe(k)>0或 Δe(k)=0时,说明误差在朝误差绝对值增大方向变化,或误差为某一常值,未发生变化。
此时,如果|e(k)|≥M2,说明误差也较大,可考虑由控制器实施较强的控制作用,以达到扭转误差绝对值朝减小方向变化,并迅速减小误差的绝对值,控制器输出为:
如果 |e(k)|<M2,说明尽管误差朝绝对值增大方向变化,但误差绝对值本身并不很大,可考虑控制器实施一般的控制作用,只要扭转误差的变化趋势,使其朝误差绝对值减小方向变化,控制器输出为
(3)当e(k)Δe(k)<0、Δe(k)Δe(k-1)>0或者e(k)=0 时,说明误差的绝对值朝减小的方向变化,或者已经达到平衡状态。此时,可考虑采取保持控制器输出不变。
(4)当e(k)Δe(k)<0、Δe(k)Δe(k-1)<0时,说明误差处于极值状态。如果此时误差的绝对值较大,即|e(k)|≥M2 ,可考虑实施较强的控制作用。
如果此时误差的绝对值较小,即|e(k)|<M2,可考虑实施较弱的控制作用
(5)当e(k)<ε时,说明误差的绝对值很小,此时加入积分,减少稳态误差。
以上各式中:
em(k)为误差e的第k个极值;
u(k)为第k次控制器的输出;
k1为增益放大系数,k1>1;
k2为抑制系数,0<k2<1;
M1,M2为设定的误差界限,M1>M2>0
1、模糊控制
模糊控制是建立在人工经验基础之上的。对于一个熟练的操作人员,他往往凭借丰富的实践经验,采取适当的对策来巧妙地控制一个复杂过程。若能将这些熟练操作员的实践经验加以总结和描述,并用语言表达出来,就会得到一种定性的、不精确的控制规则。如果用模糊数学将其定量化就转化为模糊控制算法,形成模糊控制理论。
2、特点
(1)模糊控制不需要被控对象的数学模型。模糊控制是以人对被控对象的控制经验为依据而设计的控制器,故无需知道被控对象的数学模型。
(2)模糊控制是一种反映人类智慧的智能控制方法。模糊控制采用人类思维中的模糊量,如“高”、“中”、“低”、“大”、“小”等,控制量由模糊推理导出。这些模糊量和模糊推理是人类智能活动的体现。
(3)模糊控制易于被人们接受。模糊控制的核心是控制规则,模糊规则是用语言来表示的,如“今天气温高,则今天天气暖和”,易于被一般人所接受。
(4)构造容易。模糊控制规则易于软件实现。
(5)鲁棒性和适应性好。通过专家经验设计的模糊规则可以对复杂的对象进行有效的控制。
3、模糊集合
模糊集合是模糊控制的数学基础。
模糊集合的表示
① 模糊集合A由离散元素构成,表示为散元素构成,表示为:
② 模糊集合A由连续函数构成,各元素的隶属度就构成了隶属度函数(Membership Function),此时A表示为:
在模糊集合的表达中,符号“/”、“+”和“∫”不代表数学意义上的除号、加号和积分,它们是模糊集合的一种表示方式,表示“构成”或“属于”。
模糊集合是以隶属函数来描述的,隶属度的概念是模糊集合理论的基石。
例3.1 设论域U={张三,李四,王五},评语为“学习好”。设三个人学习成绩总评分是张三得95分,李四得90分,王五得85分,三人都学习好,但又有差异。
若采用普通集合的观点,选取特征函数
此时特征函数分别为 C(张三)=1,C(李四)=1,C(王五)=1。这样就反映不出三者的差异。假若采用模糊子集的概念,选取[0,1]区间上的隶属度来表示它们属于“学习好”模糊子集A的程度,就能够反映出三人的差异。
采用隶属函数 μA (x)=x/100,由三人的成绩可知三人“学习好”的隶属度为 C(张三)=0.95,C(李四)=0.90,C(王五)=0.85。用“学习好”这一模糊子集A可表示为:
A={0.95,0.90,0.85}
其含义为张三、李四、王五属于“学习好”的程度分别是0.95,0.90,0.85。
例3.2 以年龄为论域,取X=[0,100]。Zadeh给出了“年轻”的模糊集Y,其隶属函数为:
通过Matlab仿真对上述隶属函数作图,隶属函数曲线如图3-1所示。
4、模糊集合的基本运算
由于模糊集是用隶书函数来表征的,因此两个子集之间的运算实际上就是逐点对隶属度作相应的运算。
(1)空集
模糊集合的空集为普通集,它的隶属度为0,即:
(2)全集
模糊集合的全集为普通集,它的隶属度为1,即
(3)等集
两个模糊集A和B,若对所有元素u,它们的隶属函数相等,则A和B也相等。即
(4)补集
若 为A的补集,则:
(5)子集
若B为A的子集,则
(6)并集
若C为A和B的并集,则
一般地,
(7)交集
若C为A和B的交集,则
一般地,
注意:模糊集合的运算符虽然和数学上集合的符号相同,但意思完全不同
(8)模糊运算的基本性质
5、模糊算子
模糊集合的逻辑运算实质上就是隶属函数的运算过程。采用隶属函数的取大(MAX)-取小(MIN)进行模糊集合的并、交逻辑运算是目前最常用的方法。但还有其它公式,这些公式统称为“模糊算子”。
设有模糊集合A、B和C,常用的模糊算子如下:
1、隶属函数
几种典型的隶属函数
在Matlab中已经开发出了11种隶属函数,即双S形隶属函数(dsigmf)、联合高斯型隶属函数(gauss2mf)、高斯型隶属函数(gaussmf)、广义钟形隶属函数(gbellmf)、II型隶属函数(pimf)、双S形乘积隶属函数(psigmf)、S状隶属函数(smf)、S形隶属函数(sigmf)、梯形隶属函数(trapmf)、三角形隶属函数(trimf)、Z形隶属函数(zmf)。
有关隶属函数的MATLAB设计,见著作:楼顺天,胡昌华,张伟,《基于MATLAB的系统分析与设计-模糊系统》,西安:西安电子科技大学出版社,2001
例1:设计一个三角形隶属函数,按[-3,3]范围七个等级,建立一个模糊系统,用来表示{负大,负中,负小,零,正小,正中,正大}。仿真结果如图3-8所示。
2、隶属函数的确定方法
隶属函数是模糊控制的应用基础。目前还没有成熟的方法来确定隶属函数,主要还停留在经验和实验的基础上。通常的方法是初步确定粗略的隶属函数,然后通过“学习”和实践来不断地调整和完善。遵照这一原则的隶属函数选择方法有以下几种。
(1)模糊统计法
根据所提出的模糊概念进行调查统计,提出与之对应的模糊集A,通过统计实验,确定不同元素隶属于A的程度。
u0对模糊集A的隶属度 =
(2)主观经验法
当论域为离散论域时,可根据主观认识,结合个人经验,经过分析和推理,直接给出隶属度。这种确定隶属函数的方法已经被广泛应用。
(3)神经网络法
利用神经网络的学习功能,由神经网络自动生成隶属函数,并通过网络的学习自动调整隶属函数的值。
1、模糊矩阵
例3.6 设有一组同学X,X={张三,李四,王五},他们的功课为Y,Y={英语,数学,物理,化学}。他们的考试成绩如下表:
取隶属函数 μ(u) =u/100,其中u为成绩。如果将他们的成绩转化为隶属度,则构成一个x×y上的一个模糊关系R,见下表。
该矩阵称作模糊矩阵,其中各个元素必须在[0,1]闭环区间上取值。矩阵R也可以用关系图来表示,如图3-10所示。
2、模糊矩阵运算与模糊关系
3、模糊矩阵的合成
所谓合成,即由两个或两个以上的关系构成一个新的关系。模糊关系也存在合成运算,是通过模糊矩阵的合成进行的。
模糊矩阵的合成类似于普通矩阵的乘积运算,将乘积运算换成“取小”,将加法运算换成“取大”即可。
设矩阵R是u × v上的模糊关系,s是v × w上的模糊关系,则 称为A与B的矩阵合成,算法表示为:
1、模糊语句
将含有模糊概念的语法规则所构成的语句称为模糊语句。根据其语义和构成的语法规则不同,可分为以下几种类型:
(1)模糊陈述句:语句本身具有模糊性,又称为模糊命题。如:“今天天气很热”。
(2)模糊判断句:是模糊逻辑中最基本的语句。语句形式:“x是a”,记作(a),且a所表示的概念是模糊的。如“张三是好学生”。
(3)模糊推理句:语句形式:若x是a,则x是b。则为模糊推理语句。如“今天是晴天,则今天暖和”。
2、模糊推理
常用的有两种模糊条件推理语句:If A then B else C;If A AND B then C
下面以第二种推理语句为例进行探讨,该语句可构成一个简单的模糊控制器,如图3-11所示。
其中A,B,C分别为论域U上的模糊集合,A为误差信号上的模糊子集,B为误差变化率上的模糊子集,C为控制器输出上的模糊子集。
常用的模糊推理方法有两种:Zadeh法和Mamdani法。Mamdani推理法是模糊控制中普遍使用的方法,其本质是一种合成推理方法。
注意:求模糊关系时A×B扩展成列向量,由模糊关系求C1时,A1×B1扩展成行向量
3、模糊关系方程
①、模糊关系方程概念
将模糊关系R看成一个模糊变换器。当A为输入时,B为输出,如图3-12所示。
可分为两种情况讨论:
(1)已知输入A和模糊关系R,求输出B,这是综合评判,即模糊变换问题。
(2)已知输入A和输出B,求模糊关系R,或已知模糊关系R和输出B,求输入A,这是模糊综合评判的逆问题,需要求解模糊关系方程。
②、模糊关系方程的解
近似试探法是目前实际应用中较为常用的方法之一。
1、模糊控制的基本原理
模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,它是从行为上模仿人的模糊推理和决策过程的一种智能控制方法。该方法首先将操作人员或专家经验编成模糊规则,然后将来自传感器的实时信号模糊化,将模糊化后的信号作为模糊规则的输入,完成模糊推理,将推理后得到的输出量加到执行器上。
2、模糊控制器
模糊控制器(Fuzzy Controller—FC):也称为模糊逻辑控制器(Fuzzy Logic Controller—FLC),由于所采用的模糊控制规则是由模糊理论中模糊条件语句来描述的,因此模糊控制器是一种语言型控制器,故也称为模糊语言控制器(Fuzzy Language Controller—FLC)。
(1)模糊化接口(Fuzzy interface)
模糊控制器的输入必须通过模糊化才能用于控制输出的求解,因此它实际上是模糊控制器的输入接口。它的主要作用是将真实的确定量输入转换为一个模糊矢量。
(2)知识库(Knowledge Base—KB)
知识库由数据库和规则库两部分构成。
①数据库(Data Base—DB) 数据库所存放的是所有输入、输出变量的全部模糊子集的隶属度矢量值(即经过论域等级离散化以后对应值的集合),若论域为连续域则为隶属度函数。在规则推理的模糊关系方程求解过程中,向推理机提供数据。
②规则库(Rule Base—RB) 模糊控制器的规则司基于专家知识或手动操作人员长期积累的经验,它是按人的直觉推理的一种语言表示形式。模糊规则通常有一系列的关系词连接而成,如if-then、else、also、end、or等,关系词必须经过“翻译”才能将模糊规则数值化。最常用的关系词为if-then、also,对于多变量模糊控制系统,还有and等。
(3)推理与解模糊接口(Inference and Defuzzy-interface)
推理是模糊控制器中,根据输入模糊量,由模糊控制规则完成模糊推理来求解模糊关系方程,并获得模糊控制量的功能部分。在模糊控制中,考虑到推理时间,通常采用运算较简单的推理方法。最基本的有Zadeh近似推理,它包含有正向推理和逆向推理两类。正向推理常被用于模糊控制中,而逆向推理一般用于知识工程学领域的专家系统中。推理结果的获得,表示模糊控制的规则推理功能已经完成。但是,至此所获得的结果仍是一个模糊矢量,不能直接用来作为控制量,还必须作一次转换,求得清晰的控制量输出,即为解模糊。通常把输出端具有转换功能作用的部分称为解模糊接口。
3、模糊控制系统的工作原理(实例)
以水位的模糊控制为例,如图4-4所示。设有一个水箱,通过调节阀可向内注水和向外抽水。设计一个模糊控制器,通过调节阀门将水位稳定在固定点附近。按照日常的操作经验,可以得到基本的控制规则:
“若水位高于O点,则向外排水,差值越大,排水越快”;
“若水位低于O点,则向内注水,差值越大,注水越快”。
根据上述经验,按下列步骤设计模糊控制器:
1)确定观测量和控制量
定义理想液位O点的水位为h0,实际测得的水位高度为h,选择液位差:
将当前水位对于O点的偏差e作为观测量。
2)输入量和输出量的模糊化
将偏差e分为五个模糊集:负大(NB),负小(NS),零(O),正小(PS),正大(PB)。根据偏差e的变化范围分为七个等级:-3,-2,-1,0,+1,+2,+3。得到水位变化模糊表4-1。
控制量u为调节阀门开度的变化。将其分为五个模糊集:负大(NB),负小(NS),零(ZO),正小(PS),正大(PB)。并将u的变化范围分为九个等级:-4,-3,-2,-1,0,+1,+2,+3,+4。得到控制量模糊划分表4-2。
3)模糊规则的描述
根据日常的经验,设计以下模糊规则:
(1)“若e负大,则u负大”
(2)“若e负小,则u负小”
(3)“若e为0,则u为0”
(4)“若e正小,则u正小”
(5)“若e正大,则u正大”
其中,排水时,u为负,注水时,u为正。
上述规则采用“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。
4)求模糊关系
模糊控制规则是一个多条语句,它可以表示为U×V上的模糊子集,即模糊关系R:
其中规则内的模糊集运算取交集,规则间的模糊集运算取并集。
5)模糊决策
模糊控制器的输出为误差向量和模糊关系的合成:
当误差e为NB时,e=[1,0.5,0,0,0,0,0]控制器输出为:
6、控制量的反模糊化
由模糊决策可知,当误差为负大时,实际液位远高于理想液位,e=NB,控制器的输出为一模糊向量,可表示为:
如果按照“隶属度最大原则”进行反模糊化,则选择控制量为 u=-4,即阀门的开度应关大一些,减少进水量。
一、模糊系统
模糊控制系统分类
1 按信号的时变特性分类
(1)恒值模糊控制系统
系统的指令信号为恒定值,通过模糊控制器消除外界对系统的扰动作用,使系统的输出跟踪输入的恒定值。也称为“自镇定模糊控制系统”,如温度模糊控制系统。
(2)随动模糊控制系统
系统的指令信号为时间函数,要求系统的输出高精度、快速地跟踪系统输入。也称为“模糊控制跟踪系统”或“模糊控制伺服系统”。
3 按静态误差是否存分类
(1)有差模糊控制系统
将偏差的大小及其偏差变化率作为系统的输入为有差模糊控制系统。
(2)无差模糊控制系统
引入积分作用,使系统的静差降至最小。
4 按系统控制输入变量的多少分类
控制输入个数为1的系统为单变量模糊控制系统,控制输入个数>1的系统为多变量模糊控制系统。
二、模糊控制器
在确定性控制系统中,根据控制器输出的个数,可分为单变量控制系统和多变量控制系统。在模糊控制系统中也可类似地划分为单变量模糊控制和多变量模糊控制。
1、单变量模糊控制器
在单变量模糊控制器(Single Variable Fuzzy Controller—SVFC)中,将其输入变量的个数定义为模糊控制的维数。
(1)一维模糊控制器 如图4-5(a)所示,一维模糊控制器的输入变量往往选择为受控量和输入给定的偏差量E。由于仅仅采用偏差值,很难反映过程的动态特性品质,因此,所能获得的系统动态性能是不能令人满意的。这种一维模糊控制器往往被用于一阶被控对象。
(2)二维模糊控制器 如图4-5(b)所示,二维模糊控制器的两个输入变量基本上都选用受控变量和输入给定的偏差E和偏差变化EC,由于它们能够较严格地反映受控过程中输出变量的动态特性,因此,在控制效果上要比一维控制器好得多,也是目前采用较广泛的一类模糊控制器。
(3)三维模糊控制器 如图4-5(c)所示,三维模糊控制器的三个输入变量分别为系统偏差量E、偏差变化量EC和偏差变化的变化率ECC。由于这些模糊控制器结构较复杂,推理运算时间长,因此除非对动态特性的要求特别高的场合,一般较少选用三维模糊控制器。
模糊控制系统所选用的模糊控制器维数越高,系统的控制精度也就越高。但是维数选择太高,模糊控制规律就过于复杂,这是人们在设计模糊控制系统时,多数采用二维控制器的原因。
2、多变量模糊控制器
一个多变量模糊控制器(Multiple Variable Fuzzy Controller)系统所采用的模糊控制器,具有多变量结构,称之为多变量模糊控制器。如图4-6所示。
要直接设计一个多变量模糊控制器是相当困难的,可利用模糊控制器本身的解耦特点,通过模糊关系方程求解,在控制器结构上实现解耦,即将一个多输入-多输出(MIMO)的模糊控制器,分解成若干个多输入-单输出(MISO)的模糊控制器,这样可采用单变量模糊控制器方法设计。
三、模糊控制器的设计
模糊控制器的设计步骤
模糊控制器最简单的实现方法是将一系列模糊控制规则离线转化为一个查询表(又称为控制表)。这种模糊控制其结构简单,使用方便,是最基本的一种形式。
1、模糊控制器的结构
单变量二维模糊控制器是最常见的结构形式。
2、定义输入输出模糊集
对误差E、误差变化EC及控制量u的模糊集及其论域定义如下:
E、EC和u的模糊集均为:{NB,NM,NS,ZO,PS,PM,PB}
E、EC的论域均为:{-3,-2,-1,0,1,2,3}
u的论域为:{-4.5,-3,-1.5,0,1,3,4.5}
3、 定义输入输出隶属函数
模糊变量误差E、误差变化EC及控制量u的模糊集和论域确定后,需对模糊语言变量确定隶属函数,确定论域内元素对模糊语言变量的隶属度。
4 、建立模糊控制规则
根据人的经验,根据系统输出的误差及误差的变化趋势来设计模糊控制规则。模糊控制规则语句构成了描述众多被控过程的模糊模型。
5、 建立模糊控制表
模糊控制规则可采用模糊规则表4-5来描述,共49条模糊规则,各个模糊语句之间是或的关系,由第一条语句所确定的控制规则可以计算出u1。同理,可以由其余各条语句分别求出控制量u2,…,u49,则控制量为模糊集合U可表示为 :
6 模糊推理
模糊推理是模糊控制的核心,它利用某种模糊推理算法和模糊规则进行推理,得出最终的控制量。
7 反模糊化
通过模糊推理得到的结果是一个模糊集合。但在实际模糊控制中,必须要有一个确定值才能控制或驱动执行机构。将模糊推理结果转化为精确值的过程称为反模糊化。常用的反模糊化有三种:
(1)最大隶属度法
选取推理结果模糊集合中隶属度最大的元素作为输出值,即:
如果在输出论域V中,其最大隶属度对应的输出值多于一个,则取所有具有最大隶属度输出的平均值,即:
N为具有相同最大隶属度输出的总数。
最大隶属度法不考虑输出隶属度函数的形状,只考虑最大隶属度处的输出值。因此,难免会丢失许多信息。它的突出优点是计算简单。在一些控制要求不高的场合,可采用最大隶属度法。
(2) 重心法
为了获得准确的控制量,就要求模糊方法能够很好的表达输出隶属度函数的计算结果。重心法是取隶属度函数曲线与横坐标围成面积的重心为模糊推理的最终输出值,即:
对于具有m个输出量化级数的离散域情况:
与最大隶属度法相比较,重心法具有更平滑的输出推理控制。即使对应于输入信号的微小变化,输出也会发生变化。
(3)加权平均法
工业控制中广泛使用的反模糊方法为加权平均法,输出值由下式决定:
其中系数ki的选择根据实际情况而定。不同的系数决定系统具有不同的响应特性。当系数ki取隶属度μv(vi)时,就转化为重心法。
反模糊化方法的选择与隶属度函数形状的选择、推理方法的选择相关
Matlab提供五种解模糊化方法:(1)centroid:面积重心法;(2)bisector:面积等分法;(3)mom:最大隶属度平均法;(4)som最大隶属度取小法;(5)lom:大隶属度取大法;
在Matlab中,可通过setfis()设置解模糊化方法,通过defuzz()执行反模糊化运算。