Optymalizacja czasowa i pamięciowa algorytmu Needlemana-Wunscha

licenciate
dc.abstract.enA standard way of finding sequence alignment is by Needleman-Wunsch algorithm, whose both time and space complexity is quadratic. However, there are methods for solving the problem more effectively – Hirschberg algorithm, which requires only linear space and the method of four Russians – a general technique for speeding up dynamic programming that allows to reduce the running time by a logarithmic factor. In this thesis, the basic version and the two improvements were implemented using Julia programming language. An analysis was per-formed to compare execution time and actual memory usage. Also, optimization on the programming language level was taken into account after collation with C/C++ and Fortran languages. The thesis focuses on examining practicality of the discussed approaches in a context of real application – with a big biological data input and also on confronting the computational complexity theory with actual efficiency.pl
dc.abstract.plStandardowym sposobem znajdowania dopasowania sekwencji jest algorytm Needlemana-Wunscha, który charakteryzuje się kwadratową złożonością czasową i pamięciową. Istnieją jednak metody pozwalające na efektywniejsze rozwiązanie tego problemu – algorytm Hirschberga, wymagający jedynie liniowej ilości pamięci oraz metoda czterech Rosjan – ogólna technika przyspieszania programowania dynamicznego, umożliwiająca obniżenie złożoności czasowej o czynnik logarytmiczny. W niniejszej pracy zaimplementowano w języku Julia podstawową wersję algorytmu, a także obie alternatywy, a następnie dokonano analizy porów-nawczej pod względem czasu wykonania programu i faktycznego zużycia pamięci. Skupiono się również na optymalizacji na poziomie języka programowania, po uprzednim zestawieniu jego wydajności z językami C/C++ i Fortran.Praca została ukierunkowana na zbadanie praktyczności omawianych podejść w kontekście realnego zastosowania – z użyciem danych biologicznych dużych rozmiarów, a także konfrontację teorii złożoności obliczeniowej z rzeczywistą wydajnością.pl
dc.affiliationWydział Fizyki, Astronomii i Informatyki Stosowanejpl
dc.areaobszar nauk ścisłychpl
dc.contributor.advisorRomańczukiewicz, Tomasz - 147959 pl
dc.contributor.authorNowogórski, Dominikpl
dc.contributor.departmentbycodeUJK/WFAISpl
dc.contributor.reviewerRomańczukiewicz, Tomasz - 147959 pl
dc.contributor.reviewerCieśla, Michał - 101020 pl
dc.date.accessioned2020-07-28T01:18:29Z
dc.date.available2020-07-28T01:18:29Z
dc.date.submitted2019-06-27pl
dc.fieldofstudyinformatykapl
dc.identifier.apddiploma-134088-225560pl
dc.identifier.projectAPD / Opl
dc.identifier.urihttps://ruj.uj.edu.pl/xmlui/handle/item/236335
dc.languagepolpl
dc.subject.ensequence alignment, Needleman-Wunsch algorithm, Hirschberg’s algorithm, method of four Russians, dynamic programming, computational complexity, optimization, efficiencypl
dc.subject.pldopasowanie sekwencji, algorytm Needlemana-Wunscha, algorytm Hirschberga, metoda czterech Rosjan, programowanie dynamiczne, złożoność obliczeniowa, optymalizacja, wydajnośćpl
dc.titleOptymalizacja czasowa i pamięciowa algorytmu Needlemana-Wunschapl
dc.title.alternativeTime and memory optimization of Needleman-Wunsch algorithmpl
dc.typelicenciatepl
dspace.entity.typePublication
dc.abstract.enpl
A standard way of finding sequence alignment is by Needleman-Wunsch algorithm, whose both time and space complexity is quadratic. However, there are methods for solving the problem more effectively – Hirschberg algorithm, which requires only linear space and the method of four Russians – a general technique for speeding up dynamic programming that allows to reduce the running time by a logarithmic factor. In this thesis, the basic version and the two improvements were implemented using Julia programming language. An analysis was per-formed to compare execution time and actual memory usage. Also, optimization on the programming language level was taken into account after collation with C/C++ and Fortran languages. The thesis focuses on examining practicality of the discussed approaches in a context of real application – with a big biological data input and also on confronting the computational complexity theory with actual efficiency.
dc.abstract.plpl
Standardowym sposobem znajdowania dopasowania sekwencji jest algorytm Needlemana-Wunscha, który charakteryzuje się kwadratową złożonością czasową i pamięciową. Istnieją jednak metody pozwalające na efektywniejsze rozwiązanie tego problemu – algorytm Hirschberga, wymagający jedynie liniowej ilości pamięci oraz metoda czterech Rosjan – ogólna technika przyspieszania programowania dynamicznego, umożliwiająca obniżenie złożoności czasowej o czynnik logarytmiczny. W niniejszej pracy zaimplementowano w języku Julia podstawową wersję algorytmu, a także obie alternatywy, a następnie dokonano analizy porów-nawczej pod względem czasu wykonania programu i faktycznego zużycia pamięci. Skupiono się również na optymalizacji na poziomie języka programowania, po uprzednim zestawieniu jego wydajności z językami C/C++ i Fortran.Praca została ukierunkowana na zbadanie praktyczności omawianych podejść w kontekście realnego zastosowania – z użyciem danych biologicznych dużych rozmiarów, a także konfrontację teorii złożoności obliczeniowej z rzeczywistą wydajnością.
dc.affiliationpl
Wydział Fizyki, Astronomii i Informatyki Stosowanej
dc.areapl
obszar nauk ścisłych
dc.contributor.advisorpl
Romańczukiewicz, Tomasz - 147959
dc.contributor.authorpl
Nowogórski, Dominik
dc.contributor.departmentbycodepl
UJK/WFAIS
dc.contributor.reviewerpl
Romańczukiewicz, Tomasz - 147959
dc.contributor.reviewerpl
Cieśla, Michał - 101020
dc.date.accessioned
2020-07-28T01:18:29Z
dc.date.available
2020-07-28T01:18:29Z
dc.date.submittedpl
2019-06-27
dc.fieldofstudypl
informatyka
dc.identifier.apdpl
diploma-134088-225560
dc.identifier.projectpl
APD / O
dc.identifier.uri
https://ruj.uj.edu.pl/xmlui/handle/item/236335
dc.languagepl
pol
dc.subject.enpl
sequence alignment, Needleman-Wunsch algorithm, Hirschberg’s algorithm, method of four Russians, dynamic programming, computational complexity, optimization, efficiency
dc.subject.plpl
dopasowanie sekwencji, algorytm Needlemana-Wunscha, algorytm Hirschberga, metoda czterech Rosjan, programowanie dynamiczne, złożoność obliczeniowa, optymalizacja, wydajność
dc.titlepl
Optymalizacja czasowa i pamięciowa algorytmu Needlemana-Wunscha
dc.title.alternativepl
Time and memory optimization of Needleman-Wunsch algorithm
dc.typepl
licenciate
dspace.entity.type
Publication
Affiliations

* The migration of download and view statistics prior to the date of April 8, 2024 is in progress.

Views
86
Views per month
Views per city
Wroclaw
16
Krakow
15
Warsaw
13
Poznan
11
Żyrardów
4
Szczesne
3
Brno
2
Gliwice
2
Radwanice
2
Wieliczka
2

No access

No Thumbnail Available