• Aucun résultat trouvé

des outils efficaces pour la résolution exacte de

N/A
N/A
Protected

Academic year: 2022

Partager "des outils efficaces pour la résolution exacte de"

Copied!
39
0
0

Texte intégral

(1)

COMPLEXIT´ E PARAM´ ETR´ EE

”des outils efficaces pour la r´ esolution exacte de probl` emes difficiles”

Christophe Paul

Journ´ee scientifique du LIRMM 15 juin 2010

(2)

Un peu d’histoire de la complexit´ e

Th´eorie de la NP-Compl´etude

I Th´eor`eme de Cook (1971) : satestnp-complet (2-satP)

I 21 probl`emes NP-complets de Karp (1972)

Id´ee admise : les probl`emes NP-complets sont tous ´equivalents !

Complexit´e desaten fonction de diff´erents param`etres

1. nombren de variables 2n affectations possibles O(1,49n) pour 3-sat

2. nombrem de clauses O(1,24m)

3. longueurl de la formule O(1,08l)

(3)

Un peu d’histoire de la complexit´ e

Th´eorie de la NP-Compl´etude

I Th´eor`eme de Cook (1971) : satestnp-complet (2-satP)

I 21 probl`emes NP-complets de Karp (1972)

Id´ee admise : les probl`emes NP-complets sont tous ´equivalents !

Complexit´e desaten fonction de diff´erents param`etres

1. nombren de variables 2n affectations possibles O(1,49n) pour 3-sat

2. nombrem de clauses O(1,24m)

3. longueurl de la formule O(1,08l)

(4)

Un peu d’histoire de la complexit´ e

Th´eorie de la NP-Compl´etude

I Th´eor`eme de Cook (1971) : satestnp-complet (2-satP)

I 21 probl`emes NP-complets de Karp (1972)

Id´ee admise : les probl`emes NP-complets sont tous ´equivalents !

Complexit´e desaten fonction de diff´erents param`etres

1. nombren de variables 2n affectations possibles O(1,49n) pour 3-sat

2. nombrem de clauses O(1,24m)

3. longueurl de la formule O(1,08l)

(5)

Un peu d’histoire de la complexit´ e

Th´eorie de la NP-Compl´etude

I Th´eor`eme de Cook (1971) : satestnp-complet (2-satP)

I 21 probl`emes NP-complets de Karp (1972)

Id´ee admise : les probl`emes NP-complets sont tous ´equivalents !

Complexit´e desaten fonction de diff´erents param`etres

1. nombren de variables 2n affectations possibles O(1,49n) pour 3-sat

2. nombrem de clauses O(1,24m)

3. longueurl de la formule O(1,08l)

(6)

Vertex Cover v.s. Independent Set

v u

k-Vertex Cover

< k+1

u v

s t u w

x y t z

e"=(u,w) e=(u,v) e’=(s,t)

O(2k.(m+n))

(n−k)-Independent Set

IS 1

n!k 2

i VC

O(2(n−k).(m+n))

(7)

Vertex Cover v.s. Independent Set

v u

k-Vertex Cover

< k+1

u v

s t u w

x y t z

e"=(u,w) e=(u,v) e’=(s,t)

O(2k.(m+n))

(n−k)-Independent Set

IS 1

n!k 2

i VC

O(2(n−k).(m+n))

(8)

Vertex Cover v.s. Independent Set

v u

k-Vertex Cover

< k+1

u v

s t u w

x y t z

e"=(u,w) e=(u,v) e’=(s,t)

O(2k.(m+n))

(n−k)-Independent Set

IS 1

n!k 2

i VC

O(2(n−k).(m+n))

(9)

Vertex Cover v.s. Independent Set

v u

k-Vertex Cover

< k+1

u v

s t u w

x y t z

e"=(u,w) e=(u,v) e’=(s,t)

O(2k.(m+n))

(n−k)-Independent Set

IS 1

n!k 2

i VC

O(2(n−k).(m+n))

(10)

I Constat: De nombreux probl`emes difficiles(np-complet) peuvent ˆetre r´esolus de mani`ere efficace sur des donn´ees pratiques

I “Mesurer la complexit´e seulement en fonction de la taille de la donn´ee signifie ignorer toute information structurelle sur l’instance donn´ee. . . ”

J. Flum and M. Grohe

I “L’id´ee fondamentale est de restreindre l’explosion

combinatoire, semble-t-il in´evitable, qui est responsable de la croissance exponentielle du temps de calcul, `a un param`etre sp´ecifique au probl`eme. . . ”

R. Niedermeier

(11)

I Constat: De nombreux probl`emes difficiles(np-complet) peuvent ˆetre r´esolus de mani`ere efficace sur des donn´ees pratiques

