异步网络算法及同步器相关知识解析
一、简单最小生成树算法与领导者选举
在网络算法中,简单最小生成树(SimpleMST)算法有着独特的性质。实现某些目标原本可能需要昂贵的全局同步,但实际上较弱的局部同步就足够了。每个进程只需等待了解其在底层图中的所有邻居的局部级别至少为 k 即可。为了让所有进程都能发现这一点,每个进程在其局部级别增加时,会在其每条关联边上发送一条消息。
SimpleMST 算法的时间复杂度上限与 GHS 算法相同,均为 $O (n log n(t~ + d))$,不过它比 GHS 算法简单得多。然而,由于在每个级别都使用了同步消息,其通信复杂度较差,为 $O (|E| log n)$。
最小生成树算法还可用于解决任意连通无向加权图(带有唯一标识符 UIDs)中的领导者选举问题。具体步骤如下:
1. 建立最小生成树(MST)。
2. 进程参与 STtoLeader 协议来选择领导者。
进程无需知道 MST 算法何时在整个网络中执行完毕,每个进程 i 只需等待其本地执行完成,即输出其在 MST 中的关联边集。如果进程 i 在为 MST 协议执行输出之前接收到属于 STtoLeader 算法的消息,它只需延迟该消息,直到完成 MST 操作。若使用 GHS 算法建立 MST,选举领导者的消息总数为 $O (n log n + |E|)$,总时间为 $O (n log n(t~ + d))$。
二、部分算法的起源与发展
许多异步网络算法都有其特定的起源:
- AsynchLCR 和异步版本的 HS 算法,与它们的同步版本一样,源自 LeLann、Chang 和 Roberts 以
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



