同步网络的lubyMIS算法

1、在每个阶段中,每个进程i按均匀分布在范围{1,...,n^4}中随机选择一个整数vali。一旦进程选择了这些值,我们就定义I'由所有任为局部winner的节点i组成,也就是在i的所有的邻接节点j中,vali>valj。n^4使得每个进程i以高概率选择不同的值

2、算法分阶段进行

1)在一个阶段的第一轮中,各个进程都选择它们各自的val,并把它们发送给自己的邻接节点。到第一轮的最后,当所有的val消息都被接收到时,winner-也就是在I'中的进程-将会知道它们是谁。

2)在第二轮中,winner通知它们的邻接节点。在第二轮的最后,loser-也就是有邻接节点在集合I'中的进程-知道它们是谁。

3)在第三轮中,每个loser通知它的邻接节点,然后所有相关进程-winner和loser的邻接节点-从图中删除合适的节点和边。更精确地说,在这个阶段之后,winner和loser不再参与以后的工作,loser的邻接节点也删除所有与新删除节点相关的边

你可能感兴趣的:(算法,工作,J#)