【问题标题】:Inference engine - hybrid rules with crisp and fuzzy facts推理引擎 - 具有清晰和模糊事实的混合规则
【发布时间】:2016-10-15 02:08:26
【问题描述】:

我想制作一个推理模糊引擎,它可以推断出 3 类规则:

  • 清晰的规则。
  • 模糊规则。
  • 具有清晰和模糊事实的混合规则。

每个规则都有一个假设集、一个结论集和一个确定性因子。在集合的事实中,如果一个事实是一个模糊事实,那么它就具有一定的真实度。

有推导清晰规则和模糊规则的教程,但是如何推导混合规则?

【问题讨论】:

    标签: fuzzy-logic inference-engine


    【解决方案1】:

    不是清晰规则的模糊规则泛化(如果我正确理解清晰规则的含义)。将模糊规则转换为清晰规则的方法是确保前件中的隶属函数 (MF) 不与任何其他隶属函数重叠,并且随后的 MF 是这样的,当去模糊时,它基本上给出了单一的清晰值。

    例如: 输入温度如下 MF:

    temp_low_mf = fuzz.trimf(x_temp, [0, 0, 10])
    temp_med_mf = fuzz.trimf(x_temp, [0, 20, 45])
    temp_high_mf = fuzz.trimf(x_temp, [20, 45, 45])
    

    输出风扇速度具有与脆规则相关的MF之一:

    fanspeed_low_mf = fuzz.trimf(x_fanspeed, [0, 0, 0])
    

    所以下面的模糊规则实际上是一个清晰的规则:

    rule1 = ctrl.Rule(tempAnt['low'], fanspeedCon['low'], "Cold Climate Rule")
    

    即:如果温度小于 10,则风扇速度应为 0。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-18
      • 2016-03-17
      • 1970-01-01
      相关资源
      最近更新 更多