Aspects algorithmiques de la comparaison d el ements biologiques - - PowerPoint PPT Presentation

aspects algorithmiques de la comparaison d el ements
SMART_READER_LITE
LIVE PREVIEW

Aspects algorithmiques de la comparaison d el ements biologiques - - PowerPoint PPT Presentation

Aspects algorithmiques de la comparaison d el ements biologiques Florian Sikora Universit e Paris-Est 30 septembre 2011 Introduction Complexit e Recherche exacte de motifs Recherche approch ee de motifs Logiciels


slide-1
SLIDE 1

Aspects algorithmiques de la comparaison d’´ el´ ements biologiques

Florian Sikora

Universit´ e Paris-Est

30 septembre 2011

slide-2
SLIDE 2

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

2/55

slide-3
SLIDE 3

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

3/55

slide-4
SLIDE 4

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Motivations

◮ Complexit´

e de l’homme nombre de g` enes ?

4/55

slide-5
SLIDE 5

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

R´ eseaux biologiques

◮ ´

Enum´ erer les composants d’un avion ne suffit pas pour comprendre son fonctionnement.

◮ ´

Etudier les relations entre les ´ el´ ements.

5/55

slide-6
SLIDE 6

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

R´ eseaux biologiques

◮ Les ´

el´ ements biologiques (prot´ eines, m´ etabolites...) peuvent interagir entre-eux.

6/55

slide-7
SLIDE 7

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

R´ eseaux biologiques

◮ Mod´

elisation par un graphe.

◮ Les ´

el´ ements sont repr´ esent´ es par les nœuds.

◮ Les interactions sont repr´

esent´ ees par les arˆ etes.

7/55

slide-8
SLIDE 8

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Enjeux

◮ Nouvelles techniques : le nombre de donn´

ees augmente tr` es rapidement [Sharan et Ideker 2006].

◮ 2001 : quelques centaines d’interactions. ◮ 2006 : plusieurs milliers.

◮ Beaucoup de bases de donn´

ees :

◮ BIND, ◮ DIP, ◮ KEGG, ◮ MINT, ◮ ... 8/55

slide-9
SLIDE 9

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Enjeux

◮ Nouvelles techniques : le nombre de donn´

ees augmente tr` es rapidement [Sharan et Ideker 2006].

◮ 2001 : quelques centaines d’interactions. ◮ 2006 : plusieurs milliers.

◮ Beaucoup de bases de donn´

ees :

◮ BIND, ◮ DIP, ◮ KEGG, ◮ MINT, ◮ ...

◮ Besoin de l’outil informatique.

8/55

slide-10
SLIDE 10

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Rechercher des motifs

◮ Retrouver un sous-r´

eseau respectant les labels et la topologie du motif.

◮ Deux labels correspondent si les ´

el´ ements ont une fonction similaire (par ex. homologies pour les prot´ eines).

9/55

slide-11
SLIDE 11

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Rechercher des motifs

◮ Retrouver un sous-r´

eseau respectant les labels et la topologie du motif.

◮ Deux labels correspondent si les ´

el´ ements ont une fonction similaire (par ex. homologies pour les prot´ eines).

◮ Chercher des motifs pour retrouver des fonctions connues. ◮ D´

eduire les informations d’esp` eces peu connues depuis des esp` eces bien connues.

9/55

slide-12
SLIDE 12

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Rechercher des motifs

◮ Probl`

emes rapidement NP-complets.

◮ N’existe probablement pas d’algorithme exact de complexit´

e pire cas polynomiale (par ex. O(nc)).

◮ Complexit´

e exponentielle (par ex. O(cn)) pour au moins une instance.

10/55

slide-13
SLIDE 13

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Rechercher des motifs

◮ Mais tout n’est pas perdu ! ◮ Id´

