Problème de double digestion

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

Introduction à la Théorie des graphes
Dans cette partie Graphes Eulériens.
Algorithmes et structures de données avancées Cours 7
Modèle des jeux et des mécanismes
Algorithmes et structures de données avancées Cours 4
Algorithmes et structures de données avancés
Calcul géométrique avec des données incertaines
Introduction à la Théorie des graphes
CHAPITRE 6 Fonctions numériques.
Modélisation par le concept de graphe
FONCTIONS EXPONENTIELLES ET LOGARITHMES
Chap 1 Grammaires et dérivations.
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.
INTRODUCTION.
Chapitre VI. Arbres (définition, parcours, représentation)
1 Théorie des Graphes Cycle Eulérien. 2 Rappels de définitions On dit qu'une chaîne est un chemin passant par toutes les arêtes du graphe. On dit qu'un.
COURS SUR LA THEORIE DES GRAPHES
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Algorithmes Branch & Bound
Graphes Conceptuels J.F. Baget Inria.
Heuristiques A. Introduction B. Recherche d ’une branche
GPA750 – Ordonnancement des systèmes de production aéronautique
Équations différentielles.
Théorie des graphes Un peu de vocabulaire.
Systèmes d’équations linéaires
Calcul Intégral Au XVIIIème siècle, les mathématiciens progressent dans deux domaines séparés : les problèmes des tangentes (et la longueur des arcs) et.
Transformée de Fourier discrète et transformée de Fourier rapide
LES ARBRES IUP 2 Génie Informatique
Structures de données IFT-2000
Structures de données IFT-2000
Quatrième étape : cheminer dans les graphes. Une chaîne… Quand elle nutilise pas plusieurs fois la même arête, la chaîne est dite simple. Au sens du programme,
Coloration gap sommet identifiante de graphes
GPA750 Les ateliers multigammes Chapitre 5
IFT Complexité et NP-complétude
Courbes de Bézier.
OBJETS ÉLÉMENTAIRES DANS L’ESPACE À TROIS DIMENSIONS
Algorithmes d ’approximation
Recherche Opérationnelle
- GRAPHES - Composantes et types
Mise en oeuvre des MMCs L'utilisation des MMCs en reconnaissance des formes s'effectue en trois étapes : définition de la topologie de la chaîne de Markov,
21 février 2006Cours de graphes 2 - Intranet1 Cours de graphes Les plus courts chemins, les chemins les plus légers : à laide de la vague, à laide de la.
Technique de points de contrôle: Formes de Bézier
Deuxième étape : échanger des poignées de mains
Atelier de formation : MAT optimisation II (les graphes).
8INF8061 Conception et analyse des algorithmes Comment comparer deux problèmes?

IFT Complexité et NP-complétude Chapitre 0 Rappels.
Graphes 1. Introduction 2. Définition 3. Représentation mémoire
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,
La Logique du premier ordre LPO
INTRODUCTION.
Mathématiques Discrètes
Séquençage par hybridation
Programmation linéaire en nombres entiers
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
Algorithmes Branch & Bound
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
Programmation fonctionnelle Preuve
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
MATHÉMATIQUES DISCRÈTES Chapitre 6 (relations)
Ajouts et retraits dans un arbre de connexion Nicolas Thibault et Christian Laforest, Équipe OPAL Laboratoire IBISC (regroupement LaMI et LSC), Évry 8.
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Cours 5 - Trois algorithmes de tri d'un tableau
Systèmes formels 1. Définition d'un SF Morphologie Théorie propre
Introduction à la Théorie des graphes
1. Tri rapide ou Quicksort Principe : La méthode du Quicksort due au C.A. Hoare (1962) utilise les principes généraux de division et équilibrage. 2.
Cycle, Cocycle, Arbre et Arborescence
Transcription de la présentation:

Problème de double digestion (Double Digest Problem)

Problématique Séquencer les positions des sites de clivage de deux enzymes de restriction dans une séquence d'ADN (restriction mapping) Mesurer la longueur des fragments résultants d'une digestion complète de l'ADN par chacun des deux enzymes séparément, puis par les deux enzymes conjointement.

Procédé L'expérimentation nous fourniera, par électrophorèse, la longueur de tous les fragments résultants de la digestion de l'ADN par l'enzyme A, par l'enzyme B et de la digestion conjointe par les deux enzymes A et B.

Formalisation Notons A et B les ensembles représentant les (positions des) sites de clivage des enzymes A et B dans la séquence d'ADN. Notons δA et δB les ensembles représentant les longueurs des fragments obtenus expérimentalement par la digestion de l'ADN par les enzymes A et B respectivement.

Formalisation (suite) Notons δX l'ensemble des longueurs des fragments obtenus par la digestion conjointe de l'ADN par les enzymes A et B. Résoudre le PDD revient à retrouver A et B à partir de δA, δB et δX.

