基于MATLAB与fuzzyTECH的模糊与神经网络设计
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第1章 模糊入门

这是一个古老的希腊悖论:“一粒种子肯定不叫一堆,两粒也不是,三粒也不是……另一方面,所有的人都同意,一亿粒种子肯定叫一堆。那么,适当的界限在哪里?我们能不能说,123585粒种子不叫一堆而123586粒就构成一堆呢?”

这一古老的问题向“精确”求解问题提出了挑战。那么“模糊”是否可以给这一古老的问题划上圆满的句号呢?

1.1 模糊逻辑的发展

许多概念没有一个清晰的外延,比如我们不能在年龄上划线,线内是年轻人,而在线外就是老年人;另外,有些概念本身具有开放性,比如智慧,我们不可能列举出应满足的全部条件。因此,出现了“模糊”。模糊性是伴随着复杂性而出现的,比如判断一个人是否年轻,可能就会从年龄、外貌、心态等方面综合考察;模糊性也是起源于事物的发展变化性的,比如人是从年轻逐渐走向年老的,这一过程是渐变的,处于过渡阶段的事物的基本特征是不确定的,其类属是不清楚的。所以,总是存在不确定性,即模糊。

1.1.1 模糊逻辑的发展历程

有关模糊逻辑的第一次发表要追溯到1965年。美国加利福尼亚大学伯克利分校的系统理论专家L.A.Zadeh教授把经典集合与J.Lukasievicz的多值逻辑融为一体,创立了模糊逻辑理论。

模糊逻辑的首次应用发生在欧洲。1974年,英国伦敦Queen Mary学院的E.H.Mamdani教授使用模糊逻辑控制不能使用传统技术控制的蒸汽机,从而开创了模糊控制的历史。

之后,德国亚琛工业大学的Hans-Jürgen Zimmermann将模糊逻辑用于决策支持系统。随后,模糊逻辑相继应用到其他工业领域,如多变量非线性热水场的控制和水泥窑的控制等,但此时模糊逻辑在工业上仍未得到广泛肯定。而为数不多的使用模糊逻辑的应用也通过使用多值逻辑或连续逻辑限制模糊逻辑,从而掩盖了模糊逻辑的思维模式。

在欧洲,从1980年左右开始,模糊逻辑在决策支持和数据分析应用方面获得强劲势头。

1.1.2 模糊逻辑在日本的发展

受到最初欧洲模糊逻辑应用的启发,1980年后,日本公司开始在控制工程领域使用模糊逻辑。由于初期模糊逻辑算法在标准硬件上计算性能较差,因此大多数应用需要使用专用的模糊逻辑硬件。

1983年Fuji Electric的水处理厂和1987年公开的日立公司开发的地铁系统应用了模糊逻辑。最初的应用在日本引起了极大的反响。当然,模糊逻辑在日本受到广泛认可源于多种因素。第一,由于模糊逻辑支持快速模型构建及增量式最优化,因此日本的工程师可以使用简单的模型解决问题,并可便捷地对系统进行优化;第二,因为日本通常以团队开发系统,每一个人都期望理解系统潜在的行为,而模糊逻辑系统采用自然语言表述,系统的智能没有被微分方程式或源代码掩盖,所以模糊逻辑陈述的系统设计更透明;第三,由于文化的影响,日本的工程师对布尔逻辑存有保留意见。

IFSA(International Fuzzy Systems Association)日本分会于1985年建立,用于支持模糊研究。在此期间,还建立起数个新的工业支持体系:

◆ SOFT(Japan Society for Fuzzy Theory and Systems):日本模糊理论与模糊系统学会

◆ BMFSA(Biomedical Fuzzy Systems Association):生物医学模糊系统协会

◆ LIFE(Laboratory for International Fuzzy Engineering Research):国际模糊工程研究实验室

◆ FLSI(Fuzzy Logic System Institute Iizuka):Iizuka模糊逻辑学会

◆ Center for Promotion of Fuzzy Logic at TITech:TITech模糊逻辑推广中心

模糊逻辑应用范围逐渐扩展到在智能控制及数据处理的每个应用领域。在照相机和摄影机中,引入了摄影师的经验和知识;三菱宣布生产了世界第一辆每一个控制系统都基于模糊逻辑的汽车,同时其他多数日本汽车制造商至少在一些组件上使用模糊逻辑;在工厂自动化方面,欧姆龙公司申请了350个专利,同时模糊逻辑控制也最优化了很多化学和生物处理过程。

1.1.3 模糊逻辑在欧洲的发展

在20世纪80年代后期,一流的欧洲企业意识到日本在模糊逻辑领域的发展迅速,因此他们开始在应用中推动模糊逻辑的发展。此后,200多个成功的模糊逻辑产品在欧洲市场大量涌现。同时,出现了很多使用模糊逻辑的工业自动化和过程控制的成功案例。

模糊逻辑的使用改善了产品的性能,如无须增加产品成本即可实现节能、节水的家用电器和汽车等。工业自动化应用包括化学和生物过程控制、机器设备控制和智能传感器。

由于模糊逻辑的应用带来了巨大的商业成功,它已被认为是标准的设计技术,并且已经在工程领域获得公认。表现之一是出现了支持所有模糊逻辑开发策略的先进模糊逻辑软件设计工具。一些模糊逻辑设计工具软件公司还与主要的半导体和工业自动化设备制造商合作,提供支持大多数目标硬件平台的无缝开发环境。

1.1.4 模糊逻辑在美国的发展

近年来,模糊逻辑已经吸引了很多美国人的注意。

无疑,美国企业获得了某些空白市场。例如,模糊逻辑已经证明是建立决策支持系统、存储器超高速缓存、硬盘控制器、语言和视频的压缩算法的优秀工具。还有一些电信企业在回波消除、网络路由、语言识别方面得益于模糊逻辑。另外,美国在神经网络技术领域具有强大的研究背景。所有模糊逻辑专家认为神经网络技术和模糊逻辑的巧妙结合是模糊技术进一步发展的趋势。

1.2 模糊逻辑的不确定类型

1.2.1 不确定的数学原理

在很多数学学科可以描述不确定性,如概率论、信息论、模糊集合论。通过处理的不确定形态可以很方便地对它们进行分类。这里着重叙述随机不确定性和词汇不确定性。

◆ 随机不确定性:在事物是否发生的不确定性中表现出来的不确定性,而事件本身的形态和类属是确定的。例如:击中目标的概率是0.8。在这一事件中,击中目标本身是确定的,而不确定性是目标是否被击中,这一不确定性被概率度量化为0.8

◆ 词汇不确定性:词汇不确定性源于人类语言中某些与生俱来的不严密性,而这些语言又是人们用于评估概念获取结论的。例如:高的人、热的天气、稳定的电流,它们没有准确的定义

人类评估定义并做出决策的科学过程可用心理语言学解释。已经证明人类是依据主观判断识别“个子高”、“个子矮”,“天气热”、“天气冷”,他们将现实世界也以他们满意的标准进行评判。虽然人类使用的大多数概念没有精确的定义,但是能够综合不同因素做出精确的评估和决策。经过抽象和推理,人类可以使用简短的语句来描述很难建立精确数学模型复杂语境,比如我们可能将有一个成功的财政年度。

“成功的财政年度”本身没有明确的定义。对于一些企业,成功的财政年度意味着他们延迟了破产,对于另一些企业可能就意味着超过去年的收益。因此,一个成功的财政年度的概念是一个主观逻辑。

1.2.2 语言不确定性模型

当使用主观逻辑时,语句虽没有量化内容,却可以评价一个复杂的系统。在现实生活中,有很多使用不确定性的例子。比如工会和企业间每年都会为增加工资进行谈判,他们都想要达到同样的目标:适当增加工资。当他们不得不用百分数表达时,问题出现,他们意思是“适当的”。

◆ 使用模糊逻辑模拟人的逻辑:我们不可能为每种情形定义规则,实际上,也只能对个别的情形定义准确的规则。即使这样,这些规则也只对可能情形的抽样描述,是对实际情形的近似。因此,对于一个特定的事件,人类将已定义的相似的规则与事件结合给出结论。当然,近似是源于定义中词的灵活性。同样,抽象和推理仅仅用于弥补人类逻辑的灵活性

数学模型用于在工程解决方案中实现人类思考问题的逻辑过程,其中模糊逻辑就是这样一个数学模型,它采用算法来体现人类的决策与评估过程。当然,什么样的过程可以使用模糊逻辑是有限制的,即模糊逻辑不能模仿全部的人类思考、幻想或创造的过程。然而,模糊逻辑可以对违背惯例的情形做出决策或评估。因此,对于某些特定的情形,如果能用特定的规则描述该技术系统的期望性能,模糊逻辑就能有效地把这些知识应用到解决方案中。

◆ 模糊逻辑与概率论:某些有实际经验的人,尤其是那些广泛使用概率论的人,否认模糊逻辑在应用中的有用性。他们宣称所有类型的不确定性都可以使用概率论表达。但事实确实如此吗?就下面的例子进行讨论

设想有一个重感冒的患者,到目前为止皮肤没有出现淡黄色,但伴随有恶心症状,这时能用贝叶斯算式计算肝炎感染的概率吗?其中,患肝炎的人占所有重感冒病例中60%,45%的人皮肤会呈淡黄色,30%的人有恶心症状。

尽管这个问题看起来很容易,但是当你不得不确认重感冒的患者患有肝炎感染时,问题就出来了。你可以通过查询医学书籍或询问医生得出答案,但也不能得到确切的答案,因为,即使大多数医生认为如果患者的体温达到102℉(39℃),则可判定患者患有重感冒,但这不意味着体温为101.9℉患者没有重感冒,而体温102℉的患者才得了重感冒。

如果判断重感冒的体温阈值存在,那么就意味着:精确的测量体温即可得到一个精确的诊断结果。如果真是这样,那么就可以将测量的体温值精确到小数点后5位数,然后要求医生依据精确的体温值确诊。但实际中,医生很难依据单一的参数诊断病情,更多时候是依据多个症状参数进行诊断。在绝大多数情形中,单个参数的精确度并不能影响诊断的正确性。如果医生问你昨晚是否出汗了,实际上,医生更关心是体温的趋势,而不是精确的体温值。

随机不确定性和语言不确定性本质不同。随机不确定性处理一个确定事件是否将发生,并且可以使用概率论建模。相比之下,词汇不确定性用于处理本身具有定义不确定性的事件,概率论不能用于为其建模,因为人类决策程序的主观逻辑不遵从这一公理。

1.3 模糊集合

