タグ付けされた質問 「graph-algorithms」

ヒューリスティックを除くグラフのアルゴリズム。

1
スパニングツリーの数を高速にカウントする
t(G)t(G)t(G)GGGnnnt(G)t(G)t(G)O(n3)O(n3)O(n^3)QG1n2det(J+Q)1n2det(J+Q)\frac{1}{n^2} \det(J + Q)QQQGGG1JJJ111 t(G)t(G)t(G)より高速に計算する方法があるのだろうか。(はい、行列式の計算にはO(n3)O(n3)O(n^3)アルゴリズムよりも高速ですが、新しいアプローチに興味があります。) また、グラフの特別なファミリ(平面、多分?)を検討することにも関心があります。 たとえば、循環グラフの場合、t(G)t(G)t(G)はO(nlgn)O(nlg⁡n)O(n \lg n)算術演算で恒等t(G)= \ frac {1} {n} \ lambda_1 \ dotsm \ lambda_ {n-1を介して計算できます。}t(G)=1nλ1⋯λn−1t(G)=1nλ1⋯λn−1t(G) = \frac{1}{n} \lambda_1 \dotsm \lambda_{n-1}、ここでλiλi\lambda_iはGのラプラシアン行列の非ゼロの固有値でありGGG、巡回グラフですばやく計算できます。(最初の行を多項式として表し、それを単位のnnn番目の根で計算します。このステップは離散フーリエ変換を使用し、O(nlgn)O(nlg⁡n)O(n \lg n)算術演算で実行できます。) どうもありがとうございました!

2
フィードバック頂点セットの問題は、3次の有界グラフの多項式時間で解決可能ですか?
フィードバック頂点セットは、一般的なグラフに対してNP完全です。頂点カバーの削減により、次数8の有界グラフではNP完全であることが知られています。Wikipediaの記事は、それが度-3囲まれたグラフのポリ時間解けるで、度-4囲まれたグラフのNP完全であることを述べています。しかし、私はこれの証拠をどこにも見つけることができませんでした。本当ですか? 次数dの有界グラフのFVSがNP完全であるような最小dは何ですか?

