Grafy etykietowalne i sieci Petriego w analizie procesów biochemicznych i biologicznych

Podobne dokumenty
Grafy etykietowalne i sieci Petriego w analizie procesów biochemicznych i biologicznych

Algorytmy kombinatoryczne w bioinformatyce

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

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

Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz?

Zastosowanie metod opartych na teorii grafów do rozwiązywania wybranych problemów analizy sekwencji nukleotydowych i aminokwasowych

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Matematyka dyskretna

Matematyczne Podstawy Informatyki

Graf. Definicja marca / 1

1 Automaty niedeterministyczne

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska

Elementy teorii grafów Elementy teorii grafów

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Kombinatoryczna analiza widm 2D-NOESY w spektroskopii Magnetycznego Rezonansu Jądrowego cząsteczek RNA. Marta Szachniuk

G. Wybrane elementy teorii grafów

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

TEORIA GRAFÓW I SIECI

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

ZAGADNIENIE TRANSPORTOWE

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

Algorytmiczna teoria grafów

ZARZĄDZANIE PROJEKTAMI I PROCESAMI. Mapowanie procesów AUTOR: ADAM KOLIŃSKI ZARZĄDZANIE PROJEKTAMI I PROCESAMI. Mapowanie procesów

Zastosowanie metod opartych na teorii grafów do rozwiązywania wybranych problemów analizy sekwencji nukleotydowych i aminokwasowych

0-0000, , , itd

Liczba zadań a rzetelność testu na przykładzie testów biegłości językowej z języka angielskiego

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

Spacery losowe generowanie realizacji procesu losowego

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

5. Rozwiązywanie układów równań liniowych

TEORIA GRAFÓW I SIECI

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

KURS MATEMATYKA DYSKRETNA

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie

INSTRUMENTY POCHODNE ARKUSZ DO SYMULACJI STRATEGII INWESTYCYJNYCH. Instrukcja obsługi

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

Liczby rzeczywiste, wyrażenia algebraiczne, równania i nierówności, statystyka, prawdopodobieństwo.

Kombinatoryczne aspekty nieklasycznego sekwencjonowania DNA przez hybrydyzację

Efektywność Procedur Obliczeniowych. wykład 5

Wybrane podstawowe rodzaje algorytmów

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

Uniwersytet im. Adama Mickiewicza w Poznaniu Wydział Matematyki i Informatyki. Marek Dębczyński

Teoria obliczeń i złożoność obliczeniowa

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

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

Programowanie dynamiczne i algorytmy zachłanne

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

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Sortowanie topologiczne skierowanych grafów acyklicznych

Grafy i sieci wybrane zagadnienia wykład 2: modele służące rekonstrukcji sekwencji

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące.

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Teoria liczb. Magdalena Lemańska. Magdalena Lemańska,

Gramatyki grafowe. Dla v V, ϕ(v) etykieta v. Klasa grafów nad Σ - G Σ.

Schemat programowania dynamicznego (ang. dynamic programming)

Algorytmika Problemów Trudnych

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

Podstawowe własności grafów. Wykład 3. Własności grafów

Przykład: Σ = {0, 1} Σ - zbiór wszystkich skończonych ciagów binarnych. L 1 = {0, 00, 000,...,1, 11, 111,... } L 2 = {01, 1010, 001, 11}