Difficultés Le nombre de cartographies (mapping) potentielles et la complexité du calcul pour la résolution du PDD augmentent rapidement avec le nombre de sites de clivage des enzymes. Problème NP-complet; croissance exponentielle des possibilités.

Difficultés ... espoir! Il existe plusieurs classe d'équivalence regrouppant les différentes cartographies Toutes les solutions d'une même classe peuvent être obtenues à partir d'une solution de base de cette même classe, par l'application de transformations d'équivalence basées sur la théorie des cycles Eulériens alternants dans des graphes colorés.

Exemple... |ADN| = 27 Enzyme A Enzyme B A + B 1 1 2 3 4 5 1 2 3 7 8 2

Exemple... (suite) A C=A + B B 1 4 3 5 2 8 7 A C=A + B B 1 4 5 2 3 8 7

Boîtes: définition Pour un intervalle I=[i,j], définissons IC = {Ck : i  k  j } Une boîte sera définie par IC comme étant une paire (IA, IB) avec IA = {Ai :  k t.q. Ck  Ai } IB = {Bj :  k t.q. Ck  Bj }

Exemple... A A + B B 1 4 3 5 2 8 7 A A + B B 1 4 5 2 3 8 7

Boîtes ... (suite) Soit mA et mB les positions de début du fragment le plus à gauche de IA et de IB. On appelle "chevauchement gauche" de (IA, IB) la distance mA - mB. Soit nA et nB les positions de fin du fragment le plus à droite de IA et de IB. On appelle "chevauchement droit" de (IA, IB) la distance nA - nB.

Opérations sur les boîtes: 1- échange Soient deux boîtes BT1 = (IA1,IB1) et BT2 = (IA2,IB2) Si mA1 - mB1 = mA2 - mB2 nA1 - nB1 = nA2 - nB2 BT1  BT2 =  Alors BT1 et BT2 peuvent s'échanger

Exemple... (encore) A A + B B 1 4 3 5 2 8 7 A A + B B 1 4 5 2 3 8 7

Exemple... (encore) A A + B B 1 4 3 5 2 8 7 A A + B B 1 4 5 2 3 8 7

Opérations sur les boîtes: 2- réflexion Soit une boîte BT = (IA,IB) Si mA - mB = - (nA - nB) Alors BT peut être réfléchie

Exemple... (fin) A A + B B 1 4 3 5 2 8 7 A A + B B 1 4 3 5 2 8 7

Cycle alternants dans les graphes colorés L'algorithme qui trouve toutes les transformations possibles, i.e. les échanges et les réflexions de boîtes, à partir d'une solution du PDD est basé sur la théorie des cycles alternants dans les graphes colorés.

Graphes Soit un graphe G(V,E) avec un ensemble d'arêtes E colorées en l couleurs. Une séquence d'arêtes P=x1x2...xm est appellé un chemin dans G si (xi,xi+1)  E  1  i  m-1 P est appellé un cycle si x1 = xm

Alternance dans un graphe Un chemin dans G est alternant si la couleur de toutes les paires d'arêtes consécutives (xi, xi+1) et (xi+1, xi+2) sont distinctes. Un chemin est qualifié d'Eulérien si chaque e  E est traversée exactement une fois.

Noeud/graphe balancé Soit dc(v) le nombre d'arête de couleur c incidentes à v Définissons le degré d(v) d'un noeud v de la manière suivante: d(v) = ∑ dc(v) Un noeud v est dit balancé si maxc dc(v)  d(v)/2 Un graphe est dit balancé si tous ses noeuds sont balancés l c =1

Théorème de Kotzig (1) Soit G un graphe coloré avec degré pair pour tous ses noeuds. Alors ...  un cycle Eulérien alternant dans G SSI G est balancé

Idée de la preuve 1 Diviser les d(v) arêtes incidentes au noeud v en d(v)/2 paires, chacune composée d'arêtes de couleurs distinctes Former un cycle alternant à partir de v Trouver un noeud dont les arêtes ne sont pas toutes traversée Y former un nouveau cycle, et le combiner au précédent. Répéter le processus jusqu'à avoir relié tous les noeuds.

Lemme1 Soit G un graphe bicoloré. Alors, par le théorème 1, on tire:  cycle Eulérien dans G SSI d1(v) = d2(v)  v  V Dorénavant, nous utiliserons un graphe bicoloré.

Transformations sur les cycles eulériens alternants Soit F = ... x ... y ... x ... y ... un chemin alternant dans un graphe G bicoloré. On peut partitionner F autour des sommets x et y en cinq sous-chemins: F = F1F2F3F4F5 - Échange d'ordre: F = F1F2F3F4F5  F*= F1F4F3F2F5

