【发布时间】:2012-12-07 15:36:41
【问题描述】:
我一直在做一个涉及模糊逻辑控制器的项目,到目前为止一切都很顺利。
我已经成功地建模和实现了范数(S 和 T 范数)、补充、模糊命题和隶属函数。
但是,我现在面临着对 FuzzyVariable 建模的挑战,其中包括 FuzzySet,其中包括 UniversalSet。
我的项目适用于离散值,但我仍想为连续值添加一些支持。
换句话说,我希望有一个类似于这个的层次结构:
public interface UniversalSet {
}
public abstract class DiscreteUniversalSet implements UniversalSet {
}
public abstract class ContinuousUniversalSet implements UniversalSet {
}
public interface FuzzySet {
}
public abstract class DiscreteFuzzySet implements FuzzySet {
private DiscreteUniversalSet universalSet;
}
public abstract class ContinuousFuzzySet implements FuzzySet {
private ContinuouUniversalSet universalSet;
}
问题是,我希望离散全集能够返回离散值列表,但连续全集返回范围(下限和上限)。
alpha 交叉点也是如此。我希望方法 getAlphaIntersection(double alpha) 返回离散模糊集的离散值列表和连续模糊集的范围列表。
目前,这个问题让我想起了方形矩形(或圆椭圆)问题,但我不确定如何进行。
感谢任何帮助:D
【问题讨论】:
-
我不熟悉模糊逻辑域,但是我也不太明白你的问题。也许展示更多你到目前为止所拥有的东西会有所帮助。似乎要同时支持离散集和连续集,您可以声明返回值的抽象,该抽象将具有离散和连续实现。
-
如果您的所有操作都返回范围或离散值,您可以使您的
FuzzySet接口通用该类型
标签: java domain-driven-design domain-model fuzzy-logic