Wykład 4. Droga i cykl Eulera i Hamiltona

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. (c.d.

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Scenariusz lekcji przyrody/biologii (2 jednostki lekcyjne)

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Zaawansowane algorytmy i struktury danych

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1

Programowanie dynamiczne cz. 2

Modele grafowe i algorytmy dla klasycznego problemu sekwencjonowania DNA przez hybrydyzację oraz dla jego odmiany z informacją o powtórzeniach

Układy równań i nierówności liniowych

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

O pewnych związkach teorii modeli z teorią reprezentacji

Sposoby prezentacji problemów w statystyce

Matematyczne Podstawy Informatyki

Zliczanie Podziałów Liczb

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

3 Abstrakcyjne kompleksy symplicjalne.

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

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego

Diagnozowanie sieci komputerowej metodą dialogu diagnostycznego

Wykład 9: Markov Chain Monte Carlo

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

Wykład 2: Arkusz danych w programie STATISTICA

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Programowanie liniowe

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Algorytmiczna teoria grafów

PROBLEMY NIEROZSTRZYGALNE

Złożoność obliczeniowa zadania, zestaw 2

Systemy uczące się Lab 4

Matematyka dyskretna dla informatyków

Lista 6 Problemy NP-zupełne

Transkrypt:

POLITECHNIKA POZNAŃSKA Wydział Informatyki Instytut Informatyki Grafy etykietowalne i sieci Petriego w analizie procesów biochemicznych i biologicznych Adam Kozak Streszczenie rozprawy doktorskiej Promotor: dr hab. inż. Piotr Formanowicz, prof. PP Poznań 2014

Rozdział 1 Wstęp 1.1 Wprowadzenie W niniejszej pracy będą rozważane wybrane formalne modele zagadnień związanych bioinformatyką, które oparte są na teorii grafów. Bioinformatyka jest dziedziną interdyscyplinarną, która przeżywa w ostatnich latach gwałtowny rozwój wraz z biologią molekularną oraz informatyką. Teoria grafów jest natomiast matematycznym narzędziem używanym szeroko w informatyce w algorytmach oraz do modelowania relacji między obiektami. Zagadnienia poruszane w tej pracy można podzielić na dwa odrębne obszary badawcze, oparte na różnych aspektach teorii grafów. Pierwszy obszar dotyczy analizy własności i zastosowań zdefiniowanych przez autora klas grafów bazowo-etykietowalnych i grafów leksykalnych [34]. Przedstawione są definicje oraz szereg twierdzeń wraz z dowodami, które obrazują relacje tych klas z innymi klasami grafów i w niektórych przypadkach stanowią uogólnienia istniejących twierdzeń. Grafy leksykalne, które są nadklasą grafów de Bruijna [11] zostały ponadto wykorzystane do modelowania struktury danych dla sformułowanego algorytmu budowy bibliotek oligonukleotydów antykomplementarnych. Drugi obszar dotyczy modelowania i analizy procesów biologicznych i biochemicznych za pomocą sieci Petriego, które mogą służyć do przedstawiania relacji miedzy równolegle zachodzącymi procesami i określenia warunków zmiany stanów. Reakcje chemiczne są najprostszym przykładem procesów, które można modelować za pomocą sieci Petriego, w których obiektami wymaganymi są substraty a obiektami wynikowymi produkty reakcji. Siecie Petriego mogą być wykorzystane do modelowania procesów w różnych dziedzinach za ich pomocą mogą być modelowane np. procesy biznesowe [58]. Sieci Petriego są jednocześnie intuicyjne dla człowieka (mogą być przedstawione graficznie) oraz łatwe do analizy matematycznej. Rozważane w niniejszej rozprawie zagadnienia biologiczne i biochemiczne dotyczą mechanizmów regulacji homeostazy żelaza w organizmie człowieka na osi regulacyjnej hepcydyna-hemojuwelina (rozdział 7) oraz stresu oksydacyjnego w procesie powstawania i rozwoju miażdżycy (rozdział 8). Prace nad oboma zagadnieniami są inspirowane potrzebą lepszego zrozumienia istotnych procesów zachodzących w organizmie ludzkim. Utrzymanie homeostazy żelaza jest jednym z kluczowych mechanizmów regulacyjnych człowieka z uwagi na fundamentalne znaczenie żelaza np. w dostarczaniu tlenu do oddychania komórkowego. Zarówno niedobór żelaza jak i jego nadmiar prowadzi do ciężkich chorób. W przypadku niedoboru żelaza występuje anemia, natomiast nadmiar prowadzi do hemochromatozy. Mechanizmy regulacji żelaza uwzględniają ponadto inne czynniki niezależne od poziomu żelaza, np. procesy zapalne lub wystąpienie hipoksji. 1

Wstęp 2 Miażdżyca jest natomiast powszechną chorobą naczyń, która często prowadzi do śmierci wskutek zawału spowodowanego zamknięciem światła naczynia przez narastającą blaszkę miażdżycową lub przez jej pęknięcie. Proces rozwoju miażdżycy jest skomplikowany i zależy od wielu czynników regulacyjnych, wśród których stres oksydacyjny odgrywa kluczową rolę. W niniejszej pracy przeanalizowano modele wyżej opisanych procesów za pomocą metod analizy strukturalnej. Zaprezentowane są modele jakościowe, przy czym sieć dotycząca stresu oksydacyjnego w procesie rozwoju miażdżycy zawiera częściowe informacje ilościowe w postaci wag na łukach. Analiza strukturalna pozwala na badanie własności niezależnych od danych ilościowych, np. identyfikowanie grup podprocesów i relacji między nimi. Analiza ilościowa pozwala na badanie zależności ilościowych m. in. w procesie symulacji. Symulacja taka, podobnie jak symulacja każdego złożonego układu dynamicznego może być wrażliwa na wartości stanu początkowego oraz dokładność i kompletność danych opisujących zależności ilościowe. Z uwagi na brak dostępności takich danych w literaturze dla modelowanych systemów, ograniczono się do analizy strukturalnej. Wprowadzono jednak częściowe informacje ilościowe (w postaci wag na łukach) do sieci modelującej stres oksydacyjny w procesie miażdżycy i wykonano analizę wpływu takiej informacji na analizę strukturalną. 1.2 Cel i zakres pracy Zgodnie z powyższym wprowadzeniem, rozprawa dzieli się na dwa główne kierunki badawcze oparte na teorii grafów. Pierwszy kierunek badawczy dotyczy grafów bazowoetykietowalnych oraz grafów leksykalnych i ich zastosowania w problemie budowy bibliotek oligonukleotydów. Grafy bazowo-etykietowalne są uogólnieniem grafów etykietowalnych zdefiniowanych w pracy [3]. Motywacją do zdefiniowania grafów etykietowalnych był problem asemblacji łańcuchów DNA otrzymanych w procesie sekwencjonowania przez hybrydyzację, którego opis biologiczny znajduje się w rozdziale 2.4, a opis formalny znajduje się w rozdziale 3.3. Grafy bazowo-etykietowalne mogą reprezentować model danych pewnego teoretycznego wariantu sekwencjonowania przez hybrydyzację z regularnymi błędami, jednak analiza ich własności w niniejszej pracy ma charakter i motywację czysto matematyczną (choć zainspirowaną użyciem grafów leksykalnych w algorytmie budowy bibliotek, który jest opisany w rozdziale 5 grafy bazowo-etykietowalne są bowiem podgrafami indukowanymi grafów leksykalnych). Grafy leksykalne zostały zdefiniowane również na potrzeby tego algorytmu, a analiza ich własności jest szczególnie interesująca z uwagi na fakt, że stanowią one nadklasę grafów de Bruijna, które mają wiele zastosowań w dziedzinach takich jak biologia obliczeniowa i elektronika [9]. W rozprawie udowodniono, że niektóre własności grafów de Bruijna są dziedziczone z grafów leksykalnych. Problem budowy biblioteki oligonukleotydów opisany w rozdziale 5 dotyczy konstrukcji takiego zbioru oligonukleotydów o zadanej liczności i długości łańcuchów, którego elementy będą miały możliwie małą tendencję do hybrydyzacji ze sobą nawzajem. Są to zatem biblioteki sztuczne, dla których można sformułować matematyczne kryterium oceny jakości. Biblioteki takie mogą mieć zastosowanie np. do kodowania instancji dla komputerów DNA, które są opisane w rozdziale 2.5. Drugi kierunek badawczy dotyczy analizy modeli opartych na sieciach Petriego dla wybranych procesów zachodzących w organizmie ludzkim związanych z regulacją hepcydyny (która jest głównym regulatorem homeostazy żelaza w organizmie ludzkim) oraz ze stresem oksydacyjnym w procesie rozwoju miażdżycy. Modele te zostały skonstruowane na podstawie wiedzy eksperckiej oraz dostępnej literatury przez dr n. med. Dorotę Formanowicz. Model związany z regulacją hepcydyny został opublikowany wraz

Wstęp 3 z analizą w pracy [17]. Pierwsza wersja sieci modelującej stres oksydacyjny w procesie miażdżycy została opublikowana w pracy [16]. W ramach tych prac autor rozprawy zajmował się analizą strukturalną sieci i jej opisem. W niniejszej rozprawie autor proponuje pewne modyfikacje struktury sieci w porównaniu do pracy [17] (opisane w rozdziale 7.4), które wymagały przeprowadzenia ponownej analizy. Głównym obszarem badawczym w zakresie tego modelu była analiza własności strukturalnych oraz formułowanie na podstawie tej analizy wniosków biologicznych. Istotne znaczenie procesów regulacyjnych hepcydyny wynika z ważnej dla organizmu roli homeostazy żelaza, dla której hepcydyna jest głównym regulatorem. Analiza modelu formalnego może bowiem prowadzić do nietrywialnych wniosków biologicznych, które mogą się przyczynić do lepszego zrozumienia relacji między różnymi czynnikami wpływającymi na zachowanie analizowanego systemu biologicznego. Utrzymanie homeostazy żelaza jest kluczowe dla organizmu człowieka, gdyż uczestniczy ono w procesach enzymatycznych metabolizmu tlenowego i jest składnikiem hemoglobiny i mioglobiny. W przypadku sieci modelującej stres oksydacyjny w procesie rozwoju miażdżycy wykonano analizę podobną jak dla sieci hepcydynowej. Model sieci został rozszerzony w porównaniu do pracy [16] oraz uzupełniony o częściowe informacje ilościowe. W tym przypadku dodatkowym celem była ocena wpływu częściowej informacji ilościowej na wyniki analizy strukturalnej. Zakres analizy strukturalnej dotyczy w głównej mierze zbiorów niezmienników tranzycji (t-niezmienników), zbiorów MCT (Maximum Common Transition set), a także klastrów jakie tworzą zbiory t-niezmienników. Przedstawiono interpretacje biologiczne zbiorów MCT oraz klastrów i ich znaczenie oraz zaprezentowano wnioski biologiczne wyciągnięte na podstawie zauważonych cech klastrów. Dla podsumowania poniżej wypunktowano opisane cele i zakres pracy. 1. Zdefiniowanie nowych klas grafów bazowo-etykietowalnych i leksykalnych (będących uogólnieniem grafów etykietowalnych i grafów de Bruijna) oraz zdefiniowanie sekwencji leksykalnych (będących uogólnieniem sekwencji de Bruijna). 2. Przeanalizowanie własności matematycznych grafów bazowo-etykietowalnych i leksykalnych. 3. Zaprojektowanie algorytmu budowy bibliotek oligonukleotydów antykomplementarnych opartego na zdefiniowanych grafach leksykalnych. 4. Przeprowadzenie analizy parametrów i wyników algorytmu budowy bibliotek oligonukleotydów antykomplementarnych. 5. Wykonanie analizy sieci Petriego modelującej oś regulacyjną hepcydynahemojuwelina oraz postawienie wniosków biologicznych. 6. Wykonanie analizy sieci Petriego modelującej stres oksydacyjny w procesie rozwoju miażdżycy oraz postawienie wniosków biologicznych. 7. Wykonanie analizy wpływu częściowej informacji ilościowej w sieci modelującej stres oksydacyjny w procesie rozwoju miażdżycy na wyniki i wnioski płynące z analizy strukturalnej. W niniejszym streszczeniu zachowano w prawie niezmienionej formie niektóre istotne fragmenty rozprawy i rozdział wprowadzający wraz z podsumowaniem jako kluczowe dla wyjaśnienia znaczenia i zakresu badań oraz osiągniętych wyników. Struktura pozostałych rozdziałów i podrozdziałów odzwierciedla także strukturę rozprawy, przy czym niektóre mniej znaczące podrozdziały nie zostały uwzględnione w streszczeniu.

Rozdział 2 Podstawowe zagadnienia biologii molekularnej i obliczeniowej 2.1 Wprowadzenie W drugim rozdziale rozprawy przedstawiono wprowadzenie do zagadnień biologii molekularnej i obliczeniowej istotnych z punktu widzenia tematyki badawczej. Zagadnienia te obejmują budowę kwasów DNA, metody ustalania sekwencji DNA (sekwencjonowanie) oraz komputery DNA. 2.2 Budowa kwasu DNA DNA (kwas deoksyrybonukleinowy) to wielocząsteczkowy organiczny związek chemiczny (tzw. polimer), którego podstawowym elementem budującym jest nukleotyd (tzw. monomer) [56, 59]. Nukleotyd składa się z jednej cząsteczki cukru prostego (ogólnie pentozy w przypadku DNA jest to deoksyryboza), jednej cząsteczki reszty kwasu fosforowego oraz jednej cząsteczki zasady azotowej. W skład DNA wchodzą cztery rodzaje zasad azotowych: adenina (A), guanina (G), tyrozyna (T) lub cytozyna (C). Nić DNA jest spolaryzowana tj. wyróżnia się tak zwany koniec 3 oraz koniec 5. Zasady azotowe są do siebie parami komplementarne adenina z tyminą oraz guanina z cytozyną. W Definicji 5.1 określono ponadto formalne uogólnienie komplementarności jako symetryczną, przeciwzwrotną relację binarną określoną na alfabecie o parzystej mocy. 2.3 Sekwencjonowanie DNA Istotnym zagadnieniem biologii molekularnej jest sekwencjonowanie DNA, czyli ustalanie kolejności (sekwencji) nukleotydów w łańcuchu. Istnieje wiele metod sekwencjonowania [54]. Niektóre z nich polegają na przeprowadzeniu eksperymentu biochemicznego, którego wynik jednoznacznie określa sekwencję nukleotydów [53]. Inne metody wymagają zaangażowania metod obliczeniowych, w celu analizy wyników eksperymentu biochemicznego [65]. Przykładowe metody sekwencjonowania to m. in. metoda Sangera [53], sekwencjonowanie przez hybrydyzację (SBH) [65] oraz pyrosekwencjonowanie [41]. W niniejszej rozprawie największy nacisk zostanie położony na omówienie metod sekwencjonowania przez hybrydyzację, gdyż metody te stanowią istotną inspirację do rozważań dotyczących grafów etykietowalnych przedstawionych w rozdziale 4. 4

Podstawowe zagadnienia biologii molekularnej i obliczeniowej 5 2.4 Sekwencjonowanie przez hybrydyzację W metodzie sekwencjonowania przez hybrydyzację (SBH - ang. Sequencing By Hybridization) wykorzystuje się komplementarność nici. W metodzie tej przygotowuje się tzw. chipy DNA (lub macierze DNA). Chip zawiera wszystkie możliwe fragmenty DNA o pewnej długości l [29]. Przykładowo, jeśli chip zawiera wszystkie oligonukleotydy o długości l = 10, to na powierzchni chipu znajduje się 4 10 sond. Część biochemiczna metody SBH polega na namnożeniu sekwencjonowanej nici DNA, a następnie taką próbkę DNA oznacza się znacznikami fluorescencyjnymi i przeprowadza hybrydyzację z macierzą DNA. Fakt wystąpienia hybrydyzacji oznacza, że w sekwencjonowanej cząsteczce znajduje się fragment komplementarny do tego, który znajduje się w hybrydyzującej sondzie. Zbiór wszystkich takich fragmentów uzyskanych z eksperymentu nazywany jest spektrum. Analiza danych z eksperymentu SBH wymaga zaangażowania metod obliczeniowych. W literaturze rozważa się różne warianty problemu SBH, w zależności od tego jaki typ chipu został zastosowany [45], jakie błędy pojawiły się podczas eksperymentu biochemicznego [2] oraz fakt, czy sposób odczytu danych pozwala na poznanie informacji o krotności występowania danego fragmentu DNA w sekwencjonowanej nici [18, 27]. 2.5 Komputery DNA Komputery DNA mogą mieć różne formy i zasady działania, jednak ich cechą wspólną jest wykorzystanie DNA do wykonania obliczeń. Można wyróżnić następujące modele obliczeń wykorzystujące materiał genetyczny: tzw. klasyczne podejście zaproponowane przez Adlemana w 1994 roku [1] oraz nowsze podejścia takie jak zaproponowane przez Shapiro w 2001 roku [6] oraz DNA self-assembly [5, 47, 60]. W podejściu klasycznym do komputerów DNA [1] cząsteczki kodują pewne informacje, a obliczenia są przeprowadzane poprzez reakcje chemiczne z udziałem tych cząsteczek. W eksperymencie zaproponowanym przez Adlemana, rozwiązany został problem ścieżki Hamiltona. Zbiór krótkich łańcuchów DNA o stałej długości koduje wierzchołki grafu, natomiast drugi zbiór łańcuchów o tej samej długości koduje łuki pomiędzy tymi wierzchołkami. Jeśli istnieje łuk pomiędzy dwoma wierzchołkami, to modeluje się to w ten sposób, że w roztworze znajdzie się nić częściowo komplementarna do końcowej części cząsteczki DNA modelującej poprzednika oraz częściowo komplementarna do początkowej części cząsteczki DNA modelującej następnika. Wierzchołki hybrydyzujące z łukami w ten sposób tworzą ostatecznie łańcuch wynikowy reprezentujący ścieżkę Hamiltona. W rozprawie opisano ponadto etapy i metody eksperymentu biochemicznego (hybrydyzacja, reakcja PCR oraz reakcja ligacji) zaproponowanego przez Adlemana. Opisany w rozdziale 5 algorytm budowy bibliotek oligonukleotydów stanowi propozycję kodowania wierzchołków dla opisanego wyżej komputera DNA w celu zminimalizowania prawdopodobieństwa hybrydyzacji pomiędzy wierzchołkami (mogą one wystąpić, a są niepożądane i powodują utratę materiału DNA). Podsumowując, klasyczne komputery DNA kodują problem za pomocą cząsteczek DNA i realizują obliczenia przy wykorzystaniu reakcji chemicznych (hybrydyzacja, reakcja PCR oraz reakcja ligacji). Stworzenie algorytmu na taki komputer polega na zaprojektowaniu odpowiednich cząsteczek oraz eksperymentu chemicznego, w którym wezmą one udział.

Rozdział 3 Podstawowe zagadnienia teorii grafów i informatyki teoretycznej 3.1 Wprowadzenie W trzecim rozdziale rozprawy wprowadzane są pojęcia z zakresu teorii grafów oraz informatyki teoretycznej, które będą używane w dalszej części pracy. W szczególności rozdziały 4 oraz 5 bazują na pojęciach przytoczonych w tej części. Z uwagi na przeprowadzony dowód NP-zupełności problemu podgrafu leksykalnego zostały także wprowadzone podstawowe pojęcia z zakresu teorii złożoności obliczeniowej: problem decyzyjny, klasa P, klasa NP, redukcja wielomianowa, problem NP-zupełny, problem silnie NP-zupełny, redukcja pseudowielomianowa, problem optymalizacyjny, problem przeszukiwania, wielomianowa transformacja Turinga, problem NP-trudny. 3.2 Podstawowe pojęcia teorii grafów W tym podrozdziale przytoczone są podstawowe definicje z zakresu teorii grafów, które stosowane są kolejnych rozdziałach. Z uwagi na rozbieżności w rozumieniu niektórych pojęć istniejące w literaturze w rozprawie przytoczono definicje podstawowych pojęć z zakresu teorii grafów takie jak: graf skierowany, podgraf, podgraf indukowany, skierowany graf dwudzielny, stopień wejściowy i stopień wyjściowy wierzchołka, łańcuch skierowany, łańcuch skierowany otwarty i zamknięty, droga skierowana, obwód skierowany, ścieżka skierowana, cykl skierowany, skierowana droga Eulera, skierowany obwód Eulera, warunek skierowana ścieżka Hamiltona, skierowany cykl Hamiltona, spójność grafu, silna spójność grafu i spójne składowe (definicje tych pojęć można znaleźć ponadto w pracach [7, 10]). Pominięte zostały definicje dla grafów nieskierowanych, gdyż omawiane w niniejszej pracy grafy są wyłącznie grafami skierowanymi (tj. grafy etykietowalne i sieci Petriego). W dalszej części stosowana jest notacja N + (x) oznaczająca zbiór bezpośrednich następników wierzchołka x oraz N (x) oznaczająca zbiór bezpośrednich poprzedników wierzchołka x. W rozprawie zaznaczono istotną z punktu widzenia tematyki badawczej różnicę między klasą złożoności obliczeniowej dla problemów ścieżki/cyklu Hamiltona (silnie NP-trudne) oraz drogi/obwodu Eulera (wielomianowe). 3.3 Grafy etykietowalne Motywacją dla definicji grafów etykietowalnych w pracy [3] było zastosowanie w algorytmie asemblacji sekwencji oligonukleotydowych pochodzących z procesu SBH opisanego 6

Podstawowe zagadnienia teorii grafów i informatyki teoretycznej 7 w rozdziale 2. W rozprawie przedstawiono ponadto historyczny zarys podejść do rozwiązań problemu asemblacji oparty na grafach Lysova [37] i Pevznera [44] i wyjaśniono równoważność tych podejść. Podejścia oparte na szukaniu ścieżki Hamiltona w grafie Lysova i drogi Eulera w grafie Pevznera są sobie równoważne z uwagi na fakt, że graf Lysova jest tzw. grafem sprzężonym grafu Pevznera. Grafy sprzężone, liniowe oraz ich relacje z grafami etykietowalnymi są wyjaśnione w poniższych definicjach. Definicja 3.1 ([7]). Graf G = (V, A) nazywamy p-grafem jeśli dla dowolnej pary wierzchołków x, y V istnieje co najwyżej p równoległych łuków z x do y. Graf H = (A, U) jest grafem sprzężonym grafu G = (V, A), jeśli jest 1-grafem ze zbiorem wierzchołków A takim, że istnieje łuk (x, y) U wtedy i tylko wtedy, gdy w grafie G następnik łuku x jest poprzednikiem łuku y, tj. x=(v1,v 2 ),y=(v 3,v 4 ) A (x, y) U v 2 = v 3. Zależność między H i G będzie oznaczana za pomocą operatora sprzężenia L, tj. H = L(G). W niniejszej pracy graf G będzie nazywany grafem odwrotnie sprzężonym grafu H. Twierdzenie 3.1 ([7]). Graf H = (A, U) jest grafem sprzężonym innego grafu wtedy i tylko wtedy, gdy zachodzi następujący warunek x,y A N + (x) N + (y) N + (x) = N + (y). Definicja 3.2 ([3]). Graf jest skierowanym grafem liniowym wtedy i tylko wtedy gdy jest grafem sprzężonym 1-grafu. Twierdzenie 3.2 ([3]). Graf H = (A, U) jest skierowanym grafem liniowym wtedy i tylko wtedy, gdy x,y A N + (x) N + (y) ( N + (x) = N + (y) N (x) N (y) = ). Twierdzenie 3.3 ([3]). Niech graf H będzie grafem sprzężonym grafu G (H = L(G)). W grafie G istnieje obwód/droga Eulera wtedy i tylko wtedy, gdy w grafie H istnieje cykl/ścieżka Hamiltona. Poniżej przedstawiono definicje grafów dowolnie-etykietowalnych i etykietowalnych. Definicja 3.3 ([3]). Niech k > 0, α > 0 będą liczbami całkowitymi. Wtedy 1-graf G = (V, A) jest grafem (α, k)-dowolnie etykietowalnym, jeśli możliwe jest przyporządkowanie każdemu wierzchołkowi x V etykiety (l 1 (x),..., l k (x)) o długości k takiej, że: 1) i {1,2,...,k},x V l i (x) {0,..., α 1}, 2) (x, y) A (l 2 (x),..., l k (x)) = (l 1 (y),..., l k 1 (y)). Etykieta wierzchołka x będzie oznaczona jako [x]. Powyższa definicja grafu dowolnie etykietowalnego została zmodyfikowana w porównaniu do definicji z pracy [3]. Rozszerzona została bowiem dziedzina długości etykiety k o wartość k = 1, co pozwoliło na ujednolicenie własności grafów dowolnie etykietowalnych z przedstawionymi w rozdziale 4 grafami bazowo etykietowalnymi. Definicja 3.4 ([3]). Niech graf G = (V, A) będzie grafem (α, k)-dowolnie etykietowalnym. Graf ten jest także grafem (α, k)-etykietowalnym, jeśli etykiety wszystkich wierzchołków są unikalne, tj. x,y V,x y (l 1 (x),..., l k (x)) (l 1 (y),..., l k (y)). Jeśli dla takiego grafu istnieje etykietowanie nad alfabetem o mocy 4, to dodatkowo taki graf został nazwany grafem DNA [3]. W rozprawie używane są następujące notacje klas grafów: Lk α grafy (α, k)-etykietowalne; L k α grafy (α, k)-dowolnie etykietowalne; L k grafy, dla których istnieje alfabet o mocy α > 0 taki, że graf ten jest (α, k)- dowolnie etykietowalny (k > 0); Lk grafy, dla których istnieje alfabet o mocy α > 0 taki, że graf ten jest (α, k)-etykietowalny (k > 1). Poniżej przedstawiono twierdzenia, które są istotne w dalszych rozważaniach.

