模糊逻辑运算符

时间:2013-11-19 12:07:01

标签: machine-learning fuzzy-logic

我正在实施一个具有以下规则的模糊逻辑系统。

输入:

  • 温度[0,10]
  • 湿度[0,10]

规则:

  • 如果温度非常高,那么危险很高
  • 如果湿度正常那么危险很低
  • ...

现在,如果系统的输入激活了这些规则(例如:温度= 9且湿度= 2),我将得到类似于的输出:

             -                  -
            - -                - -
           -   -              -   -
          -     -            -     -
         -----------------------------
Danger:   low       medium    high

COG会给我一个中等范围内的输出值。

我的问题是,我们知道(只是通过观察情节)危险很高,我不想因为低三角形危险而“减弱”输出值。

我应该使用其他deffuzification方法吗?或其他激活/积累方法?我想我可能会为每个规则使用权重得到我想要的东西,但这是最好的方法吗?

2 个答案:

答案 0 :(得分:1)

为什么如果您有两个输入,则将规则分开。我建议您制定规则以避免模糊问题,例如“如果温度正常且湿度正常,那么危险很低”。

答案 1 :(得分:0)

从最初的问题来看,正常湿度(或其中一个湿度)是低危险的弱指标。在这种情况下,我会制定这些规则:

如果温度正常且湿度正常那么危险很低

如果温度高且湿度高,那么危险很高

但是,它可能会发生,其中一个传感器既不正常也不高,因为它有缺陷。上面的AND最终不会激活这两个规则中的任何一个。因此,我总是制定其他规则:

如果温度很高那么危险很高,0.5

如果湿度很高那么危险很高,0.5

(您也可以将两者结合使用)

错误的危险指示可能并不像没有危险的虚假指示那么危险,因此:

如果湿度正常或温度正常那么危险低于0.1