指向性st-connectivityの並列アルゴリズム


13

Chong、Han、およびLamは、時間でEREW PRAMでプロセッサーを使用すると、無向st接続が解決できることを示しました。有向st-connectivityで最もよく知られている並列アルゴリズムは何ですか?実行時間、決定論的/ランダム化アルゴリズム、および使用されるPRAMモデルを明記してください(プロセッサの数が多項式であると仮定)。任意のある向けST-接続の特殊なケースについて既知の時間並列アルゴリズム?OログnOm+noログ2n


ウィキペディアによると、EREW PRAMのpoly(n)プロセッサ+ポリログ時間はNCと同じです。私はEREW PRAMモデルにあまり精通していませんが、 time(および多項式的に多くのプロセッサ)とますか?言い換えれば、限界深さの回路の観点から質問を言い換える方法はありますか?(logn)iNCi
ロビンコタリ

異なる並列RAMモデルは対数係数まで同等であるため、EREW PRAMはNCに一致しますが、特定の対数電力では当てはまらない場合があります。
Suresh Venkat

命令セットに適切な制限がある場合、CRCW PRAMのO(log ^ in)時間は、i> = 1の場合、正確に均一なAC ^ iです。
クリストファーアーンスフェルトハンセン

有向パスがある場合、それを見つけることは可能ですか?st
クマール

回答:


13

有向st到達可能性は、CRWW-PRAMでO()プロセッサとO)時間を使用して、またはO()プロセッサでO()時間を使用して簡単に実行できます。が行列乗算指数で、が頂点の数であるEREW-PRAM 。次の論文は、O()およびO(n3(lognnωlog2nω<2.376nnωlogn)CREW-PRAMの時間:「平面構造の推移的閉包と点配置の最適な並列アルゴリズム」、Tamassia and Vitter著。他の論文も同じことを主張しており、Karp and Ramachandranの調査を引用しています(共有メモリマシンの並列アルゴリズム、J。van Leeuwen(編集)、Handbook of Theoretical Computer Science)。調査自体は、推移閉包がAC1にあるため、CRCW-PRAMのO(log n)時間で解決できると述べていますが、CREW-PRAMに関する部分は欠落しています。

行列乗算のすべてのStrassenのようなアルゴリズム(Coppersmith-Winogradのアルゴリズムを含む)は、基本的にO時間で実行される並列アルゴリズムです。推移的閉包では余分なログが発生します(ただし、無制限のファンインを許可する場合、単純なO()行列のマルチは一定の深さで実行できるため、CRCW-PRAMの到達可能性はO時間です。プロセッサの数を現在の最高値から改善することは未解決の問題です。また、到達可能性がNC1にある場合は、特にL = NLを意味するため、大きな未解決の問題です。(logn)n3(logn)n2.376


1
参照を追加してください。
シヴァキンタリ

CRCW PRAMのO(log n)時間についてのみ知っています。それはあなたが意味したものでしたか?
クリストファーアーンスフェルトハンセン

CREWのO(logn)は素晴らしい。それが私が探しているものです。あなたの答えを受け入れたいです。参照を追加してください。
シヴァキンタリ

st-connectivityを解決するには、行列乗算のO(logn)反復が必要です。
シヴァキンタリ

並列アルゴリズムの観点では、到達可能性を解決するために行列mのO(log n)反復が必要です。これはシーケンシャルアルゴリズムには当てはまりません。いくつかの巧妙な再帰処理を実行できるためです(Fisher&Meyer'71を参照)。ただし、計算モデルで無制限のファンイン(AC1、CRCW PRAMなど)が許可されている場合、行列の深さは一定の深さで実行できるため、推移閉包は対数の深さで実行できます。
virgi

7

JosephJája(1992)の著書「An Introduction to Parallal Algorithms」には、推移閉包に関する次の結果がリストされています。

  • 時間と O n 3 log n は、共通CRCW PRAMで機能します。O(logn)O(n3logn)
  • 時間と OをN ωログN CREWのPRAMに作業。O(log2n)O(nωlogn)

グラフの特別なクラスでより高速なものが知られているかどうかという質問については、本の演習5.34で次の例を示します。CREWPRAMで時間を取得できます。O(logn)

  • uvuv

したがって、一般的な有向グラフのCREW PRAMでo(log ^ 2 {n})時間並列アルゴリズムを見つけることは、未解決の問題です。
シヴァキンタリ

O(log ^ 2 {n})ではなくo(log ^ 2 {n})と言ったことに注意してください。
シヴァキンタリ

5

多項式だけでなく、仕事を小さくすることに関心がありますか?時間と仕事のトレードオフを可能にするUllmanとYannakakisによる洗練されたアルゴリズムがあります。強力に接続されたコンポーネントの並列計算に関する私の論文の表1は、私が知っている並列指向接続の結果をまとめたものです:http : //www.cs.brown.edu/~ws/papers/scc.pdf

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