I “Mesurer la complexit´e seulement en fonction de la taille de la donn´ee signifie ignorer toute information structurelle sur l’instance donn´ee. . . ”

J. Flum and M. Grohe

I “L’id´ee fondamentale est de restreindre l’explosion

combinatoire, semble-t-il in´evitable, qui est responsable de la croissance exponentielle du temps de calcul, `a un param`etre sp´ecifique au probl`eme. . . ”

R. Niedermeier

(12)

I Constat: De nombreux probl`emes difficiles(np-complet) peuvent ˆetre r´esolus de mani`ere efficace sur des donn´ees pratiques

I “Mesurer la complexit´e seulement en fonction de la taille de la donn´ee signifie ignorer toute information structurelle sur l’instance donn´ee. . . ”

J. Flum and M. Grohe

I “L’id´ee fondamentale est de restreindre l’explosion

combinatoire, semble-t-il in´evitable, qui est responsable de la croissance exponentielle du temps de calcul, `a un param`etre sp´ecifique au probl`eme. . . ”

R. Niedermeier

(13)

Probl` emes FPT (Fixed Parameter Tractable)

´

etablir une”dichotomie” / hi´erarchie entre les probl`emes difficiles

Unprobl`eme Π param´etr´e par k est FPT s’il peut ˆetre r´esolu par un algorithme de complexit´e :

O(f(k).nO(1))

MAISquid de la complexit´e exacte (constante cach´ee) ?

2kkk

......kk

.nO(1)

Les probl`emes param´etr´es se classent dans une hi´erarchie FPT ⊆W[1]⊆W[2] . . .⊆W[i]⊆. . .⊆W[P]

(14)

Probl` emes FPT (Fixed Parameter Tractable)

´

etablir une”dichotomie” / hi´erarchie entre les probl`emes difficiles Unprobl`eme Π param´etr´e par k est FPT s’il peut ˆetre r´esolu par un algorithme de complexit´e :

O(f(k).nO(1))

MAISquid de la complexit´e exacte (constante cach´ee) ?

2kkk

......kk

.nO(1)

Les probl`emes param´etr´es se classent dans une hi´erarchie FPT ⊆W[1]⊆W[2] . . .⊆W[i]⊆. . .⊆W[P]

(15)

Probl` emes FPT (Fixed Parameter Tractable)

´

etablir une”dichotomie” / hi´erarchie entre les probl`emes difficiles Unprobl`eme Π param´etr´e par k est FPT s’il peut ˆetre r´esolu par un algorithme de complexit´e :

O(f(k).nO(1))

MAISquid de la complexit´e exacte (constante cach´ee) ?

2kkk

......kk

.nO(1)

Les probl`emes param´etr´es se classent dans une hi´erarchie FPT ⊆W[1]⊆W[2] . . .⊆W[i]⊆. . .⊆W[P]

(16)

Probl` emes FPT (Fixed Parameter Tractable)

´

etablir une”dichotomie” / hi´erarchie entre les probl`emes difficiles Unprobl`eme Π param´etr´e par k est FPT s’il peut ˆetre r´esolu par un algorithme de complexit´e :

O(f(k).nO(1))

MAISquid de la complexit´e exacte (constante cach´ee) ?

2kkk

......kk

.nO(1)

Les probl`emes param´etr´es se classent dans une hi´erarchie FPT⊆ W[1]⊆W[2] . . .⊆W[i]⊆. . .⊆W[P]

(17)

Exemples de probl` emes param´ etr´ es (1)

Test de circuits VLSI (SysMic)

Int´egration de BILBOs (Built-in Logic Block Observers) dans les circuits

Feedback Vertex Set: algorithme param´etr´e en 5k.nO(1)

(18)

Exemples de probl` emes param´ etr´ es (1)

Test de circuits VLSI (SysMic)

Int´egration de BILBOs (Built-in Logic Block Observers) dans les circuits

Feedback Vertex Set: algorithme param´etr´e en 5k.nO(1)

(19)

Exemples de probl` emes param´ etr´ es (1)

Test de circuits VLSI (SysMic)

Int´egration de BILBOs (Built-in Logic Block Observers) dans les circuits

Feedback Vertex Set: algorithme param´etr´e en 5k.nO(1)

(20)

Exemples de probl` emes param´ etr´ es (2)

D´ecoupe par un cutter / contrˆole qualit´e de pi`eces (ROB)

Objectif : minimiser le nombre de changements de direction

Discrete Milling with Turn Cost algorithme param´etr´e en O(2k2logk.n)

(21)

Exemples de probl` emes param´ etr´ es (2)

D´ecoupe par un cutter / contrˆole qualit´e de pi`eces (ROB)

Objectif : minimiser le nombre de changements de direction Discrete Milling with Turn Cost

algorithme param´etr´e en O(2k2logk.n)

(22)

Exemples de probl` emes param´ etr´ es (3)

