Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Paarweises Sequenz Alignment Seminar Bioinformatik Christian Dewes 16.November 2001.

Ähnliche Präsentationen


Präsentation zum Thema: "Paarweises Sequenz Alignment Seminar Bioinformatik Christian Dewes 16.November 2001."—  Präsentation transkript:

1 Paarweises Sequenz Alignment Seminar Bioinformatik Christian Dewes 16.November 2001

2 Überblick Motivation Problemdefinition Beschreibung zweier Lösungen Vergleich mit anderen Ansätze Beschreibung einer Approximationslösung Zusammenfassung

3 Motivation Sequenzierung (Assemblieren) Herleitung gemeinsamer Abstammungen –DNA – Mutationen während Evolution –durch Vergleich von Sequenzen Design von Proteinen/Genen Vergleich neu entdeckter Sequenzen mit bekannten Sequenzen

4 Erweitere zu = {-} Paarweises Sequenz-Alignment Gegeben ein Alphabet (s.B. = {ACGT}) Gegeben zwei Sequenzen (z.B. ATGCC und AGGAC) Paarweise Sequenz-Alignment: zwei Sequenzen über : (1) mit gleicher Länge (2) ohne Lückensymbole erhält man gegebene Sequenzen ATGCC AGGAC A T G – C C A G G A – C A – T G C C A G – G A C

5 Definition: Indel-Operationen A – T G C C A G – G A C A T G C C A G G A C Leerzeichensymbol in der ersten Zeile: Deletion. Deletion Leerzeichensymbol in der zweiten Zeile: Insertion. Insertion Substitution Spalte mit demselben Buchstabe in beiden Reihen: match Spalte mit unterschiedlichen Buchstaben in beiden Reihen: mismatch Dazugehörige Operation: Substitution Indels:

6 Score of aligning Ähnlichkeits Scores (x,y) (x,y -} –(t+1) x (t+1) Matrix (t = | |) Beispiel: = {A,C,G,T} ACGT- A1-0,7 -0,4 C-0,71 -0,4 G-0,7 1 -0,4 T-0,7 1-0,4 - 1 ACGT- A01111 C10111 G11011 T

7 Score of aligning Sequence Alignment Problem (SeqAlPro): –Suche alignment zweier Sequenzen mit maximaler Score Was ist Score eines Alignment –Bisher nur die Score (x,y) zweier Symbolen x und y aus definiert Score eines Alignment rekursiv definieren

8 Global Alignment Initialisierung: s 0,0 = 0 Sei s i,j der Score für den Präfix V i = v 1... v i von V und den Präfix W j = w 1... w j von W Dann berechnet sich s i,j rekursiv: s i,j = max s i-1,j + (v i,-) (insert) s i,j-1 + (-,w j ) (delete) s i-1,j-1 + (v i,w j ) (substitute, match)

9 Alignment Score = {A,C,G,T} insert, delete: – (v,-) = (-,v) = -0,4 substitute: – (v,w) = -0,7 v = w match: (v,v) = 1 v ACGT- A1-0,7 -0,4 C-0,71 -0,4 G-0,7 1 -0,4 T-0,7 1-0,4 - 1 s i,j = max s i-1,j + (v i,-) (insert) s i,j-1 + (-,w j ) (delete) s i-1,j-1 + (v i,w j ) (substitute, match)

10 Alignment Score = {A,C,G,T} insert, delete: – (v,-) = (-,v) = -0,4 substitute: – (v,w) = -0,7 v = w match: (v,v) = 1 v ACGT- A1-0,7 -0,4 C-0,71 -0,4 G-0,7 1 -0,4 T-0,7 1-0,4 - 1 s i,j = max s i-1,j - 0,4 (insert) s i,j-1 - 0,4 (delete) s i-1,j-1 + (v i,w j ) (substitute, match)

11 Alignment Score = {A,C,G,T} insert, delete: – (v,-) = (-,v) = -0,4 substitute: – (v,w) = -0,7 v = w match: (v,v) = 1 v ACGT- A1-0,7 -0,4 C-0,71 -0,4 G-0,7 1 -0,4 T-0,7 1-0,4 - 1 s i,j = max s i-1,j - 0,4 (insert) s i,j-1 - 0,4 (delete) s i-1,j v i = w j (match) s i-1,j-1 - 0,7 v i = w j (substitute) s i,j ist der Wert des opt. Alignment von V i und W j

12 Datenstruktur Edit graph: –Knoten: score des alignment von V i und W j –Kanten beschreiben Operation alignment entspricht Weg im edit graph SeqAlPro entspricht longest path Problem delete matchsubstitude insert

