• Aucun résultat trouvé

CHAPITRE 2: CONTEXTE BIOLOGIQUE ET INFORMA-

3.3 Superarbres

Dans cette section, nous passons en revue les diverses m´ethodes de con- struction de superarbres, qui permettent de combiner plusieurs arbres en un seul. De fa¸con similaire aux m´ethodes d’inf´erence phylog´en´etique, les algo- rithmes existants sont pour la plupart g´en´eriques et s’appliquent `a n’importe quel type d’arbre. Dans le chapitre 7, nous sp´ecialisons la construction de superarbre aux arbres de g`enes. Quelques notions formelles suppl´ementaires sont n´ecessaires avant de continuer.

Pour L ⊆ L(T ), la restriction de T `a L, d´enot´ee T |L, est le plus petit sous-arbre de T contenant L, auquel on contracte les noeuds de degr´e 2 (i.e. la contraction des branches xy telles que y n’a qu’un seul fils x). Par exemple dans la Figure 3.2, G1, G2 et G3 peuvent tous ˆetre obtenus par

une restriction de T . On a T |{a1, b1, c1, d1} = G1, T |{a2, a3, c2} = G2 et

T |{b1, e1, a1, a2} = G3.

Le triplet xy|z est l’unique arbre binaire B avec L(B) = {x, y, z} tel que lca(x, y) 6= lca(x, z) = lca(y, z). On dit que xy|z est un triplet de T si T |{x, y, z} = xy|z. L’ensemble de tous les triplets de T est d´enot´e tr(T ). Dans la Figure 3.2, G2 = a2a3|c2 est un triplet, et ce triplet appartient `a

tr(T ).

On dit qu’un arbre T1contient T2 si T1|L(T2) = T2. Soit T = {T1, . . . , Tk}

parent unique).

Majority rule (la loi de la majorit´e): l’arbre qui inclut chaque clade apparaissant dans strictement plus que 50% des arbres. Pour construire l’arbre “majority rule”, il suffit de lister tous ces clades et, comme pour l’arbre consensus strict, les lier par la relation d’inclusion. Il ne peut y avoir deux clades contradictoires ins´er´es, puisque le contraire impliquerait la pr´esence de deux clades contenus dans strictement plus de 100% des arbres. Maximum Agreement SubTree (MAST): on cherche un plus grand sous-ensemble de feuilles L ⊆ Γ tel que T1|L = T2|L = . . . = Tk|L. En

d’autres termes, quel est le minimum d’´etiquettes `a enlever pour que tous les arbres soient ´egaux? L’arbre ainsi obtenu est appel´e le Maximum Agreement SubTree. Un consensus sur Γ peut ensuite ˆetre obtenu en ajoutant les feuilles retir´ees arbitrairement. Ce probl`eme peut ˆetre r´esolu en temps polynomial pour deux arbres, mais est NP-complet pour trois arbres ou plus [79]. Toute- fois, si tous les arbres donn´es en entr´ee sont binaires, une solution peut ˆetre trouv´ee en temps polynomial [32, 53].

3.3.2 Superarbres lorsque T est consistant

Dans le cas o`u T est consistant, on voudra ´evidemment trouver un su- perarbre compatible avec T . Build est un algorithme classique qui permet de v´erifier si un ensemble de triplets T est compatible et, si oui, construire un superarbre compatible avec T [1]. Notons que puisqu’un arbre T1 contient

un arbre T2 si et seulement si T1 contient tous les triplets de tr(T2), v´erifier

la consistance d’un ensemble d’arbres T′ se r´eduit `a v´erifier la consistance

de S

T ∈T′tr(T ).

Le graphe BUILD pour T est le graphe B(T ) = (V, E) dans lequel V = Γ et deux ´el´ements x, y ∈ Γ partagent une arˆete si et seulement si il existe un triplet xy|z ∈ T pour un certain z1. L’id´ee derri`ere Build est la suivante: si

1

B(T ) est appel´e T dans le Chapite 7, notation que nous ´evitons ici pour ´eviter la

B(T ) est connexe et a plus d’un noeud, alors T est inconsistant. Sinon, ses composantes connexes CC = C1, . . . , Ck forment les clades que l’on trouve

sous la racine. Ensuite, pour d´eterminer la topologie du clade Ci, on appelle

r´ecursivement Build mais sur T |Ci, c’est-`a-dire l’ensemble des triplets xy|z ∈

T tels que x, y, z ∈ Ci. L’algorithme est d´etaill´e ci-bas.

Algorithm 1 BU ILD(Γ = {g1, . . . , gn}, T ) 1: if |Γ| = 1 return (g1)

2: if |Γ| = 2 return (g1, g2) 3: Construire le graphe B(T )

