第三章:模糊推理系统随着科学技术的不断发展,人们对计算机的要求愈来愈高,不仅要求它具有更高的运算速度、更大的信息存贮和数据处理能力,而且还需要计算机具有一定的“智能”。控制论的创始人维纳曾经说过,由于“人具有运用模糊概念的能力”,所以人胜过任何最完善的机器。对模糊事物进行识别和判决是人脑的重要特点之一,那么如何使计算机能够模拟人脑思维的模糊性,如何使模糊语言作为算法语言直接进入计算机程序,让计算机完成模糊推理,这是模糊信息处理首先要解决的问题。§3.1语言变量与模糊规则为了使计算机能够利用模糊概念,模拟人的思维进行模糊推理,首先需要深入研究模糊推理的一些基础知识。如模糊语言变量、模糊命题及模糊推理方法等等。3.1.1模糊语言语言是一种符号系统,通常包括自然语言和人工语言两种。自然语言是指人类交流信息时使用的语言,它可以表示主、客观世界的各种事物、观念、行为、情感等。自然语言具有相当的不确定性,其主要特征就是模糊性,这种模糊性主要是由于自然语言中经常用到大量的模糊词(如黎明、模范、优美、拥护等)。人工语言主要是指程序设计语言,如我们熟悉的C语言、汇编语言等。人工语言的格式是非常严密、且概念十分清晰。一、模糊语言的概念从广义角度来讲,一切具有模糊性的语言都称为模糊语言。显然,模糊语言主要是指自然语言。由于模糊语言可以对模糊性进行分析和处理,因此,在现实生活中,人们常常用模糊语言来描述事物或现象的模糊性。另外,需要说明的是模糊语言又具有很大的灵活性,在不同的场合,同一全模糊概念可以表达出不同的含义。如“高个子”,在中国,大约在1.75—1.85m之间的人就认为是“高个子”,而在欧洲,大约在1.80—1.90m之间的人才能算作“高个子”。模糊语言是一种广泛使用的自然语言。如何将模糊语言表达出来,使计算机能够模拟人的思维去推理和判断,这就引出了语言变量这一概念。二、语言变量语言变量是以自然语言中的词、词组或句子作为变量,而不是以数值作为变量。如模糊控制中经常用到的语言变量“偏差”、“偏差变化率”等。语言变量的概念最早由Zedeh提出。语言变量的值称为语言值,一般也是由自然语言中的词、词组或句子构成。如语言变量“偏差”、“偏差变化率”的语言值可以由“大”、“中”、“小”等词来描述。语言变量与相应的语言值之间必须遵守语法规则和语义规则。语言变量的语言值通常用模糊集合来描述,该模糊集合对应的数值变量称作基础变量。综上所述,一个完整的语言变量可定义为一个五元体),,),(,(MGUXTX其中X——语言变量的名称;)(XT——语言变量的语言值;U——论域;G一—语法规则;M——语义规则。下面以“年龄”作为语言变量X,该语言变量的论域U取),0[。根据语法规则可知,描述语言变量“年龄”的语言值有“年青”、“中年”、“年老”几种,那么)(XT可表示为)(XT=年青+中年+年老语义规则主要是用来反映实际论域中的岁数与模糊集合“年青”、“中年”、“年老”之间的关系。模糊语言变量的完整描述见图3.1.1。060402080年青中年年老年龄1.0语言变量语义规则语法规则语言值论域XT(X)GMU(岁)图3.1.1“年龄”语言变量的五元体三、模糊语气算子模糊语气算子是指一类加强或削弱模糊语言表达程度的词,如“特别”、“很”、“相当”等等,可以对模糊语言值进行修饰。比如对语言值“年轻”、“年老”等进行修饰,变为“很年青”、“特别老”等。设模糊集A~的隶属函数为)(~xA,那么模糊语气算子的数学描述可以表示为)(~xnA,其中加强语气的词称为集中算子,取1n;减弱语气的词称为散漫化算子,取1n。例3.1.1设模糊集合A~表示“年青”这一模糊概念,其隶属函数为)25(]5/)25[(11)2515(1)(2~xxxxA可以算出28岁和30岁的人对“年青”的隶属度为74.0)28(~A;5.0)30(~A现在给“年青”加上集中算子“很”,用模糊集合B~表示“很年青”,若取2n,则可得“很年青”的隶属函数为)25(]5)25[(11)2515(1)(22~xxxxB代入上式可以算出28岁和30岁的人对“很年青”的隶属度分别为54.0)28(~B;25.0)30(~B若给“年青”加上散漫化算子“较”,用模糊集合C~表示“较年青”,取5.0n,则可得“较年青”的隶属函数为)25(]5)25[(11)2515(1)(2~xxxxC可以算出28岁和30岁的人对“较年青”的隶属度分别为88.0)28(~C;71.0)30(~C可见,同样的年龄对于不同的模糊集其隶属度是不同的,反映出模糊语气算子的作用。3.1.2模糊规则一、模糊逻辑数理逻辑是建立在经典集合论上的研究概念、判断和推理形式的一门学科,又称为经典逻辑。经典逻辑最大的特点是所反映的内容非真即假,在客观世界中这样的命题不胜枚举。比如:◆北京是中华人民共和国的首都◆石头可以当饭吃但是,还有一类命题很难做出这样明确的判断。比如:◆机动车比自行车的速度更快◆南方的天气很热对于这样的模糊性命题,经典逻辑往往不能给出符合实际情况的结果。正如英国著名的逻辑学家B.Russell在1923年所言:“经典逻辑都习惯于假定使用的是精确的符号。因此,它不适合于尘世生活,而仅仅适用于想象的天体存在物……。逻辑学较别的学科使我们更接近于天堂。”Russell认为世界上不存在绝对的精确性,二值逻辑描述的是理想世界,而不是现实世界。最早跨出二值逻辑限制的是波兰的逻辑学家JanLukasiewicz,他于1920年创立了多值逻辑。直到1965年,LotfiAskerZadeh创立了模糊集合论,使经典逻辑值由{0,1}两值扩展到可以在闭区间[0,1]任意取值,于是产生模糊逻辑。模糊逻辑是二值逻辑的推广,可以在[0,1]区间上任意取值。模糊逻辑运算规则也是以经典逻辑运算规则为基础,经过适当的扩展而形成的。经典逻辑对应于经典集合论,其运算规则称为布尔代数。若}1,0{,,,布尔代数具有如下的运算性质:(1)幂等律Vαα(2)交换律VVαα(3)结合律)V(VV)V(αα)()(αα(4)吸收律)V(αV)(α(5)分配律)(V)()V(αα)V()V(V)(αα(6)复原律CC)((7)补余律1VCα0Cα(8)11Vα0Vα1α00α模糊逻辑对应于模糊集合论,模糊逻辑运算除了不满足布尔代数里的补余律外,布尔代数的其它运算性质它都适用。除此之外,模糊逻辑运算满足德•摩根(De-Morgan)代数,即CCCα)V((3.1.1)CCCαV)((3.1.2)对于补余运算,De-Morgan代数中是这样定义的:1VC,而)1,max(VC(3.1.3)0C,而)1,min(VC(3.1.4)二、模糊命题模糊命题是指带有模糊性的陈述句。模糊命题的真值不是绝对的“真”或“假”,而反映其隶属于“真”的程度。模糊逻辑表征模糊命题的工具,是研究模糊推理最基本的数学手段。模糊命题可以分为性质命题和关系命题两种,通常用大写字母P~,Q~,R~……表示,如:P~:金属物体的导电性能好;Q~:100比1大得多。显然,P~是模糊性质命题,Q~是模糊关系命题。但无论是性质命题P~,还是关系命题Q~,都无法做出“真”、“假”这样明确判断,其真实程度(即模糊命题的真值)只有通过模糊逻辑值来反映。模糊命题从构成上划分,又可分为简单模糊命题和复合模糊命题两种。简单模糊命题的一般形式为:P~:“x是A~”(xisA~)其中元素Xx,X是论域;A~是某个模糊概念所对应的模糊集合。模糊命题的真值,由元素x对模糊集合A~的隶属程度)(~xA表示。在模糊命题中,“isA~”称作模糊谓词。简单模糊命题通过连接词“且”、“或”、“非”等连接起来,就构成了复合模糊命题。复合模糊命题一般形式为1~Q:“x是A~”且“y是B~”(xisA~andyisB~)2~Q:“x是A~”或“y是B~”(xisA~oryisB~)其中元素Xx、Yy,X、Y是论域;A~、B~是相应的模糊集合。由于模糊命题间的“且”、“或”、“非”实质上可以通过模糊逻辑“交”、“并”、“补”实现。因此,对于复合模糊命题的真值,需要通过模糊合成运算来求取。下面给出模糊命题之间的“并”、“交”、“补”基本运算的定义:设有模糊命题P~;xisA~,Q~:yisB~,经过“并”、“交”、“补”运算后,其真值为:(1)并QP~~)(V)(~~~~yxQPBA(3.1.5)(2)交QP~~)()(~~~~yxQPBA(3.1.6)(3)补CP~)(1~1~~xPPAC(3.1.7)可见,复合模糊命题的真值实质上就是各简单模糊命题之间合成运算的结果。当然,上面给出的只是在“并”、“交”、“补”基本运算定义下的结果。其实,复合模糊命题的真值也满足其它“S范数”、“T范数”及“补”运算规则。三、模糊规则模糊规则是模糊推理的基础,由若干个模糊命题组成。模糊规则也称为模糊条件语句,其表达形式如下:ifxisA~,thenyisB~(3.1.8)其中A~和B~分别是论域X和Y上的模糊集合定义的语言值。在模糊规则中,通常将“xisA~”称为前件或前提,“yisB~”称作后件或结论。模糊规则广泛地存在于实际生活中,例如:◆如果你的朋友很多,那么你是个值得信赖的人;◆如果天气暖和,那么少穿些衣服。在模糊推理过程中,有些模糊规则不仅仅是由两条模糊命题构成,它的前提条件可能由若干条模糊命题组成。一般将这种模糊规则称为多维模糊规则,表达如下:if1xis1~Aand2xis2~Aand…andnxisnA~,thenyisB~(3.1.9)if1xis1~Aor2xis2~Aor…ornxisnA~,thenyisB~(3.1.10)现实生活中,由若干条模糊命题组成的模糊规则也较常见。比如:◆如果款式新颖且面料优良且价格便宜,那么是一件好衣服;◆如果跳远超过8m或跳高超过2.3m或百米进入10s,那么是一名优秀的运动员。§3.2模糊推理推理是根据一定的规则,从一个或几个已知判断引伸出一个新判断的思维过程。—般说来,推理都包含两个部分的判断,一部分是已知的判断,作为推理的出发点,叫做前提(或前件)。由前提所推出的新判断,叫做结论(或后件)。3.2.1推理的基本形式人类在认识世界的过程中不断地在使用推理,推理的形式主要有直接推理和间接推理。只有一个前提的推理称为直接推理,由两个或两个以上前提的推理称为间接推理。间接推理又可分为演绎推理、归纳推理和类比推理等,其中演绎推理是生活中最常用的推理方法,它的前提与结论之间存在着确定的蕴涵关系。演绎推理中最常用的形式是假言推理,假言推理又可分为肯定式(或称取式)推理和否定式(或称拒取式)推理两类。其一般形式为肯定式(取式):大前提(规则):若x是a则y是b小前提(事实):x是a结论:y是b否定式(拒取式):大前提(规则):若x是a则y是b小前提(事实):y不是b结论:x不是a以上基于经典逻辑的推理形式又称为“三段论”推理模式。可以看出经典逻辑的“三段论”推理非常严谨,但这种严谨又限制了“三段论”的使用。因为现实生活中获得的信息,大前提:若x是a则y是b之下,若小前提x不是a,而是与a相近的偏离值aˆ,“三段论”推理方法则无法给出一个合理的结论。因为涉及到近似推理问题,所以需要采用新的推理方法。3.2.2模糊推理模糊推理又称模糊逻辑推理,是指在确定的模糊规则下,由已知的模糊命题推出新的模糊命题作为结论的过程。模糊推理是一种近似推理,主要有以下两种形式:(1)已知模糊蕴涵关系“若x是A~,则y是B~”,其中A~是X上的模糊集,B~是Y上的模糊集,模糊蕴涵关系往往