ee : exploiter le fait que les motifs sont plus petits (∼ 5 ` a 15 nœuds) que le r´ eseau (par ex. ∼ 5.000 pour la levure).

◮ Confiner la partie exponentielle `

a k (taille motif) au lieu de n (taille du r´ eseau) : sujet de la complexit´ e param´ etr´ ee.

11/55

slide-14
SLIDE 14

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

12/55

slide-15
SLIDE 15

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Algorithmes FPT

◮ Beaucoup de probl`

emes (param´ etr´ es) sont de la forme :

◮ Entr´

ee : Un objet X, |X| = n, un entier k.

◮ Question : Est-ce que X a une propri´

et´ e selon k ?

13/55

slide-16
SLIDE 16

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Algorithmes FPT

◮ Beaucoup de probl`

emes (param´ etr´ es) sont de la forme :

◮ Entr´

ee : Un objet X, |X| = n, un entier k.

◮ Question : Est-ce que X a une propri´

et´ e selon k ?

◮ Plusieurs param`

etres possibles (souvent la taille de la solution).

13/55

slide-17
SLIDE 17

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple : Vertex Cover

14/55

slide-18
SLIDE 18

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple : Vertex Cover

14/55

slide-19
SLIDE 19

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Complexit´ e param´ etr´ ee

◮ Probl`

eme dans la classe FPT s’il existe un algorithme exact exponentiel seulement en son param` etre k (et pas en la taille de l’entr´ ee n) [Downey et Fellows 1999].

◮ Complexit´

e f (k) · nc, avec c une constante, et f n’importe quelle fonction (par ex. O(2k · n2)).

15/55

slide-20
SLIDE 20

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Complexit´ e param´ etr´ ee

◮ Probl`

eme dans la classe FPT s’il existe un algorithme exact exponentiel seulement en son param` etre k (et pas en la taille de l’entr´ ee n) [Downey et Fellows 1999].

◮ Complexit´

e f (k) · nc, avec c une constante, et f n’importe quelle fonction (par ex. O(2k · n2)).

◮ Parfois impossible : W[1]-difficult´

e.

15/55

slide-21
SLIDE 21

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Approximation

◮ Un autre possibilit´

e pour contourner la difficult´ e d’un probl` eme : l’approximation.

16/55

slide-22
SLIDE 22

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Approximation

◮ Un autre possibilit´

e pour contourner la difficult´ e d’un probl` eme : l’approximation.

◮ Pour un probl`

eme d’optimisation NP-difficile, pas d’algorithme polynomial possible (sauf si P = NP)...

◮ ... si la solution doit ˆ

etre optimale !

16/55

slide-23
SLIDE 23

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Approximation

◮ Un autre possibilit´

e pour contourner la difficult´ e d’un probl` eme : l’approximation.

◮ Pour un probl`

eme d’optimisation NP-difficile, pas d’algorithme polynomial possible (sauf si P = NP)...

◮ ... si la solution doit ˆ

etre optimale !

◮ Sacrifier de l’exactitude pour obtenir un algorithme polynomial.

16/55

slide-24
SLIDE 24

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Approximation (probl` eme de minimisation)

◮ On borne l’erreur. ◮ Un algorithme est de r-approximation s’il est polynomial et

qu’il retourne des solutions dont le coˆ ut est au pire r × Opt. Solutions Opt r × Opt

17/55

slide-25
SLIDE 25

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Approximation – Difficult´ e

◮ Possible de prouver qu’il n’existe pas d’algorithme

d’approximation inf´ erieur ` a un certain ratio.

18/55

slide-26
SLIDE 26

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Approximation – Difficult´ e

◮ Possible de prouver qu’il n’existe pas d’algorithme

d’approximation inf´ erieur ` a un certain ratio.

◮ But : rapprocher les deux fronti`

eres. r 1 1.3606 2

Exemple pour Vertex Cover

18/55

slide-27
SLIDE 27

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

19/55

slide-28
SLIDE 28

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Recherche de motifs

◮ Vision “classique” de la recherche de motifs :

◮ Le motif a une certaine topologie (chemin, arbre, graphes

sp´ ecifiques...).

◮ La solution correspond aux labels et `

a la topologie du motif.

20/55

slide-29
SLIDE 29

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Recherche de motifs

◮ Vision “classique” de la recherche de motifs :

◮ Le motif a une certaine topologie (chemin, arbre, graphes

sp´ ecifiques...).

◮ La solution correspond aux labels et `

a la topologie du motif.

◮ Un nombre born´

e d’insertions et d´ el´ etions peut-ˆ etre autoris´ e

20/55

slide-30
SLIDE 30

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Recherche de motifs

◮ Vision “classique” de la recherche de motifs :

◮ Le motif a une certaine topologie (chemin, arbre, graphes

sp´ ecifiques...).

◮ La solution correspond aux labels et `

a la topologie du motif.

◮ Un nombre born´

e d’insertions et d´ el´ etions peut-ˆ etre autoris´ e

20/55

slide-31
SLIDE 31

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Recherche de motifs

◮ Vision “classique” de la recherche de motifs :

◮ Le motif a une certaine topologie (chemin, arbre, graphes

sp´ ecifiques...).

◮ La solution correspond aux labels et `

a la topologie du motif.

◮ Un nombre born´

e d’insertions et d´ el´ etions peut-ˆ etre autoris´ e

◮ Beaucoup d’algorithmes FPT, selon diff´

erents types de topologie [Shlomi et al. 2006, Dost et al. 2007].

◮ PADA1 [Blin, S., Vialette 2009,2010]. 20/55

slide-32
SLIDE 32

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif

◮ Constat : les donn´

ees biologiques sont exp´ erimentales donc tr` es bruit´ ees [Edwards et al. 2002]

◮ Manque des informations (faux n´

egatifs). Estim´ e ` a 50%.

◮ Informations erron´

ees (faux positifs). Estim´ e ` a 50%.

◮ La topologie du motif peut ne pas ˆ

etre connue a priori.

◮ Diff´

erents motifs peuvent avoir une mˆ eme topologie.

21/55

slide-33
SLIDE 33

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif

◮ Constat : les donn´

ees biologiques sont exp´ erimentales donc tr` es bruit´ ees [Edwards et al. 2002]

◮ Manque des informations (faux n´

egatifs). Estim´ e ` a 50%.

◮ Informations erron´

ees (faux positifs). Estim´ e ` a 50%.

◮ La topologie du motif peut ne pas ˆ

etre connue a priori.

◮ Diff´

erents motifs peuvent avoir une mˆ eme topologie.

◮ La topologie du motif peut ne pas ˆ

etre pertinente.

21/55

slide-34
SLIDE 34

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – D´ efinition

◮ Chaque nœud du r´

eseau est color´ e selon sa famille.

◮ Le motif est juste un (multi-)ensemble de couleurs `

a retrouver connect´ e dans le r´ eseau color´ e [Lacroix et al. 2006].

22/55

slide-35
SLIDE 35

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – D´ efinition

◮ Chaque nœud du r´

eseau est color´ e selon sa famille.

◮ Le motif est juste un (multi-)ensemble de couleurs `

a retrouver connect´ e dans le r´ eseau color´ e [Lacroix et al. 2006].

◮ Topologie n’est que la connexit´

e de la solution.

22/55

slide-36
SLIDE 36

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Un exemple jouet

M : G :

23/55

slide-37
SLIDE 37

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Un exemple jouet

M : G :

23/55

slide-38
SLIDE 38

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Un exemple jouet

M : G :

23/55

slide-39
SLIDE 39

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif

◮ S’applique `

a diff´ erents types de r´ eseaux biologiques.

◮ Initialement sur les r´

eseaux m´ etaboliques [Lacroix et al.

2006].

◮ Utilisable sur les r´

eseaux PPI [Bruckner et al. 2009].

◮ Selon [Betzler et al. 2008], peut ˆ

etre utilis´ e pour les r´ eseaux sociaux.

24/55

slide-40
SLIDE 40

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Difficult´ e

◮ Le probl`

eme est NP-complet, mˆ eme si :

◮ Le r´

eseau est un arbre [Lacroix et al. 2006],

◮ Cet arbre est de degr´

e maximum 3 et le motif est un colorful [Fellows et al. 2007],

◮ L’arbre est de profondeur 2 et le motif est un colorful

[Ambalath et al. 2010],

◮ Le motif n’est constitu´

e que de 2 couleurs et le r´ eseau est un graphe biparti de degr´ e maximum 4 [Fellows et al. 2007].

25/55

slide-41
SLIDE 41

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Complexit´ e param´ etr´ e

◮ Le probl`

eme est FPT par la taille k du motif :

◮ O∗(87k) [Fellows et al. 2007]. ◮ O∗(4.3k) (motif multi-ensemble) [Betzler et al. 2008]. ◮ O∗(3k) (motif colorful) [Betzler et al. 2008]. 26/55

slide-42
SLIDE 42

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Complexit´ e param´ etr´ e

◮ Le probl`

eme est FPT par la taille k du motif :

◮ O∗(87k) [Fellows et al. 2007]. ◮ O∗(4.3k) (motif multi-ensemble) [Betzler et al. 2008]. ◮ O∗(3k) (motif colorful) [Betzler et al. 2008].

◮ Programmation dynamique et color-coding : complexit´

e en espace exponentielle en k.

26/55

slide-43
SLIDE 43

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif – Complexit´ e param´ etr´ e

◮ Le probl`

eme est FPT par la taille k du motif :

◮ O∗(87k) [Fellows et al. 2007]. ◮ O∗(4.3k) (motif multi-ensemble) [Betzler et al. 2008]. ◮ O∗(3k) (motif colorful) [Betzler et al. 2008].

◮ Programmation dynamique et color-coding : complexit´

e en espace exponentielle en k.

◮ Mais W[1]-difficile si param´

etr´ e par le nombre de couleurs diff´ erentes [Fellows et al. 2007].

26/55

slide-44
SLIDE 44

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ Am´

elioration de la complexit´ e via un outil dˆ u ` a Koutis et Williams [2008,2009].

27/55

slide-45
SLIDE 45

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ Am´

elioration de la complexit´ e via un outil dˆ u ` a Koutis et Williams [2008,2009].

◮ R´

esultat clef :

◮ On peut d´

eterminer par un algorithme randomis´ e, en temps O∗(2k) et en espace polynomial, si un polynˆ

  • me repr´

esent´ e par un circuit arithm´ etique contient un monˆ

  • me multilin´

eaire de degr´ e k.

27/55

slide-46
SLIDE 46

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ Un monˆ

  • me est multilin´

eaire si chaque variable du monˆ

  • me

n’apparait qu’une seule fois.

◮ Par d´

efinition, le degr´ e d’un monˆ

  • me multilin´

eaire est son nombre de variables.

◮ Exemple : P(X) = (x2 1x3x5 + x1x2x4x6) :

◮ x1x2x4x6 est un monˆ

  • me multilin´

eaire de degr´ e 4.

◮ x2

1x3x5 n’est pas un monˆ

  • me multilin´

eaire.

28/55

slide-47
SLIDE 47

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ Un circuit arithm´

etique sur un ensemble de variables X est un DAG t.q. :

◮ les noeuds internes sont les op´

erations × ou +,

◮ les feuilles sont des ´

el´ ements de X.

29/55

slide-48
SLIDE 48

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ Un circuit arithm´

etique sur un ensemble de variables X est un DAG t.q. :

◮ les noeuds internes sont les op´

erations × ou +,

◮ les feuilles sont des ´

el´ ements de X.

◮ Exemple pour P(X) = (x1 + x2 + x3)(x3 + x4 + x5).

+ × + x1 x2 x3 x4 x5

29/55

slide-49
SLIDE 49

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ Pour r´

esoudre Graph Motif avec motif colorful :

◮ On introduit des variables correspondant aux couleurs. ◮ On construit un circuit correspondant aux couleurs de tous les

sous-graphes (connexes) de taille k de G.

◮ Un monˆ

  • me multilin´

eaire de degr´ e k correspond alors ` a un sous-graphe avec k couleurs diff´ erentes (motif colorful), donc k sommets diff´ erents.

30/55

slide-50
SLIDE 50

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1.

31/55

slide-51
SLIDE 51

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR

31/55

slide-52
SLIDE 52

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2)

31/55

slide-53
SLIDE 53

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2+P2,v3)