Transformations sur les cycles eulériens alternants Soit F = ... x ... x ... un chemin alternant dans un graphe G bicoloré. On peut partitionner F autour du sommet x en trois sous-chemins: F = F1F2F3 - Réflexion de l'ordre: F = F1F2F3  F*= F1F2- F3

Théorème 2 Tous les cycles Eulériens alternants dans un graphe G peuvent être transformés entre eux par une séries de transformations d'ordre (échanges et réflexions)

Preuve 2 Soient X et Y deux cycles Eulériens alternants dans G. Soit C l'ensemble des cycles Eulériens alternants obtenus par toutes les transformations possibles à partir de X. Soit X*=x1...xm un cycle dans C ayant le plus long préfixe commun avec Y=y1...ym i.e. x1...xl = y1...yl l  m

Preuve 2 (suite) Alors: Deux cas surviennent: (2.9) Soit v = xl = yl donc e1=(v,xl+1) et e2=(v,yl+1) sont les premières arêtes différentes entre X* et Y. Alors: e1 et e2 ont la même couleur (alternant) X* contient e2 (Eulérien) e2 succède à e1 dans X* Deux cas surviennent: (2.9)

Preuve 2: premier cas e2 = (yl+1,v) est dirigée vers v Partitionnons X* autour de v Alors, puisque c(e1) = c(e2), on peut appliquer la réflexion d'ordre X* = F1F2F3  F1F2-F3 = X** Ainsi X**  C et au moins (l+1) arêtes coïncident entre X** et Y, ce qui contredit le choix de X*. (2.10)

Preuve 2: second cas e2 = (v, yl+1) , dans X*, sort de v Alors, on peut partitionner X*=X1X2X3 autour de v Notons que X2 et X3 auront assurément un sommet xj = xk en commun (Eulérien) Repartitionnons autour de ce sommet: X*=F1F2F3F4F5 (2.11) Deux cas surviennent à nouveau:

Preuve 2: second cas Si c[ (xk, xk+1) ] != c[ (xj-1,xj) ] Alors on peut appliquer l'échange d'ordre suivant: X*  F1F4F3F2F5 = X** Ainsi, on obtient X** à partir de X*, et X** et Y possèdent au moins (l+1) arêtes communes, ce qui contredit le choix initial de X*

Preuve 2: second cas Alors on peut appliquer la réflexion: Si c[ (xk, xk+1) ] = c[ (xj-1,xj) ] Alors on peut appliquer la réflexion: F1F2F3F4F5  F1F2(F3F4)-F5 = F1F2F4-F3-F5 suivie d'une seconde réflexion: F1(F2F4-)-F3-F5 = F1F4F2-F3-F5 = X** Ainsi, on obtient X** à partir de X*, et X** et Y possèdent au moins (l+1) arêtes communes, ce qui contredit le choix initial de X* CQFD

Cartographies des sites de clivage et cycles Eulériens alternants Soit une cartographie formée de fragment digérés par les enzymes A, B et C= A + B conjointement. Nous définissons une fourchette F F(Ai) = { Cj: Cj  Ai } ex. F(A3) = { C5, C6 } Une fourchette contenant 2+ fragments s'appelle une multi-fourchette

Exemple... A1 A2 A3 A4 A5 3 2 1 4 B1 B2 B3 B4 B5

Cartographies des sites de clivage et cycles Eulériens alternants On appelle des fragments frontaliers les deux fragments aux extrémités d'une multi-fourchette. Lemme 3 Chaque fragment frontalier (mis-à-part C1 et Cl) appartient à exactement 2 multifourchettes F(Ai) et F(Bj)

Cartographies des sites de clivage et cycles Eulériens alternants Le lemme précédent fournit la motivation pour la construction d'un graphe de fourchettes avec des noeuds correspondants à la longueur des fragments frontaliers, où chaque arête correspond à une fourchette. Ce graphe sera coloré (chaque enzyme de restriction est associé à une couleur).

Résolution Chaque cartographie des sites de clivage est définie par un chemin Eulérien dans son graphe de fourchettes. Les transformations entre chacun de ces chemins alternants représentent ainsi les transformations équivalentes des boîtes de la cartographie.

Exemple... A1 A2 A3 A4 A5 3 2 1 4 B1 B2 B3 B4 B5

Exemple... A1 A2 A3 A4 A5 3 2 1 4 B1 B2 B3 B4 B5 - Chaque transformation des boîtes des cartographies correspond à une transformation d'ordre dans le graphe des fourchettes. - Ainsi chaque chemin Eulérien alternant dans le graphe correspond à une transformation de boîte

Exemple... A1 A2 A3 A4 A5 3 2 1 4 B1 B2 B3 B4 B5 -A2 -A1 A3 A4 A5 3 1