Podstawowe zagadnienia teorii grafów i informatyki teoretycznej 8 Twierdzenie 3.4 ([3]). Niech k > 2. Wtedy L k L k 1 oraz L k L k 1. Twierdzenie 3.5 ([3]). Graf jest skierowanym grafem liniowym wtedy i tylko wtedy, gdy należy do klasy L 2. Twierdzenie 3.6 ([3]). Graf jest grafem sprzężonym wtedy i tylko wtedy, gdy należy do klasy L 2. 3.4 Grafy i sekwencje de Bruijna W definicji 3.5 przedstawiono graf de Bruijna jako pełny graf etykietowalny (analogicznie grafy etykietowalne można definiować jako grafy indukowane grafów de Bruijna). Definicja 3.5. Jeśli graf (α, k)-etykietowalny posiada α k wierzchołków (wierzchołki o wszystkich możliwych etykietach o długości k) oraz α k+1 łuków jest nazywany k- wymiarowym grafem de Bruijna B(α, k). Twierdzenie 3.7 ([64]). Każdy k wymiarowy graf de Bruijna (dla k > 1) jest grafem liniowym (k 1)-wymiarowego grafu de Bruijna, tj. B(α, k) = L (B(α, k 1)). Grafy de Bruijna stanowią podklasę grafów leksykalnych zdefiniowanych w rozdziale 5. Każdy graf de Bruijna B(α, k) = (V, A) posiada następujące własności (analogiczne własności zostaną udowodnione także dla grafów leksykalnych): (1) N + (v) = N (v) = α, (2) graf posiada obwód Eulera, (3) graf posiada cykl Hamiltona. Poniżej zdefiniowano pojęcie etykiety łuku dla powyższych grafów. Definicja 3.6. Niech graf G = (V, A) będzie grafem (α, k)-dowolnie etykietowalnym. Etykietą łuku nazywamy słowo o długości j = k+1, które powstało w wyniku połączenia etykiety poprzednika i etykiety następnika poprzez dołączenie do etykiety poprzednika ostatniej litery etykiety następnika. Etykieta łuku a A będzie oznaczona przez [a], zatem jeśli a = (x, y), to [a] = ([x], l k (y)). Jednocześnie l i (a) będzie oznaczać i-tą literę etykiety łuku a. Etykieta łuku może być uogólniona do etykiety drogi w grafie. Definicja 3.7. Niech graf G = (V, A) będzie grafem (α, k)-dowolnie etykietowalnym oraz niech r m = (a 1,..., a m ) będzie drogą w tym grafie (a 1,..., a m A). Etykietą drogi [r m ] nazywamy słowo o długości j = k + m, które powstało w wyniku połączenia etykiety pierwszego łuku, oraz ostatnich liter etykiet kolejnych łuków w drodze. Zatem [r m ] = ([a 1 ], l k (a 2 ),..., l k (a m )). W rozdziale 5 przedstawiony jest algorytm budowy bibliotek oligonukleotydów antykomplementarnych, którego słowo wynikowe jest etykietą drogi uogólnioną dla grafów bazowo etykietowalnych opisanych w rozdziale 4. Ponadto etykieta drogi, która jest obwodem Eulera w grafie de Bruijna jest nazywana sekwencją de Bruijna [8, 11] (czasem też pełnym cyklem [19]). Uogólnienie sekwencji de Bruijna dla grafów leksykalnych zostanie przedstawione w rozdziale 4. Definicja 3.8. Niech B(α, k) = (V, A) będzie grafem de Bruijna oraz niech r m = (a 1,..., a m ) (gdzie m = α k+1 ) będzie obwodem Eulera tego grafu. Wtedy etykieta tego obwodu [r m ] jest sekwencją de Bruijna rzędu k + 1. Każde podsłowo tej etykiety o długości k + 1 jest unikalne.