31/55

slide-54
SLIDE 54

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2+P2,v3) = xR.(xJ.(P1,v1 + P1,v3 + P1,v4)+P2,v3)

31/55

slide-55
SLIDE 55

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2+P2,v3) = xR.(xJ.(P1,v1 + P1,v3 + P1,v4)+P2,v3) = xR.(xJ.(xR + xR + xB)+P2,v3)

31/55

slide-56
SLIDE 56

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2+P2,v3) = xR.(xJ.(P1,v1 + P1,v3 + P1,v4)+P2,v3) = xR.(xJ.(xR + xR + xB)+P2,v3) = xR.(xJ.xR + xJ.xR + xJ.xB+P2,v3)

31/55

slide-57
SLIDE 57

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2+P2,v3) = xR.(xJ.(P1,v1 + P1,v3 + P1,v4)+P2,v3) = xR.(xJ.(xR + xR + xB)+P2,v3) = xR.(xJ.xR + xJ.xR + xJ.xB+P2,v3) = xRxJxR + xRxJxR + xRxJxB + . . .

31/55

slide-58
SLIDE 58

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Exemple

M G v2 v1 v3 v4 Construction r´ ecursive Les monˆ

  • mes de degr´

e k = 3 contenant le nœud v1 sont la somme des produits des monˆ

  • mes :
  • 1. de degr´

