图解模糊推理过程(超详细步骤)

我们前面已经讨论了三角形、梯形、高斯型、S型、Z型、Π型6种隶属函数,下一步进入模糊推理阶段。

有关六种隶属函数的特点在"Pi型隶属函数(Π-shaped Membership Function)的详细介绍及python示例"都有详细讲解:https://lzm07.blog.csdn.net/article/details/146461397

模糊推理的核心是根据规则库将输入映射到输出,所以需要分步骤解释这个过程。需要将输入变量T和H的隶属度结合模糊规则库来计算输出Y的隶属度。

模糊推理 是模糊逻辑系统的核心步骤,其目标是根据输入变量的隶属度和预先定义的模糊规则库,推导出输出变量的隶属度。整个过程分为以下四个关键阶段:模糊化、规则评估、聚合和解模糊化等步骤。

前面多次用空调控制 系统举例,其中温度T和湿度H作为输入,冷气阀门的开度作为输出。在例子中,需要定义输入变量T和H的隶属函数,比如低温、中温、高温,低湿、中湿、高湿。然后建立规则库,例如如果温度高且湿度高,则阀门全开。接着,计算每个规则的激活强度,如何应用蕴含方法(比如最小操作),然后通过聚合所有规则的输出,最后解模糊化得到具体数值。比如假设输入温度为30度,湿度为70%,计算每个条件的隶属度,应用规则,得到每个规则的输出,再聚合和解模糊化。简化步骤为:

(1)定义输入变量T和H的隶属函数

(2)建立规则库

(3)计算每个规则的激活强度

(4)聚合所有规则的输出

(5)解模糊化得到具体数值

接下来对推理过程的各个阶段进行详细说明:

1. 模糊化 (Fuzzification)

(1)目标:将精确的输入值(如温度T=28∘C、湿度H=70%)转换为对应模糊集合的隶属度。

如前文使用三角形隶属函数对温度T进行处理的例子:

其中,a表示左边界(隶属度为0的点),b表示顶点(隶属度为1的点),c表示右边界(隶属度为0的点)。

(2)步骤:对每个输入变量(T和H)的模糊集合(如"低温"、"中温"、"高温"),计算输入值在这些集合中的隶属度。

例如:温度T=28∘C在模糊集合"中温"的隶属度为0.8,在"高温"的隶属度为0.2。湿度H=70% 在模糊集合"高湿"的隶属度为0.6,在"中湿"的隶属度为0.4。

2. 规则评估 (Rule Evaluation)

目标:根据模糊规则库中的每条规则,计算其激活强度(Firing Strength),并确定输出隶属度的初步形状。

模糊规则是自己建立的。

关键操作:

(1)激活强度计算:使用模糊逻辑操作(如"与"操作取最小值,"或"操作取最大值)。

(2)输出隶属度裁剪:将激活强度作用于输出隶属函数,通常使用最小蕴含法(Min-Implication)乘积蕴含法(Product-Implication)

示例规则库:

(1)规则1:如果T 是"高" 且H 是"高",则Y 是"全开"。

(2)规则2:如果T 是"中" 或H是"中",则Y是"半开"。

(3)规则3:如果T 是"低" 且H 是"低",则Y 是"关闭"。

计算示例(假设T=28∘C, H=70%):

(1)规则1:

  1. T 是"高"的隶属度 = 0.2
  2. H 是"高"的隶属度 = 0.6
  3. 激活强度 = min(0.2, 0.6) = 0.2
  4. 输出隶属度:将激活强度 0.2 作用于"全开"隶属函数(如裁剪到高度0.2)

(2)规则2:

  1. T 是"中"的隶属度 = 0.8
  2. H 是"中"的隶属度 = 0.4
  3. 激活强度 = max(0.8, 0.4) = 0.8
  4. 输出隶属度:将激活强度 0.8 作用于"半开"隶属函数

(3)规则3:

  1. T 是"低"的隶属度 = 0
  2. H 是"低"的隶属度 = 0
  3. 激活强度 = min(0, 0) = 0
  4. 输出隶属度:无贡献。

