W kierunku równoległej implementacji pakietu T-Coffee

Wielkość: px
Rozpocząć pokaz od strony:

Download "W kierunku równoległej implementacji pakietu T-Coffee"

Transkrypt

1 W kierunku równoległej implementacji pakietu T-Coffee Adrian Rospondek 1 1 Wydział Inżynierii Mechanicznej i Informatyki Kierunek Informatyka, Rok V a.rospondek@poczta.fm Streszczenie Artykuł ten prezentuje pakiet używany do porównywania sekwencji biologicznych oraz jego analizę pod kątem równoległej implementacji. 1 Wstęp T-Coffee to pakiet, który robi dopasowanie wielu sekwencji. Może on działać na dwóch rodzajach sekwencji biologicznych: DNA i białkach. Pakiet ten jest rozwijany w Centre National de la Recherche Scientifique we Francji pod kierownictwem Cedrica Notredame a jako oprogramowanie darmowe o otwartym kodzie źródłowym. Najnowsza dostępna wersja ma numer 3.93 [1]. Dopasowanie wielu sekwencji genetycznych jest techniką często używaną w procesie ich analizy, gdyż pomaga znaleźć odpowiedź na pytanie, czy dane sekwencje są ze sobą spokrewnione. Z kolei stwierdzenie pokrewieństwa stanowi wstęp do wielu innych, bardziej złożonych działań, takich jak np. rekonstrukcja filogenetyczna, identyfikacja wspólnych motywów, modelowanie struktur drugorzędowych czy przewidywanie pełnionych funkcji. Niestety zbudowanie dokładnego dopasowania może być trudne, przede wszystkim z dwóch powodów. Po pierwsze, problemem jest dobranie modelu oceny jakości, który byłby satysfakcjonujący z biologicznego punktu widzenia. Po drugie, tworzenie najlepszego (lub optymalnego), według przyjętego kryterium, dopasowania przeważnie charakteryzuje bardzo duża złożoność obliczeniowa i dokładne rozwiązanie można uzyskać jedynie dla niewielkiej liczby spokrewnionych sekwencji. Obecnie analizuje się zbiory zawierające często setki długich sekwencji, co znacznie wydłuża czas obliczeń. Można go jednak zredukować stosując przetwarzanie równoległe. Problem dopasowania wielu sekwencji Sekwencje można rozpatrywać jako słowa nad pewnym alfabetem Σ. W przypadku sekwencji nukleinowych zawiera on cztery litery i są to: {A,C,T,G} dla DNA oraz {A,C,U, G} dla RNA. Natomiast do zapisu sekwencji białkowych używa się alfabetu dwudziestoliterowego, gdyż jest dwadzieścia aminokwasów tworzących białka. 1

2 Spokrewnione sekwencje ewoluując od wspólnego przodka ulegały procesowi mutacji i selekcji. Przejawami mutacji są substytucje zmieniające jedną literę w inną a także insercje i delecje, które odpowiednio wstawiają lub usuwają litery [1]. Rysunek 1 przedstawia przykładowe dopasowanie trzech sekwencji. Jak można zauważyć, dopasowanie polega na umieszczeniu wszystkich sekwencji jedna pod drugą i wprowadzeniu przerw (znak - ) w celu wyrównania ich długości. Reszty 1 znajdujące się w tej samej kolumnie są homologiczne w sensie strukturalnym i ewolucyjnym. W idealnym przypadku wszystkie one zajmują podobną pozycję w strukturze trójwymiarowej oraz pochodzą od wspólnego przodka. Nie zawsze jednak każda kolumna dopasowania zawiera wyłącznie homologiczne reszty. Jeżeli w jakiejś sekwencji brakuje odpowiedniej litery, na jej miejsce wstawiana jest przerwa. Przerwy odnoszą się do insercji i delecji. AXO1 RAT NCA HUMAN NRG DROME ----DINVGDNLTLQCHASHDPTMDLTFTWTLDDFPIDF IVNATANLGQSVTLVCDAEGF--PEPTMSWTKDGEQ--I PQNYEVAAGQSATFRCNEAHDDTLEIEIDWWKDGQS--I...G..+.+.C W...+ Rys. 1: Przykładowe dopasowanie fragmentów trzech sekwencji z rodziny immunoglobulin. W ostatniej linijce zaznaczono reszty identyczne (litera) lub konserwatywne (+). Generalnie rozróżnia się dwa typy dopasowań: globalne - obejmujące pełny zakres sekwencji branych do analizy i lokalne, w których bierze się pod uwagę tylko wyraźnie homologiczne fragmenty, jednocześnie ignorując pozostałe części sekwencji []. Oczywiście dla danego zbioru sekwencji można wygenerować wiele różnych dopasowań, spośród których należy wybrać jedno najlepsze. W tym celu do każdego z nich przypisuje się wynik. Dopasowaniem optymalnym jest to, dla którego ten wynik jest najwyższy..1 Model oceny W przypadku dwóch sekwencji wynik całego dopasowania jest sumą wartości przypisywanych każdej parze dopasowanych liter i każdej przerwie. Reszty identyczne oraz substytucje konserwatywne (zastępujące daną resztę inną ale o podobnych właściwościach fizykochemicznych) są bardziej prawdopodobne i dlatego otrzymują wartości dodatnie. Z kolei zmiany niekonserwatywne (w tym przerwy) występują rzadziej, więc przypisuje się im wartości ujemne. Taką funkcję oceny można wyrazić następującym wzorem: SCORE(s 1,s ) = l i=1 score(s 1 (i),s (i)) + γ(g j ) (1) j gdzie s 1 i s to dopasowane sekwencje o długości l, s x (i) to i ta litera sekwencji s x a g j to długość j te j przerwy. Żeby obliczyć wynik dopasowania musimy zdefiniować funkcje score i γ określające zakładany przez nas model ewolucyjny. Pierwsza z nich opisuje prawdopodobieństwo wystąpienia pary (a, b) wśród wszystkich możliwych par. Zazwyczaj wartości tej funkcji dla każdej kombinacji układa się w symetryczną macierz, zwaną macierza substytucji. Przykład stanowią zaprojektowane dla białek zbiory macierzy BLOSUM i PAM. Ponieważ 1 Terminem reszta określa się pojedynczą literę.

