このグラフの問題の複雑さは何ですか?


16

単純な無向グラフ与えられると、頂点のサブセットを見つけます。A ≠ ∅GA≠∅

  1. 以下のための任意の頂点の隣人の半数以上でにもあり、およびX Ax∈AxA

  2. のサイズは最小です。A

つまり、すべての内部頂点の近傍の少なくとも半分が内部にとどまるクラスターを探しています。頂点セット全体が常にプロパティ1を持っているため、このようなクラスターの単なる存在は明らかです。V(G)

この問題の標準名はありますか?その複雑さについて何が知られていますか?


2
Satisfactory Partition問題の変形のようです。あなたのバリアントが既知であり、NPCであることが証明されているかどうかはわかりません。しかし、おそらくk-クリークからの削減は機能するはずです。元のグラフの各ノードを、サイズ「外部クリーク」のノードにリンクします(各ノードには外部クリークがあります)。次に、元のグラフにkクリークが存在する場合にのみ、サイズkの自明でないセットAを見つけることができます(少なくともノードを選択する必要がありますが、外部クリークは避ける必要があります)。しかし、それは単なるアイデアです。十分な時間があれば、削減が正しいかどうかを確認します。 k + 1 C i 2 (k + 1 )vik+1Ci2(k+1)Akk
— マルツィオ

@MarzioDeBiasiいくつかの検索の後、Satisfactory Partition Problemが実際に関連していることがわかりました。ただし、私が見つけることができるすべてのバリアントで は、単一のセットではなくパーティションを探します。それらがどのように関係しているかは明らかではありません。あなたの削減では、私が何かを誤解しない限り、元のグラフのクリークは定義を満たしません。その中の各ノードにはk - 1の内部近傍がありますが、外部の追加により少なくともk + 1の外部近傍があるためですクリーク。kk−1k+1
— アンドラスファラ

2
この問題は「防衛同盟」として知られていると思います
— -daniello

1
@daniello:素晴らしい、私は調査IG Yero、JA Rodriguez-Velazquez、「グラフの防衛同盟:調査」、2013年に検索しましたが、「半分」という単語は見つかりませんでした。十分な時間があれば、注意深く読みます。OPの問題はすでに知られている可能性があります!
— マルツィオ

2
「すべての頂点は少なくとも外側と内側に隣接している」として定式化されているようで、これは丸めまでの質問と同じで、おそらく頂点自体をカウントに含める/含めない
— -daniello

回答:


6

これはクリークからあなたの問題への減少です。

我々は、クリークのインスタンスで開始:グラフと整数kが、聞かせてV = { V 1、V 2、。。。、v n }。GkV={v1,v2,...,vn}

クリークは、さらに制約の下でNPCのまま次の場合(証明スケッチM X (DとEのG (V I)> 2 (K - 1 )次に、t = 2 (k − 1 )− m a xでK tを追加しますmax(deg(vi))≤2(k−1)max(deg(vi)>2(k−1)Ktそしてそれを Gのすべてのノードに接続し、新しいグラフでサイズ k ′ = k + tのクリークを求めます)。t=2(k−1)−max(deg(vi))Gk′=k+t

我々は、そうで仮定する、m個のX (DとEのG (V I))≤ 2 (K - 1 )。d e g (v i)< 2 (k − 1 )の各ノードv iに対して、サイズ2 (k + 1 )+ 1(Cのすべてのノード)の「外部」クリークC iを作成します。Gmax(deg(vi))≤2(k−1)videg(vi)<2(k−1)Ci2(k+1)+1クリークには少なくとも 2 (k + 1 )の近傍があります)。Ci2(k+1)

もしの程度であり、V I、我々コネクトV iがに2 (K - 1 )- D EのG (V I)の節C iは。deg(vi)vivi2(k−1)−deg(vi)Ci

結果の、各v iは次数2 (k − 1 )を持ちます。そう| A | ≥ kの少なくとも一つの頂点を選択しなければならないからです。G′vi2(k−1)|A|≥k

の頂点の1つがAに含まれている場合、少なくとも2 (k + 1 )/ 2 = k + 1ノードも挿入する必要があることは明らかです。元のノードにd e g (v i)< k − 1がある場合、リンクされたC iの少なくとも1つのノードを含める必要があることに注意してください。A | > k。CiA2(k+1)/2=k+1deg(vi)<k−1Ci|A|>k

したがって、最小サイズのセットを作成できます。A | = kは、Gにサイズkのクリークが含まれる場合にのみ。A|A|=kGk

黄色のノードと太字のエッジで表されるグラフにサイズk = 3(三角形)のクリークが含まれているかどうかを確認する削減の例。Gk=3

満足のいく問題のバリアント30CC0991E0BCCCD16E41CBD9CD3EEECC

(読みやすくするためにグループ化された)青色ノードである、赤色エッジは、ノード間のリンクであるGとD のE G (V I)< 2 (K - 1 )。K9Gdeg(vi)<2(k−1)


@WillardZhan:のすべての頂点ので、次数有する≥ 2 (K - 1 )構成で、もしそうであればAは一つの頂点を含んでいて、それが少なくとも含まれている必要があります2 (K - 1 )/ 2 = K - 1人の隣人(およびそのすべての頂点に適用されるA)、そう| A | ≥ K。「最小サイズ」kは、Aがサイズkのクリークである場合にのみ実現できます。G′≥2(k−1)A2(k−1)/2=k−1A|A|≥kkAk
— マルツィオ

@WillardZhan:開始クリークの問題に別の条件を追加しました(ただし、NPCのままにする必要があります)...まだチェックしています(全体的に正しいとは思いません)。
— マルツィオ

1
はい、今では完全に動作します(tの表現ではでなければなりません)。おそらくコメントを削除しますか?k′t
— ウィラード

@WillardZhan:私はそれの段落で、私はクリーク[インスタンスから還元を参照だから、それは、正しいと思う ]クリークに+制約M X (DとEのG (V I))≤ 2 (K - 1 ) [インスタンス(G '、k ') ]。tは、制約を安定させるCliqueの新しいインスタンスを取得するためにGに追加するノード(クリーク)の数です。(G,k)max(deg(vi))≤2(k−1)(G′,k′)t
— マルツィオデビアージ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.