主要内容

模糊逻辑的基础

概述

模糊逻辑的要点是将输入空间映射到输出空间,实现这一点的主要机制是一系列称为规则的if-then语句。所有规则都是并行计算的,规则的顺序并不重要。这些规则本身很有用,因为它们涉及变量和描述这些变量的形容词。在构建解释规则的系统之前,必须定义计划使用的所有术语以及描述它们的形容词。要说水是热的,你需要定义水温变化的范围以及你所说的这个词的含义热的

一般来说,模糊推理是一种方法,它解释输入向量中的值,并基于一组规则将值赋给输出向量。

本主题通过介绍模糊逻辑的理论和实践,逐步引导您完成模糊逻辑过程。

模糊集

模糊逻辑始于模糊集的概念。A.模糊集是一个没有明确定义边界的集合。它只能包含部分成员资格的元素。

要理解什么是模糊集,首先考虑a的定义经典集. 经典集合是完全包含或完全排除任何给定元素的容器。例如,一周中的一组天无疑包括星期一、星期四和星期六。毫无疑问,它排除了黄油、自由和背鳍等。

一个经典的集合,中心包含一周中的几天,周围是非一周中的几天的元素

这种类型的集合被称为经典集合,因为它已经存在了很长时间。亚里士多德首先提出了排除中间定律,即X必须在集合A或不在集合A内。这个法律的另一个版本是:

对于任何问题,有一件事要么肯定,要么否定。

用注释重述这条定律:“对于任何主体(比如星期一),一件事(一周中的一天)必须被断言或否认(我断言星期一是一周中的一天)。”这条定律要求对立物,即两个类别a和非a,应该包含整个宇宙。任何东西都分为一组或另一组。任何事物都不是一周中的一天,也不是一周中的一天。

现在,考虑一下包含一个周末的天数。下面的图表试图对周末进行分类。

大多数人都同意周六和周日属于周末,但是周五呢?这感觉像是周末的一部分,但从技术上讲,它似乎应该被排除在外。因此,周五“跨越了栅栏”。经典集不允许这种分类。要么某物在集合中,要么不在集合中。然而,人类的经验告诉我们一些不同的东西,跨栅栏是生活的一部分。

周末集合,包含星期六和星期日,在中心被非周末的元素包围。周五是周末的分界线。

当然,当你定义什么是周末时,个人的看法和文化背景必须考虑在内。即使是字典也不精确,它把周末定义为从周五晚上或周六到周一早上的这段时间。你正在进入一个尖锐的,是非逻辑不再有用的领域。当你处理人们如何真正理解概念时,模糊推理就变得有价值了周末而不是简单的分类,只用于会计目的。最重要的是,下面的陈述为模糊逻辑奠定了基础。

在模糊逻辑中,任何陈述的真实性都成了程度的问题。

任何陈述都可能是模糊的。模糊推理的主要优点是能够用不完全是或不是的答案来回答是非问题。人类一直在做这类事情(想想看,对于一个看似简单的问题,你很少能得到一个直接的答案),但这对计算机来说是一个相当新的技巧。

它是如何工作的?在模糊逻辑推理只是一个一般化的是-否(布尔)逻辑。如果将数值1赋为真,将数值0赋为假,则此值表示模糊逻辑也允许介于0.2和0.7453之间的值。例如:

问:周六是周末吗?
答:1(是的,或正确)
问:星期二是周末吗?
答:0(否,或错误)
问:星期五是周末吗?
答:0.8(大部分是,但不是全部)
星期天是周末吗?
A: 0.95(是的,但不像周六那么多)。

如果您被迫回答“是”或“否”,则左侧的曲线图显示周末真实值。如果允许您回答“模糊值”,则右侧的曲线图显示周末真实值。

在左图中,周四和周五的周末会员数为零。在右边的图中,这些天的非零成员数小于1,周五大于周四。