3 powstały one w wyniku statystycznej analizy dużej liczby dopasowań, są zbyt ogólne, co czasami utrudnia ich używanie. Funkcja γ zwraca wartość kary dla danej przerwy o długości g. Może ona mieć postać liniową: γ(g) = g q lub aficzną: γ(g) = q (g 1) w, gdzie q to kara za otwarcie przerwy a w to kara za jej przedłużanie. Zazwyczaj w jest mniejsze od q. Postać aficzną stosuje się, gdy przerwy o długości jednego i kilku znaków są prawie tak samo prawdopodobne. Model oceny dopasowania wielu sekwencji jest bardziej skomplikowany. Teoretycznie powinien on uwzględniać całą wiedzę na temat struktur drugorzędowych oraz ewolucyjnej historii analizowanych sekwencji. Niestety w większości przypadków trzeba zastosować pewne uproszczenia, wynikające z braku tych informacji. Zakładając, że poszczególne kolumny dopasowania są niezależne, jego całkowity wynik można zapisać tak: SCORE(A) = l i=1 score(a i ) + Γ () gdzie A i to i ta kolumna dopasowania A a Γ to pewna ogólna funkcja wartościująca przerwy. Kolumny ocenia się za pomocą tzw. sumy par, zdefiniowanej jako suma wartości substytucji dla każdej pary reszt [3].. Poszukiwanie dopasowania Rozpatrując problem dopasowania sekwencji, trzeba podkreślić konieczność dysponowania algorytmem na znalezienie optymalnego, według przyjętego przez nas kryterium oceny, rozwiązania. Dopasowanie dwóch sekwencji tworzy się za pomocą techniki zwanej programowaniem dynamicznym. Główną ideą tego podejścia jest budowanie optymalnego dopasowania na podstawie optymalnych dopasowań poprzednich subsekwencji [4]. Jako modelu oceny używa się macierzy substytucji i kar za przerwy. Oczywiście technikę tą można uogólnić, jednak dla większej liczby sekwencji okazuje się być bardzo niepraktyczna ze względu na dużą złożoność. Wprawdzie istnieje zmodyfikowany algorytm redukujący ilość niezbędnych obliczeń [5], ale potrafi on dopasować nie więcej niż dziesięć blisko spokrewnionych sekwencji [6]. Najpowszechniej używanym i zarazem najprostszym sposobem poradzenia sobie ze zbiorem sekwencji jest heurystyczna metoda, oparta na strategii progresywnego dopasowania [7]. Polega ona na budowaniu końcowego rezultatu krok po kroku, według pewnego ustalonego porządku. Na początku, przy pomocy standardowego podejścia, dopasowuje się dwie najmniej różniące się sekwencje. Następnie do tego dopasowania stopniowo dokładane są pozostałe. Kolejność w jakiej się to odbywa, zwykle opisuje tzw. drzewo przewodnie (ang. guide tree) będące prostym przybliżeniem rzeczywistego drzewa filogenetycznego. Metoda ta ma jednak wadę wynikającą z faktu, że pośrednie dopasowania nie mogą być modyfikowane, nawet jeśli kolidują z dodanymi później sekwencjami. Popełnione we wczesnym etapie błędy odbijają się na jakości końcowego dopasowania. Drzewo filogenetyczne reprezentuje relację pomiędzy sekwencjami wynikającą z ich ewolucyjnej historii. 3

4 3 Algorytm T-Coffee Ogólnie metoda T-Coffee opiera się na progresywnej strategii budowania dopasowania wielu sekwencji, jednak unika najpoważniejszej wady tego podejścia (opisanej w rozdziale.). Najpierw robi dopasowanie dla każdej możliwej pary sekwencji ze zbioru wejściowego i uzyskane tą drogą informacje gromadzi w bibliotece. Następnie biblioteka ta jest wykorzystywana podczas tworzenia ostatecznego dopasowania. W ten sposób wyniki pośrednie powstają w oparciu o wiedzę na temat wszystkich sekwencji a nie tylko tych, które są analizowane na danym etapie. Skutkiem tego jest znacznie mniejsze prawdopodobieństwo wystąpienia błędu. Inną charakterystyczną cechą T-Coffee jest zdolność łączenia informacji pochodzących z różnych źródeł. Elastyczność tą uzyskano dzięki bibliotece, stanowiącej niejako inerfejs pomiędzy algorytmem progresywnego dopasowania a dowolną metodą porównywania sekwencji. Najczęściej bibliotekę tworzy się na podstawie globalnych i lokalnych podwójnych dopasowań. W specjalnym trybie, używanym wyłącznie do analizy białek, dodatkowo uwzględnia się dane o ich trójwymiarowej strukturze. Tryb ten nazwano 3D- Coffee i to właśnie na nim skupimy się w dalszej części artykułu. Jak wynika z rysunku, metoda T-Coffee składa się z dwóch faz, którymi są: tworzenie biblioteki i budowanie dopasowania. TWORZENIE BIBLIOTEK PREKOMPILOWANYCH TWORZENIE BIBLIOTEKI PODSTAWOWEJ 1 FAZA ROZSZERZANIE BIBLIOTEKI FAZA PROGRESYWNE DOPASOWANIE SEKWENCJI BUDOWANIE DRZEWA PRZEWODNIEGO Rys. : Ogólny schemat metody T-Coffee. 3.1 Tworzenie biblioteki Biblioteki prekompilowane Domyślnie T-Coffee tworzy dwie prekompilowane biblioteki. Obie zawierają informacje o każdej z n n par sekwencji, gdzie n jest ich liczbą. Pierwsza to zbiór dopasowań globalnych. Druga przechowuje dziesięć najlepiej ocenionych, nie nakładających się na siebie, lokalnych dopasowań poszczególnych par sekwencji. W trybie 3D-Coffee procedura jest trochę inna. Oprócz biblioteki dopasowań globalnych, tworzonych przy użyciu programowania dynamicznego, są jeszcze dwie, zawierające dopasowania par sekwencji białkowych bazujące na danych o ich strukturze przestrzennej. W pierwszej z nich są dopasowania budowane programem SAP, który generuje 4

