Matlab Fuzzy工具箱—小费(Tips)问题

问题说明:
本文主要利用Matlab的Fuzzy工具箱——“Fuzzy Logic Designer ”,解决现实生活中的模糊问题——小费Tips问题。 建立其相对应的模糊推理系统。
操作说明:
在 Fuzzy工具箱 中的操作过程中,未更改的参数,均采用默认值。注意保存!
使用软件:
Matlab R2018b
参考文献:
人工智能技术 / 修春波主编. 机械工业出版社, 2018.8
特别鸣谢:
中国石油大学(华东)机电工程学院 李安教授
修改时间:
2020.05.22

目录:

1、问题题干
2、Fuzzy工具箱的使用
3、输入/输出 语言变量 input/output 的设置
4、设置模糊推理规则rule
5、小费Tips—模糊推理系统的查看

1 问题题干(即模糊问题的大前提)

消费规则:
当服务差或食物差的时候,小费少;
当服务好的时候,小费中等;
当服务很好或食物很好的时候,小费高
使用Matlab图形化工具箱——Fuzzy,可以方便地建立模糊控制系统。

语言变量1:服务质量(service)
论域:[0,10]
语言变量值: 差(poor)、好(good)、很好(excellent)
语言变量值的隶属度函数:高斯函数
差(poor): ( 1.5,0 )
好(good): (1.5,5)
很好(excellent):(1.5,10)

语言变量2:食物质量(food)
论域:[0,10]
语言变量值: 差(rancid)、很好(delicious)
语言变量值的隶属度函数:梯形
差(rancid): ( 0,0,1,3)
好(delicious):(7,9,10,10)

语言变量3:小费(tip)
论域:[0,30]
语言变量值: 低(cheap)、一般(average)、高(generous)
语言变量值的隶属度函数:三角型
差(cheap): ( 0,5,10)
一般(average): (10,15,20)
高(generous):(20,25,30)

2 Fuzzy工具箱的使用(调用及基本操作)

图1

这里需要注意Matlab是否安装“Fuzzy工具箱”,不过大部分用户都是安装了的,如果未安装,则去官网下载相应安装包 进行安装。

调用Fuzzy图形化界面如下:
在这里插入图片描述
在这里插入图片描述
从上图菜单栏中可以添加 “ 输入/输出 语言变量” 。
上图中,鼠标双击左右任意正方形(黄色input1、蓝色output1)都可打开下图界面,可在下图界面中设置输入input1,输出input。
在这里插入图片描述
鼠标双击中间的正方形(白色),可以打开规则rule编辑窗口,如下图。
在这里插入图片描述

3 输入/输出 语言变量 Input/output 的设置

该例题有2个 “输入语言变量”,和1个“输出语言变量”:
输入 语言变量1:服务质量(service)
输入 语言变量2:食物质量(food)
输出 语言变量3:小费(tip)

因此需要添加一个输入input。在Fuzzy初始窗口的左上角有菜单选项,Edit–>Add Variable–>Input。

继续在Fuzzy工具箱初始界面,选中变量,将输入输出变量的命名更改为
input1–>service,
input2–>food,
output1–>tip,效果如图
在这里插入图片描述
接下来,对各语言变量的 论域、语言变量值、隶属度函数进行设置。
语言变量1:服务质量(service)
(1)论域: [0,10]
(2)语言变量值: 差(poor)、好(good)、很好(excellent)
(3)隶属度函数: 高斯函数—差(poor):(1.5, 0)、好(good):(1.5,5)、很好(excellent):(1.5,10)
高斯隶属度函数为:gaussmf;三角形隶属度函数:trimf;梯形隶属度函数:trapmf
在这里插入图片描述
语言变量2:食物质量(food)
论域:[0,10]
语言变量值: 差(rancid)、很好(delicious)
语言变量值的隶属度函数:梯形
差(rancid): ( 0,0,1,3)
好(delicious):(7,9,10,10)

在这里插入图片描述
语言变量3:小费(tip)
论域:[0,30]
语言变量值: 低(cheap)、一般(average)、高(generous)
语言变量值的隶属度函数:三角型
差(cheap): ( 0,5,10)
一般(average): (10,15,20)
高(generous):(20,25,30)
在这里插入图片描述

4 设置模糊推理规则 rule(进行推理的大前提)

规则:Rule
当服务差或食物差的时候,小费少;
当服务好的时候,小费中等;
当服务很好或食物很好的时候,小费高
使用Matlab图形化工具箱——Fuzzy,可以方便地建立模糊控制系统。

这里要特别注意规则①和③中是 “ 或 ” 所要选择 “ or ” 。
在这里插入图片描述

到此,模糊推理系统就建立好了。接下来可以对其进行查看。

5 小费Tips——模糊推理系统的查看

规则观察器 和 模糊推理框图

在这里插入图片描述
小费Tips的模糊推理系统已经设计完成,通过View-rules来查看规则视图,可在线改变输入service 和 food 得到输出 tip 。(如下图所示)
在这里插入图片描述

感谢阅读!如有不当之处,请各位读者积极批评指正!

  • 24
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值