医生在评估患者是否患有重感冒时,在脑子中没有精确的阈值,那么他们是如何下定论的呢?心理学研究已经表明:医生在做出结论时要与两个“原型”对照,一个“原型”为理性的重感冒患者:脸色苍白、出汗并伴有寒战;另一个“原型”为没有发热且没有发热征兆的理想患者。医生参照这两个极端确诊其属于这两个极端的程度。

1.3.1 由经典集合到模糊集合

如何对医生诊断过程建立数学模型?根据集合理论,首先定义一个包括所有重感冒患者的集合,然后定义一个数学函数,用于表明每一个患者是否属于这个集合。在传统数学中,这个指标函数可以唯一鉴定每一个患者是集合的成员或非成员,如图1-1所示。图中黑色区域为“患重感冒的患者”的集合,体温高于102℉的患者属于重感冒患者。

图1-1 经典集合表示重感冒患者集合(体温高于102℉的患者属于重感冒患者)

在经典集合中涉及如下概念。

✧ 论域:被讨论对象的全体,又称为全域,通常用大写字母UEXY等来表示

✧ 元素:组成某个集合的单个对象就称为该集合的一个元素,通常用小写 abxy等来表示

✧ 子集:由同一集合的部分元素组成的一个新集合,称为原集合的一个子集,通常用大写字母ABC等来表示

通常将集合分为有限集(含有有限多个元素)和无限集(含有无限多个元素)。有限集常用枚举法表示,如A={x1,x2,…,xn},表明集合 A含有 n个元素;如果对象个体x是属于A的一个元素时,就记为xA,读作x属于A;如果对象个体x不是集合A的元素时,就记为xA,读作x不属于 A。无限集常用描述法表示,如B={xx>2},表明所有大于2的数都属于集合B

经典集合还有一种表示方法,即特征函数(或隶属度函数)法,它用特征函数来确定一个集合。

设集合A是论域U的一个子集。所谓A的特征函数χA(x):∀xU,若xA,则规定χA(x)=1;否则χA(x)=0,即。任一特征函数都唯一确定了一个集合。也就是说,对于经典集合,论域 U中的任何一个元素x,对于某一确定的集合 A,要么xA,要么xA。特征函数示意图如图1-2所示。

图1-2 特征函数示意图

显然,如果想根据患者是重感冒患者还是非重感冒患者来定义一个 U上的经典集合,将存在一定的困难。对于某些不具有清晰的边界的集合,经典集合无法定义。

由于经典理论存在这样的局限性,而人们又希望使用集合的概念表述模糊的事物,这就需要新的理论弥补经典集合的局限性,因而引出了模糊集合理论。

1.3.2 模糊集合的基本概念

模糊集合论是一门用清晰的数学方法描述边界不清的事物的数学理论。1965年美国教授L.A.Zadeh将经典集合里的特征函数的取值范围由{0,1}扩展到闭区间[0,1],认为某一事物属于某个集合的特征函数不仅只有0或1,而是可以取0~1之间的任何数值,即一个事物属于某个集合的程度,可以是0~1之间的任何值。图1-3所示为用模糊集合表示的重感冒患者集合。图中使用颜色深浅来表示不同体温隶属于重感冒集合的程度。从图中可以看出:体温为94℉的患者肯定不是重感冒患者,而体温为110℉的患者一定是重感冒患者,而体温介于之间的患者仅在一定程度上趋向于重感冒,这样就引出了模糊集合的概念。

图1-3 用模糊集合表示的重感冒患者集合

定义1U是论域,U上的一个实值函数用μA(x)来表示,即μA(x):x→[0,1],则称集合A为论域U上的模糊集合或模糊子集;对于xAμA(x)称为xA的隶属度,而μA(x)称为隶属度函数。

这样,对于论域U的一个元素xU上的一个模糊子集A,我们不再是简单地问x绝对属于还是不属于 A,而是问x在多大程度上属于 A。隶属度μA(x)正是x属于 A的程度的数量指标。若:

μA(x)=1,则认为x完全属于A

μA(x)=0,则认为x完全不属于A

✧ 0<μA(x)<1,则认为xμA(x)程度上属于A

这时,在完全属于 A和不完全属于 A的元素之间,呈现出中间过渡状态,或者叫做连续变化状态,这就是我们所说的A的外延表现出不分明的变化层次,或者表现出模糊性。

此时,根据模糊的定义就可以在患者体温和重感冒之间做出如下分析:

μA(94℉)=0,μA(100℉)=0.1,μA(106℉)=0.9

μA(96℉)=0,μA(102℉)=0.35,μA(108℉)=1

μA(98℉)=0,μA(104℉)=0.65,μA(110℉)=1

为了清晰地判断患者的体温是否已达到重感冒的程度,或者患者的体温属于重感冒的程度,可以使用图1-4所示的隶属度函数表示。从图中可以看出,102℉的体温和101.9℉的体温被评估为重感冒的程度是不同的,但它们之间的差别特别小。这样的表示方法更接近人的思维习惯。

图1-4 属于重感冒的隶属度函数图

综上所述,我们可以得出这样的结论:模糊集是传统集合的推广;传统指标函数的μ=0和μ=1刚好是模糊集合的特例。

模糊集合A是一个抽象的东西,而函数μA(x)则是具体的,即重感冒患者的模糊集合很难把握,因此只能通过体温属于重感冒的隶属度函数来认识和掌握集合A

常用的模糊集合有以下3种表示方法。

(1)序偶表示法:A={(x,μA(x)),xU}。

(2)Zadeh表示法:当论域U为有限集,即U={x1,x2,…,xn}时,U上的模糊集合A可表示为A={μA(x1)/x1+μA(x2)/x2,…,μA(xn)/xn};当论域U为无限集时,记作A=∫xμA(x)/x

(3)隶属度函数解析式表示法:当论域 U上为实数集 R上的某区间时,直接给出模糊集合隶属度函数的解析式,是使用十分方便的一种表达形式。如Zadeh给出“年轻”的模糊集合Y,其隶属度函数为

Zadeh给出“年轻”的模糊集合Y的隶属度函数图如图1-5所示。

图1-5 Zadeh给出“年轻”的模糊集合Y的隶属度函数图

为了书写方便,模糊集合可写成F集(Fuzzy的首个大写字母);F集合 A的隶属度函数μA(x)简记为Ax)。

定义2AB均为U上的模糊集,如果对所有的x,即∀xU,均有μA(x)=μB(x),则称AB相等,记作A=B

定义3AB均为U上的模糊集,如果∀xU,均有μA(x)≤μB(x),则称B包含A,或者称AB的子集,记作AB

定义4AU中的模糊集,如果对∀xU,均有μA(x)=0,则称A为空集,记作Ø。

定义5:AU中的模糊集,如果对∀x∈U,均有μA(x)=1,则称A为全集,记作Ω。

显然,Ø≤A≤Ω。

对于同样的背景,我们可能有多个主观判断,如图1-6所示。其中,low曲线为“体温低于正常体温”隶属度函数图;normal曲线为“正常体温”隶属度函数图;raised曲线为“体温高于正常体温但低于重感冒患者体温”隶属度函数图;strong_fever曲线为“重感冒患者体温”的隶属度函数图。

图1-6 同样背景的不同主观判断隶属度函数图

定义6论域U上的模糊集A包含了U中所有在A上具有非零隶属度值的元素,即supp(A)={xUμA(x)>0},式中supp(A)表示模糊集合A的支集。模糊集的支集是经典集合。

定义7:如果一个模糊集的支集是空的,则称该模糊集为空模糊集。

定义8:如果模糊集合的支集仅包含U中的一个点,则称该模糊集为模糊单值。

定义9:论域U上的模糊集A包含了U中所有在A上隶属度值为1的元素,即Ker(A)={xUμA(x)=1},式中Ker(A)表示模糊集合A的核。模糊集的核也是经典集合。

定义10:如果模糊集的隶属度函数达到其最大值的所有点的均值是有限值,则将该均值定义为模糊集的中心;如果该均值为正(负)无穷大,则将该模糊集的中心定义为所有达到最大隶属度值的点中的最小(最大)点的值,如图1-7所示。

图1-7 一些典型模糊集的中心

义11:一个模糊集的交叉点就是U中隶属于A的隶属度值等于0.5的值。

定义12:模糊集的高度是指任意点所达到的最大隶属度值。图1-8所示的隶属度函数的高度均等于1。

图1-8 三角形、钟形及S形隶属度函数图

如果一个模糊集的高度等于1,则称为标准模糊集。

定义13:A是以实数R为论域的模糊集,其隶属度函数为μA(x),如果对任意实数axb,都有

μA(x)≥min(μA(a),μA(b)),a,b,x∈R

则称A是一个凸模糊集。

与凸模糊集相对的为非凸模糊集,凸模糊集与非凸模糊集的示意图如图1-9所示。

图1-9 凸模糊集与非凸模糊集示意图

1.3.3 隶属度函数

经典集合使用特征函数来描述,模糊集合使用隶属度函数作定量描述。因此,隶属度函数是模糊集合的核心。定义一个模糊集合就是定义论域中各个元素对该模糊集合的隶属度。

经典集合的特征函数的值域为集合{0,1},模糊集合的隶属度函数的值域为区间[0,1]。隶属度函数是特征函数的扩展和一般化。

从使用模糊集合表示的重感冒患者一例中可以看出,体温隶属于重感冒的程度需要人为确定,即模糊集合隶属度函数是人为主观定义的一种函数。从隶属度函数的确定过程看,隶属度函数本质上说应该是客观的,但每个人对于同一个模糊概念的认识理解又有差异。因此,隶属度函数的确定又带有主观性。所以,隶属度函数包含了太多的人的主观意志,从而很难使用统一的方法确定隶属度函数。

对于同一个模糊概念,不同的人会建立不完全相同的隶属度函数,尽管形式不完全相同,只要能反映同一模糊概念,在解决和处理实际模糊信息的问题中仍然殊途同归,这是因为隶属度函数是人们长期实践经验的总结,可以反映客观实际,还具有一定的客观性、科学性和准确性。至今为止,确定隶属度函数的方法大多依靠经验、实践和实验数据,经常使用的确定隶属度函数的方法有以下4种。

1)模糊统计法

模糊统计法的基本思想:对论域 U上的一个确定元素x1是否属于论域上的一个可变动的经典集合 B做出清晰的判断。对于不同的试验者,经典集合 B可以有不同的边界,但它们都对应于同一个模糊集A。在每次统计中,x1是固定的,B的值是可变的,作n次试验,其模糊统计可按下式进行计算:

随着 n的增大,隶属频率也会趋向稳定,这个稳定值就是x1A的隶属度值。这种方法较直观地反映了模糊概念中的隶属程度,但其计算量较大。

2)例证法