Rozdział 4 Grafy bazowo-etykietowalne i leksykalne 4.1 Wprowadzenie W tym rozdziale przedstawione zostaną grafy bazowo etykietowalne oraz grafy leksykalne, które są uogólnieniem grafów etykietowalnych [3] i odpowiednio grafów de Bruijna [11]. Grafy te oraz ich analizę autor zaprezentował także w czasopiśmie Discrete Applied Mathematics [34] (wcześniej podstawowe założenia zostały omówione w pracach [30, 33]). Najważniejszą różnicą pomiędzy grafami etykietowalnymi i grafami de Bruijna a grafami bazowo etykietowalnymi i leksykalnymi jest długość nałożenia wymaganego do wystąpienia łuku. Długość ta jest nazwana długością bazy łuku i określona jest przez parametr β. Pozostała część etykiety jest nazwana swobodą łuku - lewostronną dla bazy łuku wychodzącego oraz prawostronną dla bazy łuku wchodzącego i jej długość jest określona przez stopień swobody σ = k β. 4.2 Definicje i podstawowe własności Dla grafów bazowo-etykietowalnych bazy łuków wchodzących i wychodzących mogą dodatkowo być rozdzielone jeśli k < 2σ przez separator baz o długości ω = k 2β = 2σ k. Podobnie jak dla grafów etykietowalnych i dowolnie etykietowalnych wprowadzony zostanie analogiczny podział na grafy dowolnie bazowo etykietowalne oraz bazowo etykietowalne. Definicja 4.1 ([34]). Grafy dowolnie bazowo etykietowalne Niech α, k, σ > 0, σ k, β = k σ, ω = k 2β będą liczbami całkowitymi. Wtedy skierowany 1-graf G = (V, A) jest grafem (α, k, σ)-dowolnie bazowo etykietowalnym o wymiarze k, stopniem swobody σ, długością bazy łuku β oraz odległością baz ω, jeśli istnieje funkcja l : V {0,..., α 1} k (nazwana (α, k, σ)-etykietowaniem) taka, że: 1) x V l(x) = (l 1 (x), l 2 (x),..., l k (x)), 2) istnieje łuk (x, y) pomiędzy wierzchołkami x oraz y wtedy i tylko wtedy gdy ostatnie β liter etykiety x jest równe pierwszym β literom etykiety y: (x, y) A (l σ+1 (x),..., l k (x)) = (l 1 (y),..., l β (y)). Etykieta wierzchołka x będzie oznaczana jako [x] = l(x). 9

