Stage au ZBIT (Tübingen) Sous la direction de Daniel Huson et Tobias Klöpper Mars-août 2004 Représentation de.

Slides:



Advertisements
Présentations similaires
Structures de données avancées : Principales structures de fichiers
Advertisements

Comparaison de deux algorithmes d’approximation
Soutenance du stage de DEA.
Cladogramme.
La théorie du monde est petit
Fabrice Lauri, François Charpillet, Daniel Szer
Licence pro MPCQ : Cours
Material/Sources: Daniel Bardou, Julie Dugdale &
Introduction aux classes empiétantes François Brucker Brest (Breizh)
DE ZÉRO à PAUP : Délimitation du groupe d'intérêt ("ingroup")
Cours d’Algorithmique
Prédiction de sites dinteraction des protéines par analyse darbres phylogénétiques Stéfan Engelen Génomique Analytique, INSERM U511 Université Pierre et.
Affine registration with Feature Space Mutual Information (2001)
Simplex en 4 Slides – explication:
Visualisation d’information interactive 5 : Graphes
Chap. 1 INTRODUCTION Beaucoup de problèmes de la vie courante, tels la gestion de réseaux de communication ou l'ordonnancement de tâches, correspondent.
Exploitation avec Excel.
Traitement Co-Séquentiel: Appariment et Fusion de Plusieurs Listes
Évolution à taux constant
UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D’ORAN
SECURITE DU SYSTEME D’INFORMATION (SSI)
Application des algorithmes génétiques
Algorithmes Branch & Bound
Transformée de Fourier discrète et transformée de Fourier rapide
4. Algorithme de Recuit Simulé
Les fichiers indexés (Les B-arbres)
Algorithmes d ’approximation
PROBLEMES DE DEGRE-DIAMETRE DE GRAPHES DANS LE CAS GENERAL
Recherche Opérationnelle
Géométrie analytique Relations entre deux droites Remarque:
Géométrie analytique Relations entre deux droites Remarque :
DONG Xiaoguang HONG Liang OULDBABA Fadel WANG Min
Primitives Montage préparé par : André Ross
Programmation linéaire en nombres entiers : les méthodes de troncature

Mise en forme en Mathématiques
Présentation de la méthode des Eléments Finis
Examen partiel #1 Mercredi le 4 octobre de 13h30 à 15h20
Institut Provincial des Arts et Métiers
Mathieu Brévilliers, Laboratoire MIA, UHA Partition élémentaire d’un ensemble de segments du plan Journées de Géométrie Algorithmique 2007.
Coupes efficaces pour la relaxation lagrangienne
ASI 3 Méthodes numériques pour l’ingénieur
Arbres et graphes.
Optimiser l’anisotropie: une approche globale pour les stratifiés
Deux sujets traités La segmentation d’images
D.E ZEGOUR Ecole Supérieure d’Informatique
GRAPHES EN INFORMATIQUE. INTRODUCTION Les objets mathématiques appelés graphes apparaissent dans de nombreux domaines comme les mathématiques, la biologie,
les méthodes de recherche locale
Inférence de phylogénies
8.1 Les carrés, les racines carrées et Pythagore
TNS et Analyse Spectrale
Rappels de statistiques descriptives
Pascale MULARD BIANCO, Jean-Michel RUIZ Professeurs à l ’EGIM
Université de Sherbrooke
Tutorat 7 - Introduction au Routage et OSPF
Bin packing/covering avec contrainte de Distance : application au calcul volontaire et au placement de réplicats Hubert Larchevêque, Olivier Beaumont,
Graph cuts et applications
Légende : vol (3 possibilités d’affectation) : possibilité d’affectation d’un niveau à un vol : niveau affecté à un vol : conflit potentiel rejeté : conflit.
Optimisation par les algorithmes génétiques
Programmation linéaire en nombres entiers
Algorithmes Branch & Bound
LE FLOT MAXIMAL et LA COUPE MINIMALE
Familles de gènes Nadia El-Mabrouk.
Intelligence Artificielle
Problème de double digestion
Recherches locales et méta-heuristiques
Décomposition de graphes pour la reconstruction de réseaux phylogénétiques V. Berry (MAB) et C. Paul (VAG, HdR) Candidat AMN : Philippe Gambette (LIAFA)
Algorithmes génétiques en optimisation combinatoire
Applications Internet Cours 3 21 janvier 2010 Cours 3 21 janvier 2010.
Problème du Car Sequencing
Transcription de la présentation:

Stage au ZBIT (Tübingen) Sous la direction de Daniel Huson et Tobias Klöpper Mars-août 2004 Représentation de réseaux phylogénétiques

 Les réseaux phylogénétiques  Les splitsgraphs et leur représentation  Les optimisations Optimized Angle et Box-Opening  Petite démo de SplitsTree  Les réseaux réticulés et leur représentation  Tübingen Plan

Les feuilles de l’arbre sont ces entités, généralement des taxons. Un arbre phylogénétique montre les relations de parenté entre les espèces ou d'autres entités supposées avoir un ancêtre commun. Les arbres phylogénétiques Il existe de nombreux algorithmes pour inférer la phylogénie d’un ensemble de taxons à partir des données brutes de séquences, ou d’une matrice de distance entre les taxons.

Le modèle d’arbre phylogénétique est insuffisant, il ne permet pas de représenter : - les recombinaisons : échange de matériel génétique entre deux portions d’un même génome (crossing-over) - les hybridations : ont lieu le plus souvent entre des espèces de plantes (par échange de pollen) ou de poissons - les transferts horizontaux : passage de matériel génétique d’une espèce à une autre, fréquent chez les bactéries (intégrons pour se transmettre les gènes de résistance aux antibiotiques). Les arbres phylogénétiques

un arbre phylogénétique Les réseaux phylogénétiques un splitsgraph un réseau réticulé réseaux phylogénétiques

- consensus de plusieurs arbres (SuperNetwork) - visualisation de conflits phylogénétiques Outil de visualisation : Intérêt des splitsgraphs

Pour un arbre, toute arête sépare les taxons en 2 parties : {x6,x1,x2}{x6,x1,x2} {x3,x4,x5}{x3,x4,x5} S = x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 split = partition de l’ensemble des taxons Un splitsgraph code pour un ensemble de splits. Les splitsgraphs

Splits compatibles : {x6,x1,x2}{x6,x1,x2} {x3,x4,x5}{x3,x4,x5} S = x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 {x1,x2}{x1,x2} {x3,x4,x5,x6}{x3,x4,x5,x6} S’ = et ou Tous les splits sont compatibles 2 à 2 arbre Les splitsgraphs

Splits incompatibles : {x6,x1}{x6,x1} {x2,x3,x4,x5}{x2,x3,x4,x5} S = x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 {x1,x2}{x1,x2} {x3,x4,x5,x6}{x3,x4,x5,x6} S’ = Une paire de splits incompatibles boîte boîte Les splitsgraphs

{x2,x3,x4,x5}{x2,x3,x4,x5} Split circulaire : Ce split est circulaire {x6,x1}{x6,x1} S = x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 boîte Les splitsgraphs tel que Tous ces splits sont circulaires graphe planaire (avec étiquettes extérieures) L’algorithme NeighborNet ne crée que des graphes planaires.

= angle moyen des taxons A tout splitsgraph on associe son cercle des taxons : les taxons sont disposés régulièrement autour du cercle unité. Dessiner un splitsgraph : algorithme Equal Angle Angle de

Le poids des arêtes est fixe Améliorer le dessin des spligraphs Améliorer le dessin des splitsgraphs : « ouvrir les boîtes »

Avantages : - on ne considère pas toutes les arêtes, juste les splits : k opérations au lieu de kn². - on connaît un critère pour que le splitsgraph reste planaire : garder l’ordre circulaire des taxons. Inconvénients : - il n’y a pas beaucoup de place sur le cercle des taxons. - garder l’ordre circulaire n’est pas nécessaire pour la planarité du graphe Algorithme Optimized Angle

Complexité en O(lkn) Paramètres choisis : l = 500 et p = 0.8 pour de petits graphes

Bons résultats pour de petits graphes : Algorithme Optimized Angle Implémenté pour SplitsTree mais pas intégré dans SplitsTree4.

A appliquer une fois que le splitsgraph planaire a été dessiné. Le graphe doit rester planaire : identifier un intervalle I d’angles possibles pour l’angle  (S) de chaque split S. Algorithme Box-Opening

On identifie deux angles critiques pour l’ange du split  (S), en ne considérant que le split lui-même : collisions locales Algorithme Box-Opening

Une fois l’intervalle I obtenu suite aux contraintes locales pour l’ange du split  (S), on va le mettre à jour en tenant compte des collisions globales : Algorithme Box-Opening

On identifie un défenseur et un attaquant : 4 nœuds extrêmes Algorithme Box-Opening

4 nœuds extrêmes Algorithme Box-Opening On identifie un défenseur et un attaquant, angle de confiance 

E’’ est le nouvel attaquant ! nouvel angle Algorithme Box-Opening On identifie un défenseur et un attaquant :