例证法的主要思想是从已知有限个μA(x)的值,来估计论域 U上的模糊子集 A的隶属度函数。如论域U代表全体人类,A是“高个子的人”,显然A是一个模糊子集。为了确定μA,先确定一个高度值h,然后选定几个语言真值(即一句话的真实程度)中的一个来回答某人是否算“高个子”。语言真值可分为“真的”、“大致真的”、“似真似假”、“大致假的”和“假的”五种情况,并且分别用数字1、0.75、0.5、0.25、0来表示这些语言真值。对 n个不同高度h1h2、…、hn都作同样的询问,就可以得到A的隶属度函数的离散表示。

3)专家经验法

专家经验法是根据专家的实际经验给出模糊信息的处理算式或相应权系数值来确定隶属度函数的一种方法。在许多情况下,首先确定粗略的隶属度函数,然后再通过“学习”和实践检验逐步修改和完善,而实际效果正是检验和调整隶属度函数的依据。

4)二元对比排序法

二元对比排序法是一种较实用的确定隶属度函数的方法。它通过对多个事物之间的两两对比来确定某种特征下的顺序,由此来决定这些事物对该特征的隶属度函数的大体形状。二元对比排序法根据对比测度不同,可分为相对比较法、对比平均法、优先关系定序法和相似优先对比法等。

在实际工作中,为了兼顾计算和处理的简便性,经常把使用不同方法得出的数据近似地表示成常用的解析函数形式,构成常用的隶属度函数。

(1)三角形:三角形隶属度曲线对应的数学表达式为

(2)钟形:钟形隶属度曲线对应的数学表达式为

式中,c决定函数的中心位置;ab决定函数的形状。

(3)高斯:高斯隶属度曲线对应的数学表达式为

式中,c决定函数的中心位置;σ决定函数曲线的宽度。

(4)梯形:梯形隶属度曲线对应的数学表达式为

式中abcd

(5)Sigmoid形:Sigmoid形隶属度曲线对应的数学表达式为

式中,ac决定函数的形状。

1.4 模糊集合的运算

和经典集合一样,模糊集合也包含“交”、“并”和“补”运算。比如选购衣服,到底选择哪件衣服呢?花色较好、样式不错、价格也合理的衣服应该是理想的选择,这就应用到了模糊集合的“交”运算;比如点菜,要荤素搭配,此时就需要进行模糊集合的“并”运算;比如租一处面积不大的房子,则可求取“面积大的房子”的集合的补集。可见,通过对模糊集合做运算,可得到更多衍生结论。

1.4.1 模糊集合的基本运算

定义14:设ABU中的两个模糊集。隶属度函数分别为μA(x)和μB(x),则模糊集AB的并集AB、交集AB和补集AC的运算可通过它们的隶属度函数来定义:

✧ 并集:μA∪B(x)=μA(x)∨μB(x),其中“∨”表示两者比较后取大值

✧ 交集:μA∩B(x)=μA(x)∧μB(x),其中“∧”表示两者比较后取小值

✧ 补集:μAC(x)=1-μA(x)

模糊集合的基本运算可用图1-10所示曲线加以说明。

图1-10 模糊集合的基本运算示意图

例1-1:设U={u1,u2,u3,u4,u5},若 A,BF(U),ABABACAACAAC。,

解:

需要注意的是,在经典集合中,集合A和它的补集AC的并集为全集,集合A和它的补集AC的交集为空集,但在模糊集合论中却没有这样的结论,这里用图示的方法加以理解,如图1-11所示。

图1-11 模糊集合A和它的补集AC的交集及并集

虽然模糊集合的基本运算与经典集合的基本运算有许多相似之处,但是经典运算是对论域中元素的归属做新的划分,而模糊集合的运算是对论域中的元素对于模糊集合的隶属度做新的调整。

定义15ABU中的两个模糊集,隶属度函数分别为μA(x)和μB(x),则模糊集AB的代数积(A·B)、代数和(A+B)、有界和(AB)、有界积(AB)可通过它们的隶属度函数定义如下

✧ 代数积:μB(x)=μA(xμB(x)

✧ 代数和:μA+B(x)=μA(x)+μB(x)-μA(xμB(x)

✧ 有界和:μA⊕B(x)=(μA(x)+μB(x))∧1=min(A(x)+B(x),1)

✧ 有界积:μA⊙B(x)=(μA(x)+μB(x))∨0=max(0,A(x)+B(x)-1)

式中,min为取最小值运算;max为取最大值运算。图1-12所示为模糊集合代数和、代数积、有界和、有界积的图示。

图1-12 模糊集合代数和、代数积、有界和、有界积的图示

1.4.2 模糊集合的基本运算规律

两个模糊集合的运算,实际上就是逐点对其隶属度作相应的运算。模糊集合A,B,CF(U)的并、交、补运算满足以下性质:

(1)幂等律:AA=AAA=A

(2)交换律:AB=BAAB=BA

(3)结合律:(AB)∪C=A∪(BC),(AB)∩C=A∩(BC)。

(4)吸收律:(AB)∪A=A,(AB)∩A=A

(5)分配律:A∩(BC)=(AB)∪(AC),A∪(BC)=(AB)∩(AC)。

(6)零一律:AU=UAU=AA∪Ø=AA∩Ø=Ø。

(7)复原律:(AC)C=A

(8)摩根律:(AB)C=ACBC;(AB)C=ACBC

模糊集合与经典集合的一个显著的不同之处:模糊集合的并、交、补运算一般不满足补余律,即AACUAAC≠Ø。

1.4.3 模糊集合与经典集合的联系

当医生诊断发热患者是否为重感冒患者时,就需要对“重感冒”这一模糊概念有明确的认识和判断;当判断某个发热患者对“重感冒”集合的明确归属时,这就要求模糊集合与经典集合可以依据某种法则相互转换。模糊集合与经典集合之间的联系可通过λ-截集和分解定理表示。

定义16:一个模糊集的λ-截集是指包含U中所有隶属于A的、隶属度值大于等于λ的元素,即Aλ={xUμA(x)≥λ}。λ-截集示意图如图1-13所示。

图1-13 λ-截集示意图

其中,图1-13(b)所示为λ1-截集的特征函数描述;图1-13(c)所示为λ2-截集的特征函数描述。从图可以看出,λ-截集是经典集合。对于λ-截集,我们可以这样理解:模糊集合 A本身是一个没有确定边界的集合,但是如果约定,凡xA的隶属度达到或超过某个λ水平者才算是A的成员,那么模糊集合A就变成了普通集合Aλ

λ=1时,得到最小水平截集A1,即模糊集 A的核;当λ=0+时,得到最大水平的截集,即模糊集A的支集。

若模糊集A的核非空,则称A为正规模糊集;否则,称A为非正规模糊集。

定义17:设A是普通集合,λ∈[0,1],做数量积运算,得到一个特殊的模糊集λA,其隶属度函数为

分解定理:设A为论域x上的模糊集合,AλA的截集,则

分解定理可用图1-14表示。

图1-14 分解定理图示

如果λ 遍取区间[0,1]中的实数,按照模糊集合求并运算的法则,Aλλ恰好取各λ 点隶属度函数的最大值,将这些点连成一条曲线,正是A的隶属度函数μA(x)。

例1-2:设,则

A是模糊集合,Aλ是经典集合,它们之间的联系和转化由分解定理用数学语言表达出来,这个定理也说明了模糊性的成因,大量甚至无限多的清晰事物叠加在一起,总体上就形成了模糊事物。

1.5 模糊关系与模糊关系的合成

事物都是普遍联系的,集合论中的“关系”抽象地刻划了事物“精确性”的联系,而模糊关系则从更深刻的意义上表现了事物间更广泛的联系。从某种意义上讲,模糊关系的抽象更接近与人的思维方式。

1.5.1 模糊关系的基本概念

元素间的联系不是简单的有或无,而是不同程度的隶属关系,因此这里引入模糊关系。

定义18给定集合XY,由全体(x,y)(xX,yY)组成的集合,叫做XY的笛卡儿积(或称直积),记做X×YX×Y={(x,y)(xX,yY)}。

例1-3:国际上常用的人的体重计算公式为标准体重=(身高(cm)-100)×0.9(kg),那么实际身高与实际体重之间就存在模糊关系。如果身高的集合X={150,155,160,165},体重的集合Y={45,49.5,54,58.5},则

定义19:存在集合XY,它们的笛卡儿积X×Y的一个子集R叫做XY的二元关系,简称关系,RX×Y。序偶(x,y)是笛卡儿积X×Y的元素,它是无约束的组对。若给组对以约束,便体现了一种特定的关系。受到约束的序偶则形成了X×Y的一个子集。

X=Y,则称RX中的关系

如果(x,y)∈R,则称XY有关系R,记作xRy

例1-4:身高集合X={150,155,160,165},体重集合Y={45,49.5,54,58.5},根据国际上常用的人的体重计算公式:标准体重=(身高(cm)-100)×0.9(kg),则对应身高“非标准”体重时,可采用模糊关系表示身高、体重与标准体重之间的关系,如表1-1所示。

表1-1 身高、体重与标准体重的模糊关系表

◆ 如果(x,y)∉R,则称XY没有关系,记作x-Ry,也可用特征函数表示为

◆ 当 XY都是有限集合时,关系可以用矩阵来表示,称关系矩阵。设X={x1,x2,…,xm},Y={y1,y2,…,yn},则 R可以表示为 R=[ri]j。其中

rij=μR(xi,yj);i=1,2,…,mj=1,2,…,n

例1-5:身高集合X={150,155,160,165},体重集合Y={45,49.5,54,58.5},根据国际上常用的人的体重计算公式:标准体重=(身高(cm)-100)×0.9(kg),则对应身高“非标准”体重时,可采用模糊矩阵表示身高、体重与标准体重之间的关系。

当矩阵中的元素等于1或等于0时,将这种矩阵称为布尔矩阵。

定义20:设有集合XY,如果有一对关系存在,对于任意xX,有唯一的一个yY与之对应,我们就说,其对应关系是一个由XY的映射f,记作

fXY

对任意xX经映射后变成yY,则记作Y=f(x),此时 X叫做 f的定义域,而集合f(x)={f(x)xX}称为f的值域,显然 f(x)Y

映射有时也叫做函数,但它是通常函数概念的推广。

定义21:fXY

◆ 如果对每一x,1 x2X, x1x2,则称f为单射(或称一一映射)

◆ 如果f的值域是整个Y,则称f为满射

◆ 如果f既是单射的,又是满射的,则称f为一一对应的映射

模糊关系是指笛卡儿积上的模糊集合,表示多个集合的元素间所具有的某种关系的程度。

定义22:所谓XY两集合的笛卡儿积X×Y={(x,y)(xX,yY)}中的一个模糊关系R,是指以X×Y为论域的一个模糊子集,序偶(x, )y的隶属度为μR(x,y)。μR(x,y)在实轴的闭区间取值,它的大小反映了(x, )y具有关系R的程度。

由于模糊关系是一种模糊集合,因此模糊集合的相等、包含等概念对模糊关系同样具有意义。

Xm个元素构成的有限论域,Yn个元素构成的有限论域。对于XY的一个模糊关系R,可以用一个m×n阶矩阵表示为

R=[ri]jrij=μR(xi,xj),i=1,2,…,mj=1,2,…,n

如果一个矩阵是模糊矩阵,它的每一个元素属于[0,1],则令

Fn={R=[rij]; 0≤rij≤1}

Fn表示m×n阶模糊矩阵的全体。

在有限论域间,普通集合与布尔矩阵建立了一一对应的关系,模糊关系和模糊矩阵建立了一一对应的关系。

由于模糊矩阵本身是表示一个模糊关系的子集 R,因此根据模糊集的并、交、补运算的定义,模糊矩阵也可看做相应的运算。

设模糊矩阵 RQX×Y的模糊关系,R=[rij]nQ=[qij]n,模糊集合的并、交、补运算为:

◆ 模糊矩阵并运算:RQ=[rijqij]n

◆ 模糊矩阵交运算:RQ=[rijqij]m×n

◆ 模糊矩阵补运算:RC=[1-rij]m×n

如果rijqij,i=1,2, …, m, j=1,2, …, n,则称R被模糊矩阵S包含,记为RS;如果rij=qij,i=1,2, …, m, j=1,2, …, n,则称R被模糊矩阵S相等。

必须指出,一般RRCFRRCO,即对模糊矩阵互补律不成立。其中,OF分别称为零矩阵及全矩阵,即

与模糊集的λ-截集相似,在模糊矩阵的矩阵截集定义为

Rλ=[λrij]m×nλ∈[0,1]

Rλ={(x,y)μR(x,y)≥λ}

例1-6:身高集合X={150,155,160,165},体重集合Y={45,49.5,54,58.5},根据国际上常用的人的体重计算公式:标准体重=(身高(cm)-100)×0.9(kg),则X×Y中的R

R0.75={(x,y)μR(x,y)≥0.75},即 R0.75={(x1,y1),(x1,y2),(x2,y1),(x2,y2),(x2,y3),(x3,y2), (x3,y3),(x3,y4),(x4,y3),(x4,y4)}。

如果用矩阵表示,则

1.5.2 模糊关系的合成

模糊关系合成是指由第一个集合和第二个集合之间的模糊关系及第二个集合和第三个集合之间的模糊关系得到第一个集合和第三个集合之间的模糊关系的一种运算。

模糊关系的合成的计算方法有取大—取小合成法、取大—乘积合成法、加法—相乘合成法。下面给出常用的取大—取小合成法的定义。

定义23:设RX×Y中的模糊关系,SY×Z中的模糊关系,RS的合成是下列定义在X×Z上的模糊关系Q,记作

Q=RoS

μR◦S(x,z)=∨{μR(x,y)∧μS(y,z)}

式中,∧代表取小,∨代表取大。因此,这一计算方法称为取大取小(max-min)合成法。

定义24:设Q=(qi)j n×mR=(rj)k m×l是两个模糊矩阵,它们的合成QR指的是一个nl列的模糊矩阵SS的第i行第k列的元素sik等于Q的第i行元素与第k列对应元素两两先取较小者,然后在所有的结果中取较大者,即

模糊矩阵QR的合成QR又称为QR的模糊乘积,或者称模糊矩阵的乘法。

例1-7:现对某一餐馆的品质进行评判,评判的指标包括饭菜口感、饭菜色相、环境舒适度、服务态度及卫生状况5个方面,用论域Y来表示,即

Y={饭菜口感,饭菜色相,环境舒适度,服务态度,卫生状况}

而评判论域用Z来表示,即

Z={很好,较好,可以,不好}

现邀请一些专家对这一餐馆给出评价,即得出Y×Z中的模糊关系S,表1-2列出了Y×Z中的模糊关系S

表1-2 Y×Z中的模糊关系S

上述表格使用模糊矩阵表示为

在对餐馆作综合评定时,各指标对综合评定结果的影响因子不同,对餐馆饭菜口感(0.5)和餐馆卫生状况(0.25)要求较高,其次为服务态度(0.1)和饭菜色相(0.1),对环境的舒适度要求较低(0.05),则得出影响因子集合 X与评判指标 Y之间的模糊关系 R,表1-3列出了X×Y中的模糊关系R

表1-3 X×Y中的模糊关系R

上述表格使用模糊矩阵表示为R=[0.5 0.1 0.05 0.1 0.25]。

现要求在不同权重因子下,做出餐馆综合品质结论。

此时就要求做模糊关系的合成,即餐馆的综合品质Q

根据取大—取小的原则

q1=(0.5∧0.8)∨(0.1∧0.7)∨(0.05∧0.5)∨(0.1∧0.4)∨(0.25∧0)=0.5

q2=(0.5∧0.15)∨(0.1∧0.2)∨(0.05∧0.3)∨(0.1∧0.25)∨(0.25∧0.2)=0.2

q3=(0.5∧0.05)∨(0.1∧0.1)∨(0.05∧0.15)∨(0.1∧0.2)∨(0.25∧0.3)=0.25

q4=(0.5∧0)∨(0.1∧0)∨(0.05∧0.05)∨(0.1∧0.15)∨(0.25∧0.5)=0.25

Q=RS=0.5 0.2 0.25 0.25。

根据计算结果可知,该餐馆综合品质为很好。

根据模糊关系合成的计算方式可知,模糊关系合成不满足交换律。对于例1-7中, RS有意义,而SR没有意义。

RST)及U分别为X×YY×ZZ×W中的模糊关系,则有以下5个基本性质。

(1)结合律:如果ST,则有RSRTSUTU

(2)并运算上的弱分配律:R◦(ST)⊆(RS)∪(ST)或(ST)◦U⊆(SU)∪(TU)。

(3)交运算上的弱分配律:R◦(ST)⊆(RS)∩(ST)或(ST)◦U⊆(SU)∩(TU)。

(4)OR=ROIR=RI=RO为零矩阵,I为单位矩阵)。

