Dopasowanie sekwencji Sequence alignment Bioinformatyka, wykłady 3 i 4 (16, 23.X.2012) krzysztof_pawlowski@sggw.pl
terminologia alignment 33000 dopasowanie sekwencji 119 uliniowienie sekwencji 82 uliniowianie sekwencji 125 uliniawianie 6 uliniowanie 3 elajment 2
Uliniowianie Z Wikipedii W bioinformatyce, uliniawianie sekwencji to sposób porównywania sekwencji pierwszorzędowej DN, RN bądź białek w celu identyfikacji regionów podobnych, które mogą być wynikiem funkcjonalnych, strukturalnych bądź ewolucyjnych związków pomiędzy sekwencjami. Uliniowione sekwencje rezyduów nukleotydów bądź aminokwasów zwykle są przedstawiane jako wiersze macierzy Pomiędzy znaki wstawiane są przerwy w taki sposób, aby zapewnić jak największą zgodność porównywanych sekwencji....
dopasowanie (alignment) Ułożenie dwóch sekwencji biopolimerów (DN, RN lub białka) w celu zidentyfikowania regionów podobieństwa istotnego ze względów ewolucyjnych, strukturalnych lub funkcjonalnych (procedura oraz jej efekt). dwie sekwencje - pairwise alignment wiele sekwencji - multiple sequence alignment gap -- --- match mismatch
Edgar llan Poe, he Raven
Różne sekwencje można dopasować NOWORÓD NOWORD NEUBUR NEUHEL NRUWHI NNRHR
Różne sekwencje można dopasować NOWO-RÓD NOWOR-D. NEUBU-R NEUHEL
Różne sekwencje można dopasować NOWO-RÓD NOWOR-D N---RUWHI NN-RHR
Dopasowanie sekwencji - znaczenie Podobieństwo porównywanych sekwencji (similarity) może świadczyć o: podobnej funkcji sekwencji podobnej strukturze białek wspólnej historii ewolucyjnej sekwencji Podobieństwo porównywanych sekwencji (similarity) może wynikać z: homologii - pochodzeniu sekwencji (homologicznych) od wspólnego przodka; sekwencje mogą, ale nie muszą pełnić te same funkcje konwergencji - podobne motywy, które wyewoluowały w obu sekwencjach (analogicznych) niezależnie; np. chymotrypsyna i subtylizyna - różna struktura 3D, ale podobne centrum aktywne (histydyna, seryna, kwas asparaginowy) {... Problem rozróżnienia odległej homologii a analogii }
regiony zachowane = znaczenie funkcjonalne sekwencje trypsyny Mus musculus i stacus astacus S-S * Mouse IVYNEENSVPYQVSLNS-----YHFSLINEQWVVSHYK-------SRIQV rayfish IVDVLEFPYQLSFQEFLFSFHFSIYNENYIHVYDDYENPSLQI * Mouse RLEHNIEVLENEQFINKIIRHPQYDRKLNNDIMLIKLSSRVINRVSISLP rayfish VELDMSVNESEQIVSKIILHENFDYDLLDNDISLLKLSSLFNNNVPILPQ Mouse PPKLISWNSSDYPDELQLDPVLSQKESYP-KISNMFVFLE rayfish HNVIVW-SENPDVLQKVVPLVSDERDDYDEIFDSMIVPE S-S * Mouse KDSQDSPVVN----QLQVVSWDQKNKPVYKVYNYVKWIKNIN rayfish KDSQDSPLSDSYLIVSWYRPYPVYEVSYHVDWIKNV-- S-S
Sequence identity? L1_HUMN vs 1kapp Metalloprotease [Pseudomonas aeruginosa] Z-score -6.8 6% sequence identity L1_HUMN PNVPEDELIQQIKDMVQSLYLFEKRFYFKNVIL 1kapp YSFLKPNDFFNPWKYVSDIYSLKFSFSQQQQKL L1_HUMN IPEWKKDYVRPKLEYKNDVLVESPPNDEPYE 1kapp SLQSWSDVNIHFVDQDQDLFNFSSSVFF L1_HUMN QMNEKERIHLPDFIKKLEYPQRFVHEWH 1kapp LPDVPDLKQSWYLINSSYSNVNP-----QLHEIH L1_HUMN LRWVFDEYNNDE 1kapp --LSHPDYN
różnice między sekwencjami świadczą o mutacjach, które zaszły po rozdzieleniu się sekwencji od wspólnego przodka -- --- -- --- delecja insercja - + -> -> substytucje
dopasowanie - zastosowanie Porównywanie sekwencji jest bardzo pomocne w: poszukiwaniu oraz określaniu funkcji i struktury (białek) dla nowych sekwencji określaniu powiązań filogenetycznych między sekwencjami - homologii między sekwencjami oraz w analizach ewolucyjnych
dopasowanie - metody dopasowanie par sekwencji: Macierz punktów - dot matrix, dotplot Programowanie dynamiczne (DP) Metody słów (k - tuple methods) - szybkie metody stosowane przy przeszukiwaniu baz danych sekwencji z wykorzystaniem programów FS i BLS dopasowanie wielu sekwencji
Dot matrix M S I E L Q W R E V W M S I E Q W R Q V MSIELQWREVW MSIE-QWRQV--
Dot matrix porównanie sekwencji samej z sobą
Dot matrix porównanie dwóch podobnych sekwencji
Dot matrix - metody wstawiania punktów Dla identycznych zasad lub reszt aminokwasowych (symboli) W oparciu o macierz punktacji (PM, BLOSUM), gdy symbole wykazują podobieństwo większe niż pewna wartość punktacji (score) Nadawanie różnych kolorów lub odcieni szarości w zależności od stopnia podobieństwa symboli dy liczba podobnych symboli w danym oknie przekracza pewną wartość
Dot matrix - metody wstawiania punktów 5/74/74/712/20 11/20 rodzaj sekwencji sekwencje DN sekwencje białek sekwencje odległe wielkość okna 15 2-3 15 liczba identycznych symboli 10 2 5
Dot matrix - zastosowanie identyfikacja regionów podobnych lub identycznych porównywanie sekwencji o strukturze wielodomenowej rozpoznawanie dużych insercji i delecji rozpoznawanie regionów powtórzonych i duplikacji rozpoznawanie rearanżacji rozpoznawanie regionów o słabo zróżnicowanym składzie analiza sekwencji i struktury RN
Dot matrix insercja lub delecja ------
Dot matrix duplikacja tandemowa
Dot matrix duplikacja tandemowa w tej samej sekwencji
Dot matrix inwersja
Dot matrix przyłączenie regionu
Dot matrix region o licznych powtórzeniach
Dot matrix - zastosowanie czynnik krzepnięcia XII (F12) F2 E F1 E K atalytic tkankowy aktywator plazminogenu (PL) F1 E K K atalytic F1 F2 E K atalytic powtórzenia fibronektynowe domena podobna do EF domena kringle aktywność katalityczna proteaz serynowych
Dot matrix - zastosowanie czynnik krzepnięcia XII (F12) tkankowy aktywator plazminogenu (PL) F2 E F1 E K atalytic
Programowanie dynamiczne Porównuje każdą parę znaków dwóch sekwencji i tworzy dopasowanie Uwzględnia wszystkie możliwe przyrównania uwzględniając: dopasowania (matches), niedopasowania (mismatches), przerwy (gaps). Przerwy są wstawiane, aby uzyskać wzrost liczby dopasowań w innych miejscach. Przyjmuje pewien system punktacji (scoring system) Rozpatruje wszystkie możliwości Stara się uzyskać maksymalną liczbę dopasowań między identycznymi lub podobnymi znakami Znajduje optymalne dopasowanie (może istnieć więcej niż jedno takie dopasowanie) zas obliczeń proporcjonalny do iloczynu długości sekwencji
Programowanie dynamiczne Przyjęty system punktacji: dopasowanie (match): +1 niedopasowanie (mismatch): -1 przerwa (gap): -1 gap -- --- match mismatch
Programowanie dynamiczne Już utworzone dopasowanie, do którego jest dodawana kolejna para znaków, musi być optymalne. Programowanie dynamiczne uwzględnia każdą dodawaną parę znaków i z powrotem przelicza optymalne dopasowanie. sekwencja 1: sekwencja 2: Dotychczasowe dopasowanie musi być optymalne! + = +1 +1 +1 1 = +2 +1 +1 +1 1 1 = +1 - - - - 1 1 1 1 1 1 1 = 7 - - 1 1 1 +1 +1 1 = 2 - - +1 +1 +1 1 +1 1 = +2
Programowanie dynamiczne worzenie macierzy punktacji, w której każda komórka reprezentuje punktację dla najlepszego dopasowania kończącego się w danej pozycji ofanie się w macierzy, aby znaleźć optymalne dopasowanie sekwencja 1: sekwencja 2: Przyjęty system punktacji: dopasowanie (match): +1 niedopasowanie (mismatch): -1 przerwa (gap): -1
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Znaki sekwencji ułożone wzdłuż dwu-wymiarowej siatki Węzły siatki znajdują się między znakami
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy elem jest znalezienie optymalnej ścieżki stąd dotąd
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Każda ścieżka odpowiada poszczególnemu dopasowaniu Które dopasowanie jest optymalne?
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy punktacja dla ścieżki jest sumą przyrastających punktacji krawędzi. porównane z match = +1
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy punktacja dla ścieżki jest sumą przyrastających punktacji krawędzi. porównane z mismatch = -1
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy punktacja dla ścieżki jest sumą przyrastających punktacji krawędzi. porównane z przerwą gap = -1 przerwa porównana z
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Znaczenie punktu w macierzy: wszystkie znaki do tego miejsca są ze sobą porównane, czego można dokonać na wiele sposobów (ścieżek). Pozycja x oznacza: przyrównanie z x -- - -- -
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. 0-1 -1 +1
0 0-1 = -1-1 0-1= -1 0 +1= +1-1 +1
0 0-1 = -1-1 -2-1 -1= -2 0-1= -1 0 +1= +1-1 -1 = -2-1 -1= -2-1 +1-2 -2
0 0-1 = -1-1 -2-1 -1= -2 0-1= -1 0 +1= +1-1 -1= -2-1 +1 +1-1 = 0 +1-1= 0 +1 +1= +2-2 0 0 +2
0 0-1 = -1-1 -2-1 -1= -2 0-1= -1 0 +1= +1-1 -1-1 = -2-1 -1= 0-1 -1= -2 +1-2 +1-1 = 0 +1-1= 0 +1 +1= +2-2 0-2 -2 0 +2
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. 0-1 -1 +1
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0-1 -1-2 +1-2
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0-1 -1-2 +1-20 0 +2
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0-1 -2-1 +1-20 -2 0 +2
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0-1 -2-3 -1-2 -3 +1-2 0-1 0 +2 +1-1 +1 +3
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0-1 -1 +1-2 0-3 -4-5 -1-2 -2 0 +2 +1 0-3 -1-3 +1-4 -5-1 -2-3 +3 0 +2-1 +1 +2 +2 +1 +1 +3 +2
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Rozszerzanie się ścieżki i przyrastanie punktacji. Wybierana jest najlepsza ścieżka prowadząca do każdego punktu na siatce. 0-1 -1-2 -3-4 +1 0-1 -2-3 -4-5 -2 0 +2 +1 0-1 -2-3 -3-1 +1 +3 +2 +1 0-1 -4-2 0 +2 +2 +1 +2 +1-5 -3-1 +1 +3 +2 +1 +3-6 -4-2 0 +2 +4 +3 +2-7 -5-3 -1 +1 +3 +3 +2-8 -6-4 -2 0 +2 +2 +4-5 -6-7
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy ofanie się do tyłu i wybór optymalnej ścieżki i dopasowania. 0-1 -1-2 -3-4 +1 0-1 -2-3 -4-5 -2 0 +2 +1 0-1 -2-3 -3-1 +1 +3 +2 +1 0-1 -4-2 0 +2 +2 +1 +2 +1-5 -3-1 +1 +3 +2 +1 +3-6 -4-2 0 +2 +4 +3 +2-7 -5-3 -1 +1 +3 +3 +2-8 -6-4 -2 0 +2 +2 +4-5 -6-7
Programowanie dynamiczne dopasowanie jako ścieżka w macierzy Uzyskane dopasowanie -
dopasowanie globalne i lokalne dopasowanie globalne (Needleman & Wunsch, 1970) przyrównuje sekwencje na całej długości; wykorzystuje tak dużo znaków, jak to jest tylko możliwe. dopasowanie lokalne (Smith & Waterman, 1981) przyrównuje fragmenty sekwencji, które wykazują największe podobieństwo; poszukuje najlepiej pasujących regionów; znajduje regiony konserwowane. dy obliczana wartość punktacji w macierzy jest mniejsza od zera, to wartość ta jest ustawiana na zero, a dopasowanie ulega zakończeniu do tego miejsca i rozpoczynany jest nowe` dopasowanie od nowego miejsca Optimalne dopasowanie globalne LPSSKQKS-SRIWDN LN-IKSKIMRLD sekwencje o podobnej długości, blisko spokrewnione Optymal ne dopasowanie lolalne -------K-------- -------K-------- sekwencje o różnych długościach, posiadające regiony i domeny zachowane, podobne tylko w niektórych obszarach
System punktacji Prosty system punktacji: match: +1 +1 mismatch: -1 0 gap: -1-1 Zaawansowany system punktacji (nadawanie różnych wag dla niedopasowań i przerw w zależnosci od ich długości): Macierze podstawień aminokwasów (PM, BLOSUM) Macierze podstawień nukleotydów System punktacji dla przerw: gap penalties, affine gap penalty
ypowe systemy punktacji sekwencje DN Match = +1 Mismatch = -3 ap penalty = -5 ap extension penalty = -2 sekwencje białkowe Macierz Blossum62 ap open penalty = -11 ap extension = -1
Istotność dopasowania zy punktacja dopasowanie jest znacząco większa od punktacji oczekiwanej dla dopasowania losowych sekwencji o tej samej długości i składzie? worzenie metodą Monte arlo losowych(-ej) sekwencji (o tej samej długości i składzie co rzeczywiste). Przyrównanie losowych(-ej) sekwencji (powtórzenie 100-1000 razy) przy tych samych parametrach. Określenie rozkładu punktacji, średniej i odchylenie standardowego (SD). Wyliczenie Z-score: Z = (score obs score ran )/SD ran 3 > Z brak homologii 3 < Z < 6 istnieje homologia Z > 6 silna homologia Rozkład score-ów nie jest normalny i dlatego nie można przekształcić Z-score na prawdopodobieństwo.
Istotność dopasowania Dla dopasowań lokalnych rozkład maksymalnych scorów dopasowania dla sekwencji losowych przyjmuje rozkład wartości ekstremalnych (extreme values distribution)(karlin i ltschul 1990). Log p(s>=s ) S Wykres zależności logarytmu ułamka dopasowań z punktacją S równą lub większą od wartości punktacji S Określenie E-value Oczekiwana liczba przypadkowych dopasowań z punktacją większą niż obserwowana E=Kmn e λs Oczekiwana (wg rozkładu prawdopodobieństwa) liczba dopasowań z punktacją równą przynajmniej S
Bit score- znormalizowana punktacja uwzględniająca warunki jego naliczania i przyjęte systemy punktacji (parametry lambda i K) E=mn 2 S' λs ln K S'= ln2
Prawdopodobieństwo znalezienia przynajmniej 1 dopasowania o punktacji >=S p=1 e E Jeżeli spodziewamy się znaleźć przynajmniej 3 dopasowania o punktacji >= S, to prawdopodobieństwo tego że znajdziemy co najmniej jedno wynosi 0,95. Programy z grupy BLS posługują się wartością E zamiast bezpośrednim prawdopodobieństwem dla wygody przy analizie wyników
Istotność dopasowania alignment significance Łatwiej oszacować istotność statystyczną rudniej ocenić istotność biologiczną