prof. dr hab. inż. Marta Kasprzak Instytut Informatyki, Politechnika Poznańska Dopasowanie sekwencji

Podobne dokumenty
Algorytmy kombinatoryczne w bioinformatyce

Algorytmy kombinatoryczne w bioinformatyce

Wykład 5 Dopasowywanie lokalne

PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI

PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI

PRZYRÓWNANIE SEKWENCJI

Przyrównanie sekwencji. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

Algorytmy kombinatoryczne w bioinformatyce

Algorytmy kombinatoryczne w bioinformatyce

Przyrównywanie sekwencji

Politechnika Wrocławska. Dopasowywanie sekwencji Sequence alignment

Bioinformatyka. (wykład monograficzny) wykład 5. E. Banachowicz. Zakład Biofizyki Molekularnej IF UAM

Dopasowania par sekwencji DNA

Dopasowywanie sekwencji (ang. sequence alignment) Metody dopasowywania sekwencji. Homologia a podobieństwo sekwencji. Rodzaje dopasowania

Porównywanie i dopasowywanie sekwencji

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Dopasowanie sekwencji (sequence alignment)

Grafy i sieci wybrane zagadnienia wykład 3: modele służące porównywaniu sieci

prof. dr hab. inż. Marta Kasprzak Instytut Informatyki, Politechnika Poznańska Poznawanie sekwencji genomowej

Bioinformatyka Laboratorium, 30h. Michał Bereta

Dopasowanie par sekwencji

Wstęp do Biologii Obliczeniowej

Wstęp do programowania

Wybrane podstawowe rodzaje algorytmów

Schemat programowania dynamicznego (ang. dynamic programming)

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Algorytm genetyczny (genetic algorithm)-

Dopasowanie sekwencji Sequence alignment. Bioinformatyka, wykłady 3 i 4 (19, 26.X.2010)

D: Dopasowanie sekwencji. Programowanie dynamiczne

Wstęp do programowania

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Porównywanie i dopasowywanie sekwencji

Statystyczna analiza danych

Dopasowanie sekwencji Sequence alignment. Bioinformatyka, wykłady 3 i 4 (16, 23.X.2012)

Wstęp do Sztucznej Inteligencji

Modelowanie motywów łańcuchami Markowa wyższego rzędu

Genomika Porównawcza. Agnieszka Rakowska Instytut Informatyki i Matematyki Komputerowej Uniwersytet Jagiellooski

Bioinformatyka Laboratorium, 30h. Michał Bereta

PODSTAWY BIOINFORMATYKI WYKŁAD 5 ANALIZA FILOGENETYCZNA

Wstęp do programowania

Metody przeszukiwania

PODSTAWY BIOINFORMATYKI 8 DOPASOWYWANIE SEKWENCJI AMINOKWASÓW

Wyróżniamy dwa typy zadań projektowych.

Optymalizacja. Przeszukiwanie lokalne

Metody bioinformatyki (MBI) projekt, dokumentacja końcowa

Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości

Programowanie dynamiczne i algorytmy zachłanne

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Bioinformatyka Laboratorium, 30h. Michał Bereta

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

3 Przeszukiwanie baz danych

PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE

Bioinformatyka. Ocena wiarygodności dopasowania sekwencji.

Aproksymacja funkcji a regresja symboliczna

Programowanie dynamiczne

Temat: Algorytm kompresji plików metodą Huffmana

Spis treści. Przedmowa... XI. Wprowadzenie i biologiczne bazy danych. 1 Wprowadzenie Wprowadzenie do biologicznych baz danych...

Sortowanie topologiczne skierowanych grafów acyklicznych

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Programowanie dynamiczne cz. 2

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Badania operacyjne egzamin

PODSTAWY BIOINFORMATYKI 6 ANALIZA FILOGENETYCZNA

Matematyczne Podstawy Informatyki

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Generator testów Bioinformatyka wer / 0 Strona: 1

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).

46 Olimpiada Biologiczna

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

0 + 0 = 0, = 1, = 1, = 0.

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

3. Opracować program kodowania/dekodowania pliku tekstowego. Algorytm kodowania:

Programowanie celowe #1

Algorytmika dla bioinformatyki

Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania

Kompresja bezstratna. Entropia. Kod Huffmana

Twój wynik: 4 punktów na 6 możliwych do uzyskania (66,67 %).

Konstruowanie drzew filogenetycznych. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