(5)若R1R2S1S2,则R1S1R2S2

1.5.3 模糊关系的性质

定义25:RX中的模糊关系。若对∀xX,都有μR(x,x)=1,则称R为具有自反性的模糊关系。

对应于自反关系的模糊矩阵的对角元素为1。

定义26:RU(X×X),RTR的转置。即RTU(X×X),并且满足μTR(y,x)∈μR(y,x),其中(x,y)∈Y×X

关系的转置有以下性质:

◆ (RT)T=R

◆ (RQ)T=RTQT或(RQ)T=RTQT

◆ (RQ)T=QTRT或(Rn)T=(QT)n

◆ (RT)λ=(Rλ)T

定义27:RU(X×X),若RT=R,则称R为对称的模糊关系。在有限论域中时,称为对称模糊矩阵。

例1-8:设身高集合X={150,155,160,165},体重集合Y={45,49.5,54,58.5},根据国际上常用的人的体重计算公式:标准体重 =(身高(cm)-100)×0.9(kg),则对应身高“非标准”体重时,可采用模糊矩阵表示身高、体重与标准体重之间的关系。

由于μR(1,1)=μR(2,2)=μR(3,3)=μR(4,4)=1,则 R为具有自反性的模糊关系;由于RT=R,则R为具有对称性的模糊关系,即R是自反的对称模糊矩阵。

定义28:RU(X×X),即RX中的模糊关系。若R满足RRR,则称R为传递的模糊关系。

从定义可见,传递性关系包含着它与它自己的关系合成。对于传递性关系可以等价表示为μR(x,y)≥∨(μR(x,y)∧μR(y,z)),∀x,y,zX

根据定义,RRR,则R为传递的模糊关系。

定义29RX中的模糊关系,若R具有自反性和对称性,则R称为模糊相似关系。若R同时具有自反性、对称性和传递性,则称R是模糊等价关系。

利用模糊等价关系对事物进行分类,称为模糊聚类分析。

1.5.4 模糊变换

模糊变换是指给定两个集合之间的一个模糊关系,据此将一个集合上的模糊子集经运算得到另一个集合上的模糊子集的过程。

定义30:称映射F:XY为从XY的模糊变换。模糊变换实现了将X中的模糊集变为Y上的模糊集,实际上实现了论域的转换

XY均为有限集时,映射F:μm×nμ1就是模糊变换。

定义31:给定一个模糊变换F:XY,若存在RX×Y,使得∀AX,有

F(A)=ARV

此处μX◦R=∨(μX(x)∧μR(x,y)),∀yY,则为线性模糊变换。

例1-10:某一水位控制系统,当前水位的模糊集合A=(0.6,0.3,0.1),水位与阀门开度的模糊矩阵为

则在当前水位下,阀门开度为

在模糊集合论中还有一个重要的定义,即扩张原理。它是指模糊集合 A经过映射 f之后,记为 f(A),而 Af(A)的相应元素的隶属度保持不变,也就是模糊集合 A的元素隶属度可以通过映射,无保留地传递到模糊集合 f(A)的相应元素中。

定义32:设有映射f:XY,并且AX中的模糊集合,记Af下的像为f(A),它是Y中的模糊集合,并且具有如下隶属度函数

即若,则由映射 f作用之后有f(A),

f为一一映射时,f(A)的隶属度函数公式可简化为

例1-11:设,映射 f: XY,它具有 f(x1)=y1, f(x2)=y2, f(x3)=y2, f(x4)=y2, f(x5)=y3f(x6)=y3,则f(y1)={x1},f(y2)={x2,x3,x4},f(y3)={x5,x6}。得

1.6 模糊逻辑及模糊推理

模糊集合是经典集合的真实概括,经典集合是模糊集合的特例。使用隶属度函数定义的模糊集合称为模糊逻辑。模糊集合中的隶属度函数用于鉴定“陈述”为“真”的程度。例如,体温为104℉的患者隶属于“重感冒患者”集合的程度为0.65。任一体温的患者隶属于“重感冒患者”集合的程度可用图1-15所示的隶属度函数图表示。

图1-15 “重感冒”隶属度函数曲线

语言变量是模糊逻辑系统的基本构成,它对同样背景使用多个主观分类进行描述。以发热为例,将描述发热的程度用高烧(strong_fever)、发热(raised)、正常(normal)和低烧(low)4个语言变量来描述。图1-16所示为所有语言变量就“发热”事件的隶属度函数。