es k′ < k contenant le nœud v1,

  • 2. de degr´

es k − k′ contenant un voisin de v1. Pour k′ = 1 : xR .(P2,v2+P2,v3) = xR.(xJ.(P1,v1 + P1,v3 + P1,v4)+P2,v3) = xR.(xJ.(xR + xR + xB)+P2,v3) = xR.(xJ.xR + xJ.xR + xJ.xB+P2,v3) = xRxJxR + xRxJxR + xRxJxB + . . . Il y a un monˆ

  • me multilin´

eaire (donc une solution).

31/55

slide-59
SLIDE 59

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ La construction est polynomiale. ◮ Il existe un monˆ

  • me multilin´

eaire de degr´ e k si et seulement s’il existe un sous-graphe connexe colorful de taille k.

32/55

slide-60
SLIDE 60

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes

◮ La construction est polynomiale. ◮ Il existe un monˆ

  • me multilin´

eaire de degr´ e k si et seulement s’il existe un sous-graphe connexe colorful de taille k.

◮ On peut r´

esoudre Graph Motif lorsque le motif est colorful en O∗(2k) (algorithme randomis´ e) et en espace polynomial

[Guillemot et S. 2010].

32/55

slide-61
SLIDE 61

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

33/55

slide-62
SLIDE 62

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante. M G v2 v1 v3 v4

33/55

slide-63
SLIDE 63

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante. M G v2 v1 v3 v4 · · · = xRxJxR + xRxJxB+ xRxJxR + . . .

33/55

slide-64
SLIDE 64

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m . M G v2 v1 v3 v4

33/55

slide-65
SLIDE 65

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m . M G v2 v1 v3 v4 · · · = (xR,1 + xR,2)xJ,1(xR,1 + xR,2) + . . .

33/55

slide-66
SLIDE 66

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m (reste insuffisant). M G v2 v1 v3 v4 · · · = (xR,1 + xR,2)xJ,1(xR,1 + xR,2) + . . . = xR,1xJ,1xR,1+xR,1xJ,1xR,2 +xR,2xJ,1xR,1 +xR,2xJ,1xR,2 + . . .

33/55

slide-67
SLIDE 67

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m (reste insuffisant). M G v2 v1 v3 v4 · · · = (xR,1 + xR,2)xJ,1(xR,1 + xR,2) + . . . = xR,1xJ,1xR,1+xR,1xJ,1xR,2 +xR,2xJ,1xR,1 +xR,2xJ,1xR,2 + . . .

33/55

slide-68
SLIDE 68

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m (reste insuffisant).

◮ Ajout de variables yv pour les nœuds v du graphe.

