1、3.8 模糊逻辑与模糊推理 二值逻辑是当前计算机的逻辑基础。人的思维逻辑的秘密至今尚未解开。计算机要模拟人的智力,用二值逻辑显然是不行的。虽然现在还不能断言模糊逻辑就是人的思维逻辑,但近三十多年来的实践表明,模糊逻辑比二值逻辑更接近人的思维规律。尽管计算机本身目前还是以二值逻辑为基础,但用1这种计算机来计算和处理信息时,却可以采用非二值逻辑,例如模糊逻辑,这样做就使计算机的应用领域可以扩展到知识工程的领域。3.8.1 模糊逻辑1. 命题与逻辑符号定义 3.8.1 一个有意义(具有真假可言)的陈述句称为命题。2 如: (1) 该书是中文写的。 (2) 4 加 2 等于 6。 (3) 他很年轻。
2、(4) 今天气温较高。3定义 3.8.2 若陈述句的意义明确,可以分辨真假,这种命题就称为二值命题(简称命题); 若陈述句的意义是模糊概念,不能用简单的真假分辨,则这种命题就称为模糊命题。 如上述 (1)、(2) 句是二值命题; (3)、(4) 句是模糊命题。4定义 3.8.3 对于二值命题,可以用一些连接词如“或”、“与”、“非”、“如果,那么”(“若,则”)等连接起来。 (1) “或” (or):用符号 “” 表示,与集合中的并 “” 相对应,又称 “析取”,即两个命题至少有一个成立。5 (2) “与” (and):用符号 “” 表示,与集合中的交 “” 相对应,又称 “合取”,即两个命题
3、必须同时成立。 (3) “非” (not):在原命题上加 “” 横线,或在命题前加 “ ” 符号,也称“否定”,它与集合中的补集相对应。6设有如下两个命题: P:他爱好英语, Q:他爱好日语。则有 PQ:表示他爱好英语或爱好日语, PQ:表示他爱好英语和日语, 或 P:表示他不爱好英语。7 (4) “如果,那么” ( if.than ):用符号“”(或“”)表示,是推断的意思,与集合中的包含“” 相对应,又称蕴含。 例如,如果ABC是等边三角形( S ),那么ABC是等腰三角形( T ),用符号写就是:S T 或 S T。 (5) “当且仅当”:用符号“”(或“”)表示,它表示两个命题等价。8
4、定义3.8.4 一个命题的真与假,叫做它的真值。常用“1” 表示真,用 “0” 表示假。两个命题构成一个复合命题时,它的真值表如表 3.14 所示。命PQPQPQPPQPQ真真(1)真(1)假(0)假(0)真(1)假(0)真(1)假(0)真(1)真(1)真(1)假(0)真(1)假(0)假(0)假(0)假(0)假(0)真(1)真(1)真(1)假(0)真(1)真(1)真(1)假(0)假(0)真(1)表 3.14 复合命题的真值表92. 模糊命题的真值 模糊命题的取值不是单纯的用来表示命题的真和假,而是用来表示命题的真和假的程度。仿照经典集合向模糊集合推广的情形,我们也可以将二值命题的取值范围由 0
5、,1 推广到 0, 1 区间上取连续值,从而得到模糊命题的真值。10定义 3.8.5 模糊命题 P 的真值记作T ( P ) = x, 0 x 1。 显然,当 x1 时表示 P 完全真; x0 时表示 P 完全假。 x 介于 0,1 之间时,表示 P 真假的程度。 x 越接近于 1,表明真的程度越大; x 越接近于0,表明真的程度越小,即假的程度越大。11定义 3.8.6 复合模糊逻辑命题仍用连接词 、(或),其意义分别是: 表示取大值、 表示取小值, ( 或)表示取补值(即取值 1x,x 是 P 的真值)。 例如,若有T(P) = x0.8, T(Q) = y0.6,则复合模糊逻辑命题的真值
6、表如表 3.15 所示12 由表可知,二值命题的复合运算是模糊命题的复合运算的特例。 模糊命题的 “”(或 “”)运算,就是模糊推理,将在以后讨论。模糊命PQPQPQP真 T0.80.60.80.60.2表 3.15 复合模糊逻辑命题的真值表13(9) 归约律:由二值逻辑的真值表可以证明: “” 及“” 两种逻辑运算是非独立的,即存在下述等式:P Q = QP Q = ( Q) (P )所以在二值逻辑中,独立的逻辑连接词只有三个:“ ”、“”、“”。143. 格、布尔代数与 De-Morgan 代数定义3.8.7 (格的定义)一个集合 L,若在其中定义了 “” 与 “” 两种运算,且具有下述性
7、质:(1) 幂等律:若 L,则有 , ;(2) 交换律:若 , L,则有 , ;15(3) 结合律:若 , L,则有( ) ( ),( ) ( );(4) 吸收律:若 , L,并有( ) = , ( ) = ,则称 L 是一个格,并记为 L( L,)。16若格 L 还满足:(5) 分配律:( ) ( ) ( ),( ) = ( ) ( ),则称 L 是一个分配格。17若在 L 中还有:(6) 两极律:在 L 中存在两个元素,记为 0 和 1,满足 L,有 11, 1 ,a 0 , 00。则称 L 有最小元 0 和最大元 1 。18 在有最小元 0 和最大元 1 的分配格 L 中进一步规定一种一
8、元运算 “ c ”(称为补运算),且满足(7) 复原律:若 L,则有 ( c ) c= ;(8) 互补律: c1, c 0。定义 3.8.8 (布尔代数定义) 满足 (1) (8) 的 L( L,c ) 称为一个布尔代数。19例如 (0, 1,c) 是一个布尔代数,其中运算: max ( , ), min ( , ), c =1- 。定义 3.8.9 (De - Morgan 代数的定义)若除上述 (1) (7) 性质外,还满足 De Morgan 律 ( (10) 对偶律 )( )c = c c ,( )c = c c, 则称代数系统 ( L,c ) 为 De-Morgan 代数。20 De
9、 - Morgan 代数与布尔代数的显著区别在于前者不满足互补律,即在 De-Morgan 代数中,一般有 c 1, c 0 。 正因为这一点,它才成为研究模糊逻辑运算的有力工具。21 例如 ( 0, 1, ,c ) 是一个 De Morgan 代数,而不是一个布尔代数,因为互补律不成立。如取 0.80, 1,则有0.8 (0.8)c = 0.8 0.2 = 0.8 1,0.8 (0.8)c = 0.8 0.2 = 0.2 0。22(9) 归约律:由二值逻辑的真值表可以证明: “” 及“” 两种逻辑运算是非独立的,即存在下述等式:P Q = QP Q = ( Q) (P )所以在二值逻辑中,独
10、立的逻辑连接词只有三个:“ ”、“”、“”。234. 模糊逻辑函数定义3.8.10 若一个逻辑命题的取值是可以变化的,则称这样的逻辑命题为逻辑变量 x。 二值逻辑变量的取值是0, 1,而模糊逻辑变量的取值为 0, 1。24定义3.8.11 由逻辑变量 x 及逻辑运算 、 和括号所形成的函数 F 称为逻辑函数 (又称逻辑公式)。 若变量 x 的取值及逻辑运算是二值的,则称 F 是二值逻辑函数 (逻辑公式); 若变量 x 的取值及逻辑运算是模糊的,则称 F 是模糊逻辑函数 (模糊逻辑公式)。25例如等都是逻辑函数(逻辑公式)。 有时为了书写方便,常将符号 “ ”、 “” 及 “c”用简便符号 “”
11、、“” 及 “” 分别取代,“” 有时不写。这样简化后,上述逻辑函数就可简化成:265. 模糊逻辑转化成多值逻辑 如果我们把模糊逻辑变量 x、y、z 看作是 X、Y、Z 的隶属函数在某一点 x0 的值,即x = X (x0), y = Y (x0), z = Z (x0)则模糊逻辑变量的运算便代表了模糊集合的运算。27 为了讨论问题方便,常将区间 0, 1 分成若干相等部分,使得隶属函数只能在子区间边缘上取值。例如分成五个相等部分,则隶属函数只能在集合M = 0,0.2,0.4,0.6,0.8,1 中取值,这样模糊逻辑便转化成多值逻辑。在上例中,逻辑值共有 6 个。28例如 的真值表列于表 3
12、.16 y(Y)x(X)00.20.40.60.8100.20.40.60.8100.20.40.60.8100.20.40.60.80.800.20.40.60.60.600.20.40.40.40.400.20.20.20.20.2000000296. 模糊逻辑函数的范式定义 3.8.12(析取范式)若 xij 是逻辑变量,则下列逻辑函数称为析取范式(逻辑并标准型):定义 3.8.13(合取范式)若 xij 是逻辑变量,则下列逻辑函数称为合取范式(逻辑交标准型):30式中, 表示连加,即; 表示连乘,即 。所以析取标准型为 “ 积之和 ” 型,而合取标准型为 “ 和之积 ” 型。 一般,对
13、于一个给定的模糊逻辑函数式,总可以通过等价变换使其成为析取范式或合取范式,或是析取范式和合取范式的组合。 为了把模糊逻辑函数式化成标准型,我们要利用以下两个定理,因证明要占很大篇幅,故略去。31定理 3.8.1 公式 F 在模糊逻辑中为真,当且仅当该公式在二值逻辑中为真。(定义:当模糊逻辑公式 F 的取值大于等于 1/2 时,称 F 为真。)定理 3.8.2 公式 F 在模糊逻辑中可化成标准型,当且仅当 F 在二值逻辑中可化成标准型。32 以下举例说明模糊逻辑函数化成标准型的方法。例 3.8.1 设 x、y、z 均为模糊逻辑变量,它们分别为某些命题的真值,试求模糊逻辑函数F ( x,y,z )
14、 =( x y ) z ( x z) y 的析取范式和合取范式。 先求析取范式。为此先确定逻辑变量 x、y、z 分别为 0 和 1 时的模糊逻辑函数值(相当于二值33逻辑的情况),结果如表 3.17 所示xyzF (x,y,z)0101010100110011000011110001011134 1. 用逻辑函数 F (x, y, z) 取值为 1 时所对应取 1 的逻辑变量求交作为析取范式的一项。例如表中第四行, F (x, y, z) =1,对应 x =1,y =1,故 xy 即为析取范式的一项。最后对析取范式的每一项求并,再根据吸收律化简,即可求得析取范式为 F (x,y,z) = (x
15、 y) (x z) (y z) (x y z) = (x y) (x z) (y z) 。352. 求合取范式的步骤与上式类同,只不过按 F (x, y, z)0 时取值为 0 的逻辑变量求并作为合取范式的一项,然后对各项求交后再化简,所得合取范式如下: F (x,y,z) = (x y z) (y z) (x z) (x y) (y z) (x z) (x y) 。 由以上求得的析取范式与合取范式不难看出,对于同一模糊逻辑函数,两种范式之间是对偶的。36 3. 如果逻辑函数式中的逻辑变量有 的形式,则通过真值表示范式时,选取每一子项应遍历所有变量。例如求析取范式时,根据 F (x, y, z
16、)1 的那一行,应取 1 的变量和取 0 的变量的补。在上例表中第四行,当 F (x, y, z)1 时,x =1,y =1,z = 0,故应选 为析取范式的一项。37 当然,例 3.8.1 中选取每一子项时,也可遍历所有变量,化简后其结果是相同的。 关于化简模糊逻辑函数的问题(极小化问题),限于篇幅在此不作进一步讨论。383.8.2 模糊语言 语言是人们进行思维和信息交流的工具。语言分为自然语言与形式语言两种。 自然语言是一些词(或字)连接成的句子,一般带有模糊性。 形式语言是一些符号按一定规则连接成的符号串,它代表机器的某些单元的状态或操作,一般具有确定性。39 随着科学技术的发展,人们不
17、但希望用机器代替人的体力劳动,更希望机器能具有人的智力,模拟人脑的思维推理,使人们从复杂艰难的脑力劳动中解放出来。这样就自然提出了下述两个任务:40 (1) 用以二值逻辑为基础的形式语言来处理模糊的自然语言; (2) 创造某种以模糊逻辑为基础的形式语言来处理模糊性的自然语言。这方面的研究,构成模糊数学的一个分支,现在还很不成熟,但已在人工智能、模糊控制等方面获得了广泛应用。411. 模糊语言变量 带有模糊性的语言称为模糊语言,如: “ 他很年轻 ”、 “ 小张起得很早 ”、 “ 老李是高个子 ” 等等。 模糊语言的核心是模糊集合,如上述语言中的 42 “ 很年轻 ”、 “ 很早 ”、 “ 高个
18、子 ” 等就分别是论域为 “ 年龄 ”、“ 时间 ”、“ 身高 ” 上的模糊集。模糊语言还有一定的语法和语义。43 语言变量是以自然或人工语言中的字或句作为变量,而不是以数值作为变量。语言变量用以表征那些十分复杂或定义很不完善,又无法用通常的精确术语进行描述的现象。模糊语言变量比起模糊变量来是一个级别更高的变量,它是将模糊语言形式化的重要工具。44L.A.查德 (Zadeh) 定义模糊语言变量为如下的五元组:( X,T ( X ),U,G,M ) (3.8.3)其中 X 是语言变量的名称, U 是 X 的论域, T ( X ) 是语言变量值的集合,每个语言变量值是定义在论域 U 上的模糊集合,
19、 G 是语法规则,用以产生语言变量 X 值的名称, M 是语义规则,用以产生模糊集合的隶属度函数。45例 3.8.2 以速度为模糊语言变量 X ,论域 U 取 0, 200 (km / h),速度的语言值集合 T ( X ) 为 慢,适中,快 ,其中 “ 慢 ”、“ 适中 ”、“ 快 ” 为模糊集合。模糊集合的隶属度用模糊语义规则 M 来决定,具体如图 3.53 所示。把速度分成若干语言值的规则,就是语法规则 G。在本例中我们把速度分成三个语言值,即 “ 慢 ”、“ 适中 ”、“ 快 ”。4610.5慢适中快6080100速度( km / h )图 3.53 模糊语言变量 “速度” 的隶属度函
20、数47图 3.54 是速度这个模糊语言变量五元组的示意图速 度适中快慢6070809010010.5010.5010.5000.5km/h语言变量 X语法规则 G语言值 T (X)语义规则 M论域 U图3.54 模糊语言变量速度的五元组482. 模糊语言算子 自然语言中有一些通过改变语气而改变语义的词,如加强肯定语气的词 “ 很 ”、“ 非常 ”、“ 极 ”等;也有一些使词义变为模糊的词,如 “ 大概 ”、“ 近似于 ” 等;还有些使词义由模糊变为肯定的词,如 “ 偏向 ”、“ 倾向于 ” 等。这些词在模糊推理中都可作为语言算子来考虑,相应地分为三种算子。491)语气算子 H: (HA)(x)
21、 语气算子的数学描述是 加强语气的词称为集中算子,此时 n 1, 减弱语气的词称为散漫化算子,此时 n 1。50例 3.8.3 描述 “ 青年人 ” 的集合为其中 A = “ 青年人”。由上式算得 28 岁和 30 岁的人对于“ 青年人” 的隶属度为A(28) = 0.74, A(30) = 0.5。51现在我们加上集中算子 “ 很 ”,取 n = 2,则分别算出 28 岁和 30 岁对 “ 很年轻 ” 的隶属度为 很年轻(28) = 0.54, 很年轻(30) = 0.25。52若加上散漫化算子 “ 较 ”,取 n = 0.5,则分别求出 28 岁和 30 岁对 “ 较年轻 ” 的隶属度为
22、较年轻(28) = 0.88, 较年轻(30) = 0.71。532)模糊化算子 F:(FA)(x) 这些算子的作用,是使肯定词转化为模糊的词,如 “大概 ”、“ 近似 ”、“ 可能 ”等等。用隶属度函数图形来表示这类算子的作用,如图 3.55 所示10 1 2 3 4 5 6x (x)FA (4)A (4)数 4 是一个肯定词,用 A(4)(竖线)来表示,而“大约4”则是一个模糊数,记为 4,它是 A(4) 加上模糊化算子F后形成的,记作 FA (4)。543)判定化算子 P:(PA)(x) 判定化算子把模糊量转化成精确量,其意义是“ 倾向于 ”、“ 接近 ”、“ 属于 ”。判定化算子的数学
23、描述为(PA)(x) =PA(x)其中 P() 是定义在 0, 1 区间上的实函数,表示为55若取 1/2,则56 例如,用上例 “ 青年人” 的定义,则 “ 倾向年轻 ”就可采用上述判定化算子 P1/2 ( A ) (由于A(30)1/2)倾向年轻 ( A ) = P1/2 ( A ) =57即不到 30 岁者为倾向年轻,其结果如图 3.56 所示。 除了上面介绍的三种算子外,还有美化、比喻、联想等算子。因为研究不成熟,此处从略。0.5030 (x)年轻倾向年轻x583.8.3 模糊推理1. 判断与推理 人们的思维就是利用概念来进行判断和推理。判断是概念与概念的关联,而推理则是判断与判断的联
24、合。如果概念是模糊的,则判断和推理就是模糊的。 若用符号及其运算来表示思维的过程,就称为思维的形式化。我们的目的,就是要寻求符合思维实际情况的思维形式化的规律与方法。591)判断句 句型为 “ x 是 A ” 的陈述句称为判断句,其中 A 是表示概念的一个词或词组,x 称为语言变量,它可以表示论域 X 中任何一个特定对象。 通常概念 A 对应论域 X 上的一个集合。如果 A 的外延是清晰的,则 A 所对应的集合是普通集合;若 A 的外延是模糊的,则 A 对应的集合是模糊集合。 我们将判断句 “ x 是 A ” 简记作 ( A )。60普通判断句及其集合表示: 在判断句 ( A ) 中,若词 A
25、 所表示的概念是确切的,则称 ( A ) 为普通判断句。 例如,判断句 “ x 是大学生 ” 就是普通判断句。 若取 x = “ 张三”,则得到 “张三是大学生” 这样一句话。当然,这句话可能是真的,也可能是假的。61 一般地,一个普通判断句对应一个普通集合 A:A = x( A ) 对 x 真 X,这里 “( A ) 对 x 真” 指的是对此特定的 x ,命题 “ x 是 A ” 为真。我们称 A 为判断句 ( A ) 的集合表示或称为真域。 若 A = X,则称判断句 ( A ) 永真或定理,即对任意 x X,“ x 是 A ” 为真。62 在二值逻辑中,如果 x A,则称 ( A ) 的
26、判断为真, A 就是 ( A ) 的真值域;如果 x A ,称 ( A ) 为假。如图 3.57 所示图中阴影部分表示 ( A ) 为真,是判定 ( A ) 的真值域。显然有x A ( A ) 为真。 (3.8.4)(A)假(A)真XA63又例如 “ x 是菱形 ”, “ x 是人” 等都是普通判断句。64模糊判断句及其集合表示: 在判断句 ( A ) 中,若词 A 所表示的概念是模糊的,则称 ( A ) 为模糊判断句。 例如,判断句 “ x 是老人 ” 就是模糊判断句。 若取定 x = “ 张三”,则得到 “张三是老人” 这样一句话。这时,由于 “老人” 概念的模糊性,我们65无法判断 “张
27、三是老人” 这句话是绝对真还是绝对假。但是我们可以根据张三的具体情况,取其真值为 0,1 区间中的数,例如为 0.7。记为 T( A)(张三) = 0.7,称为 ( A ) 对张三的真值。 一般地,我们将 x 对模糊概念 A 的隶属度定义为模糊判断句 ( A ) 的真值,以此来表示( A ) 的真假66程度。如果模糊概念 A 所对应的模糊集的隶属函数为 A(x),则令T ( A )(x) ) = A(x) ,称 A 为模糊判断句 ( A ) 的集合表示或称为真域。 注:在模糊逻辑中,“ x 是 A ” 的判断没有绝对的真假。 又如 “ x 是晴天 ”,“ x 很暖和 ” 等都是模糊判断句。67
28、判断句的逻辑演算: ( 或 ) , ( 且 ) , ( 非 )。 判断句通过逻辑演算可以得到新的判断句。 例如,设( A ): “ x 是 A ” ( B ): “ x 是 B ”则这两个判断句通过逻辑演算得到的新的判断句为:68( A )( B ): “ x 是 A ” 或 “ x 是 B ”,( A )( B ): “ x 是 A ” 且 “ x 是 B ”, ( A ): “ x 不是 A ”。如果 (A)和(B) 的真域为 A和B,则新判断句的真域为:( A )( B )的真域为 AB,( A )( B )的真域为 AB, ( A )的真域为 Ac。69 一般地,判断句的逻辑演算 (
29、,) 与它们真域的集合运算 (,c ) 是一致的。702)推理句 句型为 “ 若 x 是 A,则 x 是 B ” 的判断句,称为推理句,简记作 “ ( A ) ( B ) ”。 若 (A)、(B) 对应的真域为普通集合,则称为普通推理句, 若 (A)、(B) 对应的真域为模糊集合,则称为模糊推理句。71例如“ 若 x 是菱形,则 x 是平行四边形 ”是普通推理句,因为“ 菱形 ”、“ 平行四边形 ” 这些概念对应的是普通集合;而 “ 若 x 是晴天,则 x 很暖和 ” 就是模糊推理句,因为 “ 晴天 ”、“ 暖和 ” 这些概念对应的是模糊集合。723)推理句的形式化 用符号及运算来表示推理句的
30、过程,称为推理句的形式化。当然这种形式化必须符合推理的真实含义。 我们在普通集合范围内来考虑 “ 若 x 是 A,则 x是 B ” 这一推理句。我们用前述定义的符号来代表有关的判断句,即 “ x 是 A ” 用 ( A ), “ x 是 B ” 用(B),73“ x 是 A,则 x 是 B ” 用 ( A ) ( B ) 来表示。 我们对论域中的所有 x 来考察上述推理句时,可以分成四种情况: ( A ) 是真同时 (B) 也是真,当然 ( A ) ( B ) 为真; ( A ) 是真但 ( B ) 是假,显然 ( A ) ( B )不成立,即为假。74 由于( A ) 为假时(即 x 不在
31、A 中),推理句中没有限制 “ x 是 B ” 或 “ x 不是 B ”,也就是说 ( B )为真或为假都可以,即此时 ( A ) ( B ) 都能成立(为真)。这样就有 ( A ) 是假, ( B ) 为真时, ( A ) ( B ) 为真; ( A ) 是假, ( B ) 为假时, ( A ) ( B ) 为真。75 举一例来说明上述推理,更易理解,例如有下列推理句:“ 如果今天下雨,我就在家中 ”显然有: “如果今天下雨,我就在家” 这是真的; “如果今天下雨,我不在家” 是假的; “如果今天不下雨,我也在家”,这也是可以的76(真的);“如果今天不下雨,我不在家”,这也是可以的(真的)
32、。这是因为 两种情况,推理句没有限制,即如果不下雨,我们可以在家,也可以不在家。根据上述分析,我们可以作出如表 3.18 所示的真值表77根据真值表,我们可以得出如下推理的形式化模型或将上式简写成 (A) (B)真假真真真假假真表 3.18 蕴涵式 ( A ) ( B ) 的真值表78这就是二值逻辑中归约律的情况。 若令 A B = C,则普通推理句 “( A ) ( B )” 等价于判断句 “ x 是 C ”,即“ (A) (B) ” 对 x 为真 xC x (3.8.7) 的真值域如图 3.58 所示。A-BAB79 为了便于将普通推理推广到模糊推理的情形,常把 (3.8.6) 式写成相应
33、真值的等式:80 若推理句是一个恒真的判断句(即对任意 xX,判断句 ( A ) ( B ) 都为真),则称它是一个定理。 显然有( A ) ( B ) 是定理 AB = A B (3.8.9) 例如 “ 若 x 是等边三角形,则 x 是等腰三角形 ” 是一个定理。81演绎推理的三段论法) 肯定前件的假言推理( MP) :( A ) ( B ) 是定理且( A ) 对 x 为真 ( B ) 对 x 为真。(3.8.10)而用集合描述有A B 且 x A x B。 (3.8.11) 82XBAx图 3.59 三段论集合图 3.59 为三段论集合描述的示意图。83) 否定后件的假言推理( MT )
34、 :( A ) ( B ) 是定理,( B ) 对 x 为假 ( A ) 对 x 假。用集合描述有A B, x B x A 。84 ) 复合原则: 若( A ) ( B ) 是定理,且 ( B ) ( C ) 是定理 ,则 ( A ) ( C ) 是定理。 用集合表示的复合原则为A B 且 B C A C (3.8.12)852. 模糊蕴涵关系(模糊推理句) 在推理句 ( A ) ( B ) 中,若 A、B 所表示的概念是模糊的,则上述推理句就成为模糊推理句。模糊推理句的真值可以根据普通推理句的真值公式来定义T1(AB)(x) = (1A(x) B(x) (3.8.13)T2(AB)(x) =
35、 (1A(x) ( A(x) B(x)86 例如 “ 若 x 是晴天,则 x 很暖和 ” 是模糊推理句,其真值的隶属函数曲线如图 3.60 所示,其中 A 表示 “ 晴天 ” 的隶属函数, B 表示 “ 暖和 ” 的隶属函数,则 A B 由图中上半部 V 型实线所描述,它给出了 “ 若晴则暖 ” 为真的程度的定量表示。8710.5ABX0(a)图 3.60 A B 模糊推理句的隶属函数(b)10.5X088 在较复杂的场合,句型为 “ 若 x 是 A ,则 y 是 B ” 的推理句,涉及两个不同的语言变量 x 与 y,它们可以分别属于两个不同的论域 X 与 Y,因而是一个二元谓词。记作 ( A
36、(x) (B(y) ,它的真域是 XY 的子集或模糊子集,也可以看作 X 到 Y 的关系或模糊关系。 在推理句 ( A(x) (B(y) 中,若 A,B 所表示的89概念都是确切的,则称为普通推理句;若 A,B 所表示的概念都是模糊的,则称为模糊推理句。 普通推理句 ( A(x) (B(y) 的集合表示 (真域) 为 RP ( X Y ):R = (AcY)(AB) = (AcY)(XB),其特征函数为:R(x, y) = (1A(x) (A(x) B(y) ) = (1A(x) B(y)。90ABXY91 模糊推理句 ( A(x) (B(y) 的集合表示 (真域) 为 RF ( XY ),其
37、中 A 是论域 X 上的模糊集,B 是论域 Y 上的模糊集, R 是从 X 到 Y 的一个模糊关系。92 许多人对 ( A(x) (B(y) 的运算规则 (即隶属度函数的运算方法 ) 进行了研究,提出了许多定义。这里将常见的模糊蕴涵关系的运算方法列举如下 (公式 ( 3.8.13) 也是其中的一种,被称为模糊蕴涵的布尔运算 ):(为书写方便起见,以下将模糊集符号中的波纹线 “ ” 全部省略。)931) 模糊蕴涵最小运算(Mamdani )2) 模糊蕴涵积运算 ( Larsen )3) 模糊蕴涵算术运算 ( Zadeh )944) 模糊蕴涵的最大最小运算 ( Zadeh )5) 模糊蕴涵的布尔运
38、算956) 模糊蕴涵的标准算法运算 (1)其中967) 模糊蕴涵的标准算法运算 (2)其中 在应用中,究竟选取哪一种运算方法为好,应视实际情况而定。973. 模糊推理 模糊推理又称近似推理(似然推理)。它是在模糊大前提的条件下,给定模糊小前提而推论出模糊结论的推理方法。 根据小前提的不同,又分为两类:98(1) 广义正向式模糊推理。其推理规则是大前提 x 是 A 则 y 是 B (即 (A(x) (B(y)小前提 x 是 A 结 论 y 是 B = A ( A B ) = A R (3.8.21)99(2) 广义逆向式模糊推理。其推理规则是大前提 x 是 A 则 y 是 B (即 (A(x)
39、(B(y)小前提 y 是 B 结 论 x 是 A = ( A B ) B = R B (3.8.22)100式中,( A(x) (B(y) 是蕴涵关系,即 X Y 上的模糊关系,其隶属函数可以选用上述七个公式 (3.8.14)(3.8.20) 中的任一式来运算(尽量与实际情况相符合),而运算符号 “ ” ,则表示模糊关系合成运算,通常可以采用如下四种不同的方法:1011) 最大 最小合成法(Zadeh, 1973)2) 最大 代数积合成法(Kaufman, 1975)3) 最大 有界积合成法(Mizumoto, 1981)1024) 最大 强制积合成法(Mizumoto, 1981)其中 在上
40、述各式中( R 是 AB 蕴涵关系),通常使用最多的是 1)、2) 两种合成运算方法,原因是这两种方法计算比较简单。103 模糊推理过程,可以看成是一个模糊变换器的工作过程。当输入一个模糊子集 A ,经过模糊变换器 R AB 时,输出为 A (AB),如图 3.61 所示R A BAB A (A B)输入输出图3.61 模糊变换器104例 3.8.4 若 A B 采用积运算式 (3.8.15),合成运算“ ” 采用最大 最小合成法,(3.8.23) 式,给定小前提分别是求广义正向式模糊推理及广义反向式模糊推理的结论105解:1)广义正向式模糊推理由 (3.8.21) 式可知采用最大 最小合成法
41、,可求得1062)广义逆向式模糊推理由 (3.8.22) 式可知采用最大 最小合成法,可求得107例 3.8.5 若工人调节炉温,有如下经验 “如果炉温低,则应施加高电压”。试问炉温较低时,应施加怎样的电压?解:这是一个典型的模糊推理问题,常应用在模糊控制中。设 x 和 y 分别表示模糊语言变量 “炉温” 和“电压”,并设 x 和 y 的论域为X = Y = 1,2,3,4,5 108设 A 表示炉温低的模糊集合,即有B 表示高电压的模糊集合,即有A 表示炉温较低的模糊集合,即有109这样,上述问题就转化成如下的模糊推理问题:“ 若 x 低则 y 高;若 x 较低,试确定 y 的大小?”其数学
42、表述为 “ 若 A 则 B(即 AB );若 A,试定B=? ” B = A R A ( A B ) 。假定蕴涵关系 R 利用 (3.8.17) 式,即可以利用下式来决定 Rm :110A(x) B(y)1- A(x)AB(x)111合成运算采用最大 最小合成法,即(3.8.23) 式,于是求得所得的结论是112可以看成是 “ 电压较高 ”,这一结论是与人们的思维相吻合的。 当然,此例也可以用不同的蕴涵关系式和不同的合成运算方法来求解。计算后可以发现,有的结论符合实际思维逻辑,有的则不符合。可见,关于模糊推理的理论问题的研究,现在还不成熟。1134. 复合模糊条件语句的模糊推理 在模糊推理中,
43、大前提可能不是单一的模糊条件语句,可能是若干条件语句,中间再用一些连接词,如 “ 否则 ” (else) “ 与 ” (and) 等连接起来。这类问题的模糊推理,称为复合模糊条件语句的模糊推理。分以下几种情况来讨论。1141)句子连接词 “and”模糊推理的规则是:大前提 x 是 A and y 是 B 则 z 是 C小前提 x 是 A and y 是 B 结 论 z 是 C115 大前提中的条件句 “x 是 A and y 是 B” 可以看成是直积空间 XY 上的模糊集,并记为 AB,“and” 表示两种隶属函数的取法:或者116 大前提代表的蕴涵关系记为 A B C,其具体运算方法可以选取
44、前述其中方法之一。例如若选 (3.8.14) 式便有或者选 (3.8.16) 式,则有117其余类推。 对于结论:z 是 C 可用如下的近似推理求出C( A B ) R (3.8.30)其中 R 为模糊蕴涵关系,可以用上面定义的任何118一种,“ ”是合成运算符,一般多用最大最小合成法((3.8.23) 式)或者最大代数积合成法((3.8.24)式)。2)句子连接词 “also” 如果大前提中有一系列的模糊条件规则,其间用连接词 “also” 连接,成为如下的格式:119大前提 R1:如果 x 是 A1 and y 是 B1 则 z 是 C1 also R2:如果 x 是 A2 and y 是
45、 B2 则 z 是 C2 also Rn:如果 x 是 An and y 是 Bn 则 z 是 Cn小前提 如果 x 是 A and y 是 B 结 论 z 是 C (3.8.31)120 上述大前提中各规则之间用 also 连接,由于各规则之间无次序要求,这就要求 “also” 运算具有交换性和结合性,求并与交运算均能满足这样的要求。Mizumoto 采用不同的模糊蕴涵运算方法和不同的“also” 运算相组合,进行了大量的比较研究,最后得出结论认为,模糊蕴涵运算采用 Rc 或 Rp,以及“also”采用求并运算可以得出较好的结果。从实用的观点121看,这样的组合选择对于实现运算也是简单的。
46、规则 Ri: “如果 x 是 Ai and y 是 Bi 则 z 是 Ci” 可以定义为 Ri (Ai and Bi ) Ci (3.8.32)122若选择 Ric 或 Rip 的运算式则有n 条规则通过 also 连接词连接起来,其总的模糊蕴涵关系可以通过求并运算得到,即123 由于选择了两种蕴涵运算 Ric 及 Rip,相应就有两种 R总: R总c, R总p ;最后求得的结论为124其中(A and B)(x, y) = A (x) B(y) 或者(A and B)(x, y) = A (x) B(y) “ ” 是合成运算符,与前述相同,采用最大最小合成法或最大代数积合成法1253)句子连
47、接词 “else” 或 “or”(1) 简单 else 条件句的模糊推理规则是大前提 x 是 A 则 y 是 B else z 是 C小前提 x 是 A 结 论 y 是 B=A R=A (AB) +(AC) (3.8.38)求解此类问题的关键是决定其相应的蕴涵关系 R,根据其逻辑意义,易知126求结论时 “ ” 运算与前相同,是合成运算。(2) 有时 else 条件语句还有多重的情况,如 “若 x 是 A1 则 y 是 B1,else(若 x 是 A2 则 y 是 B2,else(若 x 是 An 则 y 是 Bn) )。此时可以将这一句型改写127成:“若 x 是 A1则 y 是 B1 或者
48、若 x 是 A2 则 y 是 B2, 或者若 x 是 An 则 y 是Bn”,这就是 “or” 型连接词的句型了。 易知 A1, A2, , An 是论域 X 上的模糊集;B1, B2, , Bn 是论域 Y 上的模糊子集,则多重语句 “若 A1 则 B1 或者 A2 则 B2,或者若 An 则 Bn” 表示从 X 到 Y 的一个模糊关系 R总,即R总 = (A1B1) (A2B2) (AnBn) (3.8.41)128多重 else 语句的模糊推理规则是大前提 若 A1 则 B1 else(若 A2 则 B2 else(若 An 则 Bn)小前提 x 是 A 结 论 y 是 B=A R总=A
49、 (A1B1) (A2B2) (AnBn) (3.8.42)求结论时,蕴涵运算“”及合成运算“ ”的意义同前.1294)复杂的连接词 大前提中的语言代表着模糊关系,有时实际情况很复杂,可能在多重语句中,还同时使用了连接词“and”、 “else”、 “or” 和 “also”. 此时,求解问题的关键是正确地决定大前提的总的模糊蕴涵关系 R总(1) 例如,若大前提的语句为“若 x 是 A and y 是 B 则 z 是 C else z 是 D” ,则 R 为130其中 A 是 X 的模糊集,B 是 Y 上的模糊集,C 和 D是 Z 上的模糊集,R 则是 XY Z 上的模糊关系。这一问题的结论是:131(2) 又如大前提是多重的,即 R1: 若 x 是 A1 and y 是 B1 则 z 是 C1 else z 是 D1also R2: 若 x 是 A2 and y 是 B2 则 z 是 C2 else z 是 D2also Rn: 若 x 是 An and y 是 Bn 则 z 是 Cn else z 是 Dn则计算 R总 时要把各个 Ri 求并,即132其中结论仍是上式中“and”的意义仍为“求小”或“求积”,即或者133