web-dev-qa-db-ja.com

頂点の特定のサブセットをカバーする最小全域木を構築します

無向の正のエッジ重みグラフがあります(V、E)頂点のサブセットkをカバーする最小全域木が必要です[〜 #〜] v [〜#〜](シュタイナー木問題)。

スパニングツリーのサイズをk頂点に制限していません。むしろ私は正確に知っていますwhichk頂点はMSTに含まれていなければなりません。

MST全体から始めて、すべてを含む最小のMSTを取得するまで、エッジ/ノードを削減することができましたk

プリムのアルゴリズムを使用してMST全体を取得し、サブセットkのMSTが破棄されていない間にエッジ/ノードの削除を開始できます。あるいは、Floyd-Warshallを使用して、すべてのペアの最短パスを取得し、何らかの方法でパスを結合することもできます。これにアプローチするより良い方法はありますか?

41
atp

ここでは多くの混乱が起こっています。 OPの発言に基づく:

スパニングツリーのサイズをk個の頂点に制限しているわけではありません。むしろ、どのk頂点をMSTに含める必要があるかを正確に知っています。

これはグラフ上のシュタイナー木問題です。これはk-MST問題ではありません。シュタイナーツリー問題は次のように定義されます。

重み付きグラフG =(V、E)、頂点のサブセットS⊆V、およびルートr∈Vが与えられた場合、Sのすべての頂点をrに接続する最小の重みツリーを見つけたいと思います。 1

他の人が言及しているように、この問題はNP困難です。したがって、近似アルゴリズムを使用できます。

初期/単純近似アルゴリズム

2つの有名な方法は高橋の方法クラスカルの方法です(どちらもRayward-Smithによって拡張/改善されました):

  • 高橋秀樹、松山晃:グラフのシュタイナー問題の近似解。数学。 Jap 1980、24:573–577。
  • Kruskal JB:グラフの最短スパンサブツリーと巡回セールスマン問題について。アメリカ数学会の議事録、第7巻。 1956:48–50。
  • Rayward-Smith VJ、Clare A:Steiner頂点の検索について。 Networks 1986、16:283–294。

高橋による最短経路近似(レイワード・スミスによる修正あり)

enter image description here


クラスカルの近似アルゴリズム(Rayward-Smithによる変更あり)

enter image description here


最新/より高度な近似アルゴリズム

生物学では、最近のアプローチで空洞法を使用して問題を処理しました。これにより、大規模なデータセットで優れた精度を示す「修正された信念伝搬」法が実現しました。

  • Bayati、M.、Borgs、C.、Braunstein、A.、Chayes、J.、Ramezanpour、A.、Zecchina、R .:シュタイナー木の統計力学。物理学レット牧師101(3)、037208(2008)15。
  • アプリケーションの場合:最適なサブネットワーク識別のためのシュタイナーツリー法:実証的研究。 BMCバイオインフォマティクス。 BMC Bioinformatics 2013 30; 14:144。 Epub 20134月30日。

検索エンジンの問題との関連で、アプローチは、ある程度前処理できる非常に大きなデータセットの効率に焦点を合わせてきました。

  • G. Bhalotia、A。Hulgeri、C。Nakhe、S。Chakrabarti、およびS.Sudarshan。 BANKSを使用したデータベースでのキーワード検索と閲覧。 ICDEの431〜440ページ。
  • G. Kasneci、M。Ramanath、M。Sozio、F。M。Suchanek、およびG.Weikum。 STAR:関係グラフのシュタイナー木近似。 ICDE’09、ページ868〜879、2009
17
user2398029

あなたが述べた問題は、 グラフのシュタイナー木 と呼ばれる有名なNP困難な問題です。多項式時間で既知の解決策はなく、多くの人がそのような解決策は存在しないと信じています。

11
meh

制限されたグラフでプリムのアルゴリズムを実行します(kE ')ここで、E' = {(x、- y)∈[〜#〜] v [〜#〜]xkおよびyk})。そのグラフを作成するには、O(| [〜#〜] e [〜#〜] |)が必要です。

1
Fred Foo