首页 理论教育链路平均权重最小化策略

链路平均权重最小化策略

【摘要】:算法第一阶段中的贪婪启发式算法确保了构建一个生成树,但是无法确保平均权重最小,即不能构建最小生成树。因此,第二阶段的目的是最小化生成树中链路的平均权重。显然,用Rij中的一条边代替eij,必然会降低i或j的度,同时改变生成树的平均链路权重,并且不会破坏树的完整性。这一过程反复迭代,直到所有的边与它们的潜在边集合中的边相比都具有最小的权重,所以最后的结果是平均权重最小化之后的生成树,可以认为是最小生成树。

算法第一阶段中的贪婪启发式算法确保了构建一个生成树,但是无法确保平均权重最小,即不能构建最小生成树。因此,第二阶段的目的是最小化生成树中链路的平均权重。与第一阶段中各子树中的成员节点在根的控制下工作不同,第二阶段仅在根上运行,而最终的结果将通过树内的链路分配到所有的节点上。本节将提出利用“边置换”的方法最小化平均链路权重。通常情况下,可以认为一棵生成树中,某些节点上总是存在未被使用的天线(本章中称为“度”),可以被用来构建新的边。定义任意边eij拥有一个潜在边集合Rij,定义为增加Rij中的任意一条边到树中会形成一个包含eij的环。显然,用Rij中的一条边代替eij,必然会降低i或j的度,同时改变生成树的平均链路权重,并且不会破坏树的完整性。因此,第二阶段算法的核心思想是:在第二阶段中,算法将检查所有现存边的潜在边集合。对于任意的边,选择一个权重最小的边进行迭代替换。即对于任意边eij,若Rij中存在比eij权重更小的边,则从生成树中删除eij,并增加权重最小的边到生成树中。这一过程反复迭代,直到所有的边与它们的潜在边集合中的边相比都具有最小的权重,所以最后的结果是平均权重最小化之后的生成树,可以认为是最小生成树。第二阶段的算法伪代码如表6-3所示。

表6-3 DMST第二阶段算法伪代码