• Aucun résultat trouvé

Déclinaison des problèmes de satisfaisabilité maximum en GLO

Chapitre 5. Les problèmes de satisfaisabilité

5.3. Déclinaison des problèmes de satisfaisabilité maximum en GLO

C’est un état de fait : en classique, MaxEk-Sat est facile dans le sens où tout optimum 1-local, comme nous le montrons dans ce chapitre, est une k/(k + 1)-approximation (voir lemme 5.3). Plus éloquent peut-être encore, pour MaxSat, on peut trouver une 1/2-approximation en comparant seulement les performances des solutions−→1 et−→0 (voir théorème 5.4) ! Du point de vue de l’approximation différen-tielle, les choses semblent beaucoup moins aisées : il faudrait par exemple considé-rer des voisinagesh-bornésh >kpour seulement espérer établir l’appartenance de MaxEk-Sat àGLO[δ]. Cette difficulté, pour un problème de maximisation, provient simplement du fait que le rapport classique situe la valeur d’une solution entre 0 etβ quand le rapport différentiel la situe entreωetβ:

v(T)>ρβ+ (1−ρ)ω⇒v(T)>ρβ

Or, il n’y a, a priori, aucune raison pour que la pire solution soit de valeur nulle en général ; il n’y a, dans le cas particulier des problèmes de satisfaisabilité, aucune raison d’affirmer a priori l’existence d’une affectation des valeurs de vérité qui n’avère aucune clause.

5.3.2. MaxSat et CGLO

Dans ce petit paragraphe nous montrons l’appartenance de MaxSat à CGLO et quel rapport d’approximation classique cette appartenance permet de garantir.

Remarquons simplement que∀T ∈ {0,1}n,mSat(I, T) +mSat(I, T)>m. Ceci impliquemax{mSat(I, T), mSat(I, T)}>m/2et prouve le théorème suivant.

THÉORÈME5.4.– MaxSat∈CGLO. Le rapport d’approximation classique garanti par cette appartenance est minoré par 1/2.

5.3.3. Maxk-Sat et GLO

Ausiello et Protasi [AUS 95b] ont prouvé l’appartenance de tout problème de sa-tisfaisabilité maximum à la classe GLO par le biais du problème général MaxSat pour lequel tout optimum 1-local de toute instance garantit un rapport d’approxima-tion classique de 1/2. Pour les sous-problèmes MaxEk-Sat, nous montrons que de tels optima locaux garantissent en réalité un rapport dek/(k+ 1).

SoitI= (X, C)une instance de Ek-Sat etT une affectation des valeurs de vérité, on peut toujours supposer, quite à échanger pour toute variablexitelle queTi= 0les occurrences des littérauxxietx¯i, queT =−→1. Étant donnée une telle affectationT, la quantitémadésignera pour tout entieraentre 0 etkle nombre de clauses contenant exactementalittéraux vrais pourT, les quantitésma(i)etma(¯i)désigneront quant à elles pouri de 1 ànle nombre de clauses, parmi les clauses avérées par a litté-raux, qui contiennent respectivement les littérauxxietx¯i; bien sûrPk

a=0ma =m.

Nous associons ainsi à toute solution T et pourade 0 à kles ensembles et quan-tités suivantes : Ca = {c ∈ C : |c ∩X| = a} (ma = |Ca|), ∀i = 0, . . . , n, Ca(i) = {c ∈ Ca : xi ∈ C} (ma(i) = |Ca(i)|) Ca(¯i) = {c ∈ Ca : ¯xi ∈ C}

(ma(¯i) =|Ca(¯i)|).

Les problèmes Sat (resp., CCSP) consistant à maximiser ou minimiser le nombre de clauses avérées par au moins un littéral (resp., tous ses littéraux), on a : ∀I = (X, C),∀T ∈ {0,1}|X|,mSat(I, T) =Pk

a=1ma =m−m0etmCCSP(I, T) =mk. Par ailleurs, si l’on considère l’affectation complémentaireT, on remarque entre ces

deux problèmes les relations :

mSat I, T

=

k−1X

a=0

ma = m−mk = m−mCCSP(I, T) mCCSP I, T

= m0 = m−mSat(I, T)

Enfin, les quantitésma(i)etma(¯i)vérifient,∀a∈[0, k], les relations : Xn

i=1

ma(i) = ama

Xn i=1

ma(¯i) = (k−a)ma

LEMME5.3.– ∀k>2, MaxEk-Sat∈GLO. Le rapport déduit de cette appartenance est minoré park/(k+ 1).

Preuve. Soit T une affectation des valeurs de vérité, T est un optimum local rela-tivement au voisinage 1-borné si elle satisfait au moins autant de clauses que toute solution obtenue à partir deT en ne changeant la valeur que d’une composante. Pouri de 1 àn, on noteTila solution voisine deTdéfinie,∀j = 1, . . . , n, par :

