ソースSとシンクTを持つDAG(有向非巡回グラフ)与えられます。ソースSとシンクTを使用して、次のような最小数のエッジを持つDAG D ′を見つけます。
全てのペアのためからパスがUにVにおけるDは、場合とから経路が存在する場合にのみ、UのVにおけるDは'。
このアプリケーションの1つは、DAGによってセットファミリを表すことです。このような表現の場合、各ソースはユニバースの変数であり、各シンクはセットファミリのセットであり、uを表す頂点から頂点を表す頂点までのパスがある場合にのみ、要素uはセットSにありますSを設定します
この問題はよく知られていますか?この問題の多項式アルゴリズムはありますか?
解決策は元のグラフのサブグラフである必要があると思いますか?はいの場合、この問題はセットスタイラーをキャプチャし、Directed Steiner Treeが難しいことを示す標準リダクションを介して行われると思います。各要素の頂点、各セットの頂点、およびセットS要素uを含む 次に、新しい頂点とエッジをすべての設定された頂点に追加します。この新しい頂点からすべてのシンク(要素の頂点)へのパスがあります。それらをすべて保持するために、すべての要素をカバーする最小のセット頂点数を選択する必要があります。
—
マイケルランピス
いいえ、一般的に、元のグラフのサブグラフであってはならないということです。ソースは要素であり、一部のセットにその要素が含まれる場合にのみ、要素が必要です。シンクはセットであり、表現するセットを削除することはできないため、すべてのノードがシンクまたはソースのいずれかである単純なグラフから開始する場合にできるのは、頂点を追加してエッジを移動/削除することだけです。
—
マーティンヴァットシェル
質問を明確にしました。確かに、ソースとシンクは同じです。マッピングはほぼ同じだと思います。2つのシンクを同じノードにマッピングできる唯一の方法は、同じソースのセットから到達できる場合、つまり同じセットを表す場合です。2つのソースが同じノードにマップされる唯一の方法は、まったく同じシンクに到達する場合です。したがって、Dのいくつかの簡単な前処理の後、問題は同等になると思います。
—
マーティンヴァットシェル
Dag Dは実際には問題とは無関係ですよね?SとTの間の2部グラフを入力として使用することもできます。
—
エミルイェジャベク3.0