从技术上讲,右侧的表示来自多值逻辑(或多价的逻辑)。如果你问“X是集合a中的元素吗?”答案可能是“是”,“不是”,或者是介于两者之间的一千个中间值中的任何一个。因此,X在a中可能有部分隶属关系。多值逻辑与我们更熟悉的二值(或二价是-否)逻辑概念形成了直接对比。

回到这个例子,现在考虑一个连续的周末时间图,如下图所示。

在左边的图中,成员图在周六和周日的两边有明显的变化。在正确的情节中,从周末到非周末的过渡是平稳的。

通过使情节连续,您可以定义任何给定时刻在周末而不是一整天中所属的程度。在左侧的情节中,请注意,在周五午夜,正如秒针扫过12点一样,周末真实值从0不连续地跳到1。这是定义周末的一种方式,虽然它可能对会计有用,但它可能与你自己的真实周末体验没有真正的联系。

右边的图显示了一条平稳变化的曲线,它解释了这样一个事实:星期五的所有时间,以及在小程度上,星期四的部分时间,都参与了周末气氛的质量,因此应该成为周末时刻模糊集合的部分成员。定义任何时刻的周末度的曲线是一个将输入空间(一周的时间)映射到输出空间(周末度)的函数。具体来说,它被称为隶属函数.看到隶属度函数以便进行更详细的讨论。

作为模糊集合的另一个例子,考虑季节问题。现在是什么季节?在北半球,夏季正式开始于地球轨道上北极最直接指向太阳的确切时刻。它每年只发生一次,在六月底。使用这个季节的天文定义,你会得到清晰的边界,如下图左侧所示。但你所经历的季节变化或多或少是连续的,如下图右侧所示(北半球温带气候)。

左边的情节显示了季节之间清晰的界限。右边的图显示了平滑重叠的季节界限。

隶属度函数

A.隶属函数(MF)是一条曲线,定义了如何将输入空间中的每个点映射到0和1之间的隶属度值(或隶属度)。输入空间有时称为论域,一个简单概念的花哨名字。

一个最常用的模糊集合的例子是高个子的集合。在这种情况下,话语的范围都是潜在的高度,比如从3英尺到9英尺,而“高”这个词对应的是一条曲线,它定义了任何人的身高程度。如果按照经典的定义,所有身高超过6英尺的人都被认为是高的。然而,这种区分显然是荒谬的。也许是有意义考虑所有实数集大于6因为数字属于抽象的飞机上,但是当我们要讲真实的人,这是不合理的叫一个人短,另一个高时不同高度的一根头发的宽度。

你必须比这条线高才算高。在一群人中,只有一个人越过了这条线,他对这种分类很满意。

如果前面所示的这种区分是不可行的,那么什么才是定义高个子的正确方法呢?和周末的情况一样,下图显示了一条从矮到高的平滑变化的曲线。输出轴是一个数字,称为0到1之间的成员值。这条曲线被称为a隶属函数通常被称为µ.例如,下图显示了清晰和平滑的高成员函数。在最上面的情节中,这两个人被分为两类,一类是高个子,另一类是矮个子。在底部,平滑的过渡允许不同的高度。两个人在某种程度上都很高,但其中一个明显比另一个低。较高的人,拥有0.95的会员资格肯定是高的人,但是拥有0.3的会员资格的人不是很高。

在上图中,一个清晰的成员函数显示了从“不高”到“高”的急剧过渡。在底部图中,平滑过渡允许高度。

主观的解释和适当的单位被建立在模糊集中。如果你说“她很高”,“高”的会员功能应该已经考虑到你指的是一个6岁的孩子还是一个成年女性。同样,单位也包含在曲线中。当然,说“她的身高是英寸还是米?”毫无意义。

中的成员函数模糊逻辑工具箱软件

成员函数必须真正满足的唯一条件是它必须在0和1之间变化。函数本身可以是任意的曲线,我们可以将其形状定义为简单、方便、快捷、高效的函数。

经典集合可以表示为

A. = { x | x > 6. }