图1-16 所有语言变量就“发热”事件的隶属度函数曲线

使用模糊隶属度函数后,以华氏温度测量的体温可以转换为语言描述。例如,体温为100℉的患者将可确诊为基本属于发烧状态,并有轻微的高烧现象。

1.6.1 模糊逻辑技术

随着人们对模糊逻辑理解的加深,使用模糊集合的方法不断更新。本书只涉及基于规则的模糊逻辑技术。几乎所有的近期的模糊逻辑应用都是基于该方法。这里简要介绍集装箱起重机控制实例的基于规则的模糊逻辑系统的基本技术。

集装箱起重机控制系统如图1-17所示。

图1-17 集装箱起重机控制系统

集装箱起重机用于装载集装箱到船上或从港口的船上卸载集装箱。使用连接到起重机头上的软电缆吊起单个集装箱,起重机头采用水平移动方式。当一个集装箱被提起,起重机头开始移动,此时集装箱随着起重机头的移动和惯性力的作用开始晃动。在运输过程中,集装箱的晃动基本不会影响运输过程,但晃动的集装箱必须稳定后才能放下。

解决这个问题有两种方法。第一种方法是准确定位起重机头到目标位置上方,接着一直等待集装箱的摆动达到规定的稳定状态。当然,摆动的集装箱最终会稳定,但等待会造成相当多时间的浪费。由于成本原因一个集装箱船需要在最短时间内被装载和卸载,因此第一种方法不符合成本最小化的要求。第二种方法就是提起集装箱,然后慢慢移动它,致使集装箱不发生晃动,但这一方法也将花费大量的时间。

一个比较折中的方法就是,在操作过程中使用附加电缆固定集装箱的位置来构建集装箱起重机。但这个方案花费较高,很少有起重机利用这个技术。

由于这些原因,大多数集装箱起重机在操作员的指导下对起重机电动机采用连续速度控制。操作员需要控制晃动的同时,确保集装箱在最短时间内达到目标位置。实现这个目标,对于操作人员来说非常不容易,但熟练的操作员能够做到。为了降低操作的难度,工程师们曾尝试采用控制策略实现自动控制,如线性PID控制、基于模型控制和模糊逻辑控制。

传统的PID(比例—积分—微分)控制试验未能成功,因为控制任务是非线性的。当集装箱接近目标时,晃动最小化是重要的;在基于模型的控制试验时,工程师推导出描述起重机机械行为的数学模型为五阶微分方程式,这在理论上说明基于模型的控制策略是可行的,但试验却也不成功。造成这一策略不成功的原因如下:

◆ 起重机电动机行为不是模型中假设的那样线性

◆ 起重机头移动时有摩擦

◆ 在模型中未包含干扰量,如风的干扰

鉴于以上控制策略的不足,引入了模糊逻辑的语言控制策略。

1.6.2 语言控制策略

在人为控制中,操作员并非按照微分方程式进行控制,甚至无须使用基于模型的控制策略中的电缆长度传感器。一旦操作员提起集装箱,首先使用中功率电动机,以便查看集装箱如何晃动。然后依据晃动的程度,调整电动机功率使集装箱在起重机头后面一点,这时系统将获得最大的传输速度,并且使集装箱的晃动最小。

当接近目标位置时,操作员减小电动机功率或使用负电压刹车。当起重机很接近目标且电压进一步减小或反向时,使集装箱的位置稍微超过起重机头,直到集装箱几乎达到目标位置。最终,电动机功率增加以致起重机头超过目标位置且摆动为0。在整个操作过程中,不需要微分方程式,系统干扰或非线性通过操作员对集装箱位置的观察,依据经验进行补偿。

在对操作员操作过程的分析中,使用了一些经验规则描述控制策略。

◆ 在起动时使用中功率电动机,以便观察集装箱的晃动情况

◆ 如果已经起动且仍然远离目标,增加电动机功率,以使集装箱到达起重机头后面一点

◆ 如果接近目标,减小速度以致集装箱在起重机头前面一点

◆ 当集装箱超过目标,并且晃动为0时,停止电动机。

用距离传感器测量起重机头的位置,用相角传感器测量集装箱晃动相角,并将测量结果应用到自动控制起重机中。使用测量结果描述起重机的当前状况,并采用“如果——则”格式描述经验控制规则。

(1)如果起重机头与目标位置之间的距离较远,并且集装箱与垂直方向的相角等于零,则使用中功率电动机。

(2)如果起重机头与目标位置之间的距离较远,并且集装箱与垂直方向的相角小于零,则使用大功率电动机。

(3)如果起重机头与目标位置之间的距离较近,并且集装箱与垂直方向的相角小于零,则使用中功率电动机。

(4)如果起重机头与目标位置之间的距离适中,并且集装箱与垂直方向的相角小于零,则使用中功率电动机。

(5)如果起重机头到达目标位置,并且集装箱与垂直方向的相角等于零,则停止电动机。

从经验控制规则可知,采用“如果——则”格式描述经验控制规则的通用式为

如果 <状态> 则 <动作>。

就集装箱起重机而言,状态由两个条件确定:第一个条件描述起重机头与目标位置之间的距离值;第二个条件描述集装箱与垂直方向的相角。当两个条件同时满足相应的状态时,系统给出控制策略。

在设置规则时,使用到语言变量。

1.6.3 模糊语言变量

带有模糊性的语言称为模糊语言,如高、矮、胖、瘦、轻、重、缓、急等。此外,在自然语言中有一些词可以表达语气的肯定程度,如“非常”、“狠”、“极”等;也有一类词,如“大概”、“近似于”等,将这些词置于某个词前面,如年轻,则使该词意义变为模糊,如很年轻;还有些词,如“偏向”、“倾向于”等可使词义由模糊变为肯定,如倾向于短等。在模糊控制中,常见的模糊语言还有正大、正中、正小、零、负小、负中、负大等。

人类自然语言具有模糊性,而通常的计算机语言有严格的语法规则和语义,不存在任何的模糊性和歧义,即计算机对模糊性缺乏识别和判断能力。为了实现用自然语言跟计算机进行直接对话,就必须把人类的语言和思维过程提炼成数学模型。

语言变量是指以自然或人工语言的词、词组或句子作为值的变量。如模糊控制中的“偏差”、“偏差变化率”等,并且语言变量的取值通常不是数,而是用模糊语言表示的模糊集合,如“偏差很大”、“偏差大”、“偏差适中”、“偏差小”和“偏差较小”。

定义33:一个语言变量可定义为多元组(xT(x),UGM)。其中,x为变量名;T(x)为x的词集,即语言值名称的集合;U为论域;G是产生语言值名称的语法规则;M是与各语言值含义有关的语法规则。语言变量的每个语言值对应一个定义在论域U中的模糊数。语言变量基本词集把模糊概念与精确值联系起来,实现对定性概念的定量化及定量数据的定性模糊化。

依然以偏差为例,则T(偏差)={很大、大、适中、小、较小}。

上述每个模糊语言(如大、适中等)是定义在论域 U上的一个模糊集合。设论域U=[0,5],则可大致认为小于1为小,2左右为适中,大于3以上为大。

语法规则是根据原子单词来生成的语言值集合T(x)中各个合成词语的语法规则。

(1)前缀限制词 H方式,在原子单词 C之前引入算子 H概念,形成合成语言词T=HC。例如:“极”、“很”、“相当”等都可以作为算子来处理。算子有很多种,经常使用的有语气算子(“极”、“很”)、散漫化算子(“略”、“微”)、概率算子(“大概”、“将近”)、判定化算子(“倾向于”、“多半是”)等。

(2)加连接词“或”、“且”和否定词“非”,如“非大于”等。

(3)混合式,即上述两种合成方式重复或交叉使用,形成各种复杂的语言值。

以偏差为例的语言变量的结构图如图1-18所示。

图1-18 以偏差为例的语言变量的结构图

1.6.4 模糊命题与模糊条件语句

人们把具有模糊概念的陈述句称为模糊命题,如“天气很热”。模糊命题的标志符通常用大写字母PQR等下面加波浪“~”表示。

表征模糊命题真实程度的量叫做模糊命题的真值,记作:

V()=1时,表示陈述的信息完全真;当V()=0时,表示陈述的信息完全假;而当V(的值介于0~1之间时,表示陈述的信息不完全真,也不完全假,并且V()的)值越接近于1,表示陈述的信息越真实。模糊命题比二值逻辑中的命题更能符合人脑的思维方式,反映了真或假的程度。

模糊命题的一般形式为:“uA”(或uis A)。

其中,u是个体变元,它属于论域 U,即uUA是某个模糊概念所对应的模糊集合。模糊命题的真值由该变元对模糊集合的隶属程度表示,定义为

在模糊命题中,“is A”部分是表示一个个体模糊性质或多个个体之间的模糊关系的部分,称为模糊谓词。和二值逻辑一样,使用析取、合取、取非、蕴涵及等价运算可构成复合模糊命题。

设有模糊命题:偏差大,:偏差变化率小,则:

◆ 析取:表示两者间的关系为“或”,记为 ,其真值为V()∨V()=μA(p)∨μB(q),意为偏差大或偏差变化率小,即两者满足其一即可

◆ 合取:表示两者间的关系为“且”,记为,其真值为V()∧V)=μA(p)∧μB(q),意为偏差大,并且偏差变化率小,即要求两者同时满足

◆ 取非:表示两者间的关系为“非”,记为,其真值为1-V()=1-μA(p),意为偏差不大

◆ 蕴涵:表示两者间的关系为“若……,则……”,记为V()→V()

◆ 等价:表示两者间的关系为“互相蕴含”, 记为V()↔V()

从真值表达式可知,模糊命题真值之间的运算,也就是其相应隶属度函数之间的运算。

在使用模糊策略时,会用到一系列模糊控制规则,如“如果起重机头与目标位置之间的距离较远,并且集装箱与垂直方向的相角等于零,则使用中等功率电动机”,或者“如果偏差较大,而偏差变化率较小,则阀门半开”等。其中“远”、“中等”、“大”、“小”、“半开”等词均为模糊词,这些带模糊词的条件语句就是模糊条件语句。

在模糊控制中,经常用到3种条件语句。

(1)If条件then语句,其简记形式为if A then B。其中“if A”部分称为前件或条件部分,“then B”部分称为后件或结论部分。

例句:如果水位达到要求,则关闭进水阀门。

(2)If条件then语句1 else语句2,其简记形式为if A then B else C。

例句:如果苹果比橘子贵,则买橘子;否则,买苹果。

(3)If条件1 and条件2 then语句,其简记形式为if A and B then C。

