Le problème de sauvegarde est-il NP-complet?

9

Le problème de décision suivant est-il NP-complet:

Soit un graphe non orienté et deux entiers. Est-il possible de sélectionner pour chaque sommet de exactement voisins différents de sorte qu'aucun nœud ne soit choisi plus de fois.gbcgbc

Le cas peut être résolu pour tout en temps polynomial en utilisant l'appariement maximal.b=1c

Motivation: chaque nœud veut placer sauvegardes chez différents voisins, mais chaque nœud n'a que la capacité de stocker sauvegardes.bc

Volker Turau
la source

Réponses:

11

Je pense que ce qui suit est un algorithme polynomial basé sur le débit maximum. Soit l'entrée.g(V,E),b,c

  • Construire un graphe biparti dirigé avec et étant les cloisons gauche et droite et étant les bords dirigés de à .H(L,R,F)LRF LR
  • Soit . Il y a sommets et sommets .|V|=nnn RLnR
  • Chaque sommet a une "copie" dans (disons ) et une copie dans (disons ).L v l R v rvVLvlRvr
  • Si ajoutez un bord dirigé de à . Chacun de ces bords a la capacité 1.u l v r(u,v)Eulvr
  • Ajouter une « source » noeud et ajouter des bords dirigés de à chaque sommet dans . Chacun de ces bords a une capacité .s L bssLb
  • Ajoutez un nœud "puits" et ajoutez des arêtes dirigées de chaque sommet de à . Chacun de ces bords a une capacité .R t ctRtc
  • Trouvez le débit maximal de à .tst

Le graphe donné a une solution si et seulement si le débit maximum calculé ci-dessus sature chaque bord de à , c'est-à-dire que le débit sur chaque bord de à est égal à .s L s L bgsLsLb

Shiva Kintali
la source
7
En effet, c'est précisément la solution envisagée lorsque j'assigne cela comme un problème de devoirs.
Jeffε