13 w 1 w 2 w 3 w 4... v 1 v 2 v 3 v 4 v 5... s 0,0 s 1,0 s 2,0 s 3,0 s 4,0 s 5,0... Datenstruktur s 0,1 s 1,1 s 2,1 s 3,1 s 4,1 s 5,1... s 0,2 s 1,2 s 2,2 s 3,2 s 4,2 s 5,2... s 0,3 s 1,3 s 2,3 s 3,3 s 4,3 s 5,3... s 0,4 s 1,4 s 2,4 s 3,4 s 4,4 s 5,4...

14 Alignment Beispiel V = CTGCCT W = TAGAT Gesucht: optimales globales Alignment von V und W ACGT- A1-0,7 -0,4 C-0,71 -0,4 G-0,7 1 -0,4 T-0,7 1-0,4 - 1 s i,j = max s i-1,j - 0,4 (insert) s i,j-1 - 0,4 (delete) s i-1,j v i = w j (match) s i-1,j-1 - 0,7 v i = w j (substitude)

15 TAGATTAGAT C T G C C T 0 Global Alignment - Beispiel s 0,0 = 0 1. Initialisierung

16 TAGATTAGAT C T G C C T 0 Global Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w -0,4 2. Berechnung der Matrix- einträge mittels Rekursion. s 1,0 =max s 0,0 - 0,4

17 TAGATTAGAT C T G C C T 0 Global Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w -0,4-0,8 -1,2 -1, ,4 2. Berechnung der Matrix- einträge mittels Rekursion. s i,0 =max s i-1,0 - 0,4

18 TAGATTAGAT C T G C C T 0 Global Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w -0,8 -1,2 -1, ,4 -0,8 -1,2 -1, ,4 2. Berechnung der Matrix- einträge mittels Rekursion. s 1,1 =max s 0,1 - 0,4 s 1,0 - 0,4 s 0,0 - 0,7

19 TAGATTAGAT C T G C C T 0 Global Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w -0,7 -0,8 -1,2 -1, ,4 -0,8 -1,2 -1, ,4 2. Berechnung der Matrix- einträge mittels Rekursion. s 1,1 =max -0,4-0,4 0-0,7

20 TAGATTAGAT C T G C C T 0 0,6 Global Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w -0,7 -1,1 -1,5 -1,9 -2,3 -0,8 -1,2 -1, ,4 -0,8 -1,2 -1, ,4 2. Berechnung der Matrix- einträge mittels Rekursion. s 1,2 =max s 0,2 - 0,4 s 1,1 - 0,4 s 0,1 + 1

21 0,2 -0,2 -0,6 -0,9 TAGATTAGAT C T G C C T 0 -0,1 1,2 0,8 0,4 0,8 0,5 0,1 0,4 0,1 -0,2 0,2 -0,3 1,1 0,6 Global Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w -0,7 -1,1 -1,5 -1,9 -2,3 -0,8 -1,2 -1, ,4 -0,8 -1,2 -1, ,4 0,2-0,2-0,6 -0,5-0,9-1,3 2. Berechnung der Matrix- einträge mittels Rekursion. 1,1 Alle optimale globale Alignment haben Score 1,1

22 0,2 -0,2 -0,6 -0,9 TAGATTAGAT C T G C C T 0 -0,1 1,2 0,8 0,4 0,8 0,5 0,1 0,4 0,1 -0,2 0,2 -0,3 1,1 G G A 0,6 T T 1,1 T TCC A Ein optimales globales Alignment ist TTTT C - CACA GGGG A TTTT C - Global Alignment - Beispiel -0,7 -1,1 -1,5 -1,9 -2,3 -0,8 -1,2 -1, ,4 -0,8 -1,2 -1, ,4 0,2-0,2-0,6 -0,5-0,9-1,3 C 3.Backtracking: Berechne ein optimales Alignment

23 Local Alignment Sei s i,0 = s 0,j = 0 für 0 i n und 1 j m Sei s i,j der Score für den Präfix V i = v 1... v i von V und den Präfix W j = w 1... w j von W Dann berechnet sich s i,j : s i,j = max s i-1,j + (v i,-) (insert) s i,j-1 + (-,w j ) (delete) s i-1,j-1 + (v i,w j ) (substitude, match)

24 TAGATTAGAT C T G C C T Local Alignment - Beispiel s i,0 = 0 s 0,j = 0 1. Initialisierung der Ränder der Matrix

25 s i-1,j-1 + v = w TAGATTAGAT C T G C C T ,6 0,2 0,6 0,3 1,6 1,2 0,8 0,2 0 1,2 0,9 0, ,8 0,5 0,2 1 0,6 0,4 0,1 1,5 0 1 Local Alignment - Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 - 0,7 v = w 2. Berechnung der Matrix- einträge mittels Rekursion. 1,6 Alle optimale lokale Alignments haben Score 1,6

