主要内容

模糊树

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

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

层次结构的类型

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

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

增量结构

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

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

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

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

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

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

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

举例说明如何在MATLAB中创建增量模糊树®的“创建增量FIS树”示例菲斯特里参考页面。

聚合结构

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

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

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

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

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

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

聚集结构的变异

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

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

菲斯特里对象不提供求和节点∑。因此,必须添加自定义聚合方法来评估并行模糊树。有关示例,请参见上的“创建和评估并行FIS树”示例菲斯特里参考页面。

级联或组合结构

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

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

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

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

有关在MATLAB中创建聚合模糊树的示例,请参见上的“创建级联FIS树”示例菲斯特里参考页面。

添加或删除FIS树输出

当你评估一个菲斯特里对象,它仅返回开放输出的结果,这些输出未连接到模糊树中的任何FIS输入。您可以选择访问树中的其他输出。例如,在聚合模糊树的下图中,您可能希望在评估树时获得fis2的输出。

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

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

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

一个菲斯特里对象允许对多个输入使用相同的值。例如,在下图中,输入2fis1输入1fis2在评估期间使用相同的值。

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

有关如何以这种方式构造FIS树的示例,请参阅上的“对FIS树的多个输入使用相同的值”示例菲斯特里参考页面。

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

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

调整模糊树

在模糊树中配置内部连接后,下一步是调整树的参数。有关示例,请参阅调整FIS树的汽油里程预测

参考文献

[1] Siddique、Nazmul和Hojjat Adeli。计算智能:模糊逻辑、神经网络和进化计算的协同. 英国牛津:约翰·威利父子有限公司,2013年。https://doi.org/10.1002/9781118534823

另请参阅

相关的话题