几种典型的模糊推理方法
根据模糊推理的定义可知,模糊推理的结论主要取决于模糊蕴含关系R(X,Y)及模糊关系与模糊集合之间的合成运算法则。对于确定的模糊推理系统,模糊蕴含关系R(X,Y)一般是确定的,而合成运算法则并不唯一。根据合成运算法则的不同,模糊推理方法又可分为Mamdani推理法、Larsen推理法、Zadeh推理法等等。 一、Mamdani模糊推理法
Mamdani模糊推理法是最常用的一种推理方法,其模糊蕴涵关系RM(X,Y)定义简单,可以通过模糊集合A和B的笛卡尔积(取小)求得,即
~(x,y)??~(x)??~(y) (3.2.1) ?RBAM~~~~~例3.2.1 已知模糊集合A?蕴含关系RM(X,Y)。
~~~10.40.1~~0.80.50.30.1?????,B?。求模糊集合A和B之间的模糊x1x2x3y1y2y3y3解:根据Mamdani模糊蕴含关系的定义可知:
?1?~~~??[0.80.50.30.1]RM(X,Y)?A?B??0.4????0.1???0.80.50.30.1?????0.40.40.30.1???0.10.10.10.1??
Mamdani将经典的极大—极小合成运算方法作为模糊关系与模糊集合的合成运算法则。在此定义下,Mamdani模糊推理过程易于进行图形解释。下面通过几种具体情况来分析Mamdani模糊推理过程。
(i) 具有单个前件的单一规则
设A*和A论域X上的模糊集合,B是论域Y上的模糊集合,A和B间的模糊关系是RM(X,Y),有
大前提(规则): if x is A then y is B 小前提(事实): x is A*
结论: y is B*?A*?RM(X,Y)
~(x,y)??~(x)??~(y)时,有 当?RBAM~~~~~~~~~
~~~?B~*(y)?V{?~*(x)?[?~(x)??~(y)]}BAAx?X~*(x)??~(x)]??~(y)} (3.2.2) ?V{[?ABAx?X~(y)????B 1
*
其中??V[?A~*(x)??~(x)],称为A和A的适配度。 A~~
x?X在给定模糊集合A*、A及B的情况下,Mamdani模糊推理的结果B*如图3.2.1所示。
~A~A*~B~B*~~~~
11?0x0y 图3.2.1 单前提单规则的推理过程
~*(x)??~(x)的最大值)根据Mamdani推理方法可知,欲求B*,应先求出适配度?(即?A;然后A~
用适配度?去切割B的MF,即可获得推论结果B*,如图3.2.1中后件部分的阴影区域。所以这种方法经常又形象地称为削顶法。
对于单前件单规则(即若x是A则y是B)的模糊推理,当给定事实x是精确量x0时,基于Mamdani推理方法的模糊推理过程见图3.2.2。 ~A~B~B*~~
~~11?0x0x0y 图3.2.2 事实为精确量时的单前提单规则推理过程
例3.2.2 设A和B分别是论域X和Y上的模糊集合,其中论域X(水的温度) = { 0, 20, 40, 60, 80, 100 },Y(蒸汽压力) = { 1, 2, 3, 4, 5, 6, 7 },A=温度高,B=压力大。模糊规则“若A则B”,在此模糊规则下,试求在A*=温度较高时对应的压力情况B*。 解:首先确定各模糊集合的隶属度为##带有主观性的确定 ~
~
~~~~~~00.10.30.60.851~(x)??A?????
020406080100~*(x)??A~(y)??B00.10.30.50.70.851?????? 12345670.10.150.40.7510.8?????020406080100
求A*对A的适配度?
??V(0?0.10.1?0.150.3?0.40.6?0.750.85?11?0.8?????)x?X020406080100
00.10.30.60.850.8?V(?????)?0.85x?X0204060801002
~~
用适配度?去切割B的隶属函数,即可获得B*
~~
?B?~(y)????~(y)?0.85??B*?00.10.30.50.70.851???????34567??12
00.10.30.50.70.850.85???????1234567推理结果是“B*=压力较大”,这与我们平常的推理结果是一致的。
(ii) 具有多个前件的单一规则
设A*、A、B*、B和C*、C分别是论域X、Y和Z上的模糊集合,已知A、B和C间的模糊关系为RM(X,Y,Z)。根据此模糊关系和论域X、Y上的模糊集合A*、B*,推出论域Z上新的模糊集合。即
大前提(规则): if x is A and y is B,then z is C 小前提(事实): x is A* and y is B*
后件(结论): z is C* 根据Mamdani模糊关系的定义,有
~(x,y,z)??~(x)??~(y)??~(y) 笛卡尔积 取小 (3.2.3) ?RBACM~
~~~~~~~~~~~~
~~~~~
~此时
~*(z)?V[?~*(x)??~*(y)]?[?~(x)??~(y)??~(z)]?CBACABx?Xy?Y~*(x)??~*(y)]?[?~(x)??~(y)]}??~(z)?V{[?ABACBx?Xy?Y~*(x)??~(y)]?V[?~*(x)??~(y)]}??~(z)?{V[?ABACBx?Xy?Y~(z)?(?A??B)??C**
其中?A?V[?A~*(x)??~(x)]是A?A隶属函数的最大值,表示A对A的适配度; A (3.2.4)
~~~~x?X~~*~*~?B?V[?B~*(x)??~(y)]是B?B隶属函数的最大值,表示B对B的匹配度; By?Y由于模糊规则的前件部分由连词“与”连接而成,因此称?A??B为模糊规则的激励强度或满足度,它表示规则的前件部分被满足的程度。图3.2.3给出了多个前件的单一规则的Mamdani模糊推理过程,其中推理结果C*的MF是模糊集合C的MF被激励强度?(???A??B) 截切后的结果。这个结论可以直接推广到具有多于两个前件的情况。 ~A1~~~A*~?A~B1~B*1~?B~C~C*0
x03
y0z 图3.2.3 多前提单规则的Mamdani模糊推理过程
对于两前件单规则(即若x是A和y是B,那么z是C)的模糊推理,当给定事实为精确量时(即x是x0,y是y0),Mamdani模糊推理过程见图3.2.4。 ~A1~?A~~~~B1~?B~C1~C*0x0x0y0y0z 图3.2.4 给定事实为精确量时Mamdani推理过程
例3.2.3 已知A*、A、B*、B和C*、C分别是给定论域X?{x1,x2}、Y?{y1,y2,y3}和Z?{z1,z2}上的模糊集合,若A?~~0.21~10.50.80.1~0.10.51?????且B?,则C?。现在知道A*?及x1x2y1y2y3x1x2z1z2~
~~
~~~~0.50.20~B*???,求模糊集合C*。
y1y2y3~~~(x,y,z)?A?B?C,故先求R~~(x,y)?A?B 解法一:由于RABCAB~~~~~~~?0.10.51?~~?1?~~~(x,y)?A?B?? RA?[0.10.51]????B?0.5??0.10.50.5?*~~(x,y)写成列向量的形式,并以R~~(x,y)表示,即 然后将RABAB~~~*T~~(x,y)??0.10.510.10.50.5? RAB于是可以求得:
~~~~*~~~~~(x,y,z)?A?B?C?R~~(x,y)?CRABCAB?0.1??0.1?0.5??0.2????1??0.2?????0.21???0.10.1????0.5??0.2?0.5??0.2???**~~~(x,y,z),令R~*~*(x,y)?A?B,有 由于C*?(A*?B*)?RABCAB0.1?0.5??1? 0.1??0.5?0.5??~~~~~~~?0.50.20?~*~*?0.8?~~*~*(x,y)?A?B????RA?0.50.20???0.10.10? B0.1????
4
*将RA~*~*(x,y)写成行向量,并以R~*~*(x,y)表示,即 BAB~~~*~*~*(x,y)??0.50.200.10.10? RAB于是可以求得C*
~~*~~*~*(x,y)?R~~~(x,y,z)C*?RAABCB?0.1?0.2??0.2?[0.50.200.10.10]??0.1??0.2?0.2?0.1?0.5?? 1??[0.20.2]0.1??0.5?0.5??~即 C*?~
~~
~~0.20.2? z1z2解法二:首先A*与A、B*与B的适配度,即
~?V(?Ax?X1?0.80.5?0.10.80.1?)?V(?)?0.8
x?Xx1x2x1x20.1?0.50.5?0.21?00.10.20??)?V(??)?0.2
y?Yyy1y2y3yy312~?V(?By?Y然后求激励强度?,即
~??~?0.8?0.2?0.2 ???AB最后用激励强度?去切割C的隶属函数,即可获得C*
~*(y)????~(y)?0.2???CC?~~?0.21?0.20.2 ?????z2?z1z2?z1(iii) 具有多个前件多条规则的模糊推理
设A*、A1、A2、B*、B1、B2和C*、C1、C2分别是论域X、Y和Z上的模糊集合, RM1(X,Y,Z)是A1、B1和C1间的模糊蕴含关系,RM2(X,Y,Z)是A2、B2和C2间的模糊蕴含关系。已知论域X、Y上的模糊集合A*、B*,推出论域Z上新的模糊集合C*。即
大前提1 (规则1): if x is A1 and y is B1,then z is C1 大前提2 (规则2): if x is A2 and y is B2,then z is C2 小前提 (事实): x is A* and y is B*
后件(结论): z is C*
对于多个前件多条规则的模糊推理问题,通常将多条规则处理为相应于每条模糊规则的模糊关
5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~