26 TAGATTAGAT C T G C C T ,6 0,2 0,6 0,3 1,6 1,2 0,8 0,2 0 1,2 0,9 0, ,8 0,5 0,2 1 0,6 0,4 0,1 1, ,6 G G A GGGG - A TTTT Local Alignment - Beispiel 3. Modifiziertes Backtracking: Berechne ein optimales lokales Alignment Ein optimales lokales Alignment ist T T

27 Speicherbedarf und Laufzeit TAGATTAGAT C T G C C T ,6 0,2 0,6 0,3 1,6 1,2 0,8 0,2 0 1,2 0,9 0, ,8 0,5 0,2 1 0,6 0,4 0,1 1,5 0 1 Platz: Anzahl der Knoten + Anzahl schwarzer Kanten = O(nm) Zeit: Anzahl der Kanten (einschl. Source -> 0-Knoten) = O(nm) (Anzahl schwarzer Kanten < Anzahl Knoten)

28 Platz-effizientes Alignment (1) Reduzierung des Platzbedarf auf das Doppelte einer Spaltengröße – dafür Verdopplung der Laufzeit Nach Berechnung der Scores in Spalte j lösche Scores in Spalte j-1 Berechnung der Scores mit O(n)- Platzbedarf

29 TAGATTAGAT C T G C C T Platz-effizientes Align. – Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w S n,m =1,1 Platz: O(n) Zeit: t 1 = O(nm)

30 Platz-effizientes Alignment (2) Berechnung der Scores s i,m/2 in Spalte m/2 Für 1 i n berechne Score s i,m/2,rev von Knoten (n,m) (source) nach Knoten (i,m/2) Der Knoten (i,m/2) gehört genau dann zum längsten Pfad, wenn s i,m/2 + s i,m/2,rev das Maximum (über i) ist. Divide-and-conquer

31 TAGATTAGAT C T G C C T Platz-effizientes Align. – Beispiel s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 + v = w s i-1,j-1 - 0,7 v = w berechne s i,m/2 = s i,3 S n,m =1,1 Platz: O(n) Zeit: t 2 = ½ area area: Zeit für Berechnung des Kompleten Feldes

32 Knoten (3,3) hat Score max i s i,3 + s i,3,rev = 1,1 = S n,m TAGATTAGAT C T G C C T Platz-effizientes Align. – Beispiel s i-1,j-1 + v = w s i,j =max s i-1,j - 0,4 s i,j-1 - 0,4 s i-1,j-1 - 0,7 v = w S n,m =1,1 berechne s i,3,rev Platz: O(n) Zeit: ½ area

33 Divide-and-conquer mm/2m/4 m

34 Divide-and-conquer mm/2m/4 m 1.Schritt: Platz: O(n) Zeit: area 2. Schritt: Platz: O(n) Zeit: ½ area 3. Schritt: Platz: O(n) Zeit: ¼ area Gesamtlaufzeit: area + ½area + ¼area +... < 2*area Platz: O(n)

35 Edit distance Sei d i,0 = i für 0 i n und d 0,j = j für 1 j m Sei d i,j die Distanz für den Präfix V i = v 1... v i von V und den Präfix W j = w 1... w j von W Dann berechnet sich d i,j : d i,j = min d i-1,j + (insert) d i,j-1 + (delete) d i-1,j-1 wenn v i = w i (match) d i,j ist der Wert für die minimale Distanz von V i und W j

36 TAGATTAGAT C T G C C T edit distance - Beispiel d i,0 = i d 0,j = j 1. Initialisierung

37 TAGATTAGAT C T G C C T edit distance - Beispiel d i-1,j-1 wenn v i = w j d i,j =min d i-1,j + 1 d i,j Berechnung der Matrix- einträge mittels Formel

38 TAGATTAGAT C T G C C T edit distance - Beispiel Backtracking Löschen A Einfügen CC A C Die Sequenz TAGAT kann in die Sequenz CTGCCT durch das von und das von umgeformt werden.

39 Wahl der Kosten Local alignment: T–G und TAG für: –insert & delete: -0,4 substitute: -0,7 match: 1 Local alignment: T–GCCT und TAGA–T für: –insert & delete: -0,2 substitute: -0,3 match: 1 Local alignment abhängig von Kosten Wie wählt und errechnet man die Kosten?