Grafy bazowo-etykietowalne i leksykalne 10 Definicja 4.2 ([34]). Grafy bazowo etykietowalne Niech G = (V, A) będzie grafem dowolnie bazowo etykietowalnym z (α, k, σ)- etykietowaniem l. G jest grafem (α, k, σ)-bazowo etykietowalnym, jeśli funkcja etykietująca jest różnowartościowa (etykiety wierzchołków są unikalne). Podobnie jak dla grafów etykietowalnych L k,σ α będzie oznaczać grafy (α, k, σ)-dowolnie bazowo etykietowalne, a Lk,σ α grafy (α, k, σ)-etykietowalne. Ponadto L k,σ oznacza grafy, dla których istnieje α > 0 taka, że graf jest (α, k, σ)-dowolnie bazowo etykietowalny (analogicznie dla grafów bazowo-etykietowalnych). Dla grafów bazowo etykietowalnych zdefiniowano etykietę łuku analogicznie do definicji 3.6 tj. jeśli G = (V, A) będzie grafem (α, k, σ)-dowolnie bazowo etykietowalnym to etykieta łuku a = (x, y) A będzie równa [a] = ([x], l k σ+1 (y),..., l k (y)). Etykieta drogi jest definiowana w taki sam sposób jak w definicji 3.7 z uwzględnieniem definicji etykiety łuku dla grafu bazowo-etykietowalnego. W dalszej części zdefiniowane są części składowe etykiet tj. dla wierzchołka x wyróżnia się x bazę łuków wchodzących tj. pierwsze β liter etykiety [x], δ x swobodę łuków wchodzących tj. ostatnie σ liter etykiety [x], Λ x bazę łuków wychodzących tj. ostatnie β liter etykiety [x], λ x swobodę łuków wychodzących tj. pierwsze σ liter etykiety [x] oraz Ω x separator baz, tj. ω = k 2σ liter występujących pomiędzy bazami łuków wchodzących i wychodzących (istnieje tylko gdy ω > 0). Dla łuku a = (x, y) definiowane są ponadto: baza łuku base(a) = Λ x = y, swoboda lewostronna łuku left(a) = λ x i swoboda prawostronna łuku right(a) = δ y. Grafy leksykalne są definiowane analogicznie do grafów de Bruijna dla definicji 4.2: Definicja 4.3 ([34]). Grafy leksykalne Jeśli graf (α, k, σ)-bazowo etykietowalny ma dokładnie α k wierzchołków (i tym samym α k+σ łuków), to nazywany jest grafem leksykalnym L(α, k, σ) o wymiarze k i swobodzie σ. Grafy de Bruijna są zatem grafami leksykalnymi (B(α, k) = L(α, k, 1)), ale nie każdy graf leksykalny jest izomorficzny z grafem de Bruijna pokazano bowiem, że taki izomorfizm nie istnieje już dla grafu L(2, 5, 2), a Twierdzenie 4.7 pokazuje, że tylko dla niewielkiej grupy grafów taki izomorfizm istnieje. Zdefiniowano sekwencje leksykalne jako uogólnienie sekwencji de Bruijna: Definicja 4.4. Sekwencja leksykalna Niech L(α, k, σ) = (V, A) będzie grafem leksykalnym oraz niech r m = (a 1,..., a m ) (gdzie m = α k+σ ) będzie obwodem Eulera tego grafu. Wtedy etykieta tego obwodu [r m ] jest sekwencją leksykalną rzędu k + σ z przesunięciem σ. Każde podsłowo tej etykiety o długości k + σ zaczynające się na pozycji podzielnej przez σ jest unikalne. Sekwencje leksykalne zostały zdefiniowane podczas prac nad algorytmem budowy bibliotek (który jest opisany w rozdziale 5) jako sekwencja, którą można uzyskać bez usuwania z grafu leksykalnego łuków komplementarnych. Rysunek 4.1 przedstawia graf L(2, 3, 2) i zbudowaną na jego obwodzie Eulera przykładową sekwencję leksykalną. Poniżej przedstawiono definicje i twierdzenia związane z grafami bazowoetykietowalnymi oraz leksykalnymi, które zostały w rozprawie oraz w większości w pracy [34] udowodnione. Twierdzenie 4.1. Niech G = (V, A) będzie grafem sprzężonym oraz x, y V. Jeśli zachodzi zależność N + (x) N + (y) oraz N (x) N (y), to x oraz y będą miały te same etykiety dla dowolnego (α, k, σ)-etykietowania, dla którego ω = 2σ k 0.

Grafy bazowo-etykietowalne i leksykalne 11 Rysunek 4.1: Graf L(2, 3, 2) na którym zaznaczono przebieg obwodu Eulera. Następnie etykiety łuków tego obwodu połączono w etykietę obwodu, która jest sekwencją leksykalną rzędu 5 z przesunięciem 2. Sekwencja ma długość σα j + j σ = 67, gdzie j = k + σ. Definicja 4.5. Liczba wierzchołków równoważnych grafu sprzężonego Niech G = (V, A) będzie grafem sprzężonym. Wtedy { { } } ρ(g) = max y V : N + (x) N + (y) N (x) N (y) x V oznacza liczbę wierzchołków równoważnych. Definicja 4.6. Liczba wierzchołków słabo równoważnych grafu sprzężonego Niech G = (V, A) będzie grafem sprzężonym. Wtedy { { } } φ(g) = max y V : N + (x) = N + (y) N (x) = N (y) x V oznacza liczbę wierzchołków słabo równoważnych. Wniosek 4.1. Niech G będzie p-grafem, a H będzie jego grafem sprzężonym. Zachodzi wtedy nierówność φ(h) p ρ(h). Definicja 4.7. Liczba wierzchołków o równoważnych etykietach Niech G = (V, A) L k α, oraz l będzie (α, k, σ)-etykietowaniem G. Wtedy: ρ l (G) = max x V { {y V : x = y Λ x = Λ y } } jest liczbą wierzchołków o równoważnych etykietach. Poniższe twierdzenie stanowi uogólnienie twierdzenia 3.7 dla grafów leksykalnych: Twierdzenie 4.2 ([34]). Każdy graf leksykalny L(α, k, σ) dla którego ω = 2σ k 0 jest grafem sprzężonym grafu leksykalnego o wymiarze k σ oraz takim samym stopniu swobody, tj. L(α, k, σ) = L (L(α, k σ, σ)). 4.3 Relacje grafów bazowo etykietowalnych i leksykalnych z grafami etykietowalnymi i grafami de Bruijna W tym podrozdziale zostały przedstawione twierdzenia o izomorficzności różnych klas grafów bazowo etykietowalnych z grafami etykietowalnymi, które zostały udowodnione w rozprawie. Poniższe wyniki są także opublikowane w pracy [34].