2
最短経路の公理
無向の重み付きグラフ(非負の重み付き)があるとします。すべての最短パスが一意であると仮定します。これらの\ binom {n} {2}パス(重みのないエッジのシーケンス)があるが、G自体は知らないとします。これらのパスを多項式時間で最短にしたGを生成できますか?より弱いバージョン:そのようなGが存在する場合、多項式時間で決定できますか?G ( nG = (V、E、w )G=(V,E,w)G = (V, E, w)GGG G( n2)(n2)\binom{n}{2}GGGGGGGGGG 明らかに必要な条件は次のとおりです。パスのすべてのペアに対して、その交差点もパスです。この状態で十分ですか?

2
Cheeger定数の計算:どのクラスに適していますか?
アイソペリメトリック定数とも呼ばれるグラフのチーガー定数の計算は(本質的に最小の面積/体積比であるため)、NP完全であることが知られています。一般的には近似値です。グラフの特別なクラスで正確な多項式アルゴリズムが知られているかどうかを知りたいです。たとえば、通常のグラフではまだNP完全ですか?以下のための距離正則グラフ?(既存のNP完全性の証明を調べて、それらの仮定を調べることはしませんでした。)文献へのポインタはありがたいです。ありがとう!

2
最短経路のデータ構造
ましょうGGG有する重み付けされていない無向グラフである頂点とエッジ。を前処理し、サイズデータ構造を作成して、時間O(n)で「と間の距離」という形式のクエリに答えることは可能ですか?M G M ⋅ P O L Y L O G(N )UがVnnnmmmGGGM ⋅ P O リットルのY L O G(N )m⋅polylog(n)m \cdot \mathrm{polylog}(n)あなたはあなたはuvvv この問題は未解決にするには基本的すぎるようです。

2
成長する無向グラフのバランスの取れたスパニングツリーを維持する
グラフに新しいノード/エッジを追加する際に、グラフの比較的バランスの取れたスパニングツリーを維持する方法を探しています。 単一のノード、「ルート」として開始する無向グラフがあります。 各ステップで、新しいノードとグラフに接続するエッジ、または2つの古いノードを接続する新しいエッジのいずれかをグラフに追加します。グラフを成長させると、スパニングツリーが維持されます。ほとんどの場合、これは、新しいノードとエッジを追加するときに、新しいノードを接続先の古いノードの子に設定することを意味します。 新しいノードを追加する順序を制御することはできません。そのため、上記のツリー構築アルゴリズムは明らかに、不均衡なスパニングツリーにつながる可能性があります。 再ツリー化で行われる作業量を最小限に抑えながら、スパニングツリーを「比較的バランスの取れた」状態に保つオンラインヒューリスティックを知っている人はいますか?ツリー構造を完全に制御できます。私が制御できないのは、グラフの接続性、または新しいノードが追加される順序です。 「balanced」、「spanning」、「tree」などの用語に対するGoogleの標準的な応答は、どちらも当てはまらないバイナリツリーとBツリーのように見えることに注意してください。グラフノードには任意の数の隣接ノードを含めることができるため、ツリーノードには2つのバイナリツリーのような2つではなく、任意の数の子を含めることができます。Bツリーは、隣接リストを変更することでバランスを維持しますが、グラフの接続を変更することはできません。

3
境界のあるツリー幅のグラフで簡単なグローバル問題と難しいグローバル問題を区別するものは何ですか?
多くのハードグラフ問題は、有界ツリー幅のグラフ上の多項式時間で解くことができます。確かに、教科書は典型的には、例として独立セットを使用しますが、これはローカルの問題です。大まかに言うと、ローカル問題とは、すべての頂点の小さな近傍を調べることで解決策を検証できる問題です。 興味深いことに、グローバルな性質の問題(ハミルトニアンパスなど)でも、有界ツリー幅グラフでは効率的に解決できます。このような問題に対して、通常の動的プログラミングアルゴリズムは、ソリューションがツリー分解の対応するセパレーターを通過できるすべての方法を追跡する必要があります(例[1]を参照)。ランダム化されたアルゴリズム(いわゆるcut'n'countに基づく)は[1]で提供され、改良された(決定論的な)アルゴリズムも[2]で開発されました。 多くのことを言うのが正しいかどうかはわかりませんが、少なくともいくつかのグローバルな問題は、有界ツリー幅のグラフで効率的に解決できます。それでは、そのようなグラフでは難しい問題はどうでしょうか?私はそれらもグローバルな性質のものであると仮定していますが、他に何がありますか?これらの難しいグローバルな問題と、効率的に解決できるグローバルな問題を区別するものは何ですか?たとえば、既知の方法が効率的アルゴリズムを提供できないのはなぜですか。 たとえば、次の問題を検討できます。 エッジの事前色付けの拡張いくつかのエッジが色付けされたグラフが与えられた場合、この色付けをグラフ適切なエッジの色付けに拡張できるかどうかを決定します。k GGGGkkkGGG エッジ事前色付け拡張機能(およびそのリストエッジ色付けバリアント)は、2部の直並列グラフ[3]でNP完全です(このようなグラフのツリー幅は最大2です)。 最小和エッジが着色をグラフ考える、エッジ着色見つけるように場合と、その後、共通の頂点を有する。目的は、色付けの合計であるを最小化することです。χ :E → N E 1 、E 2 χ (E 1)≠ χ (E 2)E ' χ(E )= Σ E ∈ E χ (E )G=(V,E)G=(V,E)G=(V,E)χ:E→Nχ:E→N\chi : E \to \mathbb{N}e1e1e_1e2e2e_2χ(e1)≠χ(e2)χ(e1)≠χ(e2)\chi(e_1) \neq \chi(e_2)E′χ(E)=∑e∈Eχ(e)Eχ′(E)=∑e∈Eχ(e)E'_\chi(E) = \sum_{e \in E} \chi(e) つまり、隣接するエッジが異なる整数を受け取り、割り当てられた数値の合計が最小になるように、グラフのエッジに正の整数を割り当てる必要があります。この問題は、部分的な2ツリー[4](つまり、最大2のツリー幅のグラフ)ではNP困難です。 他のそのような困難な問題には、エッジが互いに素なパスの問題、部分グラフ同型の問題、帯域幅の問題が含まれます([5]とその中の参考文献を参照)。木でも難しい問題については、この質問をご覧ください。 [1] Cygan、M.、Nederlof、J.、Pilipczuk、M.、van Rooij、JM&Wojtaszczyk、JO(2011年10月)。単一の指数関数的な時間でツリー幅によってパラメーター化された接続性の問題を解決します。Foundation of Computer Science(FOCS)、2011 …


5
高速ツリー幅アルゴリズム
グラフのツリー幅を計算したいと思います。サブグラフ同型のVF2など、他のNPハードグラフの問題には、たとえばigraphで使用可能なコードを使用して、本当に優れたヒューリスティックがあります。グラフで試してみましたが、データに対して非常に高速に動作します。 同様の方法でツリー幅を計算するための高速なアルゴリズムはありますか?

2
セパレータークエリからツリーを再構築する
仮定その構造、我々が知らない一定程度の木です。問題は、「ノードはノードからノードへのパス上にありますか?」という形式のクエリを実行して、ツリーを出力ことです。オラクルは一定の時間で各クエリに回答できると仮定します。ツリーのノード数であるの値を知っています。目的は、に関してツリーを出力するのにかかる時間を最小限にすることです。T x a b n nTTTTTTxxxaaabbbnnnnnn そこに存在して上記の問題のためのアルゴリズムを?o(n2)o(n2)o(n^2) ノードの次数は最大3 と仮定します。TTT 私が知っていること 有界直径の場合は簡単です。ツリーの直径が場合、分割統治アルゴリズムを取得できます。DDD バイナリツリーには、ツリーを1 / 3n以上のサイズのコンポーネントに分割する適切なセパレータがあります。 頂点xをピックします。それが良いセパレーターラベルである場合、それは再帰的です。 xの3つの近傍すべてを見つけます。 ノードの数が最も多い隣の方向に移動します。ネイバーでステップ2を繰り返します。 セパレータを見つけるには最大でステップかかるため、アルゴリズムを取得します。O (n D log n )DDDO (n D ログn)O(nDlog⁡n)O(nD\log n) アルゴリズムをランダム化しO (nログ2n)O(nlog2⁡n)O(n\;\log^2 n)。(以下のコメントから移動) 2つの頂点xとyをランダムに選択します。1/9の確率で、セパレーターの反対側にあります。からまでのパスの中間ノードを選択します。バイナリ検索を行わない場合、区切り文字かどうかを確認します。yバツxxyyy それは取ります、セパレータを見つけるために時間を予想しました。したがって、ランダム化アルゴリズムを取得します。O (nO (nログn)O(nlog⁡n)O(n\;\log n)O (nログ2n)O(nlog2⁡n)O(n\;\log^2 n) バックグラウンド。この問題について、確率的グラフィカルモデルで働く友人から学びました。上記の問題は、3つのランダム変数X、Y、Zが与えられ、Zの値が与えられるとXとYの間の相互情報の値を伝えることができるオラクルを使用して、ジャンクションツリーの構造を学習することにほぼ対応します。値が近い場合ゼロまで、ZがXからYへのパス上にあると仮定できます。

5
計算可能な数が有理数か整数かをテストすることはできますか?
計算可能な数が有理数か整数かをアルゴリズムでテストすることはできますか?言い換えれば、それは道具計算数字は機能を提供するために、そのライブラリは可能でしょうisIntegerかisRational? 私はそれが不可能であると推測し、これは何らかの形で2つの数値が等しいかどうかをテストすることができないという事実に関連していると推測していますが、それを証明する方法はわかりません。 編集:計算数はxxxの関数で与えられるfx(ϵ)fx(ϵ)f_x(\epsilon)の合理的な近似値を返すことができxxx高精度でϵϵ\epsilon:|x−fx(ϵ)|≤ϵ|x−fx(ϵ)|≤ϵ|x - f_x(\epsilon)| \leq \epsilonいずれについても、ϵ>0ϵ>0\epsilon > 0。このような関数を考えると、それがあれば、テストすることが可能であるx∈Qx∈Qx \in \mathrm{Q}またはx∈Zx∈Zx \in \mathrm{Z}?
18 computability  computing-over-reals  lambda-calculus  graph-theory  co.combinatorics  cc.complexity-theory  reference-request  graph-theory  proofs  np-complete  cc.complexity-theory  machine-learning  boolean-functions  combinatory-logic  boolean-formulas  reference-request  approximation-algorithms  optimization  cc.complexity-theory  co.combinatorics  permutations  cc.complexity-theory  cc.complexity-theory  ai.artificial-intel  p-vs-np  relativization  co.combinatorics  permutations  ds.algorithms  algebra  automata-theory  dfa  lo.logic  temporal-logic  linear-temporal-logic  circuit-complexity  lower-bounds  permanent  arithmetic-circuits  determinant  dc.parallel-comp  asymptotics  ds.algorithms  graph-theory  planar-graphs  physics  max-flow  max-flow-min-cut  fl.formal-languages  automata-theory  finite-model-theory  dfa  language-design  soft-question  machine-learning  linear-algebra  db.databases  arithmetic-circuits  ds.algorithms  machine-learning  ds.data-structures  tree  soft-question  security  project-topic  approximation-algorithms  linear-programming  primal-dual  reference-request  graph-theory  graph-algorithms  cr.crypto-security  quantum-computing  gr.group-theory  graph-theory  time-complexity  lower-bounds  matrices  sorting  asymptotics  approximation-algorithms  linear-algebra  matrices  max-cut  graph-theory  graph-algorithms  time-complexity  circuit-complexity  regular-language  graph-algorithms  approximation-algorithms  set-cover  clique  graph-theory  graph-algorithms  approximation-algorithms  clustering  partition-problem  time-complexity  turing-machines  term-rewriting-systems  cc.complexity-theory  time-complexity  nondeterminism 

2
内部で頂点が互いに素な奇数長のstパスの最大数
LET 無向単純なグラフであるとlet S 、T ∈ V (Gは)別個の頂点です。単純なstパスの長さをパス上のエッジの数とします。各パスの長さが奇数で、パスの各ペアの頂点セットがsとtでのみペアで交差するように、単純なstパスのセットの最大サイズを計算することに興味があります。言い換えれば、私は内部的に頂点が互いに素な奇数長のstパスの最大数を探しています。これは、マッチングまたはフローベースの手法によって多項式時間で計算可能であるべきだと思いますが、アルゴリズムを思い付くことができませんでした。ここに私が問題について知っていることがあります。GGGs,t∈V(G)s,t∈V(G)s,t \in V(G) 奇数の長さの制限を偶数の長さに置き換えることができます。sに入射するすべてのエッジを再分割すると、一方が他方に変換されるため、これは実際には問題に影響しません。 パスのパリティに制限がない場合、メンガーの定理は答えを与えます。これは最大フローを計算することで取得できます。 のみ与えられた頂点vで交差対毎頂点互いに素奇数長サイクルの最大数を決定する問題は、マッチングトリックによって多項式時間で計算可能である:の互いに素な和集合として構築グラフG」と(G − N G [ v ] )、同じ頂点の2つのコピー間にエッジを追加します。このサイズのグラフでの最大一致| V (G )| − | N G [ v ] | + kは、奇数サイクルの最大数が(G−v)(G−v)(G - {v})(G−NG[v])(G−NG[v])(G - N_G[v])|V(G)|−|NG[v]|+k|V(G)|−|NG[v]|+k|V(G)| - |N_G[v]| + kは kです。この構造は、Hadwigerの予想の奇数小変種の補題11の証明で説明されています。vvvkkk グラフが方向付けられている場合、単一の偶数長のstパスの存在のテストは、すでにNP完全です。 論文LapaughとPapadimitriouによるグラフと有向グラフの偶経路問題は関連性があるかもしれませんが、残念ながら私たちのライブラリはオンラインアーカイブを購読しておらず、紙のコピーはありません。 どんな洞察も大歓迎です!

1
O(n log n)スペースとO(log n)-timeクエリを使用したDAGの到達可能性
有向非巡回グラフ場合、2次空間または線形時間を必要とせずに到達可能性クエリを可能にするデータ構造はありますか?理想的には、頂点ごとのO(log n)空間と対数時間のみを使用してアルゴリズムを探します。⟨ V、E⟩⟨V、E⟩{\langle}V,E{\rangle}ここで、。n = | V| + | E|n=|V|+|E|n=|V|+|E| 標準的なソートアルゴリズムの一般化に基づいて、このようなデータ構造が存在する必要があることは、私には直感的に明らかであるように見えました。しかし、何も見つからなかったことに驚きました。私が出会ったすべては、グラフについての仮定を立てた(例:平面性)か、2次の時間/空間でのより困難な問題を解決しました(例:グラフの変更をインターリーブしたクエリ)。 到達可能性のWikipediaのページには、唯一の一般的なアルゴリズム(フロイド・ウォーシャル)をカバー。ページの残りの部分では、グラフが平面的である(そうではない)などの仮定を含む特別なケースを扱います。 この分野で最も一般的に引用されている論文は、パス検索データ構造の償却効率であるように見えますが、これとそれが引用するすべての論文は、Oクエリでインターリーブされたグラフの更新(つまり、前処理なし)。 この質問には答えられませんでしたが、クエリでインターリーブされたエッジ挿入を許可するというより難しい問題に対処します。 この質問では、永続的な(純粋に機能的な)データ構造が求められましたが、ここでは必要ありません。「簡潔なPosets」ペーパーにはスペースが必要ですが、時間クエリを実現します。最悪の時間、より良い空間のアルゴリズムを探しています。O (n2)O(n2)O(n^2)O (1 )O(1)O(1) 主にここで文献の足がかりを探しています。グラフの到達可能性に関する調査論文があり、その時間の99%を平面グラフの場合に費やしていない場合、それは役立ちます。

1
エッジと頂点の削除によるグラフの接続性
私たちは、グラフとしましょうあるあれば-connectedは、いずれかの除去頂点と任意のからエッジ常に葉連結グラフ。たとえば、標準定義によると、接続グラフは、新しい定義によると接続です。が接続されているかどうかを判断する多項式時間アルゴリズムはありますか?ここでは、入力が、およびでと考えます。GGG(a,b)(a,b)(a,b)aaabbbGGGkkk(k−1,0)(k−1,0)(k-1,0)GGG(a,b)(a,b)(a,b)GGGaaabbb

1
スイッチネットワークの問題の複雑さ
スイッチネットワークは、(名前が発明された)ノードの三種類で作られています。 1つの開始ノード 1つの終了ノード 1つ以上のスイッチノード スイッチノードには、左、上、右の3つの出口があります。2つの状態LおよびRと、ターゲット状態TLまたはTRがあります。各スイッチは、次の規則でトラバースできます。 常に左から上へ。スイッチの状態がLに変わります 常に右から上へ。スイッチの状態がRに変わります スイッチが状態Lにある場合のみ、上から左へ。状態は変わらない スイッチが状態Rにある場合は、上から右へ。状態は変わらない 左から右へ、または右から左へ 図1.ターゲット状態TRの状態Lのスイッチノード これらのプロパティも保持します。 スイッチの0、1、または2つの出口を分離できます(別のスイッチに接続されていません)。 パスはスイッチに「触れる」だけでその状態を変更できます。左から入力して左から終了するか、右から入力して右から終了します。 スイッチを通過/タッチできる回数に制限はありません。 決定の問題は、「スイッチのすべての最終状態が対応するターゲット状態と一致するように、開始ノードから終了ノードへのパスが存在しますか?」です。 明らかに、最初はターゲット状態にないすべてのスイッチは、少なくとも一度は移動(またはタッチ)する必要があります。 これは簡単なネットワークの簡単な描画です(Excelで作成しました...より良いものを作成します)。 簡単な解決策は次のとおりです。 S -> 1 -> 2 -> 3 -> 2 -> E -> 1 -> E 編集2: この問題は知られていますか?---> ハーンの論文(制約グラフ)への良い参照をくれました。 問題はます。NPにあるという証拠のスケッチを投稿する前に、エラーが見つかりました。したがって、未解決の質問は再びです:NPSPA CE= PSPA CENPSPACE=PSPACENPSPACE = PSPACE 2。それは?N PNP\mathsf{NP} N P - c o …

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