Sugeno型(TS型)模糊推理系统及自适应神经网络的模糊推理系统(anfis)应用

Sugeno(TS)型模糊推理系统线性形式

TS系统特点:输出量是输入量的线性函数,与Mamdani控制器的最大不同是没有清晰化模块,因为它的推理结果就是清晰值。同时,用清晰地输出函数uj=pje+qjec+kj代替了Mamdani控制器中的模糊蕴含关系。设系统的两个输入分别是清晰变量x1和x2,将近似推理过程指定为“If x1 is A1 and x2 is A2, then u=f(x1, x2)”,其中A1和A2是两个F集合,输出量u为一个数值函数f(x1,x2),且类型为线性函数。

1.输出函数f(x1,x2,…)的两种形式

举例:设某个双输入-单输出系统,其两个清晰输入变量为e和ec,一个清晰输出量为u,已知A1和A2为F子集。
在0阶T-S型模糊模型中:
If e is A1 and A2 then u=k(k为常数)
在1阶T-S型模糊模型中:
If e is A1 and A2 then u=pe+qec+k
其中p、q和k是与F集合A1、A2有关的常数。

2.计算系统输出U的两种方法

假设系统可用n条模糊规则描述,第i条模糊规则的输出为ui。当某个输入激活了m条规则(n≥m),系统总输出为U,将根据这m个输出ui通过下属两种方法计算得出:

  1. 加权求和法(wtsum)
    设第i条规则输出的结果为ui,它的权重为ωi,则总输出为:
    在这里插入图片描述
    式中ωi表示第i条规则在总输出中所占分量轻重的比例(权重)。
  2. 加权平均法(wtaver)
    Sugeno型(TS型)模糊推理系统及自适应神经网络的模糊推理系统(anfis)应用_第1张图片

自适应神经网络的模糊推理系统(anfis)

1.模型特点

  1. 单输出Sugeno型模糊推理系统(Matlab中);
  2. 训练完成的模型不具备可解释性。
    在Matlab中训练anifs有两种方式:命令行和图形界面。在此介绍图形界面的训练方式。

2.使用MATLAB训练过程

  1. Matlab界面中->APP->搜索fuzzy->打开Neuro-Fuzzy Designer; Sugeno型(TS型)模糊推理系统及自适应神经网络的模糊推理系统(anfis)应用_第2张图片
  2. Load Data
    a) 首先准备数据,我们需要准备Training Data和Checking Data,数据加载有两种加载方式:从文件和从工作区。
    b) 我们在Matlab工作区中准备好需要的数据;
    Sugeno型(TS型)模糊推理系统及自适应神经网络的模糊推理系统(anfis)应用_第3张图片
    分别是train_beta和check_beta,由于设计的是9输入1输出系统,可以看出两者均为749*10矩阵。前9列为输入数据,第10列为输出数据。
    c) 我们在Load data窗口Type选择Training,From选择worksp.,之后输入变量名称,即可加载Training Data,同理完成Checking数据的加载;
  3. 加载或生成FIS模型
    a) 如果加载已有模型,已有模型需要满足的条件为单输出Sugeno型模型,且规则数等于输出情况数目;
    Sugeno型(TS型)模糊推理系统及自适应神经网络的模糊推理系统(anfis)应用_第4张图片
    b) 如果需要生成模型,可以选择两种方式:Grid partition(网格分割法)和Sub. Clustering(相减聚类法)
    Sugeno型(TS型)模糊推理系统及自适应神经网络的模糊推理系统(anfis)应用_第5张图片
  4. 训练模型
    a) 在训练时可以选择的方式有:hybrid(混合法)和Backpropa(反向传播法),推荐使用反向传播法;
    b) 设置Error Tolerance(误差精度)和Epochs(最大训练次数);
    c) 开始训练
  5. 模型测试
    a) 使用Checking Data对训练完成的模型进行检查。

参考文献

  1. MATLAB-Train Adaptive Neuro-Fuzzy Inference Systems.
  2. 石辛民, 郝整清. 模糊控制及其MATLAB仿真[M]. 清华大学出版社, 2008.

你可能感兴趣的:(控制,模糊控制,TS模糊,MATLAB,anfis)