私は次の問題に遭遇しました:
実際のエッジの重みと2つの頂点sとtを持つ有向非循環グラフが与えられた場合、最小stカットを計算します。
一般的なグラフの場合、これはNP困難です。エッジの重みを逆にするだけで、max-cutを簡単に減らすことができるためです(私が間違っている場合は修正してください)。
DAGの状況はどうですか?最小カット(または最大カット)は多項式時間で解決できますか?それはNPハードであり、そうであれば、既知の近似アルゴリズムはありますか?
私はこれについて仕事を見つけようとしましたが、できなかったので(たぶん、検索で間違ったキーワードを使用しているだけかもしれません)、誰かがこれについて何か知っている(または見つける)ことを望んでいました。
2
ここで、min-cutの線形計画法はどこで失敗しますか?
—
Peter Shor
(en.wikipedia.org/wiki/…の表記を使用):負の重みを持つエッジの場合、d_ {ij}は任意に大きくできます。上からd_ {ij}の境界を設定した場合でも、負の重みを持つエッジの可能な最大値を常に取得します。したがって、そのようなプログラムの解決策は、常に有効なstカットを生成するとは限りません。私はそのような問題をあまり経験していないので間違っているかもしれません。もしそうなら、私を訂正してください。基本的に、max-cut(任意のウェイトを使用)がDAGに対して効率的に解決できるかどうかを知りたいです。
—
ジョージ
これを機能させるには、最初の不等式を等式に変更する必要があります:。なぜそれが失敗するのかはまだわかりませんが、何かが足りないのかもしれません。私はそれについてあまり考えていません。
—
Peter Shor
ここに何か欠けているのはおそらく私です。これは、すべてのが整数値を取ることを保証しますか?上からp iを1でバインドすることもできますが、これが機能するかどうかはわかりません。問題は、これを解決できる場合は、エッジの重みを逆にすることでmax-cutを減らすことができ、max-cutはNPハードであるため不可能です。しかし、私はここで間違っているかもしれません。
—
ジョージ
DAGのst max-cut NP-hardはありますか?グラフがDAGではない場合、サイクルがある場合は不等式が必要になるため、その不等式を等式に変更することはできません。したがって、一般的なケースでは、LPは負の重みでは機能しません。
—
Peter Shor