負のウェイトエッジを持つ最大カット


35

LET重み関数とのグラフである。最大カットの問題は以下を見つけることです: If重み関数は負ではありません(つまり、すべてのe \ in E に対してw(e)\ geq 0)、max-cutには非常に単純な2近似が多くあります。たとえば、次のことができます。G = (V 、E 、W )G=(V,E,w)W :E → Rw:E→Rのarg maxのS ⊂ V Σ (U 、V )∈ E :U ∈ S 、V ∉ S W (U 、V )

argmaxS⊂V∑(u,v)∈E:u∈S,v∉Sw(u,v)
W (E )≥ 0 w(e)≥0E ∈ Ee∈E
  1. 頂点Sのランダムなサブセットを選択しSSます。
  2. 頂点の順序を選択し、各頂点vvをSSまたはˉ SS¯に貪欲に配置して、これまでにカットされたエッジを最大化します
  3. 局所的な改善を行います:カットを増やすために(またはその逆に)\ bar {S}に移動できるSに頂点がある場合、移動します。SSˉ SS¯

これらのすべてのアルゴリズムの標準分析では、結果のカットが少なくとも1/2の上限である12 ΣE∈EW(E)12∑e∈Ew(e)と同じ大きさであることが示されています。wが負でない場合、max-cutの重み-しかし、いくつかのエッジが負の重みを持つことが許可されている場合、そうではありません!1 / 21/2ww

たとえば、アルゴリズム1(頂点のランダムなサブセットを選択)は、エッジの重みが負のグラフで明らかに失敗する可能性があります。

私の質問は:

負のエッジ重みを持つことができるグラフの最大カット問題のO(1)近似を取得する単純な組み合わせアルゴリズムはありますか?

値0をとるmax-cutのスティッキーな問題を回避するために、00その\ sum_ {e \ in E} w(e)> 0を許可しΣ E ∈ E W (E )> 0∑e∈Ew(e)>0、さらに/または乗法因子近似。


1
ここでは「単純な組み合わせ」という条件が必須ですか?
— Hsien-Chih Chang張顯之

正の重みの場合の2近似のような単純な組み合わせアルゴリズムに最も興味があります。O(1)の近似について尋ねていることに注意してください。したがって、何らかのアルゴリズムがこれを達成できる場合、単純なアルゴリズムで可能になるはずです。しかし、エッジの重みが負のグラフのSDPアルゴリズムのパフォーマンス保証とは何か、または場合に定数因子近似アルゴリズムが存在しないという証拠にも興味があります。P ≠ N PP≠NP
— アーロンロス

回答:


28

これが私の議論への最初の試みでした。それは間違っていましたが、「編集:」の後に修正しました。

エッジの重みが負の場合の最大カット問題を効率的に近似的に解決できる場合、それを使用してエッジの重みが正の場合の最大カット問題を解決できませんか?最適解が解く最大カット問題から始めます。次に、と間に大きな負の重みエッジ(重み)を配置します。新しい問題の最適な解は。そのため、仮想近似アルゴリズムでは、最大が最適よりも悪い最大カットの解が得られます。元のグラフでは、最大カットは最大でもが最適より悪くなっています。あなたが近いを選択し場合b − a u v b − a (b − a )/ 2 (b − a )/ 2 a b ≠ 16 / 17b−auvb−a(b−a)/2(b−a)/2ab、これは、P NPの場合、max-cutをファクターよりも良く近似できないという近似不可能な結果に違反します。 ≠16/17

編集:

上記のアルゴリズムは、元のとが新しいグラフのカットの反対側にあることを保証できないため、機能しません。ただし、次のように修正できます。あなたvuv

すべてのエッジの重みの合計が正である限り、OPTの2倍以内のカットを与える近似アルゴリズムがあると仮定します。

上記のように、すべての非負の重みをエッジに持つグラフから始めます。私たちは、修正グラフ見つける私たちはの最大カット近似することができるかどうかというように、いくつかの負の重みを持つ 2倍以内で、我々はの最大カット近似することができる非常によくします。G G ∗ G ∗ GGG∗G∗G

2つの頂点と選択し、それらが最大カットの反対側にあることを望みます。(可能性のあるすべてのに対してこれを繰り返して、1つの試行が確実に機能するようにします。)次に、およびaのすべてのエッジおよびに大きな負の重み大きな正の重量端に。最適なカットの重みがと仮定します。u v v − d (u 、x )(v 、x )x ≠ u 、v a (u 、v )O P Tuvv−d(u,x)(v,x)x≠u,va(u,v)OPT

頂点とがカットの同じ側にある値を持つカットは、値を持ちます。ここで、はカットの反対側の頂点の数です。元の値反対側にを持つカットの値はます。したがって、十分な大きさのを選択した場合、同じ側のとを持つすべてのカットに負の値を強制することができるため、正の値を持つカットがある場合、最適なカットにはとc G u v c − 2 d m m (u 、v )c c + a − (n − 2 )d d u v G ∗ u v (a − (n − 2 )d )u vcGuvc−2dmm(u,v)cc+a−(n−2)dduvG∗uv反対側に。とが反対側にあるカットに固定ウェイトを追加していることに注意してください。(a−(n−2)d)uv

ましょう。なるように選択ます(これについては後で説明します)。重み付きカットにを有する及び両側には、現在の重量となるカット。これは、最適なカットの重みがであることを意味します。新しいアルゴリズムは、重みが少なくともカットを検出します。これは、少なくとも重みを持つ元のグラフカットに変換され(正の重みを持つすべてのカットF = (- (N - 2 )D )F ≈ - 0.98 O P T C G U 、V C - 0.98 O P T G * 0.02 O P T G * 0.01 O P T G 150 O P T G * Uをvf=(a−(n−2)d)af≈−0.98OPTcGuvc−0.98OPTG∗0.02OPTG∗0.01OPTG0.99OPTG∗uおよび)、これは近似不可能な結果よりも優れています。v