Grafy bazowo-etykietowalne i leksykalne 12 Rysunek 4.2: Powyższy diagram pokazuje relacje pomiędzy poszczególnymi klasami grafów etykietowalnych, grafami liniowymi oraz sprzężonymi: 1. Na mocy twierdzenia 3.6 klasa grafów sprzężonych jest równoważna klasie L 2. 2. Na mocy twierdzenia 3.5 klasa skierowanych grafów liniowych jest równoważna klasie L2. 3. Na mocy twierdzenia 3.4 zachodzi izomorfizm (a) oraz (c). 4. Na mocy twierdzenia 4.4 zachodzi izomorfizm (e). 5. Na mocy twierdzenia 4.3 zachodzi izomorfizm (b) oraz (d). Twierdzenie to jest bardziej ogólne niż przedstawiona sytuacja, gdyż dotyczy wszystkich grafów (α, k, σ)- bazowo etykietowalnych, dla których liczba wierzchołków o równoważnych etykietach jest równa 1, tutaj tylko całe klasy są brane pod uwagę. Można bowiem zauważyć, że jeśli G Lk,σ ω 0, to istnieje takie (α, k, σ)-etykietowanie l, że ρ l(g) = 1, więc spełniony jest warunek tego twierdzenia. Definicja 4.8. Izomorfizm klas Niech Q oraz W będą klasami grafów. Mówimy, że Q jest izomorficzną podklasą W wtedy i tylko wtedy, gdy każdy graf z klasy Q posiada izomorficzny graf w klasie W. Jeśli dodatkowo zachodzi odwrotna relacja, tj. jeśli W jest także izomorficzną podklasą Q to mówimy, że klasy Q i W są izomorficzne. Izomorfizm klas oznaczany będzie Q W. Twierdzenie 4.3. Niech G = (V, A) L k,σ α będzie grafem bazowo etykietowalnym z (α, k, σ)-etykietowaniem l. Graf G posiada izomorficzny graf (α 2, k 2 )-dowolnie etykietowalny, dla którego α 2 = α β oraz k 2 = 2. Dodatkowo, jeśli liczba wierzchołków o równoważnych etykietach jest równa 1 (ρ l (G) = 1) to G posiada izomorficzny graf (α 2, k 2 )-etykietowalny. Rysunek 4.2 pokazuje relacje między różnymi klasami grafów (zarówno z twierdzenia 4.3 jak i kolejnych twierdzeń). Wniosek 4.2. Niech G 2 L α 2 k 2 będzie grafem dowolnie etykietowalnym, który jest izomorficzny do grafu leksykalnego L(α, k, σ), dla którego ω > 0. Zgodnie z twierdzeniem 4.3 α 2 = α β = α k σ oraz k 2 = 2. Z uwagi na fakt, że pomijany jest wpływ separatora baz na wartość etykiety, każda etykieta powtarza się α ω razy. Jeśli utworzymy podgraf indukowany grafu G 2 taki, że dla każdego z α 2β różnych zbiorów zawierających wierzchołki o tych samych etykietach usunie się wszystkie wierzchołki poza jednym (tj. łącznie usunie się α 2β (α ω 1) wierzchołków), to otrzymany graf będzie grafem de Bruijna B(α 2, k 2 ). Twierdzenie 4.4. Niech graf dowolnie bazowo etykietowalny G = (V, A) L α k,σ posiada (α, k, σ)-etykietowanie l. Wtedy dla G istnieje izomorficzny graf bazowo etykietowalny G 2 = (V 2, A 2 ) L α 2 k 2,σ 2 taki, że α 2 = max{α β, m}, m = ρ l (G), k 2 = 3 oraz σ 2 = 2. Twierdzenie 4.5. Jeśli σ k (σ jest dzielnikiem k), k σ, α 2 = α σ oraz k 2 = k σ, wtedy L k,σ α L α 2 k 2 oraz Lk,σ α L α 2 k 2.

Grafy bazowo-etykietowalne i leksykalne 13 Rysunek 4.3: Izomorficzne grafy L(2, 4, 2) oraz B(4, 2). Transformacja etykiet została przeprowadzona zgodnie z dowodem twierdzenia 4.6. Twierdzenie 4.6. Każdy graf leksykalny L(α, k, σ), dla którego σ k, posiada izomorficzny graf B(α σ, k / σ ). Twierdzenie 4.7. Niech L(α, k, σ) będzie grafem leksykalnym, dla którego σ k. Graf ten nie posiada izomorficznego grafu de Bruijna. Rysunek 4.3 pokazuje izomorficzne grafy L(2, 4, 2) oraz B(4, 2), których etykiety odpowiadają sobie zgodnie z powyższym twierdzeniem. Poniższe twierdzenie stanowi uogólnienie twierdzenia 3.4 dla grafów dowolnie etykietowalnych. Twierdzenie 4.8. Niech k > σ + 1. Wtedy zachodzi zależność L k,σ L k 1,σ. Dowiedzione zostanie w rozprawie, że każdy graf leksykalny posiada cykl Hamiltona. W tym celu udowodniono i wykorzystano poniższy lemat. Lemat 4.1. Na mocy wniosku 4.2 wiemy, że każdy graf leksykalny dla którego ω > 0 może być zredukowany do grafu de Bruijna o długości etykiety równej 2. W niniejszym lemacie rozpatrywane będzie postępowanie odwrotne, tj. kopiowanie wierzchołków w takim grafie de Bruijna. Przyjmijmy więc, że: 1) G (1) = (V, A) = B(α, k) jest grafem de Bruijna i k = 2, } 2) V i = {v 1 i, vi 2,..., vi jest kopią V oraz V (n) jest multizbiorem, który jest sumą n α k kopii V : V (n) = n ( } ) V i więc x V {v V (n) : [v] = [x] = n i=1 ( 3) G (n) = V (n), A (n)) L k α jest grafem dowolnie etykietowalnym, w którym A(n) jest zbiorem indukowanym przez nałożenia etykiet w V (n) zgodnie z definicją 3.3. Wtedy dla każdego n 1 graf G (n) posiada cykl Hamiltona. Twierdzenie 4.9. Każdy graf leksykalny posiada cykl Hamiltona.

Grafy bazowo-etykietowalne i leksykalne 14 Rysunek 4.4: Przykład konstrukcji cykli Hamiltona dla lematu 4.1. a) Graf de Bruijna G (1) = B(2, 2) = (V, A), b) graf G (2) = (V (2), A (2) ) L 2 2, w którym wykropkowane wierzchołki i łuki pochodzą z grafu (a), c) graf G (3) = (V (3), A (3) ) L 2 2,w którym wykropkowane wierzchołki i łuki pochodzą z grafu (b). Przebiegi cyklu Hamiltona są oznaczone numerami przy łukach. Należy zaznaczyć, że zbiory łuków A (2) oraz A (3) na tym rysunku nie zawierają wszystkich łuków wynikających z nałożeń między bazami ze względu na czytelność. 4.4 Problemy kombinatoryczne Ostatnia, niewielka część analizy własności obejmuje dowód złożoności obliczeniowej wybranego problemu. Problem ten dotyczy wyszukiwania podgrafu, który jest grafem leksykalnym. Udowodniono w rozprawie, że poniżej sformułowany problem 4.1 jest NPzupełny. Pokazano transformację wielomianową problemu kliki do poniższego problemu. Problem 4.1. Problem podgrafu leksykalnego Instancja. Graf G = (V, A) będący grafem skierowanym oraz liczby naturalne α > 1, σ > 0, k σ takie, że α k < V oraz α k+σ < A. Odpowiedź. TAK, jeżeli w G istnieje podgraf leksykalny L(α, k, σ), lub NIE w przeciwnym wypadku. Twierdzenie 4.10. Problem podgrafu leksykalnego jest NP-zupełny. Dla powyższego problemu można sformułować następującą wersję optymalizacyjną, która automatycznie będzie NP-trudna (podobnie można pokazać że problem maksymalnej kliki transformuje się wielomianowo do podproblemu maksymalnego podgrafu leksykalnego): Problem 4.2. Problem maksymalnego podgrafu leksykalnego Instancja. Graf G = (V, A) będący grafem skierowanym. Odpowiedź. Największy podgraf grafu G będący grafem leksykalnym L(α, k, σ) (o maksymalnej liczbie wierzchołków, tj. wartości α k ).

