Page 162 - 《软件学报》2024年第4期
P. 162

1740                                                       软件学报  2024 年第 35 卷第 4 期

             8:      更新距离邻接矩阵 D;
             9:   end while
             输出:  批量的二叉树结构.
             图 5 展示了使用 l 1 范数度量距离在 T=2 时使用示例数据构建批量相似二叉树的过程.  算法首先从记录动
         态评估表 R 中提取最近的若干次评估结果,  以供后续计算距离使用(步骤 1);  然后,  使用 l 1 范数计算批量之间
         的相似度,  并将结果记录在距离邻接矩阵中(步骤 2);  通过不断合并最近的节点并根据距离矩阵生成新节点,
         直到距离邻接矩阵中只包括一个根节点时,  便完成了批量相似二叉树的初步构建(步骤 3);  最后,  算法返回批
         量相似树的数据结构,  树的每个叶节点对应一个批量,  非叶节点存储其子节点之间的距离(步骤 4).




























                                       图 5   构建批量相似树的一个例子
             一个值得注意的问题是:  在新节点添加到邻接矩阵时,  如何计算新节点与其他节点之间的距离.  在树的
         构建过程中,  当两个节点合并形成一个新节点时,  邻接矩阵会删除这两个节点并添加合并后的新节点与其他
         节点之间的距离信息,  此时,  通常可以使用合并前的节点的距离信息来评估新节点的距离信息,  比如取合并
         前两节点中较大的值、较小的值或均值作为新的距离信息等.  例如:  如果节点 A 和 B 合并形成节点 X,  并且需
         要计算 X 与节点 C 之间的距离,  则可以使用现有的 A,  B 和 C 之间的距离信息 d(A,C)和 d(B,C)来计算 X 和 C
         的距离 d(X,C).  在图 6 及本文的实验部分中,  假设新节点继承合并前节点的最小距离,  即:
                                          d(X,C)=min{d(A,C),d(B,C)}.















                                      图 6   批量索引选择策略的一个例子
   157   158   159   160   161   162   163   164   165   166   167