主要内容

模糊树

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

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

层次结构的类型

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

从左到右,示例增量、聚合和级联模糊树结构

增量式结构

在增量结构中,输入值被包含在多个阶段中,以在多个层次上细化输出值。例如,上图显示了一个具有模糊推理系统的三级增量模糊树 F 年代 n ,在那里表示FIS的索引n水平。在增量模糊树中,= 1,表示每一层只有一个模糊推理系统。在前面的图中j输入FIS在n电平显示为输入 x j n ,而k输出FIS在n电平显示为输入 y k n .在图中,n= 3,j= 1或2,和k= 1。如果每个输入都有成员函数(MFs),每个FIS都有一套完整的2规则。因此,规则的总数为纳米2= 3 × 32= 27

下图显示了一个单片电路(n= 1)四输入FIS (j=1, 2, 3, 4);= 3)。

单个FIS有四个输入和一个输出

在图中的FIS中,规则总数为纳米4= 1 × 34= 81.因此,增量模糊树的规则总数与输入对的数量成线性关系。

在增量模糊树中,不同层次的输入选择使用的是基于它们对最终输出值的贡献的输入排名。贡献最大的输入值通常在最低级别使用,而影响最小的输入值则在最高级别使用。换句话说,低阶输入值依赖于高阶输入值。

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

颜色和门值进入第一个FIS。第一个FIS的功率值和输出进入第二个FIS。自动驾驶仪值和第二个FIS的输出进入第三个FIS。

举例说明在MATLAB中创建增量模糊树®的“创建增量FIS树”示例fistree参考页面。

聚合结构

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

例:具有四个输入和一个输出的聚合模糊树。

在这个聚合模糊树中,1= 1, 2,2= 1。因此,每个级别包含不同数量的FIS。的j输入n第一个FIS如图所示作为输入 x n j ,k输出n第一个FIS显示为输出 y n k .在图中,j= 1, 2,k= 1。换句话说,每个FIS有两个输入和一个输出。如果每个输入都有MFs,那么每个FIS都有一套完整的2规则。因此,三个模糊系统的规则总数为3条2= 3 × 32 = 27,与类似配置的增量FIS相同。

在聚合的模糊树中,输入值自然地分组在一起以进行特定的决策。例如,自主机器人导航任务结合了避障和目标到达子任务来实现无碰撞导航。为了实现导航任务,模糊树可以使用四种输入:到最近障碍物的距离、到最近障碍物的角度、到目标的距离和目标的角度。距离和角度是根据机器人当前的位置和方向来测量的。在这种情况下,在最低水平,输入自然分组如下图所示:两个模糊系统分别处理单个组的输入,然后另一个模糊系统结合它们的输出,为机器人产生一个无碰撞的航向。

在第一个关卡中,障碍和目标输入各进入一个不同的FIS。第一层的输出进入第二层的FIS。

关于在MATLAB中创建聚合模糊树的示例,请参见fistree参考页面。

聚集结构的变异

聚合结构的一种变体称为平行结构[1]时,对最低级模糊系统的输出直接求和,得到最终的输出值。下图显示了一个并行模糊树的示例,其中的输出为fis1fis2求和得到最终结果。

并行模糊树结构,其中两个双输入模糊系统的输出使用和操作组合。

fistree对象不提供求和节点Σ。因此,必须添加自定义聚合方法来评估并行模糊树。例如,请参阅fistree参考页面。

级联或组合结构

级联结构,也称为组合结构,是将增量结构和聚合结构结合起来构造模糊树。这种结构适用于同时包含相关和不相关输入的系统。树将相关的输入分组为聚合结构,并在增量结构中添加不相关的输入。下面的图显示了一个级联树结构的例子,其中前四个输入成对地分组在一个聚合结构中,第五个输入添加在一个增量结构中。

一个级联模糊树结构的例子

例如,考虑机器人导航任务聚合结构.假设任务包含另一个输入,即机器人先前的航向,以防止机器人航向发生较大变化。您可以使用下图的增量结构添加此输入。

组合模糊树结构,其中第二级FIS的输出通过第三级FIS与前一级机器人的航向相结合。

关于在MATLAB中创建聚合模糊树的示例,请参见fistree参考页面。

添加或删除FIS树输出

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

对模糊树进行聚合,并在树的第一级上增加一个与FIS对象的中间结果相连接的输出。

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

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

一个fistree对象允许对多个输入使用相同的值。例如,在下图中,input2fis1input1fis2在评估过程中使用相同的值。

聚合模糊树,其中一个输入连接到两个不同的FIS对象在第一级。

有关如何以这种方式构造FIS树的示例,请参阅fistree参考页面。

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

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

调整模糊树

在模糊树中配置了内部连接之后,下一步是调优树的参数。例如,请参见调整FIS树的汽油里程预测

参考文献

Siddique, Nazmul和Hojjat Adeli。计算智能:模糊逻辑、神经网络和进化计算的协同.英国牛津:John Wiley & Sons Ltd ., 2013。https://doi.org/10.1002/9781118534823

另请参阅

相关的话题