選択するには問題ありませんで任意のカットを作るために十分な大きさをと私たちが選択することができるので、同じ側の負に私たちが望むような大きなとしては。しかし、どのように我々は選択しなかったので、我々が知らなかったとき?非常にうまく近似できます...をのエッジの重みの合計とすると、わかります。したがって、の値の範囲はかなり狭く、-。からまでのすべての値をとってを反復処理できます。D Uは、V 、D 、A 、F ≈ - 0.99 O P T O P T O P T T G 1duvdaf≈−.99OPTOPTOPTTG2 T≤OPT≤TFF-0.49T-0.99T0.005TF≈-0.98OPT12T≤OPT≤Tff−.49T−.99T間隔で。これらの間隔の1つについて、が保証されているため、これらの反復の1つが適切なカットを返すことが保証されています。0.005Tf≈−0.98OPT

最後に、新しいグラフに合計が正のエッジの重みがあることを確認する必要があります。エッジの重みの合計がであるグラフから始め、エッジの重みの合計にを追加しました。以来、我々しているOK T F - 0.99 T ≤ F ≤ - 0.49 TTf−.99T≤f≤−.49T


1
しかし、あなたのと何ですか?max-cut問題の通常の定式化には、分離する必要のある「特別なノード」はありません。あなたvuv
— ユッカスオメラ

3
こんにちはイアン-私はそれがうまくいくとは思わない。元のグラフでmax-cutで区切られたとが存在し、それらの間に重いネガティブエッジが追加された後でもmax-cutで区切られたままである必要があるのはなぜですか?たとえば、完全なグラフを考えてみましょう。任意の負のエッジを1つ追加しても、カット値はまったく変更されません。あなたvuv
— アーロンロス

2
1つの問題は、頂点のすべてのペアの間にネガティブエッジを追加すると、異なるカットの値を異なる量で変更することです。(たとえば、カット値からを減算します)。そのため、変更されたグラフのmax-cutのアイデンティティが、元のグラフのmax-cutと必ずしも一致しないという問題があります。|S|⋅|ˉS|⋅a|S|⋅|S¯|⋅aSS
— アーロンロス

1
@Peter:私が引用したものの後の段落では、を作成十分小さいものを選択します。ある段落では十分に大きく、次の段落では十分に小さいものを安全に選択ことはできません!特に、とを選択し、すべてのを確保し、同時に。これは、すべてのがことを意味するためです。F ≈ - 0.98 O P T DのC + - (N - 2 )、D > C - D M 0 ≤ M ≤ N - (N - 2 )D = F ≈ - 0.98 ⋅ O P T C + a − (n − 2 )d > c −af≈−0.98OPTaadc+a−(n−2)d>c−dm0≤m≤na−(n−2)d=f≈−0.98⋅OPTdmc+a−(n−2)d>c−dm0≤m≤n0≤m≤nf=a−(n−2)d>0f=a−(n−2)d>0
— ウォーレンシューディ

2
@ウォーレン、すべてのカットでなるように十分な大きさの選択します。これは、十分に大きく選択することで実行できます。あなたは、その後、選択した最適なカットをかろうじて上回っているように、右のサイズを。私の答えの最後の2つの段落を読んでください。dc−dm<0da0
— ピーターショー

11

S. Har-Peledによる記事「近似最大カット」では、論文の最後の行で、max-cutの実際の重み付きバージョンが

grothendieckの不等式によるカットノルムの近似、Noga AlonおよびAssaf Naor、SIAM Journal on Computing、2006年。

これは確かにSDPアルゴリズムであり、近似比は0.56であるように思われますが、この論文で議論されている削減が比維持であるかどうかはわかりません。おそらく、この論文をさらに詳しく調べると役立つでしょう!


アロンナオールの問題は似ていますが、削減を維持する比率があるとは思いません。それらの問題は、を最大化することです。ここで、およびは行列です。マックスカットとその近親者にとって、あることが重要ですxTMyx,y∈{±1}nMn×nx=y
— サショニコロフ

@SashoNikolov:カットの基準として、を要求するかどうかにかかわらず、一定の要因までは重要ではありません。x=y
— デビッド

@david私はこの削減を知っていますが、実際には本当のステートメントはここで、すべての最大値は -1、1であり、は非負の対角線で対称です。ただし、問題(に必要なもの)とは非常に異なる値を持つことができます。たとえば、考えます。ここで、はすべて1の行列です。あなたは見ることができますについてですしながら、ある。maxx|xTMx|≤maxx,yxTMy≤4maxx|xTMx|{−1,1}nMmaxx|xTMx|maxxxTMxM=I−JJn×nmaxxxTMxn/2maxx|xTMx|n2−n
— サショニコロフ

6

あなたの問題は、二次計画問題への還元による対数近似を持っています。

MaxQP問題は、行列の2次形式を近似する問題です。ここで、はです。MaxCutは、設定することにより、この形式で記述できますで、は単位行列、は隣接行列です。CharikarとワースのMaxQPアルゴリズムが得られる長いほどMaxQPの近似を非負対角を有しています。したがって、である限り、負の重みを持つMaxCutは対数近似になります。x T M x n × n M x { ± 1 } n M = 12 n(∑we)I−12 AIAO(ログN)MΣWE≥0

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