例句:如果他跑得快,并且球技好,则让他当前锋。

1.6.5 判断与推理

判断和推理是思维形式的一种。判断是概念与概念的联合,而推理则是判断与判断的联合。推理根据一定的原则,从一个或几个已知判断引出一个新判断。一般情况下,推理包含两个部分的判断:一部分是已知的判断,作为推理的出发点,叫做前提或前件;由前提所推出的新判断,叫做结论或后件。

只有一个前提的推理称为直接推理,由两个或两个以上前提的推理称为间接推理。间接推理依据认识的方向,又可分为演绎推理、归纳推理和类比推理等。

演绎推理是前提与结论之间有蕴涵关系的推理。演绎推理中最常用的形式是假言推理,有肯定式推理和否定式推理两类。

肯定式:

否定式:

这就是“三段论”推理模式,用数学形式表达如下:

“三段论”给出了在大前提AB之下,若小前提是A,则可推出结论为B。然而,当小前提不是严格的 A,而是在某种程度上接近于 A,记为 A′,此时结论应该是什么呢?“三段论”没能给出答案,即三段论对模糊性问题的推理无能为力,此时需要使用模糊推理方法。

1.6.6 模糊推理

模糊推理又称模糊逻辑推理,是应用模糊关系表示模糊条件句,将推理的判断过程转化为对隶属度的合成及演算过程。即已知模糊命题(包括大前提和小前提),推出新的模糊命题作为结论的过程。模糊推理即近似推理,这两个术语不加区分,可以混用。

L.A.Zadeh在1973年对于模糊命题“若AB”,利用模糊关系的合成运算提出了一种近似推理的方法,称为“关系合成推理法”,简称CRI法,是实际控制中应用较广的一种模糊推理算法。其原理表述:用一个模糊集合表述大前提中全部模糊条件语句前件的基础变量和后件的基础变量间的关系;用一个模糊集合表述小前提;进而用基于模糊关系的模糊变换运算给出推理结果。

常用的推理方法有Zadeh的推理方法、Mamdani推理方法、多输入模糊推理和多输入多规则推理。

1)Zadeh的推理方法

AX上的模糊集合,BY上的模糊集合,模糊蕴涵关系“若AB”,用AB表示。Zadeh把它定义成X×Y的模糊关系,即

R=AB=(A×B)∪(AC×Y)

其隶属度函数式为R(x,y)=[A(x)∧B(x)]∨(1-A(x))。

给定一个模糊关系R,就决定了一个模糊变换,利用模糊关系的合成有如下推理规则。

◆ 已知模糊蕴涵关系 AB的模糊关系 R,对于给定的 A′,A′∈X,则可推出结论B′,B′∈YB′=A′◦R,其中“◦”表示合成运算。即当Y为有限论域时,

B′(y)=∨{A′(x)∧[A(x)∧B(y)∨(1-A(x))]}

◆ 已知模糊蕴涵关系 AB的模糊关系 R,对于给定的 B′,B′∈Y,则可推出结论A′,A′∈XA′=RB′,其中“◦”表示合成运算。即当X为有限论域时,

A′(x)=∨{[A(x)∧B(y)∨(1-A(x))]∧B′(y)}

2)Mamdani推理方法

Mamdani的推理方法本质上是一种CRI法,只是Mamdani把模糊蕴涵关系 ABAB的笛卡儿积表示,即R=AB=A×B,也可写为R(x,y)=A(xB(y)。

◆ 已知模糊蕴涵关系 AB的模糊关系 R,对于给定的 A′,A′∈X,则可推出结论B′,B′∈YB′=A′◦R,其中“◦”表示合成运算。即当Y为有限论域时,

B′(y)=∨{A′(x)∧[A(x)∧B(y)]}

或者使用隶属度函数表示为

μB′(y)=∨{μA′(x)∧[μA(x)∧μB(y)]}=∨{μA′(x)∧μA(x)}∧μB(y)=αμB(y)

其中,α=∨{μA′(x)∧μA(x)},是模糊集A′与A交集的高度,如图1-19所示。也可表示为α=H(A′∩A),α可以看成是A′对A的适配程度。

图1-19 α=∨{μA′(x)∧μA(x)}的图示

根据Mamdani推理方法,结论可用此适配度与模糊集合进行模糊与,即取小运算(min)而得到。在图形上就是用基准去切割 B,便可得到推论结果,所以这种方法经常又形象地称为削顶法。

◆ 已知模糊蕴涵关系 AB的模糊关系 R,对于给定的 B′,B′∈Y,则可推出结论A′,A′∈XA′=RB′,其中“◦”表示合成运算。即当 X为有限论域时,

A′(x)=∨{[A(x)∧B(y)]∧B′(y)},或者使用隶属度函数表示:

μA′=∨{[μA(x)∧B(y)]∧B′(y)}

例1-12:设AX, BY, A=数量多,B=质量大。论域 X(数量)={0,2,4,6,8, 10},,Y(质量)={0,1,2,3,4,5,6,7},。“若AB”(若数量多,则质量大)为推论的大前提,给出模糊关系R=A→B。使用Mamdani推理方法推导出给定 A′,,在“数量较多”情况下的结论B′(“质量较大”)。

由式α=∨{μA′(x)∧μA(x)},先求出A′对A的适配度为

然后用α切割B的隶属度函数:

3)多输入模糊推理方法

已知推理大前提的条件为“if Aand Bthen C”,AF(x),BF(y),CF(z),模糊蕴涵关系为

R=A×B×C=(A×B)→C

R(x,y,z)=A(x)∧B(y)∧C(z)。

◆ 当已知输入A′、B′,小前提为A′且B′,则可推出C

C′=(A′×B′)◦R

其中,A′=F(x),B′=F(y),C′=F(z)。即

C′=(A′×B′)◦[(A×B)→C]

例1-13:以模糊自动洗衣机为例,已知泥污量适中为 A,,油脂量适中为B,,洗涤时间适中为C,

已知泥污量多为 A′,,油脂量多为 B′,求泥污量大且油脂量多的情况下,洗涤时间长C′。

由于R=A×B×C=(A×B)→C,则

R1写成列向量的形式,即

由于C′=(A′×B′)◦R,令R2=A′×B′,则

R2写成行向量的形式,即=[0.10.10.10.10.6 0.6 0.10.7 0.9]。

C′=(A′×B′)◦R=

用图形方式来说明二输入推理法过程:

其中,AF(x),BF(y),CF(z)。

对于多维模糊条件语句R:if Aand Bthen C,可分解为R′:if Athen C,并且R″:if Bthen C,则由R作近似推理的结论C′等于R′和R″的“交”运算,C′=R′∧R′′,即

C′=A′◦ (A×C)∩B′◦(B×C)

其隶属度函数为

这在Mamdani推理削顶法中的几何意义是,像单输入情况一样,分别求出 A′对 AB′对B的隶属度αAαB,并取这两个之中小的一个值作为总的模糊推理前件的隶属度,再以此为基准去切割推理后件的隶属度函数,便得到结论C*,推理过程如图1-20所示。

图1-20 二维输入Mamdani推理过程

4)多输入多规则推理方法

以两输入的多规则为例,其形式为

其中,AiA′、BiB′、CiC′分别是不同论域XYZ的模糊集合,“否则”表示“或”运算,可写为并集形式

C′=(A′×B′)◦{[(A1×B1)→C1]∪…∪[(An×Bn)→Cn]}=[A′◦(AiCi)]∩[B′◦(BiCi)],其中i=1,2,…,n

其中,=(A′×B′)◦[(Ai×Bi)→Ci]

其隶属度函数为

如果有两条二维输入规则,则得到两个结论

即分别从不同的规则得到两个结论,再对所有的结论进行并运算,便得到总的推理结论,其推理过程可用图1-21来表示。

图1-21 两条二维输入规则的Mamani推理过程

对于多输入多规则的模糊推理,可依据先前提,对大前提中每条模糊条件语句分别进行推理,并将其结果综合成最终推理结果的模糊推理方法,即

可改写为

其中,i=1,2,…,n

1.7 模糊逻辑系统的建立

一旦建立了描述系统行为的规则集,问题就变为如何能够实现这些规则。建立描述系统行为的规则集的第一步为编写“if-then”规则的代码。以模糊逻辑起重机控制器为例,其结构图如图1-22所示。

图1-22 模糊逻辑起重机控制器结构图

首先,所有的传感器信号必须转换为语言变量。例如:测量距离为12m,可能被转换为语言值“距离仍然适中或刚好略微得远”。这一步叫做模糊化,即使用模糊集将真实变量值转换为语言变量值。

一旦所有输入变量值都被转换为单个语言变量值时,模糊推理依据if-then规则定义的系统行为进行推理。推理结果也是输出语言变量的语言值。例如,电动机的功率为比中等功率小一点点的功率。解模糊化即将输出语言变量的语言值转变为电动机的功率设置。

综上所述,模糊逻辑系统包括三步:模糊化、模糊推理和解模糊化。

1.7.1 模糊化

对于所有使用if-then规则的变量必须定义语言变量。语言变量的可能值称为模糊语言值。对于模糊控制起重机控制器,其模糊语言值如下:

(1)距离 ∈{neg_close(距离值为负且与目标位置距离近)、zero(与目标位置距离零,即到达目标位置)、close(距离值为正且与目标位置距离近)、medium close(距离值为正,且与目标位置距离适中)、far(距离值为正且与目标位置距离远)}。

(2)相角 ∈{NB(负大)、NS(负小)、ZO(零)、PS(正小)、PB(正大)}。

(3)功率 ∈{neg_high(反转,并且使用大功率)、neg_medium(反转,并且使用中功率)、zero(停转)、pos_medium(正转,并且使用中功率)、pos_high(正转,并且使用大功率)}。

对于每一个语言变量,其语言值由隶属度函数定义,如图1-23所示。

图1-23 语言值的隶属度函数图

当起重机头到目标位置的距离是12m,集装箱与垂直方向的相角为-30°时,其分别对语言变量术语的隶属度值如下:

          12m距离对语言值的隶属度值:            -30°相角对语言值的隶属度值:
          neg_close          0.00                NB                0.4
          zero               0.00                NS                0.6
          close              0.00                ZO                0.0
          medium             0.83                PS                0.0
          ar                 0.17                PB                0.0

假设某个变量的取值为 x′,用函数模糊集 A代替 x′,则称 Ax′的模糊化。下面介绍常用的模糊化方法。

1)单值型模糊化

如果输入量数据x0是准确的,则通常将其模糊化为单点模糊集合。设该模糊集合用 A表示,则有,其隶属度函数如图1-24所示。