Tji=

1−Tj sij=i Tj sinon

DeTàTi, lorsque seule change l’affectation de la variablexi, les clauses non avé-rées parTqui contiennent le littéralx¯ideviennent vraies, les clauses avérées pourT par l’unique littéralxideviennent fausses :

∀i= 1, . . . , n, mSat I, Ti

=mSat(I, T) +m0(¯i)−m1(i)

Notant, pour touti,∆i=m0(¯i)−m1(i)la différence de valeur entre les solutions Ti etT, l’optimalité locale deT s’exprime comme suit : ∀i = 1, . . . , n,∆i 6 0 implique Pn

i=1m1(i) > Pn

i=1m0(¯i) qui est équivalent àm1 > km0 = k(m− mSat(I, T)); cette dernière expression est, à son tour, équivalente àkmSat(I, T) + m1>km.

Les relationsmSat(I, T)>m1etβSat(I)6mpermettent alors de conclure : (k+ 1)mSat(I, T)>km ⇒ ρSat(I, T)> k

k+ 1

Notons que ce résultat a déjà été démontré dans [HAN 90], et ce pour le problème plus général Maxk+-Sat des problèmes de satisfaisabilité dont les clauses sont consti-tuées non plus d’exactementklittéraux, mais d’au moinsklittéraux.

THÉORÈME5.5.–∀k>2, Maxk+-Sat∈GLOet le rapport d’approximation déduit est minoré park/(k+ 1).

Ce résultat est élégamment démontré dans [BAT 98]. Il faut juste remarquer que, dans le cas de clauses de taille supérieure ou égale àk, l’égalitéPn

i=1m0(¯i) =km0

devient une inégalitéPn

i=1m0(¯i)>km0, suffisante à l’établissement du résultat.

5.3.4. Maxk-Sat et CGLO

SoitI = (X, C)une instance deEk-Sat àmclauses etnvariables, on suppose disposer d’un optimum local pour le voisinage miroir 1-bornéT = −→1. L’optimalité locale de T amène les expressions qui suivent.∀i = 1, . . . , n, le fait que∆i 6 0 implique :

m1+kmSat(I, T)>km [5.5]

Par ailleurs,mSat(I, T)>mSat(I, T)⇔mk>m0et ceci implique :

mk+mSat(I, T)>m [5.6]

Or, on a toujoursmSat(I, T)>m1+mk, ce qui permet de conclure en sommant les expressions [5.5] et [5.6] :(k+2)mSat(I, T)>(m1+mk)+(k+1)mSat(I, T)>

(k+ 1)m, soitρSat(I, T)> (k+ 1)/(k+ 2); nous avons ainsi démontré le lemme suivant.

LEMME5.4.–∀k>2, MaxEk-Sat∈CGLO; le rapport d’approximation classique déduit est minoré par(k+ 1)/(k+ 2).

Selon les mêmes arguments que dansGLO, on remarque que la portée de ce résul-tat s’étend aux instances constituées de clauses de taille au moinsk, d’où le théorème suivant.

THÉORÈME5.6.–∀k >2, Maxk+-Sat∈ CGLO. Le rapport déduit est minoré par (k+ 1)/(k+ 2).

Preuve. Les expressions [5.5] et [5.6], ainsi que l’argument de conclusion : mSat(I, T)>m1+mk

sont toujours vrais en remplaçant la quantité mk par la quantitémk+, nombre des clauses dont tous les littéraux sont vrais :Test au moins aussi bonne queTsimk+>

m0 et les clauses vraies pour tous leurs littéraux comportant au moins k littéraux, mSat(I, T)>m1+mk+.

5.3.5. MaxNAEk-Sat et GLO

Une instance de MaxNAESat1(resp., MaxNAEk-Sat) est la donnée d’un ensemble de clauses (resp., dek-clauses)Csur un ensembleXde variables et pour ce problème, une clausecest validée par une affectationT des valeurs de vérité si elle contient au moins un littéral rendu vrai et un littéral rendu faux parT. Ainsi, il s’agit de trouver une affectationTqui maximise le nombre des clauses conjointement avérées parTet son complémentaireT:m+mNAE(I, T) =mSat(I, T)+mSat(I, T). Pour NAESat, deux clausesc= (`1, `2. . . , `p)et¯c= (¯`1,`¯2. . . ,`¯p)ont la même signification, sont une seule et même entrée ; aussi supposons-nous ne jamais disposer dans une instance, et ce quel que soit l’ensemble cde littéraux considéré, conjointement des formules équivalentescet¯c, à moins de se placer dans le cas pondéré.

LEMME5.5.– (∀k>3, MaxNAEk-Sat) et MaxNAE2-Sat sont dans GLO. Les rapports d’approximation déduits sont respectivementk/(k+ 1)et 1/2.