5 wyniki na podstawie superpozycji dwóch struktur [9]. Druga to zbiór dopasowań utworzonych przez pakiet Fugue, wykorzystujący strukturę 3D do obliczenia zależnej od pozycji macierzy substytucji [10]. SAP używany jest, gdy dane strukturalne dostępne są dla obu sekwencji, Fugue gdy tylko dla jednej z nich. Każde dopasowanie reprezentowane jest w bibliotece jako lista sparowanych reszt. Do poszczególnych par przypisane są wagi równe procentowej identyczności sekwencji, z których dopasowania pochodzą. Biblioteka podstawowa Kolejnym krokiem jest połączenie wszystkich prekompilowanych bibliotekach w jedną. Osiąga się to poprzez proste dodawanie. Jeżeli któraś para reszt występuje więcej niż raz, w wyjściowej bibliotece ma ona wagę równą sumie wag, jakie otrzymała do tej pory. Rozszerzanie biblioteki Biblioteka podstawowa może być bezpośrednio użyta podczas budowy dopasowania. Jednak aby zwiększyć wartość informacji w niej zawartej, poddaje się ją procesowi rozszerzania. Polega on na sprawdzaniu trójek reszt. Każdą dopasowaną parę liter sprawdza się pod kątem zgodności z pozostałymi literami ze wszystkich sekwencji. Mając parę reszt (r 1,r ) i wagę w 1 przypisaną im w bibliotece podstawowej oraz resztę r 3 bada się, czy występują dopasowania r 1 z r 3 i r 3 z r. Jeżeli taka sytuacja ma miejsce, to wartość w 1 jest modyfikowana tak, że w 1 = w 1 + min(w 13,w 3 ). Całkowite rozszerzenie wymaga sprawdzenia wszystkich możliwych trójek (r i,r j,r k ). Po zakończeniu tej operacji, każda waga odzwierciedla podobieństwo sekwencji, z których pochodzi dana para liter i jej zgodność z pozostałymi parami w bibliotece podstawowej. 3. Budowanie dopasowania Jak już wspomniano, T-Coffee generuje ostateczne dopasowanie używając strategii progresywnej. Najpierw jednak oblicza macierz odległości, zawierającą przybliżone wartości ewolucyjnych dystansów między sekwencjami. Następnie wykorzystuje ją do utworzenia drzewa przewodniego. Zgodnie z wyznaczonym przez nie porządkiem, sekwencje są dopasowywane za pomocą zwykłego programowania dynamicznego, z tą różnicą, że zamiast macierzy substytucji i kar za przerwy używa się wag z biblioteki rozszerzonej. W ten sposób uzyskano zależny od pozycji reszt w sekwencjach model oceny. 4 Analiza T-Coffee Teraz przyjrzymy się pakietowi T-Coffee pod kątem jego równoległej implementacji. Analizując algorytm, a przede wszystkim kod źródłowy programu, można w nim wyodrębnić kilka podzadań, które przedstawiono na rysunku 3. Zanim T-Coffee zacznie generować biblioteki prekompilowane, sprawdza dostępność danych strukturalnych dla każdej sekwencji ze zbioru wejściowego. W tym celu przeszukuje bazę RCSB [13] i pobiera z niej potrzebne informacje w postaci plików PDB. 5

6 T0 T1 T T3 T4 T5 T6 T7 T8 T9 T10 Rys. 3: Dekompozycja pakietu T-Coffee na podzadania z uwzględnieniem ich zależności. T 0 inicjalizacja, T 1 wczytywanie danych, T pobieranie plików PDB, T 3 preprocesing, T 4 biblioteka globalna, T 5 biblioteka SAP, T 6 biblioteka Fugue, T 7 biblioteka rozszerzona, T 8 macierz dystansów, T 9 drzewo, T 10 ostateczne dopasowanie. W zależności od liczby sekwencji i przepustowości łącza może to potrwać od kilku do kilkudziesięciu sekund. Wyprodukowanie biblioteki globalnej i biblioteki SAP wymaga obliczenia odpowiednio n 1 n 1 i n n podwójnych dopasowań, gdzie n 1 to licza wszystkich sekwencji a n to liczba sekwencji z dostępną strukturą 3D. W większości przypadków n będzie mniejsze od n 1. W celu utworzenia trzeciej biblioteki T-Coffee korzysta z oficjalnego serwera Fugue [14], do którego wysyła pary sekwencja struktura aby otrzymać gotowe dopasowanie. Proces ten jest czasochłonny, gdyż cała biblioteka wymaga (n 1 n ) n żądań a każde z nich może zająć od kilkudziesięciu sekund do kilku minut. Obliczając macierz dystansów trzeba dopasować n 1 n 1 par sekwencji. Zadania T 4, T 5 i T 8 składają się z niezależnych podwójnych dopasowań co bardzo ułatwia ich zrównoleglenie. Jedyna kwestia jaką trzeba wziąść pod uwagę to staranne rozdzielenie obliczeń. Używana do tworzenia drzewa przewodniego metoda przyłaczania sasiadów [8] jest szybka, dlatego zadanie T 9 zajmuje niewielki procent całkowitego czasu wykonania. Tak więc przyspieszenie uzyskane z jego paralelizacji byłoby nieznaczne. 6