M G v2 v1 v3 v4

33/55

slide-69
SLIDE 69

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m (reste insuffisant).

◮ Ajout de variables yv pour les nœuds v du graphe.

M G v2 v1 v3 v4 · · · = y1(xR,1 + xR,2) · y2xJ,1 · y1(xR,1 + xR,2) + . . .

33/55

slide-70
SLIDE 70

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m (reste insuffisant).

◮ Ajout de variables yv pour les nœuds v du graphe.

M G v2 v1 v3 v4 · · · = y1(xR,1 + xR,2) · y2xJ,1 · y1(xR,1 + xR,2) + . . . = y1xR,1y2xJ,1y1xR,1+y1xR,1y2xJ,1y1xR,2 + . . .

33/55

slide-71
SLIDE 71

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ Si le motif est un multi-ensemble, un monˆ

  • me non

multilin´ eaire sur les couleurs est une solution.

◮ La construction pr´

ec´ edente n’est plus suffisante.

◮ Pour chaque couleur c qui apparait m fois dans le motif, on

introduit des variables xc,1, xc,2, . . . , xc,m (reste insuffisant).

◮ Ajout de variables yv pour les nœuds v du graphe.

M G v2 v1 v3 v4 · · · = y1(xR,1 + xR,2) · y2xJ,1 · y1(xR,1 + xR,2) + . . . = y1xR,1y2xJ,1y1xR,1+y1xR,1y2xJ,1y1xR,2 + . . .

33/55

slide-72
SLIDE 72

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ La construction est toujours polynomiale. ◮ Il existe un monˆ

  • me multilin´

eaire de degr´ e 2k si et seulement si il existe une solution de taille k.

34/55

slide-73
SLIDE 73

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Multi-ensemble

◮ La construction est toujours polynomiale. ◮ Il existe un monˆ

  • me multilin´

eaire de degr´ e 2k si et seulement si il existe une solution de taille k.

◮ On peut r´

esoudre Graph Motif lorsque le motif est un multi-ensemble en O∗(4k) (algorithme randomis´ e) et en espace polynomial [Guillemot et S. 2010].

34/55

slide-74
SLIDE 74

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Comptage

◮ Compter le nombre d’occurrences d’un motif colorful :

O∗(2k) (construction similaire).

35/55

slide-75
SLIDE 75

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Graph Motif et polynˆ

  • mes – Comptage

◮ Compter le nombre d’occurrences d’un motif colorful :

O∗(2k) (construction similaire).

◮ Mais, si le motif est un multi-ensemble, le probl`

eme est #W[1]-difficile [Guillemot et S. 2010].

35/55

slide-76
SLIDE 76

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

36/55

slide-77
SLIDE 77

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Variantes

◮ Donn´

ees exp´ erimentales, impr´ ecisions.

◮ Rechercher une occurrence exacte d’un motif peut ´

echouer.

37/55

slide-78
SLIDE 78

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Variantes

◮ Donn´

ees exp´ erimentales, impr´ ecisions.

◮ Rechercher une occurrence exacte d’un motif peut ´

echouer.

◮ Autoriser des sommets suppl´

ementaires dans la solution pour atteindre la connexit´ e (insertions).

37/55

slide-79
SLIDE 79

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Variantes

◮ Donn´

ees exp´ erimentales, impr´ ecisions.

◮ Rechercher une occurrence exacte d’un motif peut ´

echouer.

◮ Autoriser des sommets suppl´

ementaires dans la solution pour atteindre la connexit´ e (insertions).

◮ Autoriser l’absence de couleurs du motif dans la solution

(d´ el´ etions).

37/55

slide-80
SLIDE 80

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Variantes

◮ Donn´

ees exp´ erimentales, impr´ ecisions.

◮ Rechercher une occurrence exacte d’un motif peut ´

echouer.

◮ Autoriser des sommets suppl´

ementaires dans la solution pour atteindre la connexit´ e (insertions).

◮ Autoriser l’absence de couleurs du motif dans la solution

(d´ el´ etions).

◮ Autoriser plusieurs composantes connexes dans la solution.

37/55

slide-81
SLIDE 81

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Variantes

◮ Donn´

ees exp´ erimentales, impr´ ecisions.

◮ Rechercher une occurrence exacte d’un motif peut ´

echouer.

◮ Autoriser des sommets suppl´

ementaires dans la solution pour atteindre la connexit´ e (insertions).

◮ Autoriser l’absence de couleurs du motif dans la solution

(d´ el´ etions).

◮ Autoriser plusieurs composantes connexes dans la solution. ◮ Autoriser une liste de couleurs pour chaque sommet du

r´ eseau.

37/55

slide-82
SLIDE 82

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Une variante de Graph Motif : Minimum Substitutions

◮ Une autre variante : Minimum Substitutions [Dondi et al.

2011].

◮ Trouver une occurrence qui reprend ”le plus de couleurs

possible” du motif, mais de mˆ eme taille que le motif.

◮ On substitue des couleurs du motif par de nouvelles couleurs.

38/55

slide-83
SLIDE 83

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Minimum Substitutions : Exemple

M : G :

39/55

slide-84
SLIDE 84

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Minimum Substitutions : Exemple

M : G :

39/55

slide-85
SLIDE 85

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Minimum Substitutions : Exemple

M : G :

39/55

slide-86
SLIDE 86

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Une variante de Graph Motif : Minimum Substitutions

◮ Il n’existe pas de ratio d’approximation inf´

erieur ` a c log |V |, sauf si P = NP, mˆ eme lorsque le motif est colorful et G est un arbre de profondeur 2.