模糊集是经典集的推广。如果X话语的宇宙和它的元素是用什么来表示的x,然后是模糊集A.在里面X定义为一组有序对。

A. { x , μ A. ( x ) | x X }

一个= {xA.(x)|x∈X}

µA.(x的隶属函数(或MF)x在里面A.. 隶属度函数映射每个元素X为0到1之间的成员值。

工具箱包括11种内置成员函数类型。这11个函数是由几个基本函数组成的:

  • 分段线性函数

  • 高斯分布函数

  • 乙状结肠曲线

  • 二次和三次多项式曲线

有关下面提到的成员函数的详细信息,请参阅相应的参考页面。

最简单的隶属函数是使用直线形成的。其中,最简单的是三角成员函数,它有函数名trimf.这个函数只不过是由三个点组成的三角形。这个梯形成员函数,trapmf它的顶部是平的,实际上只是一条截短的三角形曲线。这些直线隶属函数具有简单的优点。

分别在左侧和右侧采样三角形和梯形隶属函数

两个成员函数是建立在高斯分布分布曲线:一条简单的高斯曲线和两条不同的高斯曲线的双面组合。这两个功能是gaussmfgauss2mf

这个广义贝尔成员函数由三个参数指定,并具有函数名钟形。贝尔隶属函数比高斯隶属函数多一个参数,因此如果调整自由参数,它可以接近非模糊集。由于高斯和贝尔隶属函数平滑且符号简洁,因此它们是指定模糊集的常用方法。这两种曲线都具有smoo的优点th和非零在所有点。

从左到右依次为样本高斯函数、双边高斯函数和广义贝尔隶属函数

高斯隶属函数和钟形隶属函数虽然实现了平滑,但它们不能指定非对称隶属函数,而非对称隶属函数在某些应用中是很重要的。接下来,定义乙状结肠成员函数,可以是左开或右开。非对称和封闭(即不向左或右开)的隶属函数可以用两个s型函数合成,所以除了基本的sigmf也就是两个s型函数之间的差,dsigmf,以及两个S形函数的乘积psigmf

从左到右依次为样本Sigmoid、sigmoids的差分和sigmoids隶属函数的乘积

基于多项式的曲线说明了工具箱中的几个隶属函数。三个相关的成员函数是Z、,π曲线,都因其形状而得名。这个函数zmf是左开的非对称多项式曲线,smf是向右打开的镜像功能,并且皮姆两个极端都是零,中间是上升。

从左到右,采样Z,和S隶属函数

当你选择一个成员函数时,有一个非常广泛的选择。您还可以使用工具箱创建自己的成员资格函数。但是,如果基于扩展隶属函数的列表看起来太复杂,请记住,您可能只需要使用一种或两种类型的隶属函数,例如三角形和梯形函数,就可以很好地使用它们。对于那些想探索可能性的人来说,选择范围很广,但是对于好的模糊推理系统来说,扩展隶属函数不是必需的。最后,请记住,参考部分提供了有关所有这些函数的更多详细信息。

成员职能摘要

  • 模糊集描述模糊的概念(例如,快跑者、炎热天气、周末)。

  • 模糊集允许部分成员的可能性(例如,周五有点像周末,天气很热)。

  • 对象属于模糊集的程度由0到1之间的隶属值表示(例如,周五是度为0.8的周末)。

  • 与给定模糊集相关联的隶属函数将输入值映射到其相应的隶属值。

逻辑运算

现在您已经理解了模糊推理,您需要了解模糊推理如何与逻辑操作相连接。

关于模糊逻辑推理最重要的是要认识到它是标准布尔逻辑的超集这一事实。换句话说,如果将模糊值保持在1(完全为真)和0(完全为假)的极值,则标准逻辑操作将保持不变。以下面的标准真值表为例。

当两个输入都为1时,and运算为1。当任一输入为1时,or运算为1。当输入为零时,not运算为1。

考虑到,在模糊逻辑中,任何陈述的真值是一个程度问题,这些真值表能被改变吗?输入值可以是0到1之间的实数。什么函数保留了AND真值表的结果(例如),并扩展到所有0到1之间的实数?

一个答案是最小值操作。即,解析语句A.B哪里A.B是有限的范围(0,1),通过使用函数最小值(A.,B)。使用相同的推理,您可以将OR操作替换为最大值功能,以便A.B相当于最大值(A、B).最后,手术没有成功A.与运算等价 1. A. .通过此替换,先前的真值表完全不变。

最小、最大和非模糊逻辑运算符分别为清晰的输入值生成与布尔逻辑为和、或和非操作生成相同的真值表。

此外,因为真值表背后有一个函数,而不仅仅是真值表本身,所以现在可以考虑1和0以外的值。

下一个图使用一个图表来显示相同的信息。在该图中,真值表转换为两个模糊集的图,并一起应用以创建一个模糊集。图的上半部分显示对应于前面两个值真值表的图,而图的下半部分显示操作如何在连续变化的真值范围内工作A.B根据你定义的模糊运算。

二值逻辑和多值逻辑中从左到右的AND、OR和NOT运算

给定这三个函数,您可以使用模糊集和模糊逻辑操作and、OR和NOT来解析任何构造。

额外的模糊算子

在本例中,您仅为and、OR和NOT定义了两值和多值逻辑操作之间的一个特定对应。这种通信绝非唯一。

用更一般的术语来说,你正在定义被称为模糊交集或合取(AND)、模糊并取(or)和模糊补(NOT)的东西。这些函数的经典运算符是:AND =最小值,或=最大值,而非=加法补码。通常,大多数模糊逻辑应用程序都会使用这些操作,并将其保留。然而,总的来说,这些函数的任意性达到了令人惊讶的程度。模糊逻辑工具箱™ 如上图所示,软件对模糊补码使用经典运算符,但也允许您自定义AND或运算符。

两个模糊集的交集A.B通常由二进制映射来指定T,它聚合两个成员函数,如下:

μ A. B ( x ) = T ( μ A. ( x ) , μ B ( x ) )

例如,二进制运算符T可以表示µA.(x)及µB(x).这些模糊交叉算子通常被称为T-范数(三角范数)运算符,满足以下基本要求:

A.T-范数算子是一种二进制映射T(,.)具有以下属性:

  • 边界- T ( 0 , 0 ) = 0 , T ( A. , 1. ) = T ( 1. , A. ) = A.

  • 单调性, T ( A. , B ) T ( C , D ) 如果 A. C B D

  • 交换性, T ( A. , B ) = T ( B , A. )

  • 结合性- T ( A. , T ( B , C ) ) = T ( T ( A. , B ) , C )

第一个要求是对crisp集合进行正确的泛化,第二个要求是减少crisp集合中的成员值A.B无法增加中的成员资格值A.十字路口B.第三个要求表明,该算子与要组合的模糊集的顺序无关。最后,第四个条件允许我们取任意数量的集合的交集,以任意顺序的成对分组。

与模糊交集一样,模糊并集算子通常由二元映射指定s:

μ A. B ( x ) = s ( μ A. ( x ) , μ B ( x ) )

例如,二进制运算符s可以表示的加法µA.(x)及µB(x).这些模糊并集运算符通常被称为T-conorm(或s-norm)的操作人员,必须满足以下基本要求:

A.T-conorm(或s-norm)运算符是一个二进制映射s(,.)具有以下属性:

  • 边界- s ( 1. , 1. ) = 1. , s ( A. , 0 ) = s ( 0 , A. ) = A.

  • 单调性, s ( A. , B ) s ( C , D ) 如果 A. C B D

  • 交换性, s ( A. , B ) = s ( B , A. )

  • 结合性- s ( A. , s ( B , C ) ) = s ( s ( A. , B ) , C )

几个参数化T规范和双T-conorms过去曾被提出过,例如Yager的conorms[11],杜波伊斯和普拉德[1]施韦策和斯克拉[8], Sugeno[9].这些都提供了一种改变函数增益的方法,因此它可以是非常受限的,也可以是非常宽松的。

if - then规则

模糊集和模糊算子是模糊逻辑的主语和动词。这些if-then规则语句用于表达构成模糊逻辑的条件语句。

一个模糊的if-then规则采用了这种形式

如果xA.然后YB

在哪里A.B语言值分别由范围(话语世界)X和Y上的模糊集定义。“规则的if部分”xA.“被称为先行词或前提,而规则的“然后部分”YB“被称为顺向或结论。这种规则的一个例子可能是

如果服务好,小费是平均的

概念好的表示为0到1之间的数字,因此先行词是返回0到1之间的单个数字的解释。相反,平均的表示为一个模糊集,因此结果是一个赋值,将整个模糊集B赋值给输出变量Y.在if-then规则中,这个词以两种完全不同的方式使用,这取决于它是出现在先行词还是后置词中。在MATLAB®就术语而言,这种用法就是使用"=="的关系测试和使用"="符号的变量赋值之间的区别。一种不那么混乱的书写规则的方式是

如果服务=良好,则小费=平均

通常,if-then规则的输入是输入变量的当前值(在本例中,服务)输出是一个完整的模糊集(在这种情况下,平均的).这个集合稍后会去模糊化,将一个值赋给输出。下一节将介绍反模糊化的概念。

解释一个if-then规则包括两个步骤:

  • 前因评价-不分明化输入和应用任何必要的模糊算子

  • 将结果应用到结果上。

第二步被称为含意.对于if-then规则,先行项,P,意味着因此,,Q.在二进制逻辑中,如果P是真的,那么Q也是正确的(PQ).在模糊逻辑中,如果P在某种程度上,会员资格是正确的吗Q同样程度上也是正确的(0.5P→0.5Q).在这两种情况下,如果P是假的,那么值呢Q还没有确定。

规则的先行项可以有多个部分。

若天空是灰色的,风很大,气压计在下降,那个么。。。

在这种情况下,先行项的所有部分同时计算,并使用上一节中描述的逻辑运算符解析为单个数字。规则的结果也可以有多个部分。

如果温度较低,则热水阀打开,冷水阀关闭

在这种情况下,所有结果都受到先行结果的同等影响。前因如何影响后因?结果指定要分配给输出的模糊集。这个影响函数然后将模糊集修改为先行项指定的程度。修改输出模糊集最常用的方法是使用最小值函数(模糊集被截断,如下图所示)或使用刺激函数(其中输出模糊集被压扁)。工具箱支持这两种方法,但本节中的示例使用截断。金宝app

模糊规则评估步骤自上而下:模糊化输入,对模糊化输入应用逻辑运算符,对先行输出应用蕴涵运算符

If-Then规则摘要

解释if-then规则是一个由三部分组成的过程。该过程将在下一节中详细说明:

  1. 模糊化输入:将先行项中的所有模糊语句解析为0到1之间的隶属度。如果先行项只有一个部分,那么这就是对规则的支持程度。金宝app

  2. 对多个零件先行项应用模糊算子:如果先行词有多个部分,应用模糊逻辑运算符,将先行词解析为0 ~ 1之间的单个数字。这是对规则的支持程度。金宝app

  3. 运用暗示法:利用对整个规则的支持度来塑造输出模糊集金宝app。模糊规则的结果将整个模糊集分配给输出。这个模糊集由一个隶属函数来表示,选择这个隶属函数来表示结果的性质。如果先行词只有部分为真,(即赋值小于1),则输出模糊集将根据蕴涵方法截断。

一般来说,单凭一条规则是无效的。需要两个或两个以上的规则来相互竞争。每个规则的输出都是一个模糊集。然后将每个规则的输出模糊集聚合为单个输出模糊集。最后,结果集被解模糊,或解析为单个数字。使用模糊逻辑设计器构建模糊系统显示了一种称为a的特定类型的模糊推理系统从开始到结束的整个过程Mamdani类型

参考文献

[1] 杜布瓦、迪迪埃和亨利·M·普拉德。模糊集与系统:理论与应用.《科学与工程的数学》,第144页。纽约:学术出版社,1980。

考夫曼和古普塔。模糊算法导论:理论与应用范·诺斯特兰·莱因霍尔德电气/计算机科学与工程系列。纽约:范·诺斯特兰·莱因霍尔德公司,1985年。

[3]李,C.C. '控制系统中的模糊逻辑:模糊逻辑控制器。我”。IEEE系统、人与控制论交易20日,没有。2(1990年4月):404-18。https://doi.org/10.1109/21.52551

[4] 控制系统中的模糊逻辑:模糊逻辑控制器。IEEE系统、人与控制论交易20,第2号(1990年4月):419-35。https://doi.org/10.1109/21.52552

[5] 马姆达尼、E.H.和S.阿西利安。”用模糊逻辑控制器进行语言综合的实验。国际人机研究杂志7,第1号(1975年1月):1-13。https://doi.org/10.1016/S0020-7373(75)80002-2

[6] Mamdani,E.H.“模糊控制器语言综合的进展”。国际人机研究杂志8,不。6(1976年11月):669-78。https://doi.org/10.1016/S0020-7373(76)80028-4

[7] Mamdani,E.H.“模糊逻辑在使用语言合成的近似推理中的应用”。IEEE计算机汇刊C-26,不。12(1977年12月):1182-91。https://doi.org/10.1109/TC.1977.1674779

[8] Schweizer,B.和A.Sklar,“结合函数和抽象半群”。出版。数学。德布勒森10(1963): 69 - 81。

[9] Sugeno,M.,“模糊测度和模糊积分:综述”,(M.M.Gupta,G.N.Saridis和B.R.Gaines,编辑)模糊自动机与决策过程,第89-102页,北荷兰,纽约,1977年。

[10] Sugeno,Michio,ed。模糊控制的工业应用. 阿姆斯特丹 ; 纽约 : 美国纽约州:北荷兰 ; 美国和加拿大的独家经销商,爱思唯尔科学酒吧。Co,1985年。

[11] Yager, Ronald R. ' On a General Class of Fuzzy Connectives '。模糊集与模糊系统4,没有。3(1980年11月):235-42。https://doi.org/10.1016/0165-0114(80)90013-5

Yager, Ronald R.和Dimitar P. Filev。“通过山聚类生成模糊规则”。智能与模糊系统学报2,没有。3(1994): 209 - 19所示。https://doi.org/10.3233/IFS-1994-2301

[13] Zadeh,洛杉矶,“模糊集”。信息和控制8,不。3(1965年6月):338-53。https://doi.org/10.1016/s0019 - 9958 (65) 90241 - x

[14] 《分析复杂系统和决策过程的新方法概述》。IEEE系统、人与控制论交易SMC-3,第1期(1973年):28-44页。https://doi.org/10.1109/TSMC.1973.5408575

[15]陈守煜,洛杉矶“语言变量的概念及其在近似推理中的应用。我”。信息科学8,不。3(1975): 199 - 249。https://doi.org/10.1016/0020-0255(75)90036-5

[16]陈守煜,洛杉矶“语言变量的概念及其在近似推理中的应用。二世”。信息科学8,第4号(1975):301-357。https://doi.org/10.1016/0020 - 0255 (75) 90046 - 8

[17] 语言变量的概念及其在近似推理中的应用。三'。信息科学9日,没有。1(1975): 43 - 80。https://doi.org/10.1016/0020-0255(75)90017-1

[18] Zadeh,L.A.“模糊逻辑”。计算机21,第4号(1988年4月):83-93。https://doi.org/10.1109/2.53

[19] Zadeh,L.A.“模糊逻辑中的知识表示”。IEEE知识与数据工程汇刊1,没有。1(1989年3月):89-100。https://doi.org/10.1109/69.43406

相关的话题