40 LCS und MSP Longest Common Subsequence (LCS) für –insert & delete: 0 substitute: match: 1 –Substitution nicht erlaubt Maximal segment pair (MSP) für –insert & delete: substitute: 0 match: 1 –Einfügen und Löschen nicht erlaubt

41 Point Accepted Mutation (PAM) 8 PAM: Überführung einer Sequenz in die andere durch acht Mutationen pro 100 Aminosäuren Mehrere Mutationen an derselben Position möglich 8 PAM : <= 8% der Positionen zweier Sequenzen sind unterschiedlich 250 PAM: erwartete Übereinstimmung von über 20% der Positionen PAM n -Matrix: erwartete Häufigkeit der Mutationen zweier Aminosäuren

42 PAM1-Matrix: M 1 [i,j] = q i,j –q i,j : Wahrscheinlichkeit AS i von AS j ersetzt –Experimentell mit Gruppe nahe verwandter Proteinen bestimmt PAMn-Matrix: M n =(M 1 ) n –größere evolutionäre Distanz durch Matrixpotenzierung Was sind nun die Kosten (i,j) (Substitutionen)? p i : Wahrscheinlichkeit, dass AS i in einem zufällig gewählten Protein auftaucht. PAM-Matrix log(M n (i,j)/p i p j ) (i,j) = Konstante

43 Wahl der Substitutions Matrix PAM 250 für entfernt verwandte Strings

44 PAM250-Matrix Unterschiedliche Gewichtungen für über- einstimmende Aminosäuren (Diagonale) Wert > 1: Aminosäuren übernehmen ähnliche Funktionen

45 PAM250-Matrix Wert = 1: Austausch- häufigkeit wie in zufälligen Zeichenketten Wert < 1: Seltener Austausch, keine funktionale Äquivalenz

46 Wahl der Substitutions Matrix PAM 250 für entfernt verwandte Strings Sei H n = i,j M n (i,j)*log 2 (M n (i,j)/p i p j ) –Ist M n (i,j) die Verteilung für das MSP Align., so gibt H n den durchschnittliche Score pro Symbolsubstitution im Align. an. Berechne log(N)/f –N: Produkt der Länge der beiden Strings –f: erwartete Länge des besten local Alignment Wähle n (PAM n) so, dass log(N)/f H n

47 Alignment - Algorithmen AlignmentPlatzZeit LCSO(nm) gewöhnlichO(nm) mit gap BestrafungenO(nm) mit divide-and-conquerO(n)O(nm) Approx. (k mismatches) n+O(pn)

48 BLAST Approximative Suche in Sequenzen schneller als FastA (lineare Zeit) Die gefundenen Alignments bestehen nur aus match und mismatch. Lücken (gaps) sind darin keine enthalten ( FastA)

49 BLAST - Algorithmus HSP: zwei gleich lange Teilsequenzen mit lokal maximaler Ähnlichkeit über ein Schwellenwert S Eine Liste von Suchwörtern erstellen Suche in Datenbank nach Treffern Erweiterung der Treffern Das MSP ist das höchste bewertete HSP. Algorithmus:

50 Bestimmung der Suchworte Bestimme alle Teilzeichenkette p i einer gegebene Länge w Bilde alle Worte der Länge w, die zu diesen p i mindestens die gegebene Ähnlichkeit t besitzen Suchworte P

51 Suche in Datenbank Bestimmung der Vorkommen aller Suchworte in einer Datenbanksequenz durch eine exakte Suche (Hashtabelle oder DFA). Datenbank- sequenz Treffern (segment pairs)

52 Erweiterung der Treffern Datenbank- sequenz Erweiterung der Treffer, solange die Ähnlichkeit nicht um mehr als einen Wert X unter das bereits erreichte Maximum eines kürzeren Alignments fällt. HSP MSP = HSP Ähnlichkeit > S HSP

53 Zusammenfassung edit distanceGlobales Alignmnent lokales Alignment Minimale Anzahl der Einfüge- und Lösch- Operationen. Ausgabe der eingefügte und gelöschte Buchstaben Vollständiger Vergleich zweier (ähnlichen und fast gleich langen) Sequenzen kleine Sequenz in einer großen Sequenz versteckt. Überlappung zweier Sequenzen an den Enden (Sequenzierung) Eine Sequenz taucht in Teilstücken in der anderen auf.

54 Zusammenfassung Bestimmung des Alignment durch –Dynamische Programmierung –Approximationsalgorithmen (BLAST) Berechnung der Kosten –PAM-Matrizen Wahl der Substitutiosmatrix


Herunterladen ppt "Paarweises Sequenz Alignment Seminar Bioinformatik Christian Dewes 16.November 2001."

Ähnliche Präsentationen


Google-Anzeigen