40/55

slide-87
SLIDE 87

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}}

41/55

slide-88
SLIDE 88

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}}

41/55

slide-89
SLIDE 89

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}}

41/55

slide-90
SLIDE 90

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-91
SLIDE 91

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-92
SLIDE 92

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-93
SLIDE 93

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-94
SLIDE 94

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-95
SLIDE 95

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-96
SLIDE 96

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-97
SLIDE 97

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-98
SLIDE 98

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-99
SLIDE 99

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G

41/55

slide-100
SLIDE 100

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G |S′| = nombre de substitutions

41/55

slide-101
SLIDE 101

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G |S′| = nombre de substitutions

41/55

slide-102
SLIDE 102

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Construction

X = {x1, x2, x3}, S = {{x1, x2},{x2, x3},{x2}} M G |S′| = nombre de substitutions

41/55

slide-103
SLIDE 103

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

R´ esultat

◮ Il n’existe pas de ratio d’approximation meilleur que c log |X|

pour Minimum Set Cover (sauf si P = NP) [Raz et Safra

1997].

42/55

slide-104
SLIDE 104

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

R´ esultat

◮ Il n’existe pas de ratio d’approximation meilleur que c log |X|

pour Minimum Set Cover (sauf si P = NP) [Raz et Safra

1997].

◮ Il n’existe pas de ratio d’approximation meilleur que c log |V |

pour Minimum Substitutions (sauf si P = NP) [Rizzi et S.,

en pr´ eparation].

42/55

slide-105
SLIDE 105

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

43/55

slide-106
SLIDE 106

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Logiciels pour Graph Motif

◮ Motus [Lacroix et al. 2006] : test´

e sur les r´ eseaux m´ etaboliques.

◮ Mode recherche : trouver toutes les occurrences d’un motif

donn´ e.

◮ Mode inf´

erence : trouver tous les motifs (r´ ep´ et´ es) d’une certaine taille (test´ e avec 3 et 4).

◮ Torque [Bruckner et al. 2009] : un service web pour les

r´ eseaux PPI, qui ne g` ere que les motifs colorfuls.

◮ GraMoFoNe [Blin, S., Vialette 2010] : un greffon Cytoscape

(environ 350 t´ el´ echargements).

44/55

slide-107
SLIDE 107

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Cytoscape (2002)

◮ Plateforme java open-source, gratuite,

permettant :

◮ l’importation / l’exportation nombreux

formats, BDD,...

◮ la visualisation et l’analyse de r´

eseaux d’interactions,

◮ l’int´

egration d’annotations ` a ces r´ eseaux.

◮ Largement utilis´

e (”des centaines” d’articles l’utilisent pour de l’analyse).

◮ Maintenu...

45/55

slide-108
SLIDE 108

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Cytoscape

◮ Principal avantage : greffons. ◮ Ajout de fonctions :

◮ Analyses, ◮ Nouveaux layouts, ◮ Formats de fichiers, ◮ Connexion avec des bases de donn´

ees,

◮ ... 46/55

slide-109
SLIDE 109

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Programmation Pseudo-Bool´ eenne

◮ Donne une solution exacte. ◮ Beaucoup de solvers efficaces existent. ◮ Dont beaucoup de gratuits (= CPLEX).

47/55

slide-110
SLIDE 110

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Programmation Pseudo-Bool´ eenne

◮ Donne une solution exacte. ◮ Beaucoup de solvers efficaces existent. ◮ Dont beaucoup de gratuits (= CPLEX). ◮ On utilise SAT4JPseudo [Le Berre, Parrain 2007] :

◮ Gratuit, ◮ Maintenu, ◮ Bonnes performances lors des comp´

etitions,

◮ En java. 47/55

slide-111
SLIDE 111

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

48/55

slide-112
SLIDE 112

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – “batch mode”

◮ Utilis´

e pour tests ` a grande ´ echelle.

◮ Recherche de dizaines de complexes prot´

eiques dans des r´ eseaux d’autres esp` eces.

49/55

slide-113
SLIDE 113

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – “batch mode”

◮ Utilis´

e pour tests ` a grande ´ echelle.

◮ Recherche de dizaines de complexes prot´

eiques dans des r´ eseaux d’autres esp` eces.

◮ Donn´

ees (comme Torque) :

◮ Motifs de 6 esp`

eces (levure, drosophile, homo sapiens, souris, boeuf, rat),

◮ R´

eseaux de 3 esp` eces (levure, drosophile, homo sapiens),

