• Aucun résultat trouvé

Sorties: « G admet-il une couverture de taille k ? »

1 S ← ∅ 2 c ← k

3 tant que Il reste des arêtes dans E et c > 0 faire 4 Choisir une arête (i,j) dans E

5 si i ∈ S ou j ∈ S alors 6 Retirer (i,j) de E

7 sinon

8 Relancer l’étape 3 avec S ← S ∪ {i} et c ← c − 1 9 Relancer l’étape 3 avec S ← S ∪ {j} et c ← c − 1

10 fin

11 fin

12 si Une des branches de l’algorithme termine avec E = ∅ alors 13 RenvoyerOui

14 sinon

15 RenvoyerNon 16 fin

Théorème 1.9. Un problème est FPT si et seulement si il admet un kernel. On trouvera la preuve de ce théorème dans [44], par exemple. Cependant, le théorème ne dit rien sur la taille du kernel par rapport au paramètre. Un pan important de la complexité paramétrique s’articule autour des tailles de kernels (savoir si un problème admet un kernel polynomial par exemple, voir [14]).

Il existe, enfin, un ensemble de classes de complexité, les classes W[1], W[2], . . . Ces classes22croissantes pour l’inclusion, sont préservées par un type particulier de réductions (les FPT-réductions, qui sont polynomiales et préservent le paramètre). Leur intérêt réside dans l’existence de problèmes difficiles suivant ces réductions, vers lesquels on peut réduire d’autres problèmes pour conclure à la non-existence d’algorithmeFPT. Ainsi,MAX ISestW[1]-difficile,MIN DSest W[2]-difficile, . . . Je renvoie à nouveau vers [44] pour plus de détails.

22La classeW[i] est définie comme l’ensemble des problèmes qu’on peut réduire à la satisfiabilité

d’un circuit électronique utilisant moins de i portes logiques à nombre non-borné d’entrées sur chaque chemin, et moins de k entrées mises à 1.

1.5

Plan de cette thèse

La partie que vous venez de lire était une introduction au domaine. Le reste de ce manuscrit est constitué des différents articles rédigés ou publiés au cours de ma thèse, développés et adaptés à la mise en page de ce manuscrit. On retrouvera en particulier dans les chapitres successifs :

• Des algorithmes modérément exponentiels pour approcher le problème MAX SAT.

• Une formalisation des classes d’approximation exponentielle, une méthode générale pour produire des algorithmes d’approximation, et des exemples d’application de cette méthode.

• Une étude de la complexité paramétrique du problème (k,n − k)-CUT (K,N-K CUT).

S

ATISFIABILITY

I can’t get no satisfaction.

Rolling Stones, 1965

Dans ce premier chapitre, nous considérons le problèmeMAX SATpour lequel nous donnons des algorithmes approchés modérément exponen- tiels. L’objectif général est de dépasser les résultats d’inapproximabilité polynomiale avec des temps de calcul meilleurs que ceux des algorithmes exacts. Nos algorithmes permettent d’obtenir des ratios d’approxima- tion aussi proche que l’on veut de 1, le temps de calcul dépendant du ratio voulu.

We study approximation of the MAX SAT problem by moderately ex- ponential algorithms. The general goal of the issue of moderately exponential approximation is to catch-up on polynomial inapprox- imability, by providing algorithms achieving, with worst-case running times importantly smaller than those needed for exact computation, approximation ratios unachievable in polynomial time. We develop several approximation techniques that can be applied to MAX SATin order to get approximation ratios arbitrarily close to 1.

Contents

2.1 Introduction and notations . . . 44

2.2 First results . . . 47

2.2.1 Using a better parameterized algorithm . . . 48 2.2.2 Splitting the clauses . . . 49

2.3 Approximating by pruning the search tree . . . 51

2.4 Splitting the variables . . . 56

2.5 Discussion . . . 62

2.1

Introduction and notations

Optimum satisfiability problems are of great interest from both theoretical and practical points of view. Let us only note that several subproblems of MAXIMUM SATISFIABILITY(MAX SAT) and MINIMUMSATISFIABILITY(MIN SAT) are among the first complete problems for many approximability classes [7, 8, 49, 91]. On the other hand, in many fields (including artificial intelligence, database system, mathematical logic, . . . ) several problems can be expressed in terms of versions of SATISFIABILITY(SAT) [10].