3. 聚合 (Aggregation)

目标:将所有规则的输出隶属度合并为一个综合的模糊输出集合。

方法:将每条规则裁剪后的输出隶属函数取最大值求和,得到最终的模糊输出隶属度分布。

示例:

规则1的裁剪输出为高度0.2的"全开"隶属函数。

规则2的裁剪输出为高度0.8的"半开"隶属函数。

聚合结果 = max(规则1输出, 规则2输出)。

4. 解模糊化 (Defuzzification)

目标:将模糊的输出隶属度转换为精确的控制值(如阀门开度Y=65%)。

常用方法:

(1)重心法 (Centroid):计算隶属度曲线下面积的质心。

(2)最大值平均法 (Mean of Maxima):取隶属度最大点的平均值。

示例:假设聚合后的输出隶属度分布如图,通过重心法计算得到Y=65%。

5. 完整案例演示

(1)场景:空调阀门控制系统

(2)输入变量:

温度T=28∘C

湿度H=70%

(3)模糊规则库:

如果T 高 且 H 高,则 Y 全开。

如果T 中 或 H 中,则 Y 半开。

如果T 低 且 H 低,则 Y 关闭。

(4)步骤说明:

1)模糊化:T=28 ∘C 的隶属度:

中温(Medium):0.8

高温(High):0.2

2)H=70% 的隶属度:

中湿(Medium):0.4

高湿(High):0.6

(5)规则评估:

规则1:激活强度 = min(0.2, 0.6) = 0.2 → 裁剪"全开"隶属函数至高度0.2。

规则2:激活强度 = max(0.8, 0.4) = 0.8 → 裁剪"半开"隶属函数至高度0.8。

规则3:激活强度 = 0 → 无贡献。

(6)聚合:将规则1和规则2的裁剪结果取最大值,得到综合输出隶属度。

(7)解模糊化:使用重心法计算聚合后的隶属度曲线质心,假设得到Y=65%。

关键总结

(1)模糊规则库设计:规则需覆盖所有可能的输入组合,逻辑需符合实际控制需求。

(2)参数敏感性:激活强度计算方法(min/max)、蕴含方法(min/product)和解模糊化方法(重心法/MoM)直接影响输出结果。

(3)可视化调试:通过绘制聚合后的输出隶属度曲线,验证逻辑合理性(如是否出现意外多峰或隶属度突变)。

通过模糊推理,系统能够以人类可理解的规则处理不确定性,在复杂控制场景中表现出色(如温度控制、自动驾驶决策)。

相关推荐
2401_841495641 小时前
【计算机视觉】基于数学形态学的保留边缘图像去噪
人工智能·python·算法·计算机视觉·图像去噪·数学形态学·边缘保留
数字化顾问1 小时前
【深度学习计算机视觉】09:语义分割和数据集——应用场景与前沿探索
深度学习
三天哥1 小时前
Sora 2为什么会火?
人工智能·gpt·ai·aigc·agi·ai视频·sora
逻辑留白陈1 小时前
2025年实用大模型工具清单
人工智能·学习方法
十八岁讨厌编程1 小时前
【算法训练营Day30】动态规划part6
算法·动态规划
许泽宇的技术分享1 小时前
AI驱动的视频生成革命:MoneyPrinterTurbo技术架构深度解析
人工智能·内容创作·ai视频生成
CoderYanger1 小时前
优选算法-双指针:2.复写零
java·后端·算法·leetcode·职场和发展
飞哥数智坊1 小时前
“成章”写作助手开源:中秋赏不成月,那就开源一个 AI 实战项目吧
人工智能·ai编程·trae
colus_SEU1 小时前
【循环神经网络6】LSTM实战——基于LSTM的IMDb电影评论情感分析
人工智能·rnn·深度学习·神经网络·lstm
无风听海2 小时前
神经网络之损失函数
深度学习·神经网络·机器学习