【模糊数学】模糊逻辑,隶属度,模糊逻辑应用,模糊推理过程

2023-05-16

【update】下一篇博客我将会讲如何用这篇博客的模糊推理过程构建一个图像边缘检测的模糊推理系统~~~

链接:https://blog.csdn.net/luolan9611/article/details/94296622

这是我的一项大作业,两篇博客加起来有写实验报告和代码,并有做PPT,下载链接见博客最后。

一、经典逻辑和模糊逻辑

如果想看模糊数学的数学干货讲义,强推这一PPT:Fuzzy Mathematics and Its in Technology,见博客最后的下载链接中:模糊系统/资料搜集/Fuzzy_Mathematics_and_Its_Importance_in.pptx

 经典逻辑(布尔逻辑)坚持所有事物(陈述)都可以用二元项(0或1,黑或白,是或否)来表达,而模糊逻辑用隶属度替代了布尔真值,允许在包含0和1之间的集合成员关系值。这些陈述表示实际上接近于日常人们的语意陈述,因为“隶属”在多数时候是部分的,非二元的,不精确的。

以星期四是周末吗?星期五是周末吗?这样的问题举个例子:

经典逻辑给出的回答:是(1)/不是(0),像下面的左图,星期五在凌晨的时候对这个问题的回答是1,所以有个阶跃。

模糊逻辑给出的回答:星期四好像不算周末吧,如果“是周末”得分为1的话,可能周四只有0.1的程度算是周末;周五算是周末的程度会高一些,虽然白天要上班但晚上就可以休息了呀,那给个0.8分好了,像下边的右图。

同样针对于常见的身高问题来说的话,身高高,身高低,不算很高,非常高,这一系列的表述不是简单的0和1能够表达的,这样的程度的概念具有一定的模糊性,因此需要模糊集,需要模糊逻辑。

模糊集:被定义为具有连续成员等级的一类对象。它的特征在于“隶属函数”或“特征函数”,隶属函数为模糊集的每个成员分配单位区间[0,1]中的隶属度,每个成员的隶属度构成了模糊集。

隶属函数(Membership functions):隶属函数完全定义了模糊集,隶属函数提供元素与模糊集的相似程度的度量(隶属度),所有模糊集中的关键问题之一是如何确定模糊隶属函数,可以

1.根据用户的经验,由用户任意选择(两个用户选择的隶属函数可能根据他们的经验,观点等而有所不同,还是拿周末的那个图为例,越临近周六周日,属于周末的程度就越高,这个具体的值跟不同地区的文化、人们的认可度、个人感觉等等相关,有人觉得周五算周末的程度为0.7,有人会觉得是0.9。)

2.或者使用机器学习方法设计(例如,人工神经网络,遗传算法等)

3.隶属函数可以采用任何形式,一些常见的有三角形,梯形,分段线性,高斯,钟形等隶属函数

隶属度:元素与模糊集的相似程度的度量,通过隶属函数得到。取值在0-1之间。

模糊运算: 常见的模糊集之间的运算:AND取小,OR取大,NOT取1-A

模糊逻辑是处理部分真实概念的布尔逻辑扩展,模糊逻辑事实上是标准布尔逻辑的超集:

第一行是布尔逻辑中的二元真值表,以模糊集的边界0和1这种极端情况进行AND.OR.NOT逻辑运算(如第二行图,AND取小,OR取大,NOT取1-A),可以发现取得的结果和布尔逻辑的结果是相同的。

用绘制的图像把二值(经典)和多值(模糊)表示一下:

 

二、隶属度不是概率

在模糊逻辑中,任何陈述的真实性都是程度问题。模糊隶属度表示在模糊定义的集合中的成员隶属关系,而不是某事件或条件的可能性。举个例子:

小明在阶梯教室401上模糊系统课程,在很多情况下,小明是否在 “在阶梯教室401中”这一集合内是完全明确的,他要么“在阶梯教室401中”要么“不在阶梯教室401中”。

但小明站在门口的时候怎么办呢?