7 Chociaż progresywne dopasowanie można zaimplementować w sposób równoległy, trudno jest osiągnąć satysfakcjonujące zrównoważenie obciążenia. Dopasowania odpowiadające węzłom z tego samego poziomu nie zależą od siebie, więc mogą być przydzielone do oddzielnych procesorów. Jednak im bliżej korzenia tym mniej węzłów, co sprawia, że stosunek liczby sekwencji do liczby jednostek przetwarzających maleje. 5 Podsumowanie Wymienione powyżej cechy pakietu T-Coffee ułatwiają jego wydajną paralelizację. Planuje się, że wersja równoległa będzie przeznaczona na architekturę z pamięcią rozproszoną bazującą na klastrze komputerów klasy PC i zaprogramowana przy użyciu standardu MPI [11] w oparciu o model master worker. Master zajmie się wczytaniem i wstępnym przetworzeniem danych (sekwencji i struktur) oraz rozesłaniem ich do wszystkich workerów. Następnie zbierze wygenerowane przez nich biblioteki i złączy w jedną, którą podda procesowi rozszerzania. Master będzie również odpowiedzialny za wygenerowanie drzewa przewodniego i utworzenie dopasowań związanych z węzłami na górnych poziomach tego drzewa. Dopasowania z dolnych poziomów zostaną przydzielone workerom. Będą one także uczestniczyć w obliczaniu macierzy dystansów. Literatura [1] M. Kimura. The Neutral Theory of Molecular Evolution. Cambridge Univ. Press, [] M. S. Waterman. Introduction to Computational Biology. Chapman & Hall, [3] S. F. Altschul, D. J. Lipman. Trees, stars and multiple biological sequence alignment. SIAM J. Appl. Math., 49: , [4] W. Miller, W. R. Pearson. Dynamic programming algorithms for biological sequence comparison. Methods Enzymol., 10: , 199. [5] H. Carrillo, D. J. Lipman. The multiple sequence alignment problem in biology. SIAM J. Appl. Math., 48: , [6] S. F. Altschul, J. D. Kececioglu, D. J. Lipman. A tool for multiple sequence alignment. In Proc. Natl. Acad. Sci. USA, 86: , [7] B. Hesper, P. Hogeweg. The alignment of sets of sequences and the construction of phylogenetic trees: an integrated method. J. Mol. Biol., 0(): , [8] M. Nei, N. Saitou. The neighbor-joining method: a new method for reconstructing phylogenetic trees. Mol. Biol. Evol., 4(4): , [9] C. A. Orengo, W. R. Taylor. Protein structure alignment. J. Mol. Biol., 08: 1,

8 [10] T. L. Blundell, K. Mizuguchi, J. Shi. FUGUE: sequence structure homology recognition using environment-specific substitution tables and structure-dependent gap penalties. J. Mol. Biol., 310: 43 57, 001. [11] W. Gropp, S. Huss-Lederman, A. Lumsdaine, E. Lusk, B. Nitzberg, W. Saphir, M. Snir. MPI: The Complete Reference, volume. The MIT Press, [1] Strona domowa pakietu T-Coffee. cnotred/, 006. [13] RCSB [14] Serwer Fugue

PRZYRÓWNANIE SEKWENCJI

PRZYRÓWNANIE SEKWENCJI http://theta.edu.pl/ Podstawy Bioinformatyki III PRZYRÓWNANIE SEKWENCJI 1 Sequence alignment - przyrównanie sekwencji Poszukiwanie ciągów znaków (zasad nukleotydowych lub reszt aminokwasowych), które posiadają

Bardziej szczegółowo

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

Przyrównanie sekwencji. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Przyrównanie sekwencji Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Sequence alignment - przyrównanie sekwencji Poszukiwanie ciągów znaków (zasad nukleotydowych lub reszt aminokwasowych),

Bardziej szczegółowo

PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI

PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI DOPASOWANIE SEKWENCJI 1. Dopasowanie sekwencji - definicja 2. Wizualizacja dopasowania sekwencji 3. Miary podobieństwa sekwencji 4. Przykłady programów

Bardziej szczegółowo

Bioinformatyka 2 (BT172) Progresywne metody wyznaczania MSA: T-coffee

Bioinformatyka 2 (BT172) Progresywne metody wyznaczania MSA: T-coffee Bioinformatyka 2 (BT172) Wykład 5 Progresywne metody wyznaczania MSA: T-coffee Krzysztof Murzyn 14.XI.2005 PLAN WYKŁADU Ostatnio : definicje, zastosowania MSA, złożoność obliczeniowa algorytmu wyznaczania

Bardziej szczegółowo

PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI

PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI PODSTAWY BIOINFORMATYKI WYKŁAD 4 DOPASOWANIE SEKWENCJI DOPASOWANIE SEKWENCJI 1. Dopasowanie sekwencji - definicja 2. Wizualizacja dopasowania sekwencji 3. Miary podobieństwa sekwencji 4. Przykłady programów

Bardziej szczegółowo

Bioinformatyka Laboratorium, 30h. Michał Bereta

Bioinformatyka Laboratorium, 30h. Michał Bereta Bioinformatyka Laboratorium, 30h Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl 1 Często dopasować chcemy nie dwie sekwencje ale kilkanaście lub więcej 2 Istnieją dokładne algorytmy, lecz są one niewydajne

Bardziej szczegółowo

Dopasowanie sekwencji (sequence alignment)

Dopasowanie sekwencji (sequence alignment) Co to jest alignment? Dopasowanie sekwencji (sequence alignment) Alignment jest sposobem dopasowania struktur pierwszorzędowych DNA, RNA lub białek do zidentyfikowanych regionów w celu określenia podobieństwa;

Bardziej szczegółowo

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

Dopasowywanie sekwencji (ang. sequence alignment) Metody dopasowywania sekwencji. Homologia a podobieństwo sekwencji. Rodzaje dopasowania Wprowadzenie do Informatyki Biomedycznej Wykład 2: Metody dopasowywania sekwencji Wydział Informatyki PB Dopasowywanie sekwencji (ang. sequence alignment) Dopasowywanie (przyrównywanie) sekwencji polega

Bardziej szczegółowo

MultiSETTER: web server for multiple RNA structure comparison. Sandra Sobierajska Uniwersytet Jagielloński

MultiSETTER: web server for multiple RNA structure comparison. Sandra Sobierajska Uniwersytet Jagielloński MultiSETTER: web server for multiple RNA structure comparison Sandra Sobierajska Uniwersytet Jagielloński Wprowadzenie Budowa RNA: - struktura pierwszorzędowa sekwencja nukleotydów w łańcuchu: A, U, G,

Bardziej szczegółowo

Aproksymacja funkcji a regresja symboliczna

Aproksymacja funkcji a regresja symboliczna Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą

Bardziej szczegółowo

Bioinformatyka. Ocena wiarygodności dopasowania sekwencji.

