【问题标题】:How to define Traingular membership function for fuzzy controller design?如何定义模糊控制器设计的训练隶属函数?
【发布时间】:2018-07-21 22:49:28
【问题描述】:

我正在设计一个模糊控制器,为此,我必须定义 3 个三角函数集。它们是:

1 large
2 medium
3 small

但我的问题是我只有以下数据:

Maximum input = 3  Minimum input= 0.1

Maximum output = 5.5  Minimum output= 0.8

如何仅基于此给定信息定义 3 个三角形集合范围?

【问题讨论】:

    标签: matlab controller simulink fuzzy-logic control-theory


    【解决方案1】:

    这是三角隶属函数的公式

    f=0 if x<=a
    f=(x-a)/(b-a) if a<=x<=b
    f=(c-x)/(c-b) if b<=x<=c
    f=0 if x>c
    
    where a is the min, c is the max and b is the midpoint.
    

    在您的情况下,取最大值为3 且最小值为0.1 的最高情况。中点是(3+0.1)/2=1.55,所以你有

    f=0 if x<=0.1
    f=(x-0)/(1.55-1) if 0.1<=x<=1.55
    f=(3-x)/(3-1.55) if 1.55<=x<=3
    f=0 if x>3
    

    您应该可以从此处获取第二个示例,但如果没有,请告诉我。值得指出的是,在您的情况下,中点可能不是理想的bac 之间的任何点都可以作为您的 b,只要知道它是隶属函数等于 1 的点。

    很难说,但看起来您可能只是为其中两个函数提供了参数,可能是小型和大型或中型和大型。您可能需要对第 3 个隶属函数进行一些判断。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-19
      • 1970-01-01
      • 2016-04-22
      • 1970-01-01
      • 2011-12-07
      相关资源
      最近更新 更多