Satisfiability problems have in particular drawn a major attention in the field of polynomial time approximation as well as in the field of parameter- ized and exact solution by exponential time algorithms. Our goal in this pa- per is to develop approximation algorithms for MAX SATwith running times which, though being exponential, are much lower than those of exact algo- rithms, and with a better approximation ratio than the one achieved in poly- nomial time. This approach has already been considered forMAX SATin [37], where interesting tradeoffs between running time and approximation ratio are given. It has also been considered for several other well known prob- lems such as MINIMUM SET COVER (SET COVER) [18, 35], MINIMUM COLOR- ING(MIN COLOR) [13, 17], MAXIMUMINDEPENDENTSET(MAX IS) and MINIMUM VERTEX COVER (MIN VC) [16], MINIMUM BANDWIDTH (MIN BW) [36, 60], etc. Similar issues arise in the field of FPT algorithms, where approximation notions have been introduced, for instance, in [24, 45]. In this article, we propose several improvements of the result of [37] using various algorithmic techniques. Given a set of variables and a set of disjunctive clauses,MAX SATconsists of finding a truth assignment for the variables that maximizes the number of satisfied clauses. In what follows, we denote by X = {x1, x2, . . . , xn} the set of variables and by C = {C1, C2, . . . , Cm} the set of clauses. Each clause consists of a disjunction of literals that are either a variable xior the negation of a variable ¬xi. A ρ-approximation algorithm forMAX SAT(with ρ < 1) is an algorithm that finds an assignment satisfying at least a fraction ρ of the maximal number of simultaneously satisfied clauses. The best known ratio guaranteed by a polynomial time approximation algorithm is α = 0.784 obtained in [4].

Dealing with exact solution, [27] gives an exact algorithm working in time O∗(1.3247m), which is the best known bound so far. Dealing with the number of variables, the trivial O∗(2n)bound has not yet been broken down, and this constitutes one of the main open problems in the field of exact exponential algo- rithms1. The parameterized version ofMAX SATconsists, given a set of clauses C and an integer k, of finding a truth assignment that satisfies at least k clauses, or to output an error if no such assignment exists. In [27] the authors give a parameterized algorithms forMAX SATrunning in time O∗(1.3695k). Intuitively, the first algorithm is faster because it benefits from the empty clauses that are removed from the instance, whereas the parameterized algorithm can only take into account satisfied clauses.

Using the same notation as in [27], we say that that a variable x is an (i, j)- variable if it occurs positive in exactly i clauses and negative in exactly j clauses. For any instance C of MAX SAT, we will denote by OPT(C) (or OPT if no ambiguity occurs) an optimal set of satisfied clauses. We use notation f (n) = O∗(g(n)), if and only if ∃c ∈ R, f(n) = O(g(n)nc). Finally, we denote by α the ratio guaranteed by a polynomial time approximation algorithm. In general, ρ will denote the approximation ratio of an algorithm, and, when dealing with exponential complexity, γ will be the basis of the exponential expressing it.

In order to fix ideas, let us give the first simple algorithm 2.1, useful to understand some of our results. In particular, it is one of the basic stones of the results in [37]. It is based upon the following two well known reduction rules. It is illustrated on figure 2.1.

Rule 2.1. Any clause containing an (h, 0)- (resp. a (0, h)-literal), h > 1, can be removed from the instance. This is correct because we can set this literal to true (resp. false) and satisfy the clauses that contain it.

Rule 2.2. Any (1, 1)-literal can be removed too. Let C1= x1∨ x2∨ · · · ∨ xpand C2= ¬x1∨ x02∨ · · · ∨ x0qbe the only two clauses containing the variable x1. If there exist two opposite literals in C1and C2, then we can satisfy these clauses by choosing a correct value for x1and therefore we can remove these clauses. Otherwise, we can replace these clauses by C = x2∨ · · · ∨ xp∨ x02∨ · · · ∨ x0q. The optimum in the initial instance is the optimum in the reduced instance plus 1. To evaluate the complexity of Algorithm 2.1, we count the number of leaves in the tree. Note that if the number of leaves is T (n), then the algorithm

ALGORITHM2.1 – A simple branching algorithm forMAX SAT

Documents relatifs