Preuve. Soit I = (X, C) la donnée d’un ensemble C de m k-clauses sur un en-sembleXdenvariables ; on cherche à trouver une affectationT des valeurs de vérité qui maximise la quantitéPk−1

a=1ma =m−(m0+mk), nombre des clauses dont tous les littéraux ne sont pas affectés à même valeur. Remarquons que pour NAEk-Sat, les classesGLOetCGLOcoïncident puisque deux affectations complémentairesT etT vont valider exactement les mêmes clauses !

DeT àTi, les clauses ne comportant que des littéraux vrais ou que des littéraux faux peuvent être validées, tandis que les clauses avérées par un unique ou k−1

1. Max Not All Equal Sat.

littéraux peuvent se trouver invalidées. Ainsi, T est un optimum 1-local s’il véri-fie :∀i = 1, . . . , n,mNAE(I, T)> mNAE(I, Ti)si et seulement si∀i = 1, . . . , n, m1(i) +mk−1(¯i)>m0(¯i) +mk(i). En sommant suri:

Pn i=1

m1(i) +Pn

i=1

mk−1(¯i) >

Pn i=1

m0(¯i) +Pn

i=1

mk(i)

⇔ m1+mk−1 > k(m0+mk)

=k(m−mNAE(I, T))

[5.7]

Pourk>3,mNAE(I, T)>m1+mk−1et l’expression [5.7] implique : (k+ 1)mNAE(I, T)>km

soitρNAE(I, T)>k/(k+ 1). Pourk= 2,mNAE(I, T) =m1 =mk−1et l’expres-sion [5.7] implique2mNAE(I, T)>2(m−mNAE(I, T)), soitmNAE(I, T)>m/2: le rapport de 1/2 est obtenu.

Une fois encore, l’argumentation s’applique également aux instances constituées de clauses de taille au moinsk.

THÉORÈME5.7.– (∀k>3, MaxNAEk+-Sat) et MaxNAE2+-Sat sont dans GLO avec les rapports d’approximation respectifsk/(k+ 1)et 1/2.

Preuve. Si l’on notem−1le nombre des clauses constituées de littéraux « tous vrais, sauf un » etm−1(¯i)le nombre de ces clauses contenant le littéralx¯i, l’optimalité locale de T s’exprime alors par la relation :∀i = 1, . . . , n,m1(i) +m−1(¯i)>m0(¯i) + mk+(i); en sommant sur i, on obtient les nouvelles relationsP

im1(i) = m1 et P

im−1(¯i) = m−1,P

im0(¯i) >km0 etP

imk+(i) > kmk+. Il suffit alors pour conclure de remarquer mNAE(I, T) > m1 +m−1 pour k > 3et mNAE(I, T) >

max{m1, m−1}pourk= 2.

5.3.6. Maxk-Sat et GCGLO

Considérons une solutionT qui est optimum 1-local du problème MaxNAESat et au moins aussi bonne, au sens de MaxSat, que son complémentaireT; elle assure un rapport classiqueρSat(I, T)>2k/(2k+ 1).

Effectivement, la preuve précédente nous donnait pour un optimum 1-local de MaxNAESat l’expression [5.7] :

m1+mk−1>k(m−mNAE(I, T)) [5.8]

Or, les valeurs d’une affectationT aux sens de Sat et de NAESat sont liées par la relation :

mNAE(I, T) =mSat(I, T) +mSat I, T

−m [5.9]

On déduit alors par la combinaison des expressions [5.7], [5.8] et [5.9] : m1+mk−1>k 2m−mSat(I, T)−mSat(I, T)

⇔ m1+mk−1+k mSat(I, T) +mSat(I, T)

>2km

ce qui mène, en remarquantmSat(I, T)>m1+mk−1etmSat(I, T)>mSat(I, T), à la conclusion puis au lemme :

(2k+ 1)mSat(I, T)>m1+mk−1+k mSat(I, T) +mSat I, T

>2km

LEMME5.6.– ∀k > 3, MaxEk-Sat ∈ GCGLO. Le rapport déduit est dans ce cas minoré par2k/(2k+ 1).

Le résultat du lemme 5.6 est généralisable au cas plus général de Maxk+-Sat comme le montre le théorème suivant.

THÉORÈME5.8.–∀k >3, Maxk+-Sat ∈ GCGLOet le rapport déduit est minoré par2k/(2k+ 1).

Preuve. En utilisant les mêmes notations qu’au cours du théorème précédent, on déduit le résultat des relationsm1+m−1>k(m0+mk+),m0+mk+= 2m−(mSat(I, T)+

mSat(I, T))etmSat(I, T)>m1+m−1.

5.4. Les problèmes de satisfaction de contraintes conjonctives