模糊树

随着模糊系统的输入数量的增加,规则的数量呈指数增长。这种庞大的规则库降低了模糊系统的计算效率。这也使得模糊系统的操作更加难以理解,使得规则和隶属函数参数的调整更加困难。由于许多应用程序具有有限数量的训练数据,因此大型规则库降低了调优模糊系统的可泛化性。

为了克服这个问题,您可以将模糊推理系统(FIS)实现为一个由更小的相互连接的FIS对象组成的树,而不是一个单一的单片FIS对象。这些模糊树也被称为分层模糊系统因为模糊系统被安排在层次树结构中。在树形结构中,低层模糊系统的输出被用作高层模糊系统的输入。与具有相同输入数量的单一FIS相比,模糊树具有更高的计算效率和更易于理解。

等级结构的类型

有几种模糊树结构可以用于您的应用程序。下图显示了常用的模糊树结构:增量结构、聚合结构或级联结构。

增量式结构

在增量结构,输入值被以多级方式并入细化在几个级别的输出值。例如,上图显示了三级增量模糊树有模糊推理系统 F 一世 小号 一世 ñ ,在那里一世中FIS的索引ñ个级别。在增量模糊树,一世= 1,表示每一层只有一个模糊推理系统。在前面的图中Ĵ的个输入一世在那里ñ第一级显示为输入 X 一世 Ĵ ñ ,而ķ的第输出一世在那里ñ第一级显示为输入 X 一世 ķ ñ 。在图中,ñ= 3,Ĵ= 1或2,且ķ= 1。如果每个输入具有成员函数(MFs),每个FIS都有一套完整的2规则。因此,这些规则的总数是纳米2= 3⨉32= 27

如下图所示的单片(ñ= 1)具有四个输入端FIS(Ĵ=1、2、3、4)和3个MFs (= 3)。

在该图的FIS中,规则总数为纳米4= 1⨉34= 81。因此,这些规则以增量模糊树总数为线性的输入对数。

在不同层次的增量模糊树输入选择使用基于其对最终输出值的贡献输入排名。贡献最大的输入值通常用于在最低水平,而最有影响的是在最高级别使用。换言之,低等级的输入值都依赖于高秩的输入值。

在增量模糊树中,每个输入值通常有助于推理过程在一定程度上,而不与其它输入被显著相关。例如,模糊系统预测购买使用四个输入汽车的可能性:颜色,门的数目,马力,自动驾驶仪和。输入是四个不同的汽车功能,可独立影响买家的决定。因此,输入可以使用现有的数据以构造模糊树,如图中下图进行排序。

举例说明如何在MATLAB中创建增量模糊树®,参见在。上创建增量FIS树的示例fistree参考页面。

聚集态结构

在一个聚合的结构中,输入值被合并为最低级别的组,其中每个输入组被输入到一个FIS中。低层模糊系统的输出使用高层模糊系统进行组合(聚合)。例如,下面展示了一个具有模糊推理系统的两级聚合模糊树 F 一世 小号 一世 ñ ñ ,在那里一世ñ中FIS的索引ñ个级别。

在这个聚集的模糊树中,一世1= 1,2和一世2= 1。因此,每个级包括不同数量的FIS的。该Ĵ的个输入一世ñ输入如图所示 X 一世 ñ Ĵ ,ķ的第输出一世ñFIS显示为输出 ÿ 一世 ñ ķ 。在图中,Ĵ= 1,2和ķ= 1。换句话说,每个FIS有两个输入和一个输出。如果每个输入MFs,那么每个FIS都有一个完整的集合2规则。因此,这三个模糊系统的规则总数为32= 3⨉32 = 27日,也就是作为增量FIS相似的配置。

在一个聚集模糊树,输入值自然对特定决策组合在一起。例如,自主机器人导航任务联合避障和目标达成的无碰撞导航子任务。为了实现导航任务,模糊树可以使用四个输入:到最近的障碍物距离,最接近障碍的角度,目标距离和目标的角度。距离和角度相对于当前位置和机器人的前进方向测量的。在这种情况下,在最低水平,输入如图如下图自然组:障碍物的距离和障碍物的角度(第1组)和目标的距离和目标角度(第2组)。两个模糊系统分别处理各个组输入,然后另一个模糊系统结合它们的输出以产生用于所述机器人无碰撞的标题。

有关说明如何在MATLAB中创建聚合模糊树的示例,请参见在fistree参考页面。

聚集结构变化

在一个变化的聚合结构称为平行结构[1],将最下层模糊系统的输出直接求和,得到最终的输出值。下图显示了一个并行模糊树的例子,其中fis1和fis2的输出被求和以产生最终的输出。

fistree对象不提供求和节点Σ。因此,您必须添加自定义聚合的方法来评估并行模糊树。举一个例子,请参阅“创建和评估并行FIS树”上fistree参考页面。

级联或组合结构

级联结构,也被称为组合的结构,结合了增量和聚集结构构建模糊树。这种结构适合于包括相关和不相关的输入的系统。该树基团在聚合结构中的相关输入,和在增量结构增加了不相关的输入。如下图所示的级联树结构,其中,所述第一四个输入被分组成对以聚集结构和第五输入以增量结构被添加的一个例子。

例如,考虑前面讨论的机器人导航任务聚集态结构。假设任务包括另一输入,机器人的一个标题,考虑到防止机器人标题大的变化。您可以通过如下图的增量结构中添加此输入。

对于说明了MATLAB创建聚集模糊树一个例子,看到的例子“创建级联FIS树”fistree参考页面。

添加或删除FIS树输出

当你计算a的值时fistree对象,它只返回未连接到模糊树中的任何FIS输入的打开输出的结果。您可以选择访问树中的其他输出。例如,在下面的聚合模糊树图中,您可能希望在评估树时获得fis2的输出。

您可以添加这样的输出到fistree对象。如果模糊树总是至少有一个输出,您还可以删除输出。有关的示例,请参见“更新FIS树输出”fistree参考页面。

对FIS树的多个输入使用相同的值

一个fistree对象允许对多个输入使用相同的值。例如,在下面的图中,fis1的input2和fis2的input 1在计算时使用相同的值。

有关如何以这种方式构造FIS树的示例,请参见“对一个FIS树的多个输入使用相同的值”fistree参考页面。

在FIS树中更新模糊推理系统

您可以添加或删除一个单独的FIS元素fistree对象。当你这样做时,软件会自动更新连接输入,输出的性质fistree对象。例如,参见“更新FIS树中的模糊推理系统”fistree参考页面。

调模糊树

一旦您在模糊树中配置了内部连接,下一步就是调整树的参数。例如,参见调FIS树的耗油预测

参考文献

[1] Siddique, N.和H. Adeli。计算智能:模糊逻辑的协同作用,神经网络和进化计算。新泽西州霍博肯:威利,2013年。

也可以看看

相关的话题