Bioinformatyka. Ocena wiarygodności dopasowania sekwencji. Bioinformatyka Ocena wiarygodności dopasowania sekwencji www.michalbereta.pl Załóżmy, że mamy dwie sekwencje, które chcemy dopasować i dodatkowo ocenić wiarygodność tego dopasowania. Interesujące nas pytanie

Bardziej szczegółowo

Wykład 5 Dopasowywanie lokalne

Wykład 5 Dopasowywanie lokalne Wykład 5 Dopasowywanie lokalne Dopasowanie par (sekwencji) Dopasowanie globalne C A T W A L K C A T W A L K C O W A R D C X X O X W X A X R X D X Globalne dopasowanie Schemat punktowania (uproszczony)

Bardziej szczegółowo

Dopasowania par sekwencji DNA

Dopasowania par sekwencji DNA Dopasowania par sekwencji DNA Tworzenie uliniowień (dopasowań, tzw. alignmentów ) par sekwencji PSA Pairwise Sequence Alignment Dopasowania globalne i lokalne ACTACTAGATTACTTACGGATCAGGTACTTTAGAGGCTTGCAACCA

Bardziej szczegółowo

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

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych. Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą

Bardziej szczegółowo

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

prof. dr hab. inż. Marta Kasprzak Instytut Informatyki, Politechnika Poznańska Dopasowanie sekwencji 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

Bardziej szczegółowo

Programowanie celowe #1

Programowanie celowe #1 Programowanie celowe #1 Problem programowania celowego (PC) jest przykładem problemu programowania matematycznego nieliniowego, który można skutecznie zlinearyzować, tzn. zapisać (i rozwiązać) jako problem

Bardziej szczegółowo

Przyrównywanie sekwencji

Przyrównywanie sekwencji Instytut Informatyki i Matematyki Komputerowej UJ, opracowanie: mgr Ewa Matczyńska, dr Jacek Śmietański Przyrównywanie sekwencji 1. Porównywanie sekwencji wprowadzenie Sekwencje porównujemy po to, aby

Bardziej szczegółowo

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

Bioinformatyka. (wykład monograficzny) wykład 5. E. Banachowicz. Zakład Biofizyki Molekularnej IF UAM Bioinformatyka (wykład monograficzny) wykład 5. E. Banachowicz Zakład Biofizyki Molekularnej IF UM http://www.amu.edu.pl/~ewas lgorytmy macierze punktowe (DotPlot) programowanie dynamiczne metody heurystyczne

Bardziej szczegółowo

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

Genomika Porównawcza. Agnieszka Rakowska Instytut Informatyki i Matematyki Komputerowej Uniwersytet Jagiellooski Genomika Porównawcza Agnieszka Rakowska Instytut Informatyki i Matematyki Komputerowej Uniwersytet Jagiellooski 1 Plan prezentacji 1. Rodzaje i budowa drzew filogenetycznych 2. Metody ukorzeniania drzewa

Bardziej szczegółowo

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

Spis treści. Przedmowa... XI. Wprowadzenie i biologiczne bazy danych. 1 Wprowadzenie... 3. 2 Wprowadzenie do biologicznych baz danych... Przedmowa... XI Część pierwsza Wprowadzenie i biologiczne bazy danych 1 Wprowadzenie... 3 Czym jest bioinformatyka?... 5 Cele... 5 Zakres zainteresowań... 6 Zastosowania... 7 Ograniczenia... 8 Przyszłe

Bardziej szczegółowo

Politechnika Wrocławska. Dopasowywanie sekwencji Sequence alignment

Politechnika Wrocławska. Dopasowywanie sekwencji Sequence alignment Dopasowywanie sekwencji Sequence alignment Drzewo filogenetyczne Kserokopiarka zadanie: skopiować 300 stron. Co może pójść źle? 2x ta sama strona Opuszczona strona Nadmiarowa pusta strona Strona do góry

Bardziej szczegółowo

Podstawy Informatyki Systemy sterowane przepływem argumentów

Podstawy Informatyki Systemy sterowane przepływem argumentów Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Komputer i jego architektura Taksonomia Flynna 2 Komputer i jego architektura Taksonomia Flynna Komputer Komputer

Bardziej szczegółowo

Statystyczna analiza danych

Statystyczna analiza danych Statystyczna analiza danych ukryte modele Markowa, zastosowania Anna Gambin Instytut Informatyki Uniwersytet Warszawski plan na dziś Ukryte modele Markowa w praktyce modelowania rodzin białek multiuliniowienia

Bardziej szczegółowo

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