Harmonogramowanie przedsięwzięć

Wersja pliku: v.10, 13 kwietnia 2019 zmiany: dodany punkt na temat testów do sprawozdania. Biologia, bioinformatyka:

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

Wstęp do Techniki Cyfrowej... Teoria automatów

RÓWNANIA NIELINIOWE Maciej Patan

PRACA DYPLOMOWA MAGISTERSKA

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Problem Komiwojażera - algorytmy metaheurystyczne

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Wstęp do programowania

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

Motywy i podobieństwo

Algorytmy genetyczne

dr inż. Jarosław Forenc

ECDL Podstawy programowania Sylabus - wersja 1.0

SZTUCZNA INTELIGENCJA

Zaawansowane programowanie

Transkrypt:

Bioinformatyka wykład 5: dopasowanie sekwencji prof. dr hab. inż. Marta Kasprzak Instytut Informatyk Politechnika Poznańska Dopasowanie sekwencji Badanie podobieństwa sekwencji stanowi podstawę wielu gałęzi biologii obliczeniowej: asemblacj konstrukcji drzew filogenetycznych, czy też znajdowania rodzin białek odpowiedzialnych za tę samą funkcję w różnych organizmach Ze względu na mutacje w sekwencjach lub błędy eksperymentalne popełnione na etapie ich odczytywania, dopasowanie dokładne sekwencji nie znajduje tu zastosowania. Należy założyć występowanie insercj delecji oraz zamian znaków (nukleotydów, aminokwasów) w sekwencjach, co skutkuje dopasowaniem z pewnym odsetkiem niezgodności oraz wstawionych spacji 2

Odległość pomiędzy sekwencjami można mierzyć minimalną liczbą operacji (wstawienia, usunięcia, zamiany znaku) potrzebnych do przetransformowania jednej sekwencji w drugą (odległość Levenshteina) Taki schemat obliczania odległości nie premiuje dopasowanych znaków, a więc w efekcie długości dopasowania. Nie nadaje się do znajdowania dopasowania o nieustalonej długości zęściej stosowane podejście polega na maksymalizacji funkcji oddającej podobieństwo sekwencj w którym przyznaje się punkty za zgodność znaków i odejmuje punkty za ich niezgodność lub spację 3 Istnieje dokładny algorytm wielomianowy oparty na programowaniu dynamicznym, obliczający optymalne (przy założeniu pewnej przyjętej punktacji za każdą z operacji) dopasowanie dwóch sekwencji Sposób punktacji zależy od zastosowania dopasowania: sekwencje nukleotydowe vs. aminokwasowe, sekwencje homologiczne vs. niehomologiczne, sekwencje krótkie vs. długie, a także od rodzaju eksperymentu, w którym sekwencje zostały pozyskane (spodziewane błędy) Przykładowa punktacja: + za zgodność pary znaków, za niezgodność, za każdą wprowadzoną spację 4 2

lobalne dopasowanie dwóch sekwencji [S.B. Needleman i.d. Wunsch, T T J. Molecular Biology 48 (970)] 0,0] 0 i, j ] s( max i, g j ] g i 0.. n, j 0.. m s(, g T-T -TT- 0 - -2-3 -4-5 -6-7 -8-0 - -2-3 -4-5 -6 T -2 0 0 - -2 - -2-3 -4-3 - - - 0 - -2 - -2-4 -2-2 0 - - 0 - -2-5 -3-3 - 0-0 -6-4 -4-2 0 0 0 0-7 -5-3 -3 - - 0 0 - T -8-6 -4-4 -2 0 - - -9-7 -5-3 -3-0 0 5 Lokalne dopasowanie dwóch sekwencji [T.F. Smith i M.S. Waterman, T T J. Molecular Biology 47 (98)] i, j ] s( i, g max j ] g 0 i 0.. n, j 0.. m s(, g TTT -TT 0 0 0 0 0 0 0 0 0 T 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 2 3 2 0 0 2 2 2 T 0 0 0 0 0 2 3 0 0 0 3 2 2 0 0 2 0 0 2 2 T 0 0 0 3 0 0 2 0 2 2 6 3

Semiglobalne dopasowanie dwóch sekwencji s(, g 2 T- TT T T 0 0 0 0 0 0 0 0 0 0 0,0] 0] 0, 0 0 - - - - - - i, j ] s( T 0-0 - 0 0-0 0-2 max i, g 0 - -2-0 - - 0 - j ] g 0 - - -2-0 -2 - - i.. n, j.. m 0 0 0-2 -3 0 - -3-2 0-2 0 - -3-2 - -2-4 0-0 - -3 - -2-0 - 0 0 0-2 -2-3 0 0 0 0 - - -3-3 0-0 - - - 2 0-2 7 Dokładny algorytm programowania dynamicznego ma złożoność czasową i pamięciową O(n m). W praktycznych zastosowaniach, gdy wymagane jest obliczenie dopasowania dla wszystkich par sekwencji z dużego zbioru, lub też dopasowania dwóch długich sekwencj czas obliczeń staje się problemem. Dlatego podejmuje się próby ograniczenia liczby kroków algorytmu, co skutkuje podejściem heurystycznym Jednym z rozpowszechnionych podejść jest wypełnianie tablicy programowania dynamicznego jedynie w okolicy pewnej przekątnej lub przekątnych. W wielu przypadkach wziętych z życia takie podejście daje wystarczająco satysfakcjonujące wyniki [W.J. Wilbur i D.J. Lipman, Proc. Natl. cad. Sci. US 80 (983)] 8 4