Rozdział 5 Algorytm budowy bibliotek oligonukleotydów oparty na grafach leksykalnych 5.1 Wprowadzenie i motywacja W tym podrozdziale omówiono różne rodzaje bibliotek DNA (genomowe, cdna, losowych mutacji genów) oraz motywację formułowania problemu analizowanego w tym rozdziale rozprawy. Tak jak wspomniano w podrozdziale 2.5, wierzchołki grafu, w którym szukana jest ścieżka Hamiltona, kodowane są przez losowo wygenerowane łańcuchy DNA o parzystej długości l, które ze względu na obecność w jednym środowisku mogą hybrydyzować także między sobą (pożądane są tylko hybrydyzacje wierzchołków z łukami). Proponowany algorytm (którego pierwszy szkielet dla grafów de Bruijna opisano w pracy [32]) bazuje na grafach oraz sekwencjach leksykalnych i zapewnia, że maksymalna długość komplementarnych fragmentów nie przekroczy wartości pewnego parametru. Wszystkie wierzchołki są kodowane przez łańcuchy o tej samej długości, więc istnieją dwa parametry określające bibliotekę kodującą wierzchołki - liczba łańcuchów n oraz długość łańcucha l. Trochę bardziej rozbudowana (niż w pracy [32]) koncepcja algorytmu rozwiązującego ten problem bazująca na grafach de Bruijna została przedstawiona w rozprawie doktorskiej [21] jako wynik równoległej pracy nad koncepcją algorytmu. W pracy [30] zaprezentowano ponadto pierwsze próby wykorzystania grafów leksykalnych w tym algorytmie, jednak nie przeprowadzono szczegółowej analizy algorytmu oraz wpływu doboru parametrów grafów leksykalnych na wyniki algorytmu. W niniejszej rozprawie przedstawiono algorytm bazujący na grafach leksykalnych, omówiono znaczenie parametrów grafu leksykalnego oraz wykonano narzędzie do generowania bibliotek i wizualizacji grafów. Uwzględniono ponadto przypadek rozspójnienia grafu, na którym bazuje algorytm oraz uwzględniono możliwość utraty własności przeciwzwrotności relacji komplementarności dla słów o parzystej długości (tj. wersje algorytmu prezentowane we wszystkich wcześniejszych pracach nie rozważały szczególnych przypadków, w których ten algorytm nie będzie działać poprawnie). Zdefiniowano ponadto pojęcia okna kontrolnego i antykomplementarnego, wykonano eksperymenty obliczeniowe i przedstawione zostały możliwości optymalizacji wyników. 15

Algorytm budowy bibliotek oligonukleotydów oparty na grafach leksykalnych 16 5.2 Model i reprezentacja problemu Nukleotydy w DNA można formalnie traktować jako litery w czteroliterowym alfabecie, tj. Σ = {A, C, T, G}. W zbiorze liter Σ zdefiniowana jest symetryczna przeciwzwrotna binarna relacja komplementarności, tj. A T oraz C G. Moc alfabetu α = Σ do dowolnej dodatniej liczby parzystej, z uwagi na możliwość zdefiniowania relacji komplementarności. Algorytm przedstawiony w tym rozdziale bazuje na założeniach: (1) dwa łańcuchy o tej samej długości są komplementarne wtedy i tylko wtedy gdy są komplementarne na każdej literze, (2) parametry n (liczby elementów biblioteki) oraz l (długość każdego łańcucha w bibliotece) można zredukować do jednego parametru p = nl, który jest długością łańcucha utworzonego poprzez połączenie wszystkich elementów biblioteki, (3) biblioteka jest budowana ze wszystkich liter alfabetu. Ostatnie założenie wynika z faktu, że można by zbudować bibliotekę składającą się wyłącznie z liter niekomplementarnych, ale szczególnie dla alfabetu DNA o mocy 4 spowodowałoby to dwukrotny wzrost długości log2 n log 2 4 łańcucha, gdyż log 4 n = = log2 n 2. Poniżej przedstawiono definicje relacji komplementarności i antykomplementarności: Definicja 5.1. Niech Σ będzie alfabetem takim, że Σ = α > 0, 2 α oraz niech U będzie zbiorem wszystkich niepustych słów nad alfabetem Σ, tj. U = Σ \{λ}. W zbiorze U określa się relację komplementarności taką, że dla liter alfabetu Σ relacja jest symetryczna, przeciwzwrotna i każdy element ze zbioru Σ ma dokładnie jeden element komplementarny, natomiast dla słów (przynajmniej dwuliterowych, tj. ze zbioru U\Σ) relacja jest określona w taki sposób, że dwa słowa są komplementarne, jeśli są tej samej długości oraz litery na odpowiednich przeciwległych pozycjach są komplementarne. Definicja 5.2. Relacja antykomplementarności Jeśli słowa o tej samej długości nie są komplementarne, to nazywamy je antykomplementarnymi i mówimy, że zachodzi między nimi relacja antykomplementarności. Można zauważyć, że relacja komplementarności słów zachowuje własność symetryczności oraz własność istnienia dokładnie jednego słowa komplementarnego. Z uwagi na fakt, że łańcuch DNA ma zwrot (3 5 ) i hybrydyzacja następuje między łańcuchami o przeciwnych zwrotach definicja 5.1 określa komplementarność słów przez komplementarność liter na przeciwległych pozycjach słowa. Słowa o nieparzystej długości nie mogą być budowane w powyższy sposób, w związku z czym zawsze będą antykomplementarne same ze sobą. Tak zdefiniowana relacja komplementarności dla słów o nieparzystej długości jest więc relacją opozycji dla której każdy element zbioru na którym określona jest relacja ma dokładnie jeden element opozycyjny. Z uwagi na te obserwację zdefiniowano komplementarne palindromy. Ponadto zdefiniowano pojęcie okna kontrolnego i antykomplementarnego. Definicja 5.3. Komplementarny palindrom Jeśli słowo o parzystej długości jest komplementarne same ze sobą, to nazywamy je komplementarnym palindromem. Definicja 5.4. Okno kontrolne Niech Σ będzie alfabetem, p > 1 będzie długością słowa P nad alfabetem Σ, tj. P Σ p oraz c, σ będą liczbami naturalnymi takimi, że 0 < σ c p. Oknem kontrolnym z przesunięciem σ o długości c nazywamy każde podsłowo o długości c zaczynające się na pozycji iσ, gdzie i {0,..., ω (p, c, σ) 1} oraz ω (p, c, σ) = kontrolnych. p c σ + 1 jest liczbą okien

Algorytm budowy bibliotek oligonukleotydów oparty na grafach leksykalnych 17 Definicja 5.5. Okno antykomplementarne Niech Σ będzie alfabetem na którym zdefiniowana jest relacja komplementarności oraz p > 1 będzie długością słowa P nad alfabetem Σ, tj. P Σ p. Mówimy, że P ma okno antykomplementarne z przesunięciem σ (σ > 0) o długości c (0 < c < p) jeśli σ p c oraz wszystkie okna kontrolne z przesunięciem σ o długości c są unikalne oraz są parami antykomplementarne. Tak jak wspomniano algorytm bazuje na grafach leksykalnych. Jednym z parametrów tego grafu jest długość swobody łuków, więc w sposób naturalny długość ta staje się parametrem algorytmu (którego znaczenie będzie opisane w dalszej części). Bazując na powyższych założeniach można zdefiniować formalnie następujący problem: Problem 5.1. Konstrukcja łańcucha wewnętrznie antykomplementarnego Instancja. Długość łańcucha p, alfabet Σ, Σ = α > 0 taki, że 2 α, na którym określona jest relacja komplementarności zgodnie z definicją 5.1 oraz długość przesunięcia okna kontrolnego σ > 0 taka, że p > 1 2 σα2σ. Odpowiedź. Słowo P o długości P p, które posiada okno antykomplementarne z przesunięciem σ o minimalnej możliwej długości (zgodnie z opisanym wcześniej założeniem, P ma być zbudowane ze wszystkich liter alfabetu Σ). W rozprawie ponadto zdefiniowano problem budowy biblioteki oligonukleotydów jako podproblem wyżej zdefiniowanego problemu. 5.3 Opis algorytmu Zgodnie z założeniami, problem budowy biblioteki jest rozwiązywany na podstawie rozwiązania problemu 5.1 poprzez pocięcie go na n części o długości l. Dlatego poniżej przedstawiono algorytm rozwiązującego problem 5.1. Do wyznaczenia parametrów grafu zdefiniowana jest funkcja f(p, α, σ) obliczająca minimalną długość etykiety łuku w grafie leksykalnym { potrzebną, że wygenerować } łańcuch wynikowy o długości p: f (p, α, σ) = 2 1 2 min j > 0 : p 1 2 σαj + j σ + 1. Wyprowadzenie tej funkcji znajduje się w podrozdziale 5.3.2. 5.3.1 Algorytm budowy łańcucha wewnętrznie antykomplementarnego 1. Wyznacz parametry grafu leksykalnego: j = f (p, α, σ) oraz k = j σ. 2. Utwórz graf de leksykalny L(α, k, σ) = (V, A) (graf ten posiada α k wierzchołków oraz α j łuków). 3. Dla każdej komplementarnej pary łuków a 1, a 2 A, tj. takiej, że [a 1 ] [a 2 ] usuń a 1 albo a 2 w taki sposób, żeby otrzymany graf L (α, k, σ) = (V, A ) był grafem Eulera. Algorytm spełniający te założenia jest opisany w podrozdziale 5.3.3. 4. Znajdź obwód Eulera E = (a 1, a 2, a 3,..., a m ) w grafie L (α, k, σ) = (V, A ) (m = A = A 2 = αj 2 ). 5. Zbuduj wynikowe słowo P jako etykietę znalezionego obwodu Eulera E = (a 1, a 2, a 3,..., a m ), tj. dołączając kolejno swobody prawostronne łuków: P = [E] = ([a 1 ], right(a 2 ),..., right(a m 1 ), right(a m )) Słowo P ma okno antykomplementarne z przesunięciem σ o długości j.