图1-24 单点型模糊集合的隶属度函数

这种模糊化方法只是从形式上将清晰量转化为模糊量,而实质上表示的还是准确量。在模糊控制中,当测量数据准确时,常采用这样的模糊化方式。

2)高斯型模糊化

,其隶属度函数如图1-25所示。

图1-25 高斯型模糊集合的隶属度函数

3)三角形模糊化

,其隶属度函数如图1-26所示。

图1-26 三角形模糊集合的隶属度函数

隶属度函数取三角形主要是考虑其表示方便,并且计算相对而言比较简单。

1.7.2 建立if-then规则库

模糊规则库是由一系列“if-then”型的模糊条件语句组成的,条件句的前件为输入和状态,后件为控制变量。以模糊起重机控制器为例,其中3个规则的子集如下所示:

规则1:IF Distance =medium,AND Angle Angle =neg_small,THEN Power =pos_high。

规则2:IF Distance =medium AND Angle =neg_big, THEN Power =pos_medium。

规则3:IF Distance =far AND Angle =neg_small, THEN Power =pos_high。

其中,Distance(距离)和Angle(相角)是“if-then”的前件,是系统的输入;Power (功率)是“if-then”的后件,是系统输出。经过组合的模糊规则库如图1-27所示。

图1-27 模糊规则库

一般情况下,一个模糊规则库中含有多个模糊推理句。若没有“任何两个规则有相同的前件,而有不同的后件”发生,则这种模糊规则库称为“一致的”;若每两条相临规则的后件一定有重叠区域,则此规则库称为“连续的”

对于特定的系统,需要根据要求选择输入量。输入语言变量和输出语言变量的选择以及隶属度函数的确定对于模糊控制器的性能有着十分重要的作用,主要依靠经验和工程知识。

1)基于专家经验和控制工程知识建立模糊规则库

模糊语言规则库建立了前件中的状态变量与后件中的控制变量之间的联系,是人类行为和进行决策分析过程的描述方式。因此,可以把人类专家总结的经验用“if-then”结构表示出来,或者通过对有经验的专家和操作人员咨询,获得特定领域的模糊控制规则,并在此基础上,写出“if-then”结构的控制规则。

2)基于操作人员的实际控制过程建立模糊规则库

在工业系统中,如锅炉的给煤系统,很难建立控制对象的模型,而熟练的操作人员可以很成功地控制这样的系统。因此,可以总结操作人员的操作经验,并将操作经验转换为“if-then”结构的控制规则,从而得到模糊控制规则库。

3)基于过程的模糊模型

控制对象的动态特性可用微分方程、传递函数或状态方程等表示,有时也可用语言的方式描述,对于可用语言描述系统动态特性的系统,可建立起相应的模糊控制规律。

4)基于学习

许多模糊控制系统主要是模拟人的决策行为。除此之外,有些系统可以根据经验和知识产生模糊控制规则并对它们具有修改的能力,如模糊自组织控制,它就是一种具有学习功能的模糊控制,可根据系统的整体性能要求产生并修改模糊规则库。

建立的模糊规则库要求具有以下性能要求。

(1)完备性:对于任意的输入应确保至少有一个可适用的规则。

(2)模糊控制规则数:若模糊控制器的输入有 m个,每个输入的模糊值分别为n1n2、…nm,则最大可能的模糊规则数为Nmax=n1×n2×…×nm。实际的模糊控制数应该取多少取决于很多因素,总的原则:在满足完备性的条件下,尽量取较少的规则数,以简化模糊控制器的设计和实现。

(3)模糊控制规则的一致性:模糊控制规则不能出现相互矛盾的规则。

1.7.3 模糊推理

在模糊起重机控制器的例子中,模糊推理包括以下三部分。

(1)聚合:规则IF部分的计算,这一步计算与有关的支持的规则条件。

(2)合成:规则THEN部分的计算。这一步计算规则真的隶属度。

(3)结果聚合:规则真的隶属度计算完成后,这一步确定哪一个规则将用于解模糊化。

1.7.2节中的规则1的IF部分组合了两个条件:“Distance =medium”和“Angle=neg_small”。IF部分定义当前状态是否符合规则。在经典逻辑中,两个条件的组合可使用布尔“与(AND)”运算计算,如表1-4所示。

表1-4 布尔“与(AND)”运算表

就模糊逻辑而言,逻辑“与”不能使用,因为它不能处理程度不同的真的条件。因此,需要为模糊逻辑定义新的运算符以表示逻辑与、或、非,三个运算符的表示方式如下:

◆ AND(与):μ(AB)=min{μ(A),μ(B)}

◆ OR(或):μ(AB)=max{μ(A),μ(B)}

◆ NOT(非):μ(AC)=1-μ(A)

如果用最小运算符min来表示逻辑“与”,则1.7.2节中规则的IF部分真的度可用下式表示:

◆ 规则1:min{0.83,0.6}=0.6,则……

◆ 规则2:min{0.83,0.4}=0.4,则……

◆ 规则3:min{0.17,0.6}=0.17,则……

每个规则在THEN部分定义操作策略。操作策略的隶属度由当前状态所适合的规则给出。“适合的规则”是由表示IF部分隶属度的集合进行计算的。因此,规则1的操作策略为“Power =pos_high”,其隶属度为0.6;规则2的操作策略为“Power =pos_medium”,其隶属度为0.4;规则3的操作策略为“Power =pos_high”,其隶属度为0.17。

在很多例子中,IF部分真的隶属度被认为是规则真的隶属度,但是在有些例子中,也可以将规则本身设置成模糊的。在合成阶段,IF部分真的隶属度乘以权系数,这个系数表示本条规则在评价系统时的权重。权重的使用非常普通,是最简单的或最清楚的体现模糊联想记忆或合成规则推理等概念的方法,权重值的取值范围为[0,1]。在本节的模糊逻辑推理案例中,权重值设置为1.0,表示方法为DoS=1.0。

规则1的操作策略为“Power =pos_high”,其隶属度为0.6,而规则3的操作策略也为“Power =pos_high”,其隶属度都为0.17,即同样的操作策略,但隶属度不同。因此,这些操作策略必须在解模糊化之前结合。在模糊逻辑规则库中,规则按照如下方式定义:要么规则1真,要么规则2真,要么规则3真,要么……使用例子中列出的模糊逻辑运算符,“要么”所体现出的规则间的关系可由最大运算符“max”表示。语言变量Power模糊逻辑推理的最终结果如下所示:

            neg_high              0.0
            neg_medium            0.0
            zero                  0.0
            pos_medium            0.4
            pos_high              0.6(=max{0.6;0.17})

这种模糊推理方法被称为MAX/MIN或MAX/PROD推理。

1.7.4 解模糊化

在模糊推理结束时,Power的结果是用语言变量表示的。为了使用模糊推理的结果来设定电动机功率,必须将语言量转换为实际值,这个阶段称为解模糊化。语言值和相应的实际值间的关系是由隶属度函数定义给出的。图1-28所示为语言变量Power的隶属度函数图。

图1-28 语言变量Power的隶属度函数图

从1.7.3节的模糊推理结果可知,系统的操作策略中有两个策略的隶属度为非0值。在模糊集合中定义的两个冲突的操作策略如何组合成控制电动机功率的实值呢?

例1-14:设想夜里11点,你独自一人在公寓中。你喜欢听一些激烈的音乐。另一方面,你的邻居已经忍受了很多次你近期举行的音乐会。当你设定你的立体声音量时,你必须权衡这两个冲突,并将模糊决策调整为实际的音量值。为了找到平衡两个因素的平衡点,你能打开音乐调整音量直到平衡了两个目标。

从上面的例子可以得到一些启发,即当模糊逻辑模仿人的判决和评估过程时,好的解模糊方法也应该接近于这个方法。大多数解模糊方法使用两阶段法:第一个阶段,对于语言变量的每一个语言值进行计算,得到一个“典型值”;第二阶段,计算模糊逻辑推论最佳折中值,“最佳折中办法”是“平衡”的结果。

计算每个语言值的典型值的最常用的方法是找到各自隶属度函数最大值。如果隶属度函数有最大的间隔,则选择最大集合的中间值。对于图1-28所示的语言变量Power隶属度函数图,典型值的计算如图1-29所示,图中灰色箭头指向典型值的横坐标。

图1-29 典型值的计算

第二步计算语言结果的最佳折中值。与操作策略为真的度成比例的“输出结果”显示在典型值的横坐标上。权重由图1-30的灰色箭头高度指示。最佳折中值由权重及权重对应的典型值平衡后确定。在本例中,平衡推理结果为10kW。这个值被认为是最佳平衡值,并且输出到电动机。

图1-30 计算最佳平衡值

解模糊的这个方法称做加数平均法,又称极大中心法,与使用单一隶属度函数的重心法相同。大多数模糊逻辑的实现采用这一解模糊方法。

1.8 计算模糊系统

模糊逻辑是对近似逻辑优点的认可。在大多数真实世界中,精确的答案并非最优解。例如,对于表达式10/3,答案约为3就可以。更精确的答案是3.33,在某些情况下可能是多余的或费时的。模糊逻辑扩展了传统逻辑中严格的真、假分类,并引入了如大部分真或完全错等分类。它适应人类在某一情形下允许或多或少真的情形的不规则思维模式。

模糊逻辑系统是基于规则的,但它们使用不同的原理表示规则的语言要素。由语言变量表示的技术的量化允许表达式在一个或多个集合中程度不同的真,使用表示语言的“与”和“或”的运算符形成语言规则。最终,规则本身的适用性的计算——由一个语言表达式IF…THEN表示的——被执行。这个阶段被称为模糊推理。在控制应用中,专门的模糊化和解模糊化的方法连接整个系统到这个过程。

在控制应用中,模糊逻辑使用日常口语来设计控制策略。控制策略的目标从给定的输入,如起重机位置或负载相角中获得期望的输出,如得到起重机电动机应该输出的功率。因为起重机不能解释语言原理,在清晰值和语言原理间的两种方式的转换是必须的。因此,模糊逻辑处理控制按照下面3个步骤建立。

(1)模糊化:将清晰的输入值转换为语言原理,由模糊集表示,其中语言原理即为语言变量。在模糊化部分,对所有输入值分配隶属度。如当输入为0.6m时,确认其属于什么程度的“far”。

(2)模糊规则推理:定义语言变量间的IF…THEN,这些规则确定了控制器必须遵循的行为方针。例如,IF距离为“far”THEN电动机功率为“pos_high”。

(3)解模糊化:将模糊推理的结果从语言原理转换为清晰输出值。例如,电动机功率“pos_high”等于要求电动机当前的输出功率为10kW。

1.8.1 计算隶属度