[M. rochemore i inn SIM J. omput. 32 (2003)] lgorytm wyliczający optymalne dopasowanie (globalne lub lokalne) dwóch sekwencji w czasie O(h n 2 /log n), gdzie n jest długością sekwencji a 0 < h jest entropią sekwencji Entropia mierzy stopień losowości ciągu znaków. Entropia jest mała, jeśli porządek w ciągu jest duży (sekwencja jest repetytywna) Obie dopasowywane sekwencje są na wstępie poddawane faktoryzacji LZ (Lempel-Ziv) Tablica programowania dynamicznego dzielona jest na bloki o zmiennej wielkośc w których porównywane jest słowo z pierwszej sekwencji ze słowem z drugiej sekwencj oba słowa będące rezultatem faktoryzacji 9 [M. rochemore i inn SIM J. omput. 32 (2003)] cd. T T T T 0 5

[M. rochemore i inn SIM J. omput. 32 (2003)] cd. Fragmenty sekwencji są identyfikowane i przechowywane w słowniku, i jeśli dane słowo powtórzy się w sekwencj jest kodowane przez odpowiednie wskaźniki Każde następne identyfikowane słowo jest jednym ze słów zidentyfikowanych wcześniej plus jeden znak. Przykładowo, sekwencja jest dzielona w faktoryzacji LZ na cztery słowa:,,,. Każde słowo jest kodowane jako indeks prefiksu plus ostatni znak Przyspieszenie jest osiągane przez wykorzystanie w trakcie wypełniania macierzy części obliczeń dokonanych wcześniej dla podobnego słowa. Bloki są tak konstruowane, że w każdym z nich porównywana jest tylko jedna nowa para znaków Dopasowanie sekwencji Poza opisanym wcześniej podejściem opartym na stałej punktacji za każdą zgodność, niezgodność czy spację, stosuje się w dopasowaniu sekwencji nukleotydowych i aminokwasowych tzw. afiniczne kary za spacje oraz macierze substytucji Model kar afinicznych polega na obarczeniu wysoką karą pierwszej spacji z rzędu i dużo niższymi karami kolejnych spacji. Uzasadnieniem biologicznym jest większe prawdopodobieństwo wystąpienia na skutek ewoluowania sekwencji takiej blokowej różnicy, niż wielu pojedynczych insercji. Podobnie jak w modelu kar stałych, wysokość kary ustalana jest w zależności od rodzaju problemu i zamierzonego efektu 2 6

Dopasowanie sekwencji Dopasowanie literalne częściej stosowane jest w przypadku sekwencji nukleotydowych. W sekwencjach aminokwasowych trudniej o idealne dopasowanie pary znaków z uwagi na większy alfabet oraz podobieństwo różnych aminokwasów (substytucja w trakcie ewolucji). Zastosowanie punktacji z macierzy substytucji przybliża rezultat do stanu naturalnego Macierze substytucji dla aminokwasów zawierają wartości liczbowe odzwierciedlające prawdopodobieństwo zamiany w trakcie ewolucji jednego aminokwasu w drugi. Najpopularniejsze macierze to serie BLOSUM i PM. Przykładem macierzy substytucji dla nukleotydów jest EDNFULL/NU4.4 [ftp.ncbi.nih.gov/blast/matrices/] 3 BLOSUM62 4 7

