模糊控制基本原理
学习B站up“蓝天的季洁”所作笔记,欢迎大家看原视频
1,为什么?
随着被控对象得复杂性、非线性与耦合性增加,传统控制模型中建立精确的数学模型愈加困难,相比于人脑用丰富的经验进行控制,从而得到较为满意得控制效果。模糊控制就是模拟人的控制规则,用黑箱实现控制(里面没有清晰的控制方法,模糊的)。
模糊控制相比于传统就控制的优点有:不需要模型,适用于对底层逻辑完全不了解的复杂系统。
模糊控制系统结构如图:
在控制流程中,即用模糊控制器来代替传统控制器
模糊控制具体过程:
2, 例子:自动洗衣机模糊控制
其输入为污泥与油脂含量,输出为洗涤时间,具体取值区间见上图。
- 将输入输出进行模糊化处理:
主要方法是将输入输出的清晰值通过映射(隶属函数)的方式变成模糊子集。
对输入污泥含量x[0-100%],我们定义三个模糊子集:
污泥少(SD) ---- 污泥中(MD) ---- 污泥多(LD)
在模糊控制中,隶属函数有钟形、梯形、高斯型等……
这里我们取三角形隶属函数,三个模糊子集如下:
假设污泥含量x=60%,我们画一条垂线,查看x=60%时对应每个子集的点。
可以看到x=60%时对应污泥少(SD)的隶属度为0;对应污泥中(MD)的隶属度为0.8;对应污泥多(LD)的隶属度为0.2。
同理,污泥、油脂与洗涤时间的模糊子集与隶属函数如下:
- 建立模糊规则
- 模糊规则:(人的经验总结)
- 污泥越多,油脂越多,洗涤时间越长;
- 污泥适中,油脂适中,洗涤时间适中;
- 污泥越少,油脂越少,洗涤时间越少。
建立模糊控制规则如下:
其中数字1-9表示第1-9条规则(并不是洗涤时间)
每条模糊控制规则都有蕴含关系:R_i (i=1,2,…,9)
构成总的蕴含关系:R=R_1∪R_2∪…∪R_9
注:这里总的蕴含关系相当于传统控制中的数学模型
模糊推理的总输出:
先求R,再求U
为了减小计算量可以只对被激活的控制规则进行模糊逻辑推理R_i
最终得到0.8∩0.6∩M(t)。在隶属度图中画0.8与0.6两条曲线,然后取小值,如下图:
总输出如下:
在所有红线中取最大值:
- 清晰化处理
对上图黑色部分的最大隶属度线段M_s (t),求面积中心或者重心,其对应的横坐标的值即为清晰值(最终结果)。