可以被认为是“部分在阶梯教室401中”。量化这个部分的表述就会产生一个模糊集合成员关系。比如,只有他的小脚趾在阶梯教室401,我们可以说小明是0.01“在阶梯教室401中”。只要他站在了门口,概率问题是不能解决他完全的“在阶梯教室401”或“不在阶梯教室401”这一问题的。

从上可见模糊集合是基于集合的模糊来定义的而不是随机性。

三、模糊逻辑的应用

家电控制系统:洗衣机控制感知装载量和清洁剂浓度并据此调整洗涤周期等, 一个模糊逻辑洗衣机的应用: 

                         http://www.bel.utcluj.ro/dce/didactic/sln/lab_eng/5WashingMachine/html/washing_machine.html

模糊图像处理:噪声检测和移除、边缘检测、图像分割等

汽车刹车控制系统、航空航天飞行器控制系统等


四、模糊推理过程——以小费推理系统为例

    以一个两输入单输出的小费推理系统为例,餐厅的服务质量10分为满分,食物质量10分为满分,根据服务质量和食物质量的打分,使用模糊推理推测应该给出多少小费?

首先,写出三条给小费的法则:

        If the service is poor or the food is rancid, then tip is cheap.

        如果服务不好或者食物变质,那么小费就很便宜。

        If the service is good, then tip is average.

        如果服务好,那么小费就是平均水平。

        If the service is excellent or the food is delicious, then tip is generous.

        如果服务很好或者食物很好吃,那么小费就很慷慨了。

假设平均小费是15% ,慷慨的小费是25% ,便宜的小费是5% 。构建的消费推理系统如下:

我们将对食物以及服务的评分(0-10)这是确定的,通过隶属函数转换为模糊集(食物的美味程度,服务的好坏程度),根据我们定义的三条评判规则,进行并行的模糊推理,然后将每个规则的结果合并起来,再去模糊化从模糊集转到确定的消费结果。

 

下面我将用PPT展示模糊推理的五个步骤:

在第一步输入变量的模糊化中,隶属函数是用户自行选择的隶属函数,在上图中,食物delicious与否有一个隶属函数,当输入为8时,得到食物是delicious的隶属度为0.7。

=========

在第二步中,同理,excellent定义了一个隶属函数,输入为3得到的隶属度为0,意为当服务评价为3时,这个服务属于excellent的程度为0。我们可以看到服务excellent的程度和食物delicious的程度在规则or下,运用了模糊逻辑运算,取了大的那个值为结果。

==========

在第三步中,我们将计算前提条件(食物好坏与服务好坏)对后件(小费多少)的影响。小费generous(定义了一个隶属函数),我们运用implication operator(蕴含算子),将前件得到的结果0.7对小费generous模糊集做一个截断,这就能够将前提的影响作用于后件。

==========

对于两个输入,并行运算三个规则条件,将每个规则经过截断后的结果进行Aggregation(聚集起来),就得到了一个总的结果,如上图所示。

==========

将Result of aggregation进行去模糊化(使用质心的方法),就可以得到最终的结果,应给的小费为16.7%。这个质心的方法相当于是找到这个图像面积下,平均分割左右面积的一条线,这条线所对应的横坐标的值就是16.7%。整个推理过程示意图如右边的所示。

===========

本篇博客及下篇博客的PPT制作如下所示,均已上传到百度网盘:

链接:https://pan.baidu.com/s/1AmT4TtBAxj1FKf4KUFcsBw 
提取码:kcfe 
复制这段内容后打开百度网盘手机App,操作更方便哦

===============================================================

参考文献:

是Matlab官网的哈哈 https://ww2.mathworks.cn/help/fuzzy/getting-started-with-fuzzy-logic-toolbox.html