◮ De 2 `

a 4 insertions/d´ el´ etions autoris´ ees selon la taille du motif.

49/55

slide-114
SLIDE 114

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – “batch mode”

◮ Plus de bruit pour la mouche (faux n´

egatifs d´ econnectent la solution, faux positifs donnent des “mauvaises” solutions).

50/55

slide-115
SLIDE 115

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Temps de calcul

◮ 5 `

a 20 secondes pour de petits motifs, 40 ` a 60 pour des plus grands.

◮ Utiliser un solveur externe empˆ

eche de pr´ edire les temps de calcul.

51/55

slide-116
SLIDE 116

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Plan

Introduction Complexit´ e param´ etr´ ee et algorithmes d’approximation Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

52/55

slide-117
SLIDE 117

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Perspectives... ou ce dont je n’ai pas parl´ e !

◮ Comparaison de r´

eseaux biologiques h´ et´ erog` enes [Blin, Fertin,

Mohamed-Babou, Rusu, S. et Vialette 2011].

◮ R´

earrangements g´ enomiques [Blin, Fertin, S., Vialette 2009],

[Blin, Rizzi, S. et Vialette 2011], [Yang, S., Blin, Hamel, Rizzi et Aluru, en cours de soumission].

◮ Minimisation des duplications de g`

enes [Blin, Bonizzoni, Dondi,

Rizzi et S., 2012].

◮ Plus longue sous-s´

equence commune sans r´ ep´ etition [Blin,

Bonizzoni, Dondi et S., en cours de soumission].

53/55

slide-118
SLIDE 118

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Perspectives

◮ Algorithme en O∗(2k) pour Graph Motif quand le motif est

un multi-ensemble ?

54/55

slide-119
SLIDE 119

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Perspectives

◮ Algorithme en O∗(2k) pour Graph Motif quand le motif est

un multi-ensemble ?

◮ Le bruit pousse `

a la recherche d’extensions plus souples :

◮ Contraintes sur les couleurs. ◮ Contraintes sur la connexit´

e :

◮ Simple connexit´

e : FPT,

◮ 2-connexit´

e : W[1]-difficile,

◮ Modules. 54/55

slide-120
SLIDE 120
slide-121
SLIDE 121

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

D´ ecomposition arborescente

◮ l’union de tous les Xi de X est ´

egale ` a V ,

◮ pour toute arˆ

ete {v, w} de E, il existe un nœud Xi de l’arbre T qui contient v et w,

◮ si Xi et Xj contiennent un mˆ

eme sommet v, alors tous les nœuds Xz de T sur le chemin entre Xi et Xj contiennent v.

56/55

slide-122
SLIDE 122

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Matro¨ ıdes

◮ M = (S, I) d´

efini sur :

◮ Un ensemble fini S = {s1, . . . , s|S|} ◮ Ensemble I de sous-ensembles sur S (ind´

ependants)

◮ M est un matro¨

ıde si :

◮ si X ⊆ Y et Y ∈ I, alors X ∈ I (tout sous-ensemble d’un

ind´ ependant est un ind´ ependant)

◮ si X, Y ∈ I et |Y | > |X|, alors ∃s ∈ Y \X t.q. X ∪ {s} ∈ I

(existe un ´ el´ ement de Y absent de X qui peut ˆ etre ajout´ e ` a X t.q. X reste ind´ ependant)

◮ M est matro¨