Problem dopasowania wielu sekwencji jest silnie NP-trudny i może zostać rozwiązany metodą programowania dynamicznego w sposób dokładny w czasie O(2 k n k ), gdzie k jest liczbą sekwencji a n ich długością Naturalną heurystyką jest obliczenie optymalnych dopasowań wszystkich par sekwencji i połączenie ich w całość, co nie jest łatwe w przypadku znacznych rozbieżności w dopasowaniach Wynikowe dopasowanie przełożyć można na postać sekwencji konsensusowej reprezentującej w jak najbardziej zbliżony sposób cały zbiór. Zwykle stosuje się w tym celu regułę względnej większośc rzadziej regułę bezwzględnej większości 5 Progresywna strategia dopasowania wielu sekwencji [M.S. Waterman i M.D. Perlwitz, Bull. Math. Biol. 46, 984] jest konstruowane począwszy od dopasowania najbliższej sobie pary sekwencj a następnie przez dodawanie kolejnych bliskich sekwencji. Strategia wynika z założenia, że najbliższe sobie sekwencje prawdopodobnie pochodzą z bliskich ewolucyjnie organizmów i że ich dopasowanie odpowiada najbardziej wiarygodnej informacji. Informacja ta jest następnie propagowana na kolejne etapy tworzenia dopasowania. Łączyć można zarówno sekwencję z podzbiorem dopasowanych już sekwencj jak i dwa podzbiory niezależnie dopasowanych sekwencji. 6 8

Strategia iteracyjnego poprawiania dopasowania [D. Sankoff i inn J. Mol. Evol. 7, 976] Początkowe dopasowanie, utworzone heurystyką, poprawiane jest w serii kroków optymalizacji lokalnej. Strategia gwiazdy [D. usfield, Bull. Math. Biol. 55, 993] Obliczane jest dopasowanie wszystkich par sekwencj a następnie wskazywana jest sekwencja najbliższa wszystkim innym ze zbioru, na której konstruowane jest dopasowanie wynikowe. Metoda nie sprawdza się na zbiorze mocno różniących się sekwencji. 7 [Y. Zhang i M.S. Waterman, J. omput. Biol. 0 (2003)] Metoda Eulerlign zamodelowanie problemu za pomocą problemu poszukiwania ścieżki w grafie. Wykorzystuje graf Pevznera zastosowany wcześniej do rozwiązania problemu sekwencjonowania DN Nowość tego podejścia polega na pominięciu standardowo używanego schematu tworzenia sekwencji konsensusowej na podstawie dopasowania sekwencji. Tutaj generowana jest sekwencja konsensusowa przed poznaniem samego dopasowania. o więcej, pomija się w ogóle etap obliczania dopasowania wszystkich par sekwencji 8 9

[Y. Zhang i M.S. Waterman, J. omput. Biol. 0 (2003)] cd. lgorytm Eulerlign. Budowa grafu skierowanego z k-merami pochodzącymi z sekwencji umieszczonymi w łukach grafu 2. Transformacja grafu do postaci acyklicznej 3. Uzyskanie sekwencji konsensusowej z grafu jako tej, która odpowiada ścieżce o największej wadze 4. Dopasowanie wszystkich sekwencji wejściowych do uzyskanego rozwiązania 9 [Y. Zhang i M.S. Waterman, J. omput. Biol. 0 (2003)] cd. sekwencje: T, TT, TT k-mery (k=3):, T, T, T,, T, T,, T 2 2 T 2 T T Waga w łukach jest liczbą sekwencji zawierających dany k-mer, nie licznością k-merów w sekwencjach (patrz T). 2 Rozwiązaniem jest acykliczna ścieżka w grafie o maksymalnej sumarycznej wadze. Transformacja grafu do postaci acyklicznej ma uprościć poszukiwanie ścieżki (co będzie możliwe w liniowym czasie) przy zachowaniu maksimum informacji o podobieństwie sekwencji wejściowych. Informacja ta jest reprezentowana przez łuki o dużej wadze. Transformacja realizowana jest procedurą heurystyczną. 20 0

[Y. Zhang i M.S. Waterman, J. omput. Biol. 0 (2003)] cd. sekwencje: T, TT, TT k-mery (k=3):, T, T, T,, T, T,, T 2 T 2 T T 2 Dwa optymalne rozwiązania: T, TT T- T- -TT -T-T T-T T- -TT -T-T 2