4: if B(T ) est connexe return ‘Inconsistant’

5: Soit CC = {C1, . . . , Ck} les composantes connexes de B(T ) 6: for composante connexe Ci ∈ CC do

7: Ti ← l’arbre retourn´e par BU ILD(Ci, T |Ci)

8: if BU ILD(Ci, T |Ci) a ´echou´e return ‘Inconsistant’ 9: end for

10: return L’arbre obtenu en joignant r(T1), . . . , r(Tk) sous un parent com-

mun

L’arbre T contenant chaque arbre de T retourn´e par Build n’est pas n´ecessairement binaire. Il est toutefois minimalement r´esolu, c’est `a dire que toute contraction de branche de T fait en sorte qu’il n’est plus compati- ble avec T . De plus, on sait que toute binarisation de T contient aussi chaque arbre de T . Build ne produit toutefois qu’un seul arbre (ou du moins, qu’une seule classe d’arbre si on consid`ere les binarisations), alors qu’il peut en exis- ter beaucoup plus qu’un. L’algorithme Build a ´et´e ´etendu par [34] et [115] afin de produire toutes les solutions possibles. Ce travail a ´et´e continu´e dans [142], o`u les auteurs d´ecrivent d´ecrivent l’algorithme All-Min-Trees qui donne tous les arbres minimalement r´esolus, chacun pouvant ˆetre trouv´e, individuelle- ment, en temps polynomial. Toutefois, pour des arbres `a n ´etiquettes, il peut exister Ω(n2n2) solutions minimalement r´esolues [87].

3.3.3 Superarbres lorsque T est inconsistant

Si T est inconsistant, la question du “meilleur” superarbre n’est pas claire et est un sujet de d´ebats. Bien que ce cas ne va pas nous int´eresser, nous effleurons ici les m´ethodes de construction de superarbre dans le cas o`u T est inconsistant.

Maximum de triplets : ´etant donn´e un ensemble de triplets T , on cherche `a trouver un ensemble T′ ⊆ T de cardinalit´e maximum tel que Test con-

sistant. Ou encore, quel est le nombre minimum de triplets `a sacrifier pour pouvoir construire un arbre avec Build? Sans surprises, ces deux probl`eme sont NP-complet, mais ne sont pas ´equivalents en terme d’approximabilit´e. Le maximum de triplets consistants peut ˆetre approxim´e `a un facteur 3, tan- dis que le minimum de triplets `a retirer pour avoir un ensemble consistant n’admet pas d’algorithme d’approximation avec un facteur constant [20]. MinCutSupertree [143] : Build arrˆete son ex´ecution sur un ensemble de triplets T lorsque le graphe B(T ) connexe. L’id´ee du MinCutSupertree est de forcer Build `a continuer son ex´ecution dans de telles situations, ce qui peut s’accomplir en rendant B(T ) non-connexe par la suppression d’arˆetes.

`

A chaque arˆete xy, on attribue un poids f (xy) obtenu par la fr´equence de xy en triplets, c’est-`a-dire le nombre de triplets de la forme xy|z dans T . L’algorithme MinCut peut ensuite ˆetre appliqu´e pour trouver le poids min- imum d’arˆetes (i.e. le nombre triplets) `a sacrifier pour d´econnecter B(T ). Bien que rapide, cette m´ethode a ´et´e critiqu´ee dans [65] puisqu’elle effectue parfois des choix arbitraires, donnant lieu `a des triplets ou sous-arbres qui ne sont support´es par aucun arbre de l’entr´ee.

Repr´esentation matricielle avec parcimonie (MRP) [8] : on peut repr´esenter les clades des arbres de T avec une matrice M . Les rang´ees de M sont les n ´etiquettes et les colonnes sont les noeuds internes des arbres de T . On pose Mℓ,x= 1 si ℓ est une feuille descendante du noeud x, 0 si ℓ est

pr´esente dans le mˆeme arbre que x mais n’en descend pas, et ? si ℓ n’est pas 58

dans le mˆeme arbre que x. La matrice M peut alors ˆetre interpr´et´ee comme un ensemble de s´equences caract`eres-´etats, tel que vu dans la section 3.2. On peut alors utiliser la parcimonie pour retrouver le meilleur arbre pour M . Une des critiques envers MRP est qu’il se peut que le superarbre contienne des triplets (ou des sous-arbres) en contradiction avec chaque arbre de T , la parcimonie n’offrant aucune garantie quant `a la compatibilit´e [65]. MRP est n´eanmoins une des m´ethodes les plus utilis´ees. Elle a notamment servi `a reconstruire le superarbre des angiospermes et des mammif`eres.