ıde de partition o` u il existe une partition de S en k parts disjointes {s1, . . . , sk}, k entiers positifs n1, . . . , nk et I = {X ⊆ S : |X ∩ Si| ≤ ni, 1 ≤ i ≤ k}

57/55

slide-123
SLIDE 123

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Modules

v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v9 v4 v6 v8 v1 v7 v2 v3 v10 v5

58/55

slide-124
SLIDE 124

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Modules

a) v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 b) premier v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11 s v2, v3, v4 s v8, v9, v10, v11 p v2, v3 p v6, v7 p v10, v11 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11

59/55

slide-125
SLIDE 125

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Programmation Pseudo-Bool´ eenne

◮ 23 contraintes et 9 domaines de variables ◮ A respecter :

  • 1. La taille de la solution
  • 2. La coloration de la solution par rapport au motif
  • 3. La connexit´

e de la solution (partie difficile)

60/55

slide-126
SLIDE 126

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Une variable xv pour chaque nœud v ◮ xv = 1 si v est dans la solution (xv = 0 sinon)

M : G : x1 x2 x3 x4 x5 x6

61/55

slide-127
SLIDE 127

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Une variable xv pour chaque nœud v ◮ xv = 1 si v est dans la solution (xv = 0 sinon)

M : G : x1 x2 x3 x4 x5 x6

◮ Contrainte ”taille solution” : v∈V xv = |M| :

◮ x1 + x2 + x3 + x4 + x5 + x6 = 3 61/55

slide-128
SLIDE 128

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Une variable xv pour chaque nœud v ◮ xv = 1 si v est dans la solution (xv = 0 sinon)

M : G : x1 x2 x3 x4 x5 x6

◮ Contrainte ”taille solution” : v∈V xv = |M| :

◮ x1 + x2 + x3 + x4 + x5 + x6 = 3

◮ Contraintes ”coloration”

v∈V c∈col(v) xv = occM(c) : ◮ x1 + x2 + x6 = 2 (gris) ◮ x3 + x5 = 1 (bleu) ◮ x4 = 0 (rose) 61/55

slide-129
SLIDE 129

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Connexit´

e : |M| variables Labelv pour chaque nœud v M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63 61/55

slide-130
SLIDE 130

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Connexit´

e : |M| variables Labelv pour chaque nœud v M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63

◮ |V | contraintes ”un seul label par nœud dans la solution” :

◮ Pour chaque v, xv ⇒ (|M|

i=1 Labelvi = 1)

61/55

slide-131
SLIDE 131

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Connexit´

e : |M| variables Labelv pour chaque nœud v M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63

◮ |V | contraintes ”un seul label par nœud dans la solution” :

◮ Pour chaque v, xv ⇒ (|M|

i=1 Labelvi = 1)

◮ |M| contraintes “un seul nœud par label donn´

e”

◮ Pour un label i donn´

e,

v∈V Labelvi = 1

61/55

slide-132
SLIDE 132

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Variables

◮ Connexit´

e : |M| variables Labelv pour chaque nœud v M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63

◮ |V | contraintes ”un seul label par nœud dans la solution” :

◮ Pour chaque v, xv ⇒ (|M|

i=1 Labelvi = 1)

◮ |M| contraintes “un seul nœud par label donn´

e”

◮ Pour un label i donn´

e,

v∈V Labelvi = 1

◮ |V |.|M| contraintes “un nœud avec un label a un voisin avec

un label sup´ erieur” (sauf le dernier)

◮ Labelvi ⇒ (

u∈N(v)

  • j>i Labeluj ≥ 1)

61/55

slide-133
SLIDE 133

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Une solution

M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63 62/55

slide-134
SLIDE 134

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Une solution

M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63

◮ “taille” : x1 + x2 + x3 + x4 + x5 + x6 = 3 ◮ “coloration” :

◮ x1 + x2 + x6 = 2 (gris) ◮ x3 + x5 = 1 (bleu) ◮ x4 = 0 (rose) 62/55

slide-135
SLIDE 135

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Une solution

M : G : x1

Label11 Label12 Label13

x2

Label21 Label22 Label23

x3

Label31 Label32 Label33

x4

Label41 Label42 Label43

x5

Label51 Label52 Label53

x6

Label61 Label62 Label63

◮ “un label par nœud” : ∀v, xv ⇒ (|M| i=1 Labelvi = 1) ◮ “un nœud par label” : v∈V Labelvi = 1 ◮ “voisin avec label sup´

erieur” : Labelvi ⇒ (

u∈N(v)

  • j>i Labeluj ≥ 1)

62/55

slide-136
SLIDE 136

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe

◮ G`

ere Graph Motif ”classique” (colorful et multi-ensemble)

◮ Permet d’avoir toutes les solutions possibles...

63/55

slide-137
SLIDE 137

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe

◮ G`

ere Graph Motif ”classique” (colorful et multi-ensemble)

◮ Permet d’avoir toutes les solutions possibles... ◮ Avec des variables et contraintes suppl´

ementaires, on peut g´ erer

◮ Les insertions ◮ Les d´

el´ etions

◮ Une liste de couleurs associ´

ee ` a chaque nœud du graphe

63/55

slide-138
SLIDE 138

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe

◮ G`

ere Graph Motif ”classique” (colorful et multi-ensemble)

◮ Permet d’avoir toutes les solutions possibles... ◮ Avec des variables et contraintes suppl´

ementaires, on peut g´ erer

◮ Les insertions ◮ Les d´

el´ etions

◮ Une liste de couleurs associ´

ee ` a chaque nœud du graphe

◮ Devient complexe (compensations “une d´

el´ etion compense une insertion”, garder la bijection entre motif et graphe si plusieurs couleurs dans le graphe,...)

63/55

slide-139
SLIDE 139

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-140
SLIDE 140

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-141
SLIDE 141

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-142
SLIDE 142

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-143
SLIDE 143

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-144
SLIDE 144

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-145
SLIDE 145

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-146
SLIDE 146

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-147
SLIDE 147

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-148
SLIDE 148

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

GraMoFoNe – Interface

64/55

slide-149
SLIDE 149

Introduction Complexit´ e Recherche exacte de motifs Recherche approch´ ee de motifs Logiciels Perspectives

Programmation Pseudo-Bool´ eenne

◮ Trouver une assignation de variables satisfaisant les contraintes

et maximisant l’objectif

◮ Un exemple simple :

◮ Variables : xi ∈ {0, 1}, ∀i = 1, 2, 3 ◮ Objectif : max x1 + 2x2 − x3 ◮ Contraintes :

  • 1. x1 − 2x2 + 3x3 ≥ 1
  • 2. x1 + x2 + x3 = 1
  • 3. 2x1 + x2 + x3 < 3

◮ Solution : x1 = 1, x2 = 0, x3 = 0

65/55