Zone de danger pour notre critère : On localise les nœuds attaquants tels que quand on « applique l’angle de confiance », il arrive exactement sur la ligne de défense. Equation de cette frontière : Algorithme Box-Opening   ligne d’attaque ligne de défense

Equation de cette frontière : Algorithme Box-Opening  ligne d’attaque ligne de défense Zone exclue pour notre critère : Si la zone triangulaire Z ne contient pas de nœud de la partie du haut du graphe, il n’y aura pas de collision à droite quand on « applique l’angle de confiance ». zone exclue Z

Zones exclues fines, ne contiennent pas de nœuds en pratique Les zones exclues, dépendant de l’angle  entre l’arête extrême du split et la ligne de défense : Algorithme Box-Opening

For each split: Algorithme Box-Opening Complexité en O(nombre de splits x nombre de noeuds), c’est à dire O(nk+k 3 ). Il réalise une optimisation globale à partir d’optimisations locales pour chaque split. Intégré dans la première version non beta de SplitsTree4.

,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 1,1 1,2 1,3 1,4 1,5 Evolution de l’aire totale des boîtes Vig Penny Bad Opt Boxes Hard Chainletters Mammals Rubber Primates Algae Bees Résultats de Box-Opening

,05 0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50 0,55 0,60 0,65 0,70 0,75 Amélioration de l’aire totale par rapport à la meilleure aire trouvée Vig Penny Bad Opt Boxes Hard Chainletters Mammals Rubber Primates Algae Bees Résultats de Box-Opening

Avant optimisation (algorithme Equal Angle) Résultats de Box-Opening

Après une boucle (10 secs sur un Pentium 2.6GHz) Résultats de Box-Opening

Après 2 boucles Résultats de Box-Opening

Après 3 boucles Résultats de Box-Opening

Après 4 boucles Résultats de Box-Opening

Après 5 boucles Résultats de Box-Opening

Après 6 boucles Résultats de Box-Opening

Après 7 boucles Résultats de Box-Opening

Après 8 boucles Résultats de Box-Opening

Après 9 boucles Résultats de Box-Opening

Après 10 boucles Résultats de Box-Opening

Après 1 boucle Résultats de Box-Opening

Avant optimisation Résultats de Box-Opening

Les réseaux réticulés et leur représentation Actuellement, le dessin du réseau réticulé est inspiré du dessin du splitsgraph : arêtes de réticulation Idée : partir de l’arbre phylogénétique (backbone tree) et ajouter les réticulations en minimisant les croisements.

Minimiser les croisements Pour refléter le nombre de croisements créés par une réticulation, on utilise la distance suivante : le nombre de taxons « entre » les deux arêtes. d(x 4,x 8 )=2 On cherche à changer l’ordre des taxons pour diminuer la distance globale.

Minimiser les croisements On utilise l’opération de miroir sur les arêtes et l’utilisation de rotation d’un sous-arbre Une telle opération est équivalente à deux miroirs

Minimiser les croisements La structure du cercle des taxons (graphe dual) pour être plus efficace, et obtenir une meilleure visualisation : Arbre original Graphe dual (cercle des taxons… sans le cercle)

L’opération miroir sur le graphe dual Une opération miroir : - décoller deux groupes d’arêtes, les recoller. - inverser l’ordre des taxons “sous l’arête”.

L’algorithme des miroirs Soit T un arbre, un ordre sur ses taxons, et un ensemble de r réticulations (e i,f i ). Construire le cercle des taxons pour T. Calculer la distance totale de réticulation D. Construire l’ensemble d’arêtes candidates au miroir pour les réticulations. Répéter l fois : - Choisir aléatoirement une arête candidate e. En faire le miroir, calculer la distance TempD. Si TempD>D, refaire le miroir de e, sinon poser D=TempD. - Choisir aléatoirement 2 arêtes candidates e 1 et e 2. En effectuer le miroir. Garder la configuration selon une stratégie de recuit simulé. Il reste à effectuer une analyse fine de la complexité et la comparer avec d’autres méthodes de sériation.

Tübingen Universitätstadt : habitants dont étudiants en 2002, université fondée en 1477.

Tübingen Institut Wilhelm Schickard, du nom de l’inventeur de la première machine à calculer, construite à Tübingen pour Kepler en 1623, l’horloge calculante.

Tübingen 1868 : découverte de la nucléine (ADN) par Johan Friedrich Miescher dans l’ancienne cuisine du château de Hohentübingen

Tübingen 1868 : découverte de la nucléine (ADN) par Johan Friedrich Miescher dans l’ancienne cuisine du château de Hohentübingen

Tübingen Le Neckar, qui se jette dans le Rhin à Mannheim

Pour en savoir plus...