在模糊逻辑中,给定的语言变量的不同值表示语言原理,但值不是数字,如与语言变量“距离”有关的语言值可以是neg_big、neg_small、zero、pos_small、pos_big。每个语言值由指定的模糊集表示,甚至像非常接近和很远这样的近似描述也是可能的。

当“距离”的测量值为20m时,这一输入值属于某一集合的清晰值由0~1间的值表示。这个值叫做隶属度。隶属度等于0意味着一个值明确地不属于这个集合,而等于1的隶属度反映该值绝对隶属于这一集合,0~1间的隶属度表示部分隶属于这一集合,即该值对于该集合部分真或部分假,因此要求可以计算部分真或部分假,而使用传统逻辑是不可能完成这样的任务的。在模糊逻辑中,隶属度通常被标准化在[0,1]间隔内,用符号μ表示。

清晰值属于给定模糊集的度由隶属度函数(MBF)表示,如图1-31所示。典型的技术量化用函数的水平轴和标有隶属度的垂直轴表示。技术量化称为基本变量,用于表示论域。

图1-31 “距离”隶属度函数图

尽管科学出版物推荐了很多不同类型的模糊逻辑隶属度函数,但是在大多数实际应用中使用标准隶属度函数。标准隶属度函数类型有Z形、Lambda形、PI形和S形,如图1-32所示。

图1-32 标准隶属度函数类型

标准隶属度函数都能被数学表示为分段线性函数。当由它的分段线性隶属度函数给定时,基本变量值的隶属度计算如下:

(1)隶属度函数定义为点集P(xi,μi)。其中,i=1,2,…,nx1xixnμi∈[0,1], [x1,xn]为基本变量范围,当前操作数X∈[x1,xn]。

(2)估计有效的基本变量区间,即xkXxk+1

(3)计算隶属度:μ=μi+(X-xi)*(μi+1-μi) (xi+1-xi)。

1.8.2 隶属度函数的快速计算方法

从计算隶属度的公式可知,在计算的过程中用到了乘法和除法运算,这对于没有乘法和除法能力的微控制器而言,实现起来比较困难,因此这里提供了MBF快速计算方法,即使用两个点和两个斜坡值的标准隶属度函数,如图1-33所示。

图1-33 由两个点和两个斜坡值定义的标准隶属度函数

隶属度函数快速计算方法仅使用两个定义点和两个确定的整数斜率值以减小代码的长度,并简化计算。采用这一方法计算隶属度的步骤如下:

(1)隶属度函数采用独立点方式定义:点1:x1,其隶属度为μ=0;上升沿斜率为s1;点3:x2,其隶属度为μ=1;下降沿斜率为s2。其中,xi,si为整数。

(2)当前操作数为整数X,其隶属度函数记为整数[0,Imax]。

(3)估计有效条件:

◆ 条件1:Xx1

◆ 条件2:x1Xx2

◆ 条件3:Xx2

(4)计算隶属度:

◆ 条件1:μ=0

◆ 条件2:μ=min(Imax,(X-x1)*s1)

◆ 条件3:μ=max(0,Imax-(X-x2)*s2)

1.8.3 模糊规则推理

大多数基于系统的模糊逻辑使用积规则表示语言变量间的关系,并从传感器获取系统的行为。产生式规则包括前提条件(IF部分)和结果(THEN部分)。IF部分可包括一个或多个前提条件,多个前提条件通过语言连接词“与”或“或”连接。

模糊规则的计算被称做模糊规则推理。推理是一个包括聚合、合成的计算过程,有时还需要作结果聚合计算。模糊推理的第一步:聚合,用于确定规则IF部分被完成的度。特殊的模糊运算用于聚合变量前提条件的支持度。

模糊规则IF部分的计算包括:

✧ 语言变量的语言值i的聚合

✧ 使用“min”运算符实现“AND”聚合,AND:μIF=min(μi)

✧ 使用“max”运算符实现“OR”聚合,OR:μIF=max(μi)

使用“AND”求最小值和使用“OR”求最大值经常应用于小的控制系统用中。有时也使用其他类型的操作符表示条件部分的关系。

(1)MAX-MIN推理:

每个产生式规则的第二个计算步骤是使用前提条件计算结果。在标准的MAX-MIN或MAX-PROD(有时也称为MAX-DOT)推理方法中,规则结果的真实程度等于条件的真实程度。

(2)FAM推理:

使用标准的MAX-MIN或MAX-PROD方法时,规则库最优化可以通过任意规则的添加或任意规则的删除实现,即使用0或1设置规则的个体重要性,从而使用笨拙的试凑法实现规则库的最优化。使用FAM,每一个规则都分配一个表示规则个体重要性的支持度(DoS),即将规则本身模糊化,这意味着每条规则有0~1间的支持度。

结果的支持度通过使用组合操作符计算带有支持度的全部条件得到。通常情况下,乘积运算符被用做合成运算符,因为DoS反映规则的“重要性”。

模糊规则THEN部分的计算:

✧ 组合带有DoS值的IF部分

✧ 使用乘法运算符表示规则的重要性:μTHEN=μIF*DoS

最终,如果多个规则产生同样的结果,则需要聚合这些规则的结果。结果聚合阶段用于确定每个结果的最大支持度,以便在后续运算中使用。

对于结果聚合,可以选择MAX(最大值)运算符或BSUM(有界和)运算符。

✧ MAX结果聚合:μRESULT=max(μTHEN, RULEi)

✧ BSUM结果聚合:μRESULT=min(1, S(μTHEN, RULEi))

1.8.4 将输出结果清晰化

从模糊规则推理产生的结果,当然是模糊的。在前面的例子中,结果用语言表达为“相当接近正小”,或者“有一点点接近于0”。显然,起重机电动机不能执行这样的语言命令。隶属度函数用于将模糊输出转换为清晰值,这一转换过程称为解模糊化。解模糊化有多种方法。

1)CoM解模糊化

因为多个输出条件可能被认为是有效的,所以必须将多个不同结果进行折中。最大中心法(CoM)将语言值隶属度最大值加权后得出的加权平均值作为折中结果。图1-34所示为CoM解模糊化计算出的语言变量Power的折中值。单个语言值隶属度最大值所对应的位置由灰色箭头表示,推理结果由灰色箭头的高度显示。

图1-34 CoM解模糊化

CoM(最大中心法)解模糊化步骤:

① 计算输出值Y的清晰值;

② 应用最大中心法(CoM);

③ 折中输出语言变量的不同语言值J的聚合结果;

④ 基于每一语言变量J的最大值YJ,求

在本例中

2)MoM解模糊化

MoM(均值最大法)也是一种解模糊化的计算方法。例如,只计算具有最高结果支持度的模糊语言值的系统输出。如果最大值不唯一(像Pi型MBF),则计算最大区间的均值。图1-35所示为MoM解模糊过程。

图1-35 MoM解模糊化过程

MoM(均值最大法)解模糊化步骤:

① 计算输出值Y的清晰值;

② 应用均值最大法(MoM);

③ 估算输出语言变量的不同语言值J的重要性;

④ 基于每一语言变量J的最大值YJ,求取YY=YJ(μRESULT,TERM,MAX)。

在本例中,Y=23.5kW。

3)CoA(区域中心法)解模糊化

区域中心法有时也称为中心重心法,这一方法也是在模糊系统中经常使用的解模糊化方法。对于单集合隶属度函数,使用CoA和CoM解模糊化是一样的。大多数CoA的实现仅是近似的,因为它们忽略重叠,并且可以用CoM解模糊化方法表示。图1-36所示为CoA解模糊化过程。

图1-36 CoA解模糊化过程

如果说CoM和CoA解模糊化方法可以产生最佳折中方案,则MoM解模糊化可以产生最合理的方案。在控制应用中,CoM是使用最普遍的一种解模糊化方法,因为其输出值表示所有推理结果的最佳折中;MoM常用于模式识别和分类应用中,在需要得出最合理的解决方案的应用中采用MoM方法是最合适的。虽然在科学文献已经提出了很多其他解模糊策略,但这些策略很少用于工业领域。

4)Hyper CoM(超最大均值解模糊化方法)

在很多应用中,不仅以建议的方式引入积极的经验,同时还以警告或禁止的方式引入消极的经验。为了避免出现意想不到的操作状况(尤其出于安全考虑)或不可接受的产品质量,必须严格遵守某些禁令或适当留意警告,这对于保护设备和降低成本是非常重要的。使用传统类型模糊控制器,从理论角度说,系统可以复制前面已知的转换特征。但是,这些控制器不能以系统的方式观察警告或禁令,或者以显而易见的方式产生更有利的转换特性。Hyper CoM解模糊化过程如图1-37所示。

图1-37 Hyper CoM解模糊化过程

两种模糊控制器结构允许开发兼有积极模糊规则和消极模糊规则的控制规则。这两个独立的规则集产生两个隶属度函数m+(μ)和m-(μ)。对于每一个可能的输出值,隶属度函数表示出这一输出值接受与否的程度,或者作为警告。超解模糊化策略权衡彼此之间的利害,然后计算隶属度函数m(μ)。超解模糊方法Hyper CoM接着计算这个函数的最佳基本输出值。

习题

1.从模糊逻辑的发展过程看,模糊逻辑具有哪些特点?

2.模糊逻辑描述的不确定性包含哪些?请举例说明。

3.如何理解模糊集合与经典集合的关系?隶属度函数的引入对模糊系统有何意义?

4.设U={u1, u2, u3, u4, u5, u6},若A, BF(U),,求ABABACAACAAC

5.已知X×Y的二元关系矩阵R

λ=0.8时,求Rλ

6.已知温度—压力的关系模糊矩阵,压力—湿度的关系模糊矩,求温度—湿度的关系模糊矩阵。

7.设AX, BY, A=任务量大,B=时间长。论域 X(任务量)={1,2,3,4,5, 6},,Y(时间)={1,2,3,4,5,6,7},。“若 AB”(若任务量大,则需要的时间长)为推论的大前提,给出模糊关系 R=AB。使用Mamdani推理方法推导出给定 A′,,在“任务量较大”情况下的结论B′(“时间较长”)。

8.在电饭煲的模糊控制中,已知米量适中为A,,水量适中为 B,,加热时间适中为 C,。已知米量大为A′,,水量多为B,求在米量大且水量多的情况下,加热时间长C′。

9.模糊控制系统建立的主要步骤有哪些?模糊控制器可以实现模糊目标的基础是什么?

10.解模糊化中CoM解模糊化、MoM解模糊化、CoA(区域中心法)解模糊化及Hyper CoM(超最大均值)解模糊化方法各自具有什么特点?各自适用于何种系统?