模糊逻辑。如何获得补数
我遇到了以下关于模糊逻辑的模糊逻辑示例。
代表年龄 问题2-1。模糊集可用于表示模糊概念。设U为人类的合理年龄区间。
U = {0, 1, 2, 3, ... , 100}
解 2-1。通过将年龄的通用空间设置为 0 到 100 的范围,可以用模糊集来解释该区间。
问题 2-2。假设“年轻”的概念由模糊集Young表示,其隶属函数由以下模糊集给出。
Young= FuzzyTrapeZoid [0 ,0 ,25 ,40]
我想了解的是如何获得 Complement[Young]
i came across the following fuzzy logic example about fuzzy logic.
Representing Age
Problem 2-1. Fuzzy sets can be used to represent fuzzy concepts. Let U be a reasonable age interval of human beings.
U = {0, 1, 2, 3, ... , 100}
Solution 2-1. This interval can be interpreted with fuzzy sets by setting the universal space for age to range from 0 to 100.
Problem 2-2. Assume that the concept of "young" is represented by a fuzzy set Young, whose membership function is given by the following fuzzy set.
Young= FuzzyTrapeZoid [0 ,0 ,25 ,40]
All i want to understand is how i can get the Complement[Young]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
简单的答案是 Complement[Young] = FuzzyTrapeZoid[25,40,100,100]。这是一张显示(红色)Young 的图像,以及绿色的补色。
您是否在寻找一种算法来解决这个问题?
编辑:添加更多:
通用模糊梯形为:
FuzzyTrapeZoid[A,B,C,D]
成员资格值在 A 之前为 0,然后在 A 和 B 之间从 0 渐变到 1,从 B 到 C 保持为 1,然后在 C 和 D 之间从 1 渐变到 0。 请参阅本简介的第 3 页(警告!pdf)
由于模糊集的补集 =
1 - 隶属函数
,因此您几乎可以通过检查看到这些值。对于原始问题(来自 Mathematica),补码是单一函数。对于通用的 FuzzyTrapeZoid[A,B,C,D],您需要 2 个梯形来补:FuzzyTrapeZoid[0,0,A,B] + FuzzyTrapeZoid[C,D ,100,100]对于 Young 隶属函数,它是 1 到 25,因此补码将为 0 到 25(这会产生 [25,x,x,x],其中 x 尚未确定)。由于 Young 隶属函数在 25 到 40 之间逐渐增加到 0,因此很明显,补集会在相同范围内从 0 增加到 1(这会产生 [25,40,x,x],其中 x 尚未确定) 。最后,由于杨氏隶属函数在 40 到 100 之间为 0,因此在同一范围内补码将为 1,这给出 [x,40,100,100](我们之前知道 x = 25)。
如果您正在寻找一些更正式的证明,很抱歉,我的证明很差,因为我来自柯克船长数学学院:我可以看到它,我可以跳到正确的答案,但我不知道你就是我怎么做的。
The quick answer is that Complement[Young] = FuzzyTrapeZoid[25,40,100,100]. Here is an image to show (in red) Young, and the complement in green.
Were you looking for an algorithm to solve this?
edit: adding more:
A generic fuzzy trapezoid is:
FuzzyTrapeZoid[A,B,C,D]
The membership value is 0 up to A, then ramps from 0 to 1 between A and B, stays at 1 from B to C, then ramps from 1 to 0 between C and D. see page 3 of this intro (warning! pdf)
Since the complement of a fuzzy set =
1 - the membership function
, then you can pretty much see the values by inspection. For the original problem (which comes from Mathematica), the complement is a single function. For the generic oneFuzzyTrapeZoid[A,B,C,D]
you will need 2 trapeziods to make the complement:FuzzyTrapeZoid[0,0,A,B] + FuzzyTrapeZoid[C,D,100,100]
For the Young membership function, it is 1 up to 25, so the complement will be 0 up to 25 (this yields [25,x,x,x] where x is yet to be determined). Since the Young membership function ramps to 0 between 25 and 40, it is clear that the complement will ramp from 0 to 1 in the same range (this yields the [25,40,x,x] where x is yet to be determined). Finally, since the Young membership function is 0 from 40 to 100, the complement will be 1 in the same range, this gives [x,40,100,100] (we knew from before that x = 25).
If you were looking for some more formal proof, I'm sorry, I do proofs poorly as I come from the Captain Kirk school of math: I can see it, and I can jump to the right answer, but I can't tell you exactly how I did it.