Reconstruction phylog´en´etique (MAB)

Minimum Quartet Inconsistency algorithme param´etr´e en 4k.n+n4

(23)

Exemples de probl` emes param´ etr´ es (3)

Reconstruction phylog´en´etique (MAB)

Minimum Quartet Inconsistency algorithme param´etr´e en 4k.n+n4

(24)

Exemples de probl` emes param´ etr´ es (4)

Intelligence Artificielle - Contraintes (COCONUT)

(a∨b)∧(a∨c)∧(c∨d)∧(a∨d)∧(b∨e)∧(c ∨e)∧(a∨e)

(25)

Exemples de probl` emes param´ etr´ es (4)

Intelligence Artificielle - Contraintes (COCONUT)

(a∨b)∧(a∨c)∧(c∨d)∧(a∨d)∧(b∨e)∧(c ∨e)∧(a∨e)

Almost 2-sat

algorithme param´etr´e en O(15k∗k∗m3) Mais aussi

I propagation de contraintes

I programmation logique / model checking

I bases de donn´ees

I syst`eme de votes

I optimisation dans les r´eseaux

(26)

Preprocessing - data reduction (kernelisation)

Id´ee - principe

I simplification / filtrage des donn´ees

I r´eduction de la taille des donn´ees

Objectifs

I efficacit´e

I garantie de l’existence d’une solution

I contrˆole de la taille de l’instance r´eduite

(27)

Kernel (1): un probl` eme g´ eom´ etrique

Existe-t-il k lignes couvrant l’ensembleS de points ?

(28)

Kernel (1): un probl` eme g´ eom´ etrique

Existe-t-il k lignes couvrant l’ensembleS de points ? Observation 1: On peut se restreindre aux lignes g´en´er´ees par les paires de points deS

(29)

Kernel (1): un probl` eme g´ eom´ etrique

Existe-t-il k lignes couvrant l’ensembleS de points ?

Observation 2: Si une ligneL contient au moinsk+ 1 points, alors elle appartient la solution (si elle existe) (e.g. ici k = 3)

⇒ supprimerLet soustraire 1 `a k

(30)

Kernel (1): un probl` eme g´ eom´ etrique

Existe-t-il k lignes couvrant l’ensembleS de points ?

Observation 2: Si une ligneL contient au moinsk+ 1 points, alors elle appartient la solution (si elle existe) (e.g. ici k = 3)

⇒ supprimerLet soustraire 1 `a k

⇒ l’instance r´eduite contient au plusk2 points.

(31)

Kernel (2)

(G’,k’)

|G’¦=f(k) poly time

(G,k)

Unekernelisationpour un probl`eme param´etr´e Π est un algorithmepolynomialqui ´etant donn´ee une instance (G,k) calcule une instance´equivalente (G0,k0) telle quek0 =f(k).

Un probl`emeπestFPT ssiil admet unekernelisation

I Quels probl`emes admettent un noyau / kernel de taille polynomiale ?

O( I + k)j

(J,k’) (I ,k)t

(I ,k)

(I ,k)1 2 (I ,k)3

Th´eor`eme [Bodlaender et al.] Tout probl`eme NP-completcomposable n’admet pas de noyau polynomial sauf siPH = Σ3p

(32)

Kernel (2)

(G’,k’)

|G’¦=f(k) poly time

(G,k)

Unekernelisationpour un probl`eme param´etr´e Π est un algorithmepolynomialqui ´etant donn´ee une instance (G,k) calcule une instance´equivalente (G0,k0) telle quek0 =f(k).

Un probl`emeπestFPT ssiil admet unekernelisation

I Quels probl`emes admettent un noyau / kernel de taille polynomiale ?

O( I + k)j

(J,k’) (I ,k)t

(I ,k)

(I ,k)1 2 (I ,k)3

Th´eor`eme [Bodlaender et al.] Tout probl`eme NP-completcomposable n’admet pas de noyau polynomial sauf siPH = Σ3p

(33)

Kernel (2)

(G’,k’)

|G’¦=f(k) poly time

(G,k)

Unekernelisationpour un probl`eme param´etr´e Π est un algorithmepolynomialqui ´etant donn´ee une instance (G,k) calcule une instance´equivalente (G0,k0) telle quek0 =f(k).

Un probl`emeπestFPT ssiil admet unekernelisation

I Quels probl`emes admettent un noyau / kernel de taille polynomiale ?

O( I + k)j

(J,k’) (I ,k)t

(I ,k)

(I ,k)1 2 (I ,k)3

Th´eor`eme [Bodlaender et al.] Tout probl`eme NP-completcomposable n’admet pas de noyau polynomial sauf siPH = Σ3p

(34)

Kernel (2)

(G’,k’)

|G’¦=f(k) poly time

(G,k)

Unekernelisationpour un probl`eme param´etr´e Π est un algorithmepolynomialqui ´etant donn´ee une instance (G,k) calcule une instance´equivalente (G0,k0) telle quek0 =f(k).