Konstruowanie drzew filogenetycznych. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Konstruowanie drzew filogenetycznych Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Drzewa filogenetyczne ukorzenione i nieukorzenione binarność konstrukcji topologia (sposób rozgałęziana

Bardziej szczegółowo

Porównywanie i dopasowywanie sekwencji

Porównywanie i dopasowywanie sekwencji Porównywanie i dopasowywanie sekwencji Związek bioinformatyki z ewolucją Wraz ze wzrostem dostępności sekwencji DNA i białek pojawiła się nowa możliwość śledzenia ewolucji na poziomie molekularnym Ewolucja

Bardziej szczegółowo

RMSD - Ocena jakości wybranych molekularnych struktur przestrzennych

RMSD - Ocena jakości wybranych molekularnych struktur przestrzennych RMSD - Ocena jakości wybranych molekularnych struktur przestrzennych Joanna Wiśniewska Promotor: dr inż. P. Łukasiak Spis treści 1. Zakres pracy magisterskiej 2. Struktura białka 3. Struktura kwasów nukleionowych

Bardziej szczegółowo

Bioinformatyka II Modelowanie struktury białek

Bioinformatyka II Modelowanie struktury białek Bioinformatyka II Modelowanie struktury białek 1. Który spośród wymienionych szablonów wybierzesz do modelowania dla każdego z podanych przypadków? Dlaczego? Struktura krystaliczną czy NMR (to samo białko,

Bardziej szczegółowo

Temat: Algorytm kompresji plików metodą Huffmana

Temat: Algorytm kompresji plików metodą Huffmana Temat: Algorytm kompresji plików metodą Huffmana. Wymagania dotyczące kompresji danych Przez M oznaczmy zbiór wszystkich możliwych symboli występujących w pliku (alfabet pliku). Przykład M = 2, gdy plik

Bardziej szczegółowo

Porównywanie i dopasowywanie sekwencji

Porównywanie i dopasowywanie sekwencji Porównywanie i dopasowywanie sekwencji Związek bioinformatyki z ewolucją Wraz ze wzrostem dostępności sekwencji DNA i białek narodziła się nowa dyscyplina nauki ewolucja molekularna Ewolucja molekularna

Bardziej szczegółowo

METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA

METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA METODY CHEMOMETRYCZNE W IDENTYFIKACJI ŹRÓDEŁ POCHODZENIA AMFETAMINY Waldemar S. Krawczyk Centralne Laboratorium Kryminalistyczne Komendy Głównej Policji, Warszawa (praca obroniona na Wydziale Chemii Uniwersytetu

Bardziej szczegółowo

Bioinformatyka Laboratorium, 30h. Michał Bereta

Bioinformatyka Laboratorium, 30h. Michał Bereta Bioinformatyka Laboratorium, 30h Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl 1 Filogenetyka molekularna wykorzystuje informację zawartą w sekwencjach aminokwasów lub nukleotydów do kontrukcji drzew

Bardziej szczegółowo

PODSTAWY BIOINFORMATYKI 8 DOPASOWYWANIE SEKWENCJI AMINOKWASÓW

PODSTAWY BIOINFORMATYKI 8 DOPASOWYWANIE SEKWENCJI AMINOKWASÓW PODSTAWY BIOINFORMATYKI 8 DOPASOWYWANIE SEKWENCJI AMINOKWASÓW DOPASOWYWANIE SEKWENCJI 1. Miary podobieństwa sekwencji aminokwasów 2. Zastosowanie programów: CLUSTAL OMEGA BLAST Copyright 2013, Joanna Szyda

Bardziej szczegółowo

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA I WSPOMAGANIA DECYZJI Rozproszone programowanie produkcji z wykorzystaniem

Bardziej szczegółowo

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

Dopasowanie sekwencji Sequence alignment. Bioinformatyka, wykłady 3 i 4 (19, 26.X.2010) Dopasowanie sekwencji Sequence alignment Bioinformatyka, wykłady 3 i 4 (19, 26.X.2010) krzysztof_pawlowski@sggw.pl terminologia alignment 33000 dopasowanie sekwencji 119 uliniowienie sekwencji 82 uliniowianie

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

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

PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE D: PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE I. Strategia zachłanna II. Problem przetasowań w genomie III. Sortowanie przez odwrócenia IV. Algorytmy przybliżone V. Algorytm zachłanny

Bardziej szczegółowo

PODSTAWY BIOINFORMATYKI WYKŁAD 5 ANALIZA FILOGENETYCZNA

PODSTAWY BIOINFORMATYKI WYKŁAD 5 ANALIZA FILOGENETYCZNA PODSTAWY BIOINFORMATYKI WYKŁAD 5 ANALIZA FILOGENETYCZNA ANALIZA FILOGENETYCZNA 1. Wstęp - filogenetyka 2. Struktura drzewa filogenetycznego 3. Metody konstrukcji drzewa 4. Etapy konstrukcji drzewa filogenetycznego

Bardziej szczegółowo

Programowanie dynamiczne

Programowanie dynamiczne Programowanie dynamiczne Ciąg Fibonacciego fib(0)=1 fib(1)=1 fib(n)=fib(n-1)+fib(n-2), gdzie n 2 Elementy tego ciągu stanowią liczby naturalne tworzące ciąg o takiej własności, że kolejny wyraz (z wyjątkiem

Bardziej szczegółowo

Modelowanie niezawodności prostych struktur sprzętowych

Modelowanie niezawodności prostych struktur sprzętowych Modelowanie niezawodności prostych struktur sprzętowych W ćwiczeniu tym przedstawione zostaną proste struktury sprzętowe oraz sposób obliczania ich niezawodności przy założeniu, że funkcja niezawodności

Bardziej szczegółowo

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

Wstęp do Techniki Cyfrowej... Teoria automatów Wstęp do Techniki Cyfrowej... Teoria automatów Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych. Zwiększenie stopnia

Bardziej szczegółowo

Bioinformatyka II Modelowanie struktury białek

Bioinformatyka II Modelowanie struktury białek Bioinformatyka II Modelowanie struktury białek 1. Który spośród wymienionych szablonów wybierzesz do modelowania? Dlaczego? Struktura krystaliczną czy NMR (to samo białko, ta sama rozdzielczość)? Strukturę

Bardziej szczegółowo

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone

Bardziej szczegółowo

Metody przeszukiwania

Metody przeszukiwania Metody przeszukiwania Co to jest przeszukiwanie Przeszukiwanie polega na odnajdywaniu rozwiązania w dyskretnej przestrzeni rozwiązao. Zwykle przeszukiwanie polega na znalezieniu określonego rozwiązania

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012 Projektowanie algorytmów równoległych Zbigniew Koza Wrocław 2012 Spis reści Zadniowo-kanałowy (task-channel) model algorytmów równoległych Projektowanie algorytmów równoległych metodą PACM Task-channel

Bardziej szczegółowo

Zaawansowane algorytmy i struktury danych

Zaawansowane algorytmy i struktury danych Zaawansowane algorytmy i struktury danych u dr Barbary Marszał-Paszek Opracowanie pytań teoretycznych z egzaminów. Strona 1 z 12 Pytania teoretyczne z egzaminu pisemnego z 25 czerwca 2014 (studia dzienne)

Bardziej szczegółowo

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 1 Metody numeryczne Dział matematyki Metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane

Bardziej szczegółowo

Algorytmy ewolucyjne NAZEWNICTWO

Algorytmy ewolucyjne NAZEWNICTWO Algorytmy ewolucyjne http://zajecia.jakubw.pl/nai NAZEWNICTWO Algorytmy ewolucyjne nazwa ogólna, obejmująca metody szczegółowe, jak np.: algorytmy genetyczne programowanie genetyczne strategie ewolucyjne

Bardziej szczegółowo

Maciej Piotr Jankowski

Maciej Piotr Jankowski Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski 2005.12.22 Maciej Piotr Jankowski 1 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji

Bardziej szczegółowo

Heurystyczne metody przeszukiwania

Heurystyczne metody przeszukiwania Heurystyczne metody przeszukiwania Dariusz Banasiak Katedra Informatyki Technicznej W4/K9 Politechnika Wrocławska Pojęcie heurystyki Metody heurystyczne są jednym z ważniejszych narzędzi sztucznej inteligencji.

Bardziej szczegółowo

Kryptografia na procesorach wielordzeniowych

Kryptografia na procesorach wielordzeniowych Kryptografia na procesorach wielordzeniowych Andrzej Chmielowiec andrzej.chmielowiec@cmmsigma.eu Centrum Modelowania Matematycznego Sigma Kryptografia na procesorach wielordzeniowych p. 1 Plan prezentacji

Bardziej szczegółowo

TEORETYCZNE PODSTAWY INFORMATYKI

TEORETYCZNE PODSTAWY INFORMATYKI 1 TEORETYCZNE PODSTAWY INFORMATYKI 16/01/2017 WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Repetytorium złożoność obliczeniowa 2 Złożoność obliczeniowa Notacja wielkie 0 Notacja Ω i Θ Rozwiązywanie

Bardziej szczegółowo

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych autor: Robert Drab opiekun naukowy: dr inż. Paweł Rotter 1. Wstęp Zagadnienie generowania trójwymiarowego

Bardziej szczegółowo

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne Przypominajka: 152 drzewo filogenetyczne to drzewo, którego liśćmi są istniejące gatunki, a węzły wewnętrzne mają stopień większy niż jeden i reprezentują

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/ kuszner/arir/ 2005/06

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo

Teoria informacji i kodowania Ćwiczenia

Teoria informacji i kodowania Ćwiczenia Teoria informacji i kodowania Ćwiczenia Piotr Chołda, Andrzej Kamisiński Katedra Telekomunikacji Akademii Górniczo-Hutniczej Kod źródłowy Kodem źródłowym nazywamy funkcję różnowartościową, która elementom

Bardziej szczegółowo

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

Dopasowanie sekwencji Sequence alignment. Bioinformatyka, wykłady 3 i 4 (16, 23.X.2012) 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

Bardziej szczegółowo

Algorytmy genetyczne

Algorytmy genetyczne Algorytmy genetyczne Motto: Zamiast pracowicie poszukiwać najlepszego rozwiązania problemu informatycznego lepiej pozwolić, żeby komputer sam sobie to rozwiązanie wyhodował! Algorytmy genetyczne służą

Bardziej szczegółowo

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

BIOINFORMATYKA. edycja 2016 / wykład 11 RNA. dr Jacek Śmietański

BIOINFORMATYKA. edycja 2016 / wykład 11 RNA. dr Jacek Śmietański BIOINFORMATYKA edycja 2016 / 2017 wykład 11 RNA dr Jacek Śmietański jacek.smietanski@ii.uj.edu.pl http://jaceksmietanski.net Plan wykładu 1. Rola i rodzaje RNA 2. Oddziaływania wewnątrzcząsteczkowe i struktury

Bardziej szczegółowo

Algorytmy genetyczne

Algorytmy genetyczne 9 listopada 2010 y ewolucyjne - zbiór metod optymalizacji inspirowanych analogiami biologicznymi (ewolucja naturalna). Pojęcia odwzorowujące naturalne zjawiska: Osobnik Populacja Genotyp Fenotyp Gen Chromosom

Bardziej szczegółowo

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

Modelowanie motywów łańcuchami Markowa wyższego rzędu Modelowanie motywów łańcuchami Markowa wyższego rzędu Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki 23 października 2008 roku Plan prezentacji 1 Źródła 2 Motywy i ich znaczenie Łańcuchy

Bardziej szczegółowo

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ Celem ćwiczenia jest zapoznanie się ze sposobem działania sieci neuronowych typu MLP (multi-layer perceptron) uczonych nadzorowaną (z nauczycielem,

Bardziej szczegółowo

Teoretyczne Podstawy Informatyki

Teoretyczne Podstawy Informatyki Teoretyczne Podstawy Informatyki cel zajęć Celem kształcenia jest uzyskanie umiejętności i kompetencji w zakresie budowy schematów blokowych algor ytmów oraz ocenę ich złożoności obliczeniowej w celu optymizacji

Bardziej szczegółowo

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

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1 Wykład Algorytmy grafowe metoda zachłanna. Właściwości algorytmu zachłannego:. W przeciwieństwie do metody programowania dynamicznego nie występuje etap dzielenia na mniejsze realizacje z wykorzystaniem

Bardziej szczegółowo

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) 16.01.2003 Algorytmy i Struktury Danych PIŁA ALGORYTMY ZACHŁANNE czas [ms] Porównanie Algorytmów Rozwiązyjących problem TSP 100 000 000 000,000 10 000 000

Bardziej szczegółowo

Pomorski Czarodziej 2016 Zadania. Kategoria C

Pomorski Czarodziej 2016 Zadania. Kategoria C Pomorski Czarodziej 2016 Zadania. Kategoria C Poniżej znajduje się 5 zadań. Za poprawne rozwiązanie każdego z nich możesz otrzymać 10 punktów. Jeżeli otrzymasz za zadanie maksymalną liczbę punktów, możesz

Bardziej szczegółowo

Analiza ilościowa w przetwarzaniu równoległym

Analiza ilościowa w przetwarzaniu równoległym Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 Analiza ilościowa w przetwarzaniu równoległym 10. Analiza ilościowa w przetwarzaniu równoległym...2 10.1 Kryteria efektywności przetwarzania równoległego...2

Bardziej szczegółowo

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System

Bardziej szczegółowo

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność obliczeń równoległych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność Przy rozważaniu wydajności przetwarzania (obliczeń, komunikacji itp.) często pojawia się pojęcie skalowalności

Bardziej szczegółowo

Dopasowanie par sekwencji

Dopasowanie par sekwencji BIOINFORMTYK edycja 2016 / 2017 wykład 3 Dopasowanie par sekwencji dr Jacek Śmietański jacek.smietanski@ii.uj.edu.pl http://jaceksmietanski.net Plan wykładu 1. Idea i cele dopasowania sekwencji 2. Definicje

Bardziej szczegółowo

Programowanie współbieżne Wykład 2. Iwona Kochańska

Programowanie współbieżne Wykład 2. Iwona Kochańska Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas

Bardziej szczegółowo

Bioinformatyka Laboratorium, 30h. Michał Bereta

Bioinformatyka Laboratorium, 30h. Michał Bereta Bioinformatyka Laboratorium, 30h Michał Bereta mbereta@pk.edu.pl www.michalbereta.pl 1 Wyszukiwanie sekwencji Jak wyszukad z baz danych bioinformatycznych sekwencje podobne do sekwencji zadanej (ang. query

Bardziej szczegółowo

1.1. Pozycyjne systemy liczbowe

1.1. Pozycyjne systemy liczbowe 1.1. Pozycyjne systemy liczbowe Systemami liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Dla dowolnego

Bardziej szczegółowo

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1. Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1. Grażyna Koba MIGRA 2019 Spis treści (propozycja na 2*32 = 64 godziny lekcyjne) Moduł A. Wokół komputera i sieci komputerowych

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: PROGRAMOWANIE WSPÓŁBIEŻNE I ROZPROSZONE I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Uzyskanie przez studentów wiedzy na temat architektur systemów równoległych i rozproszonych,

Bardziej szczegółowo

Wstęp do Biologii Obliczeniowej

Wstęp do Biologii Obliczeniowej Wstęp do Biologii Obliczeniowej Zagadnienia na kolokwium Bartek Wilczyński 5. czerwca 2018 Sekwencje DNA i grafy Sekwencje w biologii, DNA, RNA, białka, alfabety, transkrypcja DNA RNA, translacja RNA białko,

Bardziej szczegółowo

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

0 + 0 = 0, = 1, = 1, = 0. 5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,

Bardziej szczegółowo

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności. Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Organizacja pamięci Organizacja pamięci współczesnych systemów komputerowych

Bardziej szczegółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu. Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą

Bardziej szczegółowo

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Technologie cyfrowe Artur Kalinowski Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.pl Semestr letni 2014/2015 Zadanie algorytmiczne: wyszukiwanie dane wejściowe:

Bardziej szczegółowo

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH

Bardziej szczegółowo

Programowanie komputerów

Programowanie komputerów Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych

Bardziej szczegółowo

Programowanie i techniki algorytmiczne

Programowanie i techniki algorytmiczne Temat 2. Programowanie i techniki algorytmiczne Realizacja podstawy programowej 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych 2) formułuje ścisły opis prostej

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Algorytmy zachłanne, programowanie dynamiczne Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk(Wydział Fizyki) WP w. IX Jesień 2014 1 / 26 Algorytmy zachłanne Strategia polegająca

Bardziej szczegółowo

Webowy generator wykresów wykorzystujący program gnuplot

Webowy generator wykresów wykorzystujący program gnuplot Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin Nowak nr albumu: 254118 Praca inżynierska na kierunku informatyka stosowana Webowy generator wykresów wykorzystujący

Bardziej szczegółowo

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań Anna Manerowska, Michal Kozakiewicz 2.12.2009 1 Wstęp Jako projekt na przedmiot MEUM (Metody Ewolucyjne Uczenia Maszyn)

Bardziej szczegółowo

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika: PRZYPOMNIJ SOBIE! Matematyka: Dodawanie i odejmowanie "pod kreską". Elektronika: Sygnały cyfrowe. Zasadę pracy tranzystorów bipolarnych i unipolarnych. 12. Wprowadzenie 12.1. Sygnały techniki cyfrowej

Bardziej szczegółowo

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych W procesie tworzenia programów równoległych istnieją dwa kroki o zasadniczym znaczeniu: wykrycie

Bardziej szczegółowo

Procesowa specyfikacja systemów IT

Procesowa specyfikacja systemów IT Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office

Bardziej szczegółowo

Kurs MATURA Z INFORMATYKI

Kurs MATURA Z INFORMATYKI Kurs MATURA Z INFORMATYKI Cena szkolenia Cena szkolenia wynosi 90 zł za 60 min. Ilość godzin szkolenia jest zależna od postępów w nauce uczestnika kursu oraz ilości czasu, którą będzie potrzebował do realizacji

Bardziej szczegółowo

Hierarchiczna analiza skupień

Hierarchiczna analiza skupień Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Algorytmy i programowanie Algorithms and Programming Kierunek: Zarządzanie i Inżynieria Produkcji Rodzaj przedmiotu: kierunkowy Poziom studiów: studia I stopnia forma studiów: studia

Bardziej szczegółowo

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego Piotr Rybak Koło naukowe fizyków Migacz, Uniwersytet Wrocławski Piotr Rybak (Migacz UWr) Odkrywanie algorytmów kwantowych 1 / 17 Spis

Bardziej szczegółowo

Platforma e-learnigowa Moodle Testy i oceny

Platforma e-learnigowa Moodle Testy i oceny Platforma e-learnigowa Moodle Testy i oceny 02.02.2011 Przygotowanie quizu - baza pytań Pytania Baza pytań niezależna od quizów Struktura bazy: kategorie obejmujące określoną część materiału, np. pytania

Bardziej szczegółowo

Arkusz kalkulacyjny Excel

Arkusz kalkulacyjny Excel Arkusz kalkulacyjny Excel Ćwiczenie 1. Sumy pośrednie (częściowe). POMOC DO ĆWICZENIA Dzięki funkcji sum pośrednich (częściowych) nie jest konieczne ręczne wprowadzanie odpowiednich formuł. Dzięki nim

Bardziej szczegółowo

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Modelowanie rynków finansowych z wykorzystaniem pakietu R Modelowanie rynków finansowych z wykorzystaniem pakietu R Metody numeryczne i symulacje stochastyczne Mateusz Topolewski woland@mat.umk.pl Wydział Matematyki i Informatyki UMK Plan działania 1 Całkowanie

Bardziej szczegółowo

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Źródła kosztów przetwarzania współbieżnego interakcje między procesami

Bardziej szczegółowo