• Aucun résultat trouvé

NP-compl´etude du probl`eme k-axe m´edian

Dans le document AXE M ´ EDIAN DISCRET : (Page 108-113)

Chapitre 9 Couverture minimum 99

9.2 NP-compl´etude du probl`eme k-axe m´edian

Avant d’introduire le probl`eme Planar-4 3-SAT, on rappelle tout d’abord quelques notions concernant les probl`emes de satisfaisabilit´e : ´etant donn´e un ensembleV de variables bool´eennes, unlitt´eral est une variablev∈V ou sa n´egation ¯v. Uneclausecest une conjonction de litt´eraux, par exemplec=v1∨v¯3∨v¯4. Enfin, une formule SATφ(V, C) est un ensembleC de clauses sur l’ensemble V de variables.

Legraphe associ´e G φ(V, C)

de la formule SAT φ(V, C) est le graphe biparti d´efini de la mani`ere suivante :

– on associe un sommet `a chaque variable v∈V et `a chaque clausec∈C;

– on place une arˆete entre un sommet associ´e `a une variable v et un sommet associ´e `a une clausec si et seulement siv apparaˆıt dans c.

Enfin, une formulePlanar-4 3-SAT φest par d´efinition une formule SAT pour laquelle :

9.2. NP-compl´etude du probl`eme k-axe m´edian – le graphe associ´eG(φ) est planaire ;

– chaque variable apparaˆıt au plus 4 fois dansφ; – chaque clause a exactement 3 litt´eraux.

