Quelle est la complexité de ce problème graphique?


16

Étant donné un simple graphe non orienté G , trouver un sous-ensemble A de sommets, tel que

  1. pour tout sommet xA au moins la moitié des voisins de x sont également dans A , et

  2. la taille de A est minimale.

Autrement dit, nous recherchons un cluster, dans lequel au moins la moitié du voisinage de chaque sommet interne reste interne. La simple existence d'un tel cluster est évidente, car l'ensemble des sommets V(G) toujours la propriété 1. Mais est-il difficile de trouver le plus petit (non vide) un tel cluster?

Existe-t-il un nom standard pour ce problème? Que sait-on de sa complexité?


2
Cela semble être une variante du problème de partition satisfaisante . Je ne sais pas si votre variante est connue et s'est avérée être un PNJ; mais probablement une réduction de la k-clique devrait fonctionner: reliez chaque nœud du graphe d'origine à k + 1 nœuds d'une "clique externe" C i de taille 2 ( k + 1 ) (chaque nœud a sa clique externe). Ensuite, vous pouvez trouver un ensemble non trivial A de taille k si et seulement si unvik+1Ci2(k+1)Akk-clique existe dans le graphique d'origine (vous devez choisir au moins un nœud, mais vous devez éviter toute clique externe). Mais ce n'est qu'une idée; si j'ai assez de temps, j'essaierai de voir si la réduction est correcte.
Marzio De Biasi

@MarzioDeBiasi Merci, après quelques recherches, j'ai découvert que le problème de partition satisfaisante est en effet lié. Cependant, dans chaque variante que j'ai pu trouver, ils recherchent une partition, plutôt qu'un seul ensemble. Il n'est pas clair, comment ils sont liés. Dans votre réduction, à moins que je ne comprenne quelque chose, une -clique du graphe d'origine ne satisfait pas la définition, car chaque nœud aura des k - 1 voisins internes, mais au moins k + 1 voisins externes, en raison de l'ajout externe cliques. kk1k+1
Andras Farago

2
Je pense que ce problème est connu comme «alliance défensive»
daniello

1
@daniello: super, j'ai cherché dans l'enquête IG Yero, JA Rodriguez-Velazquez, "Alliances défensives dans les graphiques: une enquête", 2013 mais je n'ai pas trouvé le mot "moitié"; quand j'aurai assez de temps, je le lirai attentivement; il est probable que le problème OP est déjà connu!
Marzio De Biasi

2
Il semble être formulé comme «chaque sommet a au moins autant de voisins à l'intérieur qu'à l'extérieur», ce qui est le même que dans la question jusqu'à l'arrondi, et peut-être inclure / ne pas inclure le sommet lui-même dans le décompte
daniello

Réponses:


6

Il s'agit d'une réduction de Clique à votre problème.

Nous commençons par une instance de Clique: un graphe et un entier k , laissez V = { v 1 , v 2 , . . . , v n }GkV={v1,v2,...,vn} .

La clique reste un PNJ même sous la contrainte que (esquisse de preuve: si m a x ( d e g ( v i ) > 2 ( k - 1 ) puis ajoutez un K tt = 2 ( k - 1 ) - m a xmax(deg(vi))2(k1)max(deg(vi)>2(k1)Kt et le connecter à tous les nœuds de G et demander une clique de taille k = k + t dans le nouveau graphe).t=2(k1)max(deg(vi))Gk=k+t

Nous supposons donc que dans , m a x ( d e g ( v i ) ) 2 ( k - 1 ) . Pour chaque nœud v i pour lequel d e g ( v i ) < 2 ( k - 1 ) on crée une clique "externe" C i de taille 2 ( k + 1 ) + 1 (chaque nœud de iGmax(deg(vi))2(k1)videg(vi)<2(k1)Ci2(k+1)+1Ci clique a au moins voisins).2(k+1)

Si est le degré de v i , nous connectons v i à 2 ( k - 1 ) - d e g ( v i ) nœuds de C i .deg(vi)vivi2(k1)deg(vi)Ci

Dans le résultant , chaque v i a le degré 2 ( k - 1 ) ; donc | A | k car au moins un sommet doit être sélectionné.Gvi2(k1)|A|k

Il est clair que si l'un des sommets de est inclus dans A, alors au moins 2 ( k + 1 ) / 2 = k + 1 nœuds doivent également y être insérés. Notez que si un nœud d'origine a d e g ( v i ) < k - 1, alors au moins un nœud du C i lié doit être inclus, conduisant à | A | > k .CiA2(k+1)/2=k+1deg(vi)<k1Ci|A|>k

Nous pouvons donc construire un ensemble de taille minimale | A | = k si et seulement si G contient une clique de taille k .A|A|=kGk

Un exemple de la réduction dans laquelle nous demandons si le graphe représenté par les nœuds jaunes et les bords gras contient une clique de taille k = 3 (un triangle).Gk=3

satisfactory problem variant 30CC0991E0BCCCD16E41CBD9CD3EEECC

Les nœuds bleus (regroupés pour une meilleure lisibilité) sont , les bords rouges sont les liens entre les nœuds de G avec d e g ( v i ) < 2 ( k - 1 ) .K9Gdeg(vi)<2(k1)


G2(k1)A2(k1)/2=k1A|A|kk can be achieved only if A is a clique of size k.
Marzio De Biasi

@WillardZhan: I added another condition to the starting clique problem (but it should remains NPC) ... I'm still checking it (not entirerly convinced its correct).
Marzio De Biasi

1
Yes, now it works perfectly (though it should be k in the expression of t). Maybe I shall delete my comments?
Willard Zhan

@WillardZhan: I think it's correct, because in that paragraph I'm referring to the reduction from Clique [instance (G,k)] to Clique+constraint max(deg(vi))2(k1) [instance (G,k)]. t is the number of the nodes (clique) to add to G to get the new instance of Clique that stastisfies the constraint.
Marzio De Biasi
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.