Algorytm budowy bibliotek oligonukleotydów oparty na grafach leksykalnych 18 5.3.2 Wyprowadzenie zależności dla parametrów algorytmu W tym podrozdziale wyprowadzono wzór na f (p, α, σ), także w wersji przybliżonej tj. 2p j log α σ. Algorytm usuwania łuków będący krokiem 3 powyższego algorytmu zakłada, że relacja komplementarności dla łuków musi być przeciwzwrotna, czyli etykiety łuków muszą mieć nieparzystą długość. Nie udało się bowiem znaleźć algorytmu, który usuwa z grafu etykiety będące komplementarnymi palindromami i pozostawia graf spójny z obwodem Eulera. Wyprowadzony został { także warunek dla zbioru dopuszczalnych wartości σ dla grafu leksykalnego: S = σ > 0 : p > 1 2 σα2σ}. Każde podsłowo o długości j zaczynające się na pozycji podzielnej przez σ jest obrazem łuku, co oznacza, że słowo P ma okno antykomplementarne z przesunięciem σ o długości j. W dalszej części rozprawy przeprowadzono szczegółową analizę unikalności fragmentów łańcucha P dla σ > 1 przy zwiększaniu i zmniejszaniu przesunięcia okna. Przedstawiono tabelę z wynikami eksperymentów obliczeniowych dla różnych przypadków i stwierdzono ciekawe zależności stochastyczne, jednak nie udało się wyprowadzić formuły na zmienną losową opisującą liczbę nieunikalnych lub komplementarnych fragmentów. Sformułowano jednak otwarty problem matematyczny 5.2. Analiza ta pozwala sformułować wniosek, że z uwagi na przyjęte założenia najlepszą wartością σ jest 1, choć rozważany jest przypadek, kiedy σ = 2 może być również odpowiednią wartością. Problem 5.2. Problem liczby powtórzeń spektrum słowa losowego Niech Σ będzie alfabetem o mocy α = Σ > 1, j > 1 oraz n k będą liczbami naturalnymi, gdzie j oznacza rozmiar okna kontrolnego, a n długość słowa. Niech P (n) Σ n będzie losowym ciągiem nad alfabetem Σ o długości n oraz X(P (n)) = n k + 1 spectrum(p (n), k) będzie liczbą podciągów o długości k, które wystąpiły więcej niż raz. Jaka jest wartość oczekiwana i wariancja X(P (n))? 5.3.3 Algorytm usuwania relacji komplementarności między łukami w grafie leksykalnym Niniejszy podrozdział dotyczy kroku 3 algorytmu konstrukcji łańcucha wewnętrznie antykomplementarnego, tj. usuwania z grafu L(α, k, σ) = (V, A) łuków w taki sposób, że otrzymany graf L (α, k, σ) = (V, A ) jest grafem Eulera, a zbiór A nie zawiera łuków komplementarnych. Algorytm ten wykorzystuje symetrię grafu leksykalnego w zakresie zbioru możliwych swobód lewo- i prawostronnych dla każdej bazy łuku. W rozprawie rozważane są poszczególne etapy i parametry procesu prowadzącego następującego algorytmu: Algorytm usuwania połowy łuków z zachowaniem własności grafu Eulera i eliminacją komplementarności Podziel zbiór Σ β na zbiory Q i W takie, że Q Σ β b1,b 2 Σ β b 1 b 2 (b 1 Q b 2 / Q) (b 1 / Q b 2 Q) oraz W = Σ β \Q. Dla każdej bazy b Q wykonaj następujące kroki: 1. Wybierz parę liczb (m, n) taką, że 1 m σ oraz 1 n σ. 2. Zbuduj tablicę decyzyjną t o rozmiarach α m α n w której wiersze odpowiadają możliwym wartościom pierwszych m liter swobody lewostronnej, a kolumny odpowiadają możliwym wartościom ostatnich n liter swobody prawostronnej. Wypełnij tablicę w taki sposób, aby dana decyzja wystąpiła dla każdego wiesza dokładnie dla połowy kolumn oraz dla każdej kolumny dokładnie dla połowy wierszy. Ponadto,

Algorytm budowy bibliotek oligonukleotydów oparty na grafach leksykalnych 19 aby graf pozostał spójny w dowolnej podtablicy złożonej z dowolnej pary kolumn i dowolnej pary wierszy decyzje nie mogą mieć jednolitej wartości. Własność tą można opisać traktując t jako funkcję o następujących własnościach: t : Σ m Σ n {0, 1} U1 Σ m,u 2 Σ n, U 1 = U 2 =2 r Σ n t(i, r) = 1 i Σ m 2 αm t (a, b) / {0, 4} a U 1 b U 2 r Σ m i Σ n t(r, i) = 1 2 αn 3. Usuń z grafu łuki, które spełniają zależność a A base(a) = b t (u, v) = 1, gdzie u = (l 1 (a),..., l m (a)) oraz v = (l j n+1 (a),..., l j (a)). 5.3.4 Złożoność obliczeniowa Można zauważyć, że odpowiedź udzielana przez algorytm jest wykładniczo większa w porównaniu do rozmiaru instancji. Jeśli bowiem p jest zadaną długością łańcucha wewnętrznie antykomplementarnego to rozmiar odpowiedzi jest rzędu Θ(p), natomiast rozmiar instancji jest rzędu Θ(log p). Algorytm należy do rodziny algorytmów generujących rozwiązania o specyficznych własnościach, które można określić kilkoma parametrami liczbowymi (takim algorytmem jest też np. sito Eratostenesa). Złożoność algorytmu będzie więc wyznaczona w oparciu o rozmiar odpowiedzi. Parametrami algorytmu są p, α, σ, dla których budowany jest graf leksykalny L(α, k, σ) = (V, A). W rozprawie pokazano, że algorytm budowy łańcucha wewnętrznie antykomplementarnego ma złożoność pesymistyczną O ( p α ) σ w przypadku, gdy długość etykiety wymaga zaokrąglenia w górę, oraz optymistyczną O ( p ) σ w przeciwnym wypadku. Jeśli parametry α i σ traktujemy jako niewielkie stałe, to można uprościć złożoność algorytmu do O(p). 5.4 Optymalizacja W tym podrozdziale rozważono możliwości optymalizacji algorytmu pod kątem minimalizacji tendencji do hybrydyzacji. Rozważono sposoby konstrukcji tablic decyzyjnych oraz sposoby generowania rozwiązania. 5.5 Podsumowanie, implementacja i przykłady W tym podrozdziale zamieszczono podsumowanie rozdziału 5 oraz przedstawiono wyniki otrzymane za pomocą napisanej na potrzeby rozprawy aplikacji implementującej algorytm oraz generującej wizualizacje grafów, które występują w poszczególnych etapach algorytmu. Przedstawiono wiele wizualizacji różnych wariantów tych grafów potwierdzające wszystkie rozważania teoretyczne. Algorytm został w pełni zaimplementowany w języku Java przy użyciu otwartej biblioteki Java Universal Network/Graph Framework (JUNG) [42]. Implementacja umożliwia definiowanie dowolnego alfabetu, dowolnych mechanizmów konstrukcji tablic decyzyjnych oraz funkcji kosztu sekwencji dla mechanizmów optymalizacji opisanych w podrozdziale 5.4. Przedstawiony algorytm konstrukcji łańcucha wewnętrznie antykomplementarnego jest także interesujący z czysto matematycznego punktu widzenia, gdyż de facto, łańcuch wewnętrznie antykomplementarny jest sekwencją de Bruijna (lub sekwencją leksykalną w ogólności), w której wyeliminowana jest pewna relacja opozycji między unikalnymi składnikami tej sekwencji.