Un probl`emeπestFPT ssiil admet unekernelisation

I Quels probl`emes admettent un noyau / kernel de taille polynomiale ?

O( I + k)j

(J,k’) (I ,k)t

(I ,k)

(I ,k)1 2 (I ,k)3

Th´eor`eme [Bodlaender et al.] Tout probl`eme NP-completcomposable n’admet pas de noyau polynomial sauf siPH = Σ3p

(35)

L’exemple de Edge Clique-Cover

y x

Peut-on couvrir les arˆetes d’un graphe par au plusk cliques ?

Edge Clique-Coveradmet un noyau de taille 2k sommets.

Supposons qu’il existek cliquesC1. . .Ck couvrant E.

A chaque sommetx on asscocie un verteur C de k bits tel que C[x,i] = 1 ⇐⇒ x∈Ci

Obs. : ∀i ∈[k]C[x,i] =C[y,i] ssiN[x] =N[y] Probl`eme ouvert

Edge Clique-Coveradmet-il un noyau polynomial ?

(36)

L’exemple de Edge Clique-Cover

y x

Peut-on couvrir les arˆetes d’un graphe par au plusk cliques ?

Edge Clique-Coveradmet un noyau de taille 2k sommets.

R`egles de r´eduction

1. Supprimer les sommets isol´es

2. S’il existe deux sommetsx ety tels que N[x] =N[y], supprimer l’un des deux sommets.

Supposons qu’il existek cliquesC1. . .Ck couvrant E.

A chaque sommetx on asscocie un verteur C de k bits tel que C[x,i] = 1 ⇐⇒ x∈Ci

Obs. : ∀i ∈[k]C[x,i] =C[y,i] ssiN[x] =N[y] Probl`eme ouvert

Edge Clique-Coveradmet-il un noyau polynomial ?

(37)

L’exemple de Edge Clique-Cover

y x

Peut-on couvrir les arˆetes d’un graphe par au plusk cliques ?

Edge Clique-Coveradmet un noyau de taille 2k sommets.

Supposons qu’il existek cliquesC1. . .Ck couvrant E.

A chaque sommetx on asscocie un verteurC de k bits tel que C[x,i] = 1 ⇐⇒ x∈Ci

Obs. : ∀i ∈[k]C[x,i] =C[y,i] ssiN[x] =N[y]

Probl`eme ouvert

Edge Clique-Coveradmet-il un noyau polynomial ?

(38)

L’exemple de Edge Clique-Cover

y x

Peut-on couvrir les arˆetes d’un graphe par au plusk cliques ?

Edge Clique-Coveradmet un noyau de taille 2k sommets.

Supposons qu’il existek cliquesC1. . .Ck couvrant E.

A chaque sommetx on asscocie un verteurC de k bits tel que C[x,i] = 1 ⇐⇒ x∈Ci

Obs. : ∀i ∈[k]C[x,i] =C[y,i] ssiN[x] =N[y]

Probl`eme ouvert

Edge Clique-Coveradmet-il un noyau polynomial ?

(39)

Conclusion

I Algorithmes FPT :techniques efficaces (et souvent assez simples) pour la r´esolutionexactede probl`emes difficiles

I Kernels : cadre th´eorique pour ´etudier la notion de pre-processing

I M´ethodes op´erationellessur des grandes donn´ees (e.g.

clustering) en mixant les techniques de kernelisation et arbres de recherche born´ee

Références

Documents relatifs

[r]

TItoMk., il est aussi difficile de distinguer si l'6quation transform6e a une int6grale holomorphe, que de reconnaitre si la sd.rie normale converge. attendait de

D´eterminer les coordonn´ees des points d’intersection de la droite d avec les axes du rep`ere.. Donner un point et un vecteur directeur

Pour trouver les coordonn´ ees d’un point dans un rep` ere, on ´ ecrit l’´ equation (vectorielle) caract´ eristique on convertit cette ´ equation en syst` eme num´ erique on

une droite (plans s´ ecants) un plan (plans confondus) vide (plans parall`

une droite (plans s´ ecants) un plan (plans confondus) vide (plans parall`

Indication : Choisir un domaine sur lequel la fonction h est holomorphe et born´ ee, v´ erifier les hypoth` eses sur h, et d´ eduire un facteur de d´ ecroissance exponentielle

Les r´ eponses doivent ˆ etre ´ ecrites sur une feuille s´ epar´ ee.. Les r´ esultats ´ ecrits sur la feuille de donn´ ees ne seront pas