分散方式でのツリーの6色分け


8

ツリー6の分散アルゴリズムを理解するのにいくつかの困難があり時間でのカラーリング。O(logn)

詳細な説明は、次のペーパーにあります:スパースグラフの並列対称性の破れ。ゴールドバーグ、プロトキン、シャノン

つまり、アイデアは...

プロセッサID者によって与えられた有効な着色から出発し、手順を繰り返し、各非ルートノードrecoloringによって色記述のビット数を減少するビットのインデックス連結することによって得られた色で異なっておよびこのビットの値。ルート を連結と、新しい色を形成します。vCvCparent(v)r0Cr[0]

アルゴリズムは回の反復後に終了します。O(logn)

回の繰り返しで実際に終了する理由を直感的に理解できません。最後の反復に関する論文で言及されているように、2つのビット文字列が異なる最小のインデックスは最大3です。したがって、0番目のビットと1番目のビットは同じで、である可能性があるため、この2つのビットは4を与えます。色+異なる3番目のビット用の別の2色、および紙のように6色ではなく合計8色、および2ビットで先に進むことができない理由、異なるビットを見つけて分離することはまだ可能です。O(logn)22=4

論文よりもアルゴリズムを少し深く分析していただければ幸いです。


1
これらは役立つかもしれません:cs.helsinki.fi/u/josuomel/ddaおよびpのセクション5.3.4 。178– / cs.helsinki.fi/u/josuomel/dda-2012/dda-lectures.pdf
Jukka Suomela

@JukkaSuomelaさん、ありがとうございました。素晴らしい講義ノートです。1つのマイナーなポイント、11ページの講義ノートの色付けで、色11 *が選択されていないことがわかりましたが、なぜですか。
com

回答:


1

この論文では、著者は回の反復後、カラーラベルのエンコードに使用されるビット数は最大で3であることを述べています。これは、最大で8つのカラーがあることを意味します。6色以下の場合は完了です。それ以外の場合は、ループをもう一度繰り返します。logn

最後のループを1回繰り返したとしましょう。ルートは、カラーラベル0または1を取得します。他のすべてのノードは、そのノードの古いラベルがその親のラベルと一致しない最初のビット位置と1つの追加ビットに等しいラベルを取得します。このイテレーションに入ると、すべての色は最悪の場合3ビット長であるため、ビットが一致しない可能性のある位置が3つあります。したがって、新しい色はそれぞれ、3つの選択肢の1つと1つのビット(2つの選択肢の1つ)の組み合わせから形成されます。そのため、このループ反復の終了時には、6つのカラーラベルしか存在しないため、6つのカラーがあります。ループ反復の総数は、logn+1=O(logn)

お役に立てれば!


0

ツリー6の分散アルゴリズム-O(log *(n))時間でのカラーリングは非常に優れたアルゴリズムです。

「log * n」とは何かを説明しましょう

log *(n)- 「反復対数」として知られる「log Star n

簡単に言うと、log *(n)= log(log(log(.....(log *(n))))と想定できます。

log *(n)は非常に強力です。

例:

1)Log *(n)= 5ここで、n =宇宙の原子数

今あなたの質問:

log * n時間後に終了するのはなぜですか?

ログファクターによって減少したIDの各ラウンドサイズでは、色の数も減少します。サイズがnビットの2つのラベルが異なるビットにインデックスを付け、さらに1つの追加ビットを追加します。

なぜ6色しかなく、多かれ少なかれないのですか?

なぜ4色ではないのか:{0,1,2,3}-異なる場所のインデックスをアドレス指定するには2ビットが必要であり、さらに「差分ビット」を追加すると3ビット以上になります。

7色ではない理由:{0,1,2,3,4,5,6}-7 = 111(バイナリ)は3ビットで記述できるため、インデックス(0,1,2)をアドレス指定するには2ビットが必要ですに加えて、「差分ビット」が1つあれば、再び3つになります。

なぜ6色なのか?-別のラウンドができるので、色110(色「6」の場合)と111(色「7」の場合)は必要ありません。(3ビットのIDは、位置00(「0」の場合)、01(「1」の場合)、10(「2」の場合)でのみ異なる可能性があります。

コメントの上記のリンクにある6色を3色に減らすことができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.