我正在设计一个模糊控制器,为此,我必须定义 3 个三角函数集。他们是:
1 large
2 medium
3 small
但我的问题是我只有以下数据:
Maximum input = 3 Minimum input= 0.1
Maximum output = 5.5 Minimum output= 0.8
如何仅基于此给定信息定义 3 个三角形设置范围?
我正在设计一个模糊控制器,为此,我必须定义 3 个三角函数集。他们是:
1 large
2 medium
3 small
但我的问题是我只有以下数据:
Maximum input = 3 Minimum input= 0.1
Maximum output = 5.5 Minimum output= 0.8
如何仅基于此给定信息定义 3 个三角形设置范围?
这是三角隶属函数的公式
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
你应该可以从这里拿第二个例子,但如果不让我知道。值得指出的是,中点b
在您的情况下可能不是理想的。a
和之间的任何点c
都可以作为你的b
,只要知道它是隶属函数相等的点1
。
很难说,但看起来您可能只是为其中两个函数提供了参数,可能是小型和大型或中型和大型。您可能需要对第三个隶属函数进行一些判断。