D´efinition 9.3 (Probl`eme Planar-4 3-SAT) Etant donn´ee une formule Planar-4 3-SAT´ φ(V, C), existe-t-il un assignement des variables deV tel que toutes les clauses de C sont satis-faites ?

La NP-compl´etude du probl`eme Planar-4 3-SAT a ´et´e ´etablie par Jansen et M¨uller [JM95].

La r´eduction du probl`eme Planar-4 3-SAT au probl`emek-MA se fait de la mani`ere suivante :

´etant donn´ee une formule Planar-4 3-SATφ, on construit en temps polynomial une formeS(φ) et un entierk(φ) tels que φest satisfaisable si et seulement si S(φ) admet un k(φ)-AM, ce qui implique que le probl`emek-AM est au moins aussi difficile que le probl`eme Planar-4 3-SAT.

Nous pr´esentons aux §9.2.1, §9.2.2 et §9.2.3 des objets de Z2 qui sont des interpr´etations g´eom´etriques des variables, des arˆetes et des clauses deG(φ), que nous appelonsgadgets. Nous connectons ces gadgets au§9.2.4 pour construireS(φ) et terminer la preuve. Les figures que nous pr´esentons dans la suite comportent un nombre important de boules ; par souci de lisibilit´e, on repr´esente dor´enavant chaque boule euclidienne par la fronti`ere de son enveloppe convexe, plutˆot que par un cercle.

1 2 7 8

8 7

1 2

p

Fig. 9.2 – Deux couvertures minimum du gadget variable, correspondant `a un assignement `a vrai (en haut) et `afaux (en bas) de la variable associ´ee. Les boules noires appartiennent `a toute couverture minimum ; toute paire de points cercl´es ne peut ˆetre couverte par une seule boule.

9.2.1 Variables

Nous proposons tout d’abord l’interpr´etation g´eom´etrique d’une variable, appel´ee gadget variable, et illustr´ee sur la figure 9.2. Le gadget variable est l’ensemble des points de Z2 situ´es

sous la ligne pointill´ee. Ses 8 extensions verticales (num´erot´ees de 1 `a 8 sur la figure) sont appel´ees les extr´emit´es du gadget, que nous «brancherons»aux gadgets arˆetes.

D´eterminons une couverture minimum de ce gadget : chacune des 40 boules dessin´ees en trait fort appartient `a toute couverture minimum. De plus, toute paire de points cercl´es ne peut ˆetre couverte par une seule boule. Il y a 32 points cercl´es, donc toute couverture minimum de ce gadget comporte au moins 40+32=72 boules. Observons maintenant que le point p peut ˆetre couvert de deux mani`eres diff´erentes, qui impliquent chacune une couverture du gadget par 72 boules. Aucune de ces couvertures minimum n’autorise de protub´erance `a la fois dans les extr´emit´es paires et impaires, mais il existe une couverture minimum ayant une protub´erance de longueur 1 dans chaque extr´emit´e impaire (figure 9.2, en haut), et une couverture minimum ayant une protub´erance de longueur 1 dans chaque extr´emit´e paire (figure 9.2, en bas). Ces deux couvertures correspondent respectivement aux assignements `a vrai et `afaux de la variable associ´ee. Si v est la variable associ´ee au gadget, on dit que chaque extr´emit´e impaire transmet le signal v, tandis que chaque extr´emit´e paire transmet le signal ¯v.

9.2.2 Arˆetes

Fig. 9.3 – Trois configurations d’un gadget arˆete ; pour chacune d’elles sont dessin´ees deux couvertures minimum. Chaque couverture correspond `a la transmission du signal vrai ou faux, par propagation de la protub´erance d’une extr´emit´e `a l’autre.

Nous pr´esentons sur la figure 9.3 le gadget arˆete, interpr´etation g´eom´etrique des arˆetes de G(φ). Un tel gadget doit ˆetre construit de mani`ere `a transmettre le signal (vrai ou faux) d’une variable vers une clause ; les diff´erents cas de figure sont illustr´es sur la figure 9.3, pour une arˆete rectilin´eaire ou pr´esentant des «virages» d’angle π/2. Afin de transmettre le signal, la longueur du gadget est un multiple de 3, et les abscisses (ou ordonn´ees) des centres des boules des couvertures minimum sont ´equivalentes modulo 3 d’une extr´emit´e `a l’autre du gadget.

9.2. NP-compl´etude du probl`eme k-axe m´edian 9.2.3 Clauses

Fig. 9.4 – Trois couvertures minimum du gadget clause, selon les signaux transmis par les arˆetes : de gauche `a droite, faux-faux-faux,vrai-faux-faux etvrai-vrai-vrai. Nous reprenons les conventions graphiques de la figure 9.2.

Enfin, nous pr´esentons une interpr´etation g´eom´etrique des clauses. Legadget clause est l’en-semble des points situ´es `a droite de la ligne pointill´ee sur la figure 9.4. Nous reprenons une argumentation similaire `a celle du§9.2.1 pour le calcul de la couverture minimum : les 5 boules d´elimit´ees par un trait fort appartiennent `a toute couverture minimum ; de plus toute paire de points cercl´es sur l’illustration de gauche ne peut ˆetre couverte par une unique boule. Cou-vrir ce gadget requiert donc au moins 5+5=10 boules ; une telle couverture est pr´esent´ee sur l’illustration de gauche. Cependant, si on autorise une protub´erance (d’´epaisseur 1) d’une boule provenant d’un gadget arˆete, simulant la transmission d’un signalvrai, il est possible de couvrir le reste du gadget avec 9 boules. Un exemple est illustr´e sur la figure 9.4 au milieu, avec un signal vrai provenant de l’arˆete sup´erieure. Si on autorise trois protub´erances (illustration de droite), couvrir le reste du gadget n´ecessite ´egalement 9 boules (par le mˆeme argument concernant les points cercl´es).

9.2.4 Branchements des gadgets

Etant donn´ee une formule Planar-4 3-SAT´ φ(V, C), nous construisons S(φ) en dessinant un gadget pour chaque sommet (variable ou clause) et pour chaque arˆete deG(φ), r´ealisant les mˆemes connexions que dansG(φ). Ceci est possible car les branches horizontales (respectivement verticales) des extr´emit´es des gadgets sont centr´ees sur des axes horizontaux (resp. verticaux) dont les ordonn´ees (resp. les abscisses) sont constantes modulo 3.

Etant donn´e que tout graphe planaire de degr´e inf´erieur `´ a 4 peut ˆetre plong´e dans la grille rectilin´eaire en temps polynomial (voir [Tam87]), la forme S(φ) peut ˆetre construite en temps polynomial en la taille de φ. La figure 9.5 donne un exemple du«branchement» d’un gadget

variable dont la variable associ´ee apparaˆıt 4 fois dansφ.

E E W

N

S

S W N

Fig. 9.5 – Exemple de connexions pour un gadget variable dont la variable associ´ee apparaˆıt 3 fois en tant que lit´eral positif, et une fois en tant que lit´eral n´egatif.

Dor´enavant, on notew(φ) le nombre minimum de boules n´ecessaires pour couvrir les gadgets arˆetes deS(φ), et k φ(V, C)

= 72.|V|+w(φ) + 9.|C|.

Lemme 9.1 Si φ est satisfaisable, alors il existe une couverture deS(φ) ayant k(φ) boules.

Preuve. Soit A un assignement des variables qui satisfait la formule φ. L’algorithme suivant construit une couverture deS(φ) ayantk(φ) boules :

– couvrir les gadgets variable selon A, avec des protub´erances dans les extr´emit´es qui correspondent aux valeursvrai. Chaque gadget n´ecessite 72 boules (cf §9.2.1) ;

– couvrir les gadgets arˆete, en transmettant les ´eventuelles protub´erances d’une extr´emit´e

`

a l’autre des gadgets ; cette op´eration requiertw(φ) boules ;

– couvrir les gadgets clause. PuisqueT satisfaitφ, chaque gadget clause est d´ej`a en partie couvert par une boule provenant d’un gadget arˆete, et donc chaque gadget requiert 9 boules (cf§9.2.3).

La couverture ainsi construite poss`ede 72.|V|+w(φ) + 9.|C|=k(φ) boules.

Lemme 9.2 S’il existe une couverture de S(φ) ayant k(φ) boules, alors φest satisfaisable.

Preuve. Supposons qu’il existe une couverture deS(φ) ayantk(φ) boules. Par construc-tion, 72.|V|+w(φ) boules sont requises pour couvrir les|V|gadgets variable et les gadgets arˆete de S(φ). Par cons´equent, la partie de S(φ) non encore couverte peut ˆetre couverte par k(φ)−72.|V| −w(φ) = 9.|C| boules. Puisqu’il faut au moins 9 boules pour couvrir chaque gadget clause, cela implique que la couverture de S(φ) peut ˆetre termin´ee en

pla-¸cant exactement 9 boules dans chaque gadget clause. On en d´eduit que chaque gadget clause est d´ej`a en partie couvert par une protub´erance (transmise par un gadget arˆete), et donc que l’assignement correspondant `a la couverture des gadgets variable satisfait φ.

D’apr`es les lemmes 9.1 et 9.2, la formuleφest satisfaisable si et seulement si on peut couvrir S(φ) aveck(φ) boules. Le probl`eme du k−AM est au moins aussi difficile que Planar-4 3-SAT, et est donc NP-difficile. En d’autres termes, si toute instance de k-AM pouvait ˆetre r´esolue en temps polynomial, alors nous aurions un algorithme polynomial pour r´esoudre Planar-4 3-SAT. D’autre part, il est clair que le probl`eme k-AM est dans NP : on peut v´erifier en temps polynomial si un ensemble donn´e dek boules couvre une formeS. Nous avons ainsi prouv´e : Th´eor`eme 9.1 Le probl`eme duk−AM est NP-complet.

Dans le document AXE M ´ EDIAN DISCRET : (Page 108-113)