大概先写这么多吧,去写下一篇啦,资料整理好了下载链接会一起传上来哒,可爱。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【模糊数学】模糊逻辑,隶属度,模糊逻辑应用,模糊推理过程 的相关文章

  • 超声波模块

    HC SR04 简介 HC SR04超声波模块可提供2cm 400cm的距离感测功能 xff0c 测量精度可以达到3mm 模块包括超声波发射器 xff0c 接收器与控制电路 基本工作原理 1 采用Trig引脚触发 xff0c 给至少10us
  • /proc/interrupts

    proc interrupts中的字段依次是逻辑中断号 中断在各CPU上发生的次数 xff0c 中断所属父设备名称 硬件中断号 中断触发方式 电平或边沿 中断名称 proc interrupts的具体实现查看代码kernel irq pro
  • BGP-LS 简介

    BGP LS xff08 BGP Link state xff09 汇总IGP协议收集的拓扑信息上送给上层控制器 产生原因 BGP LS是收集网络拓扑的一种新的方式 BGP LS特性产生前 xff0c 路由器使用IGP xff08 OSPF
  • ubuntu下vnc使用

    使用apt cache search vncserver命令搜索可以用来安装vncserver的软件包 xff0c 这里选用vnc4server安装vnc 2 使用apt get install vnc4server命令安装vncserve
  • 使用“反射”将 Java 中一种对象类型转换为另外一种类型

    将一种对象类型转换为另外一种类型的常用场景 场景如下 xff1a 一般后端是使用 MVC 三层架构进行分层 实体类 User 用于接收数据库中的数据 xff1b 表现层 UserVo 将数据传给前端 这中间免不了要将实体类转换为表现层中的对
  • Ubuntu18.04 vnc灰屏问题

    vnc安装完以后 xff0c 用客户端登录发现只有5901端口可用 xff0c 但是其他端口登录上去以后都是灰屏的 查找了一下 xff0c 需要修改配置文件 vnc xstartup为如下内容 xff1a bin bash export d
  • 安装docker

    1 查看docker安装目录 whereis docker docker usr bin docker etc docker usr libexec docker usr share man man1 docker 1 gz 2 查询运行文
  • 关于PiBOT使用的一些问题汇总--ing

    xff1a 多机通讯是按照教程设置环境变量ROS MASTER URI 初始化 pibot init env sh xff0c 使用rostopic已经能够查看 xff0c 但是主机PC无法启动launch 原因 xff1a 个人测试是需要
  • ubuntu 19.10系统解决E: 仓库 “http://ppa.launchpad.net/webupd8team/java/ubuntu eoan Release” 没有 Release 文件。

    在终端换源后遇到E 仓库 http ppa launchpad net webupd8team java ubuntu eoan Release 没有 Release 文件 问题 解决方法 xff1a 将对应的ppa删除即可 第一步 xff
  • 使用org-mode生成晨检报告

    原文地址 https lujun9972 github io blog 2020 04 10 使用org mode生成晨检报告 index html 我们设置了每天8点多自动进行调用一次晨检脚本 xff0c 该脚本会将检查的一些数据存入本地
  • 使用Pi-hole屏蔽广告

    原文地址 https www lujun9972 win blog 2020 12 05 使用pi hole屏蔽广告 index html 目录 获取Pi的对外IP地址安装Pi hole配置DNS配置拦截域名 获取Pi的对外IP地址 我们一
  • 笑话理解之Mature

    原文地址 https www lujun9972 win blog 2020 12 09 笑话理解之mature index html 目录 The difference between government bonds and men T
  • 笑话理解之Hearing

    原文地址 https www lujun9972 win blog 2020 12 09 笑话理解之hearing index html 目录 The Hearing Problem The Hearing Problem In a chu
  • Emacs 作为 MPD 客户端

    原文地址 https www lujun9972 win blog 2022 06 26 emacs 作为 mpd 客户端 index html 今天才知道 xff0c Emacs居然内置了一个 mpc el 可以将 Emacs 转换为 M
  • 编译SONiC交换机镜像(转,参考2)

    sonic buildimage 编译SONiC交换机镜像 描述 以下是关于如何为网络交换机构建 ONIE 兼容网络操作系统 xff08 NOS xff09 安装程序镜像的说明 xff0c 以及如何构建在NOS内运行的Docker镜像 请注
  • Emacs 作为 MPD 客户端

    原文地址 https www lujun9972 win blog 2022 06 26 emacs 作为 mpd 客户端 index html 今天才知道 xff0c Emacs居然内置了一个 mpc el 可以将 Emacs 转换为 M

随机推荐