Der "Shotgun"-Ansatz. Bioinformatik I. Zentrum für Bioinformatik der Universität des Saarlandes WS 2002/2003. Der "Shotgun"-Ansatz

Größe: px
Ab Seite anzeigen:

Download "Der "Shotgun"-Ansatz. Bioinformatik I. Zentrum für Bioinformatik der Universität des Saarlandes WS 2002/2003. Der "Shotgun"-Ansatz"

Transkript

1 Der "Shotgun"-Ansatz 1 Bioinformatik I Zentrum für Bioinformatik der Universität des Saarlandes WS 2002/2003 Der "Shotgun"-Ansatz 2 1

2 Der "Shotgun"-Ansatz 3 ATGC TACG G T C A Der "Shotgun"-Ansatz 4 Die (46) Chromosomen sind die Träger der menschlichen Erbinformation. Der menschliche Bauplan (das menschliche Genom) besteht aus 46 Texten, die zusammen circa 3 Milliarden Buchstaben (Basenpaare) lang sind. In diesen Texten (DNA Molekülen) treten nur vier Buchstaben (Basen) auf: A, T, G, C 2

3 Der "Shotgun"-Ansatz 5?????????????????????????????????????????????????????????????????????????????????????? Unter der Sequenzierung des Genoms versteht man die Bestimmung der Reihenfolge der Buchstaben (Basen) in den Doppelsträngen der DNA Moleküle. Es genügt natürlich, die Reihenfolge in einem der beiden komplementären Stränge (Texte) zu bestimmen. Der zweite Strang kann mit Hilfe der Basenkomplementarität bestimmt werden. AACCTTACTACTGGGGTTTTATGCATGCATGCCCCGGGA TTGGAATGATGACCCCAAAATACGTACGTACGGGGCCCT Der "Shotgun"-Ansatz 6 Die Sequenzierung des menschlichen Genoms war das herausragende wissenschaftliche Ereignis der letzten Jahre bzw. Jahrzehnte. Sie wurde in den Medien als die Mondlandung der Biologie gefeiert. Schaut man genauer hin, so stellt man fest, daß die Bezeichnung Mondlandung der Bioinformatik in gewisser Weise treffender gewesen wäre. Zwei Projekte konkurrierten bei der Sequenzierung des menschlichen Genoms miteinander: (1) Das öffentlich geförderte Humangenomprojekt: HUGO oder HGP (2) Die amerikanische Firma Celera Genomics unter der Leitung von Graig Venter: Celera 3

4 Der "Shotgun"-Ansatz 7 HGP: Mehr als 1100 Wissenschaftler aus 18 Ländern. Das Projekt startete in den achtziger Jahren. Das Projekt sollte zwischen 2005 und 2010 enden. Die Kosten des Projekts gehen in die Milliarden. Celera: Circa 100 Wissenschaftler und circa 50 Techniker. Das Projekt startete 1998 und wurde 2001 abgeschlossen. Die Kosten wurden auf circa 400 Millionen Dollar geschätzt. Der "Shotgun"-Ansatz 8?????????????????????????????????????????????????????????????????????????????????????? DNA Zielmolekül (1) Kopieren (2) Zerkleinern (3) Auswählen (4) Sequenzieren (5) Assemblieren AACCTTACTACTGGGGTTTTATGCATGCATGCCCCGGGA TTGGAATGATGACCCCAAAATACGTACGTACGGGGCCCT 4

5 Der "Shotgun"-Ansatz 9 (1) Kopieren des DNA Zielmolekül PCR: Polymerase Chain Reaction Cloning: Einbau in einen Vector (z.b. Bakterium) Der "Shotgun"-Ansatz 10 (2) Zerkleinern Die DNA Moleküle werden durch Einwirkung von Ultraschall oder durch Anwendung von hohem Druck (mit hohem Druck durch eine feine Düse gepresst) zerkleinert. 5

6 Der "Shotgun"-Ansatz Auftrennung mit Gelelektrophorese (3) Auswählen Der "Shotgun"-Ansatz 12 (4) Sequenzieren Celera hatte 300 ABI 3700 DNA Sequenzierer im Einsatz Die Sequenzierer verwenden die Kapillargelelektrophoresetechnik. Welche DNA Moleküle zu welchem Zeitpunkt das Kapillar durchwandern, wird mit einem Laser abgelesen. 6

7 Der "Shotgun"-Ansatz 13 TCACAATCAACTGCGCTATAG AGTG AGTGT TA AGTGTTAGTTGACGCGATATC C A T C T G T C A C T T A A A C A T C G C T A T A A A G C G T G T C G Der "Shotgun"-Ansatz 14 TCACAATCAACTGCGCTATAG AGTG AGTGT TA AGTGTTAGTTGACGCGATATC Die Doppelhelix wird aufgebrochen und in eine Lösung von Nukleinsäuren (Nukleotiden) gegeben, von denen viele phosphoriszierend markiert sind. Die vier verschiedenen Nukleotide unterscheiden sich in der Farbe. Die einzelnen Basen bzw. Nukleotide (Buchstaben) lagern sich nun zufällig an komplementäre Basen (Buchstaben) an. Markierte Nukleinsäuren haben die zusätzliche Eigenschaft, daß sie die Reaktion beenden. Auf diese Art und Weise erhält man eine Lösung mit allen komplementären DNA Bruchstücken, die mit dem ersten komplementären Buchstaben (in unserem Beispiel A) beginnen und mit einem markierten Buchstaben enden. Die Bruchstücke in dieser DNA Suppe werden dann mit Hilfe der Kapillargelelektrophorese der Länge nach sortiert. Mit Hilfe des Lasers kann man an der farblichen Markierung des letzten Buchstabens ablesen, mit welchem Buchstaben die einzelnen, der Länge nach sortierten, Bruchstücke enden. 7

8 Der "Shotgun"-Ansatz 15 Mit einem Sequenzierer kann man gleichzeitig eine bestimmte Zahl von DNA Fragmenten in der Größenordnung von circa 500 Buchstaben sequenzieren bzw. lesen. Der "Shotgun"-Ansatz 16 (5) Assemblieren ATGGCCTCGTCAATGCATG CCGGTGCATGCATGGCCTCGTCAA Man suche alle Paare von Textfragmenten, die sich überlappen, d.h., das Ende des einen Fragments ist identisch oder ähnelt dem Anfang des anderen Fragments oder umgekehrt. ATGCGGTTGCTACGT ATCGGTGACCA ATTCATGCGGTTGC CGTCGTATCG GACCACGGTT TCATGCGG ACGTCGT TCGGTGACCACGGTT ATTCATG GGTTGCTAC CGTATCG ACCACGG ATTCATGCGGTTGCTACGTCGTATCGGTGACCACGGTT Mit Hilfe dieser Überlappungsinformationen versucht man das riesige Textpuzzle zusammenzusetzen und den Originaltext zu rekonstruieren. 8

9 Der "Shotgun"-Ansatz 17 ATGGCCTCGTCAATGCATG CCGGTGCATGCATGGCCTCGTCAA Drei Kernprobleme der Bioinformatik: 1. Datenbanksuche nach ähnlichen Sequenzen (Texten): Gegeben ein Pattern P und eine Menge von Texten (Sequenzen) T = {t 1, t 2,..., t s }. Suche alle Sequenzen t i, die P lokal oder global ähneln. Gegeben ein Pattern P und ein großer Text T. Suche alle Teilsequenzen von T, die dem Pattern P oder Teilsequenzen des Pattern ähneln ATGGCCTCGTCAATGCATG CCGGTGCATGCATGGCCTCGTCAA Berechnung von Sequenzalignments: Ordne die Buchstaben von zwei oder mehreren vorgegebenen Sequenzen so in Form einer Matrix übereinander an, dass man in den Spalten der Matrix die Gemeinsamkeiten und Unterschiede der Sequenzen erkennt. [Exaktere Definition folgt]. Der "Shotgun"-Ansatz 18 ATGCGGTTGCTACGT ATCGGTGACCA ATTCATGCGGTTGC CGTCGTATCG GACCACGGTT TCATGCGG ACGTCGT TCGGTGACCACGGTT ATTCATG GGTTGCTAC CGTATCG ACCACGG ATTCATGCGGTTGCTACGTCGTATCGGTGACCACGGTT Drei Kernprobleme der Bioinformatik: 3. Sequenz-Assemblierungs-Problem (Sequence Assembly Problem): Gegeben die Überlappungsinformationen und Alignments von Fragmenten einer unbekannten Sequenz. Man bestimme die Reihenfolge der Buchstaben (Basen) der unbekannten Sequenz. 9

10 Der "Shotgun"-Ansatz 19 Genom Physikal Mapping aus circa BACs. Minimum Tiling Set Shotgun Assembly BAC: BAC ist die Abkürzung für Bacterial Artificial Chromosome. Indem man einem Bakterium ein künstliches Chromsom hinzufügt, kann man die DNA in dem Chromosom mit Hilfe des Bakteriums kopieren (vermehren) und am Leben erhalten. Das künstliche Chromosom kann z.b. ein Stück menschlicher DNA enthalten. Der Einfachheit halber bezeichnet man die eingebauten DNA Sequenzen auch als BACs. Eine Bakterienkultur mit einer bestimmten DNA Sequenz bezeichnet man auch als Clone. Die BACs haben eine durchschnittliche Länge von Basenpaaren. Der "Shotgun"-Ansatz 20 Genom Physikal Mapping aus circa BACs. Minimum Tiling Set Shotgun Assembly Der Ansatz von Celera wird als Whole Genom Shotgun -Ansatz bezeichnet, da das gesamte Sequenzierungsproblem nicht in kleinere Teilprobleme (BACs beim HGP-Ansatz) unterteilt wird. Das eigentliche Assembly-Problem wird dadurch natürlich erheblich komplexer: Zahl der Basenpaare circa 3 * 10 9 bp / Lesbare Fragmentlänge * Überdeckung circa 0.5 * 10 3 bp 10 = Zahl der benötigten Fragmente circa 6 *

11 Der "Shotgun"-Ansatz 21 Um zusätzliche Abstandsinformationen zu erhalten, verwendet Celera sogenannte Mate Pairs : Fragmentpaare, deren ungefährer Abstand bekannt ist und die entgegengesetzt orientiert sind. Short 2, 10 Kbp Long 50 and 100Kbp Celera verwendet auch Informationen des Humangenomprojekts. Um weniger Fragmente sequenzieren zu müssen, werden sequenzierte BACs des HGP virtuell geschreddert und als zusätzliche Fragmente im Assembly-Prozeß verwendet. Celera stellt seine Daten dem HGP zunächst nicht zur Verfügung. Der "Shotgun"-Ansatz 22 Lücken in der Überdeckung Fehler beim Kopieren (Clonen) und beim Sequenzieren: Fehlerquote 1-2 % Repeats unterschiedlicher Länge: Repeats sind Teile der DNA, die wiederholt auftreten. Man spricht auch von Repeats, wenn sich die Teilsequenzen sehr ähnlich sind. ATGATGATCGGCGTATTCTCCACGCGTTATCGCCGTATTGTCCACATGGTCAACACACTT Repeat 11

12 Der "Shotgun"-Ansatz 23 Im Juni des Jahres 2000 verkündet der damalige US-Präsident Bill Clinton im Weißen Haus, daß es zwei Forschungsprojekten gleichzeitig gelungen ist, eine erste Version des menschlichen Genoms zu erstellen, und würdigt dies als das herausragende wissenschaftliche Ereignis der letzten Jahrzehnte. G. Venter (Celera) und Collins (HGP). Der "Shotgun"-Ansatz 24 Im Februar 2001 veröffentlichen beide Projekte ihre Resultate. Da es unterschiedliche Auffassung über die Verfügbarkeit der Genomdaten gibt, veröffenlichen die beiden Projekte in verschiedenen Zeitschriften. Celera s Resultate erscheinen in SCIENCE. HGP veröffentlicht in NATURE. Es gibt sozusagen zwei erste Versionen des menschlichen Erbguts. Buch: Cracking the Genome: Inside the Race to Unlock Human DNA, by K. Davies. 12

13 Der "Shotgun"-Ansatz 25 Celera und das HGP stellen fest, daß Ihre Versionen des Genoms aus circa 3 Milliarden Bp bestehen. Beide Versionen enthalten noch tausende von Lücken, wobei die Version von Celera weniger Lücken zu enthalten scheint. Es gibt große Unterschiede zwischen den beiden Versionen. Fig. 6. Comparison of the CSA and the HGP assembly. To generate the figure, Celera fragment sequences were mapped onto each assembly. The HGP assembly is indicated in the upper third of each panel; the Celera assembly is indicated in the lower third. In the center of the panel, green lines show Celera sequences that are in the same order and orientation in both assemblies and form the longest consistently ordered run of sequences. Yellow lines indicate sequence blocks that are in the same orientation, but out of order. Red lines indicate sequence blocks that are not in the same orientation. For clarity, in the latter two cases, lines are only drawn between segments of matching sequence that are at least 50 kbp long. Vergleich von Chromosom 13 Der "Shotgun"-Ansatz 26 Celera und das HGP stellen fest, daß Ihre Versionen des Genoms aus circa 3 Milliarden Bp bestehen. Beide Versionen enthalten noch tausende von Lücken, wobei die Version von Celera weniger Lücken zu enthalten scheint. Es gibt große Unterschiede zwischen den beiden Versionen. Fig. 6. Comparison of the CSA and the HGP assembly. To generate the figure, Celera fragment sequences were mapped onto each assembly. The HGP assembly is indicated in the upper third of each panel; the Celera assembly is indicated in the lower third. In the center of the panel, green lines show Celera sequences that are in the same order and orientation in both assemblies and form the longest consistently ordered run of sequences. Yellow lines indicate sequence blocks that are in the same orientation, but out of order. Red lines indicate sequence blocks that are not in the same orientation. For clarity, in the latter two cases, lines are only drawn between segments of matching sequence that are at least 50 kbp long. Vergleich von Chromosom 21 13

14 Der "Shotgun"-Ansatz 27 Circa 27 Millionen Fragmente (Überdeckung von 5,11 plus Überdeckung von 2,9 durch HGP Daten) Protein-codierende Gene + circa Verdächtige Gene 28 Gene kodieren die Baupläne für den Aufbau der molekularen Bausteine (Proteine, RNA). Bei der Translation wird die in der mrna gespeicherte Information übersetzt und der entsprechende Baustein (Protein) synthetisiert. Bei der mrna-reifung und Splicing werden die Introns aus der mrna herausgeschnitten. Bei der Transkription wird eine mrna-kopie (messenger RNA) des Gens erstellt. Transkriptionsfaktoren Tyr Ala Arg Tyr Val Arg Thr Translation in Protein UACGCACGUUACGUGCGUACU mrna-reifung plus Splicing UACGCACGUUA...CGUGCGUACU Transkription mrna-molekül ATGCGTGCAAT...GCACGCATGA TGACGCA CACGTG GGGCGG CCAAT TATA ATG Exon Intron Exon TGA Promoter 14

15 Der genetische Code 29 Proteine 30 Gene kodieren die Baupläne für den Aufbau der molekularen Bausteine (Proteine, RNA). Tyr Ala Arg Tyr Val Arg Thr Translation in Protein UACGCACGUUACGUGCGUACU mrna-reifung plus Splicing UACGCACGUUA...CGUGCGUACU Transkriptionsfaktoren Transkription mrna-molekül ATGCGTGCAAT...GCACGCATGA TGACGCA CACGTG GGGCGG CCAAT TATA ATG Exon Intron Exon TGA Promoter 15

16 Proteine 31 Proteine 32 Proteine sind lineare Kettenmoleküle, die aus 20 Grundbausteinen, den sogenannten Aminosäuren, aufgebaut sind: Ala, Asp, Glu, Gly, Phe, Leu, Ser, Tyr, Cys, Trp, Pro, His, Gln, Arg, Met, Asn, Lys, Val, Ile, Thr Die Reihenfolge der Aminosäuren eines Proteins nennt man die Primärstruktur (Sequenz). Die Kette eines jeden Proteins faltet sich auf spezifische Art und Weise im Raum. Dieser Faltungsprozess verleiht dem Protein eine wohldefinierte dreidimensionale Gestalt. Man spricht hierbei von der Tertiärstruktur, 3D-Struktur oder auch Konformation des Proteins. Die Primärstruktur bestimmt wesentlich die Tertiärstruktur des Proteins. Die Tertiärstruktur des Proteins hat großen Einfluss auf seine chemische Reaktivität bzw. auf die Funktion des Proteins. Primärstruktur Tertiärstruktur Funktion 16

17 Genprodukte 33 Circa 27 Millionen Fragmente (Überdeckung von 5,11 plus Überdeckung von 2,9 durch HGP Daten) Protein-codierende Gene + circa Verdächtige Gen Annotation 34 Primärstruktur Ähnliche Gene (DNA Sequenz) Tertiärstruktur Ähnliche Struktur der codierten Bausteine Funktion Ähnliche oder identische Funktion Man nehme die DNA-Sequenz von einem bekannten Gen und suche mit dieser Sequenz in der neu-sequenzierten DNA nach ähnlichen Teilsequenzen (Ähnlichkeitssuche). Die bekannten Gene können auch von anderen Spezies stammen. Da die Genome von Mensch und Maus sehr ähnlich sind, kann man zum Beispiel mit bekannten Genen der Maus nach unbekannten Genen des Menschen suchen. 17

18 Gen Annotation 35 Eine andere Möglichkeit, ein Gen zu suchen, eröffnet sich, wenn man einen Baustein (Protein), der durch ein Gen codiert wird, oder ein Zwischenprodukt (mrna) aufspüren und sequenzieren kann. Ein sehr erfolgreicher Ansatz verwendet hierzu die sogenannten Expressed Sequence Tags (ESTs): Kurze ( bp) DNA-Stücke, die aus codierenden Regionen (Exons) stammen und nur einmal im Genom vorkommen (keine Repeats). Gene, die selten oder nur in biologischen Ausnahmesituationen (Krankheit) exprimiert werden, wird man auf diese Art und Weise nur mit geringer Wahrscheinlichkeit finden, da man für diese Gene nur mit viel Glück oder extremen Arbeitsaufwand die entsprechenden Bausteine oder ESTs aufspüren kann. Transkriptionsfaktoren ATGCGTGCAAT...GCACGCATGA TGACGCA CACGTG GGGCGG CCAAT TATA ATG Exon Intron Exon TGA Promoter SNPs 36 Circa 27 Millionen Fragmente (Überdeckung von 5,11 plus Überdeckung von 2,9 durch HGP Daten) Protein-codierende Gene + circa Verdächtige Nur 1,1% des Genoms wird von Exons gebildet, während sich 24 % des Genoms in Introns befindet, d.h., circa 75 % liegt sozusagen zwischen den Genen. Bisher 2,1 Millionen Single-Nucleotide Polymorphism (SNP), d.h., im Durchschnitt 1 SNP auf 1250 Basenpaare. 18

19 SNPs 37 Bisher haben wir immer von dem menschlichen Genom gesprochen. Da jeder Mensch (bis auf eineiige Zwillinge, Clone) ein individuelles Erbgut (Genom) besitzt, gibt es Milliarden von unterschiedlichen menschlichen Genomen. SNPs sind Variationen einzelner Basenpaare: Peter ATGTGCCACACGGTCATGGTCCCACGTTGGCATACTCTCT TACACGGTGTGCCAGTACCAGGGTGCAACCGTATGAGAGA Paul ATGTGCCACACGGTCATGGCCCCACGTTGGCATACTCTCT TACACGGTGTGCCAGTACCGGGGTGCAACCGTATGAGAGA ARRAY I ARRAY II Vergleich I+II Gen-Duplikation 38 Circa 27 Millionen Fragmente (Überdeckung von 5,11 plus Überdeckung von 2,9 durch HGP Daten) Protein-codierende Gene + circa Verdächtige Nur 1,1% des Genoms wird von Exons gebildet, während sich 24 % des Genoms in Introns befindet, d.h., circa 75 % liegt sozusagen zwischen den Genen. Bisher 2,1 Millionen Single-Nucleotide Polymorphism (SNP), d.h., im Durchschnitt 1 SNP auf 1250 Basenpaare. Weniger als 1 % aller bereits identifizierter SNPs resultierten in Proteinvariationen (liegen in den Exons): circa Gen-Duplikation spielte in der Evolution des Genoms eine entscheidende Rolle. 19

20 Gen-Duplikation 39 Segmental duplications between chromosomes in the human genome. The 24 panels show the 1077 duplicated blocks of genes, containing 10,310 pairs of genes in total. Each line represents a pair of homologous genes belonging to a block; all blocks contain at least three genes on each of the chromosomes where they appear. Each panel shows all the duplications between a single chromosome and other chromosomes with shared blocks. The chromosome at the center of each panel is shown as a thick red line for emphasis. Other chromosomes are displayed from top to bottom within each panel ordered by chromosome number. The inset (bottom, center right) shows a close-up of one duplication between chromosomes 18 and 20, expanded to display the gene names of 12 of the 64 gene pairs shown. Funktions-Annotation 40 S 20

21 Expressions-Analyse 41 Zeitachse DNA Microarrays erlauben die Analyse der Genexpression (Genaktivitäten) im großen Maßstab. Sequence Assembly 42?????????????????????????????????????????????????????????????????????????????????????? DNA Zielmolekül (1) Kopieren (2) Zerkleinern (3) Auswählen (4) Sequenzieren (5) Assemblieren AACCTTACTACTGGGGTTTTATGCATGCATGCCCCGGGA TTGGAATGATGACCCCAAAATACGTACGTACGGGGCCCT 21

22 Sequence Assembly 43 Die Fragmente sind in der Regel zwischen 400 und 700 Basenpaaren (Bp) lang. Die Zahl der Fragmente wird so gewählt, dass man durch die zufällige Auswahl im Durchschnitt eine bestimmte Überdeckung (Coverage) erreicht. 6 8 Wünschenswert wäre eine Überdeckung von 10 und mehr, aber bei der Sequenzierung des menschlichen Genoms hatte man zum Beispiel eine Überdeckung von 6 bis 7. 7 * 3 * 10 9 / 500 = 21 * 10 9 / * 10 7 Fragmente Sequenzierfehlerquote 1 % Sequence Assembly 44 Wir betrachten im folgenden Varianten des Sequence Assembly Problems, die ideale Voraussetzungen und Bedingungen aufweisen, und bewegen uns dann in gewissen Schritten auf das wirkliche Sequence Assembly Problem zu. Problem [1]: Gegeben ein unbekannter Text T über einem Alphabet Σ = {A,T,C,G} und eine Menge F von Textfragmenten des Textes T. Bestimme den Text T, d.h. bestimme die Reihenfolge der Buchstaben in T. Variante [1a]: Jedes Textfragment f F hat Länge k. Die Textfragmente enthalten keine Sequenzierungsfehler. Alle Textfragmente f der Länge k von T sind in F enthalten. Es gibt keine Repeats länger als k-2 in T. T ist ein echter Text (kein DNA Doppelstrang). 22

23 Sequence Assembly 45 Beispiel [1]: T = abcde k = 3 abc bcd cde Wir betrachten die Textfragmente aus F als Knoten eines Graphen G. Frage: Welches Textfragment f folgt auf ein Textfragment f? Antwort: Die ersten k-1 Buchstaben von f müssen mit den letzten k-1 Buchstaben von f übereinstimmen! Präfix k-1 (f ) = Suffix k-1 (f) Überlappung der Länge k-1 Algorithmus [A] für Variante [1a]: [1] Man testet alle Paare (f, f ), ob eine k-1-überlappung vorhanden ist. [2] Für jedes Paar mit Überlappung wird eine gerichtete Kante zwischen die entsprechenden Knoten von G eingefügt. [3] Berechne Euler-Pfad (oder Hamiltonian Path). [4] In der Pfad-Reihenfolge konkateniere man die ersten Buchstaben aller Knoten. Dann füge man die restlichen k-1 Buchstaben des letzen Knotens hinzu. Euler-Graphen Der Schweitzer Mathematiker Leonard Euler hat sich 1736 mit der folgenden Fragestellung, dem sogenannten Königsberger-Brückenproblem, beschäftigt: A Pregel C D Ist es möglich, von irgendeinem Punkt in der Stadt loszulaufen und zu diesem Punkt wieder zurückzukehren und dabei genau einmal über jede der sieben Brücken zu wandern. B 23

24 Euler-Graphen Der Schweitzer Mathematiker Leonard Euler hat sich 1736 mit der folgenden Fragestellung, dem sogenannten Königsberger-Brückenproblem, beschäftigt: A Pregel C D Ist es möglich, von irgendeinem Punkt in der Stadt loszulaufen und zu diesem Punkt wieder zurückzukehren und dabei genau einmal über jede der sieben Brücken zu wandern. B Euler-Graphen Der Schweitzer Mathematiker Leonard Euler hat sich 1736 mit der folgenden Fragestellung, dem sogenannten Königsberger-Brückenproblem, beschäftigt: A Multi-Graph: Mehrere Kanten zwischen zwei Knoten sind erlaubt. C D B Ist es möglich, von irgendeinem Punkt in der Stadt loszulaufen und zu diesem Punkt wieder zurückzukehren und dabei genau einmal über jede der sieben Brücken zu wandern. = Gibt es einen Circuit in diesem Graphen, der jede Kante nur einmal begeht (verwendet)? Nein! Warum kann es keinen solchen Circuit geben? 24

25 Euler-Graphen Der Schweitzer Mathematiker Leonard Euler hat sich 1736 mit der folgenden Fragestellung, dem sogenannten Königsberger-Brückenproblem, beschäftigt: A Multi-Graph: Mehrere Kanten zwischen zwei Knoten sind erlaubt. C D B Ein Graph heißt zusammenhängend (connected), wenn man von jedem Knoten aus jeden anderen Knoten über einen Pfad erreichen kann. Antwort: Es gibt Knoten mit ungeradem Grad (3 und 5). Ein solcher Circuit kann aber nur existieren, wenn alle Knoten geraden Grad haben und der Graph zusammenhängend ist. Nein! Warum kann es keinen solchen Circuit geben? Euler-Graphen Definition: Ein Graph heißt Euler-Graph, wenn jeder Knoten einen geraden Grad hat und der Graph zusammenhängend ist. Satz: Ein Graph besitzt genau dann einen Euler-Circuit, wenn der Graph ein Euler-Graph ist. H I C A B Wir beweisen die schwierigere Richtung (Euler-Graph => Euler Circuit) mittels vollständiger Induktion über die Anzahl m der Kanten: Induktionsstart: m = 2 (trivial). Induktionsannahme: Jeder zusammenhängende Graph mit weniger als m Kanten, dessen Knoten alle geraden Grad haben, besitzt eine Euler-Tour. Sei G=(V,E) ein Euler-Graph mit m Kanten. D 1. Bestimme in G einen Kreis. Zum Beispiel K=ACBDA. 2. Lösche die Kanten von K. E F G 25

26 Euler-Graphen Definition: Ein Graph heißt Euler-Graph, wenn jeder Knoten einen geraden Grad hat und der Graph zusammenhängend ist. Satz: Ein Graph besitzt genau dann einen Euler-Circuit, wenn der Graph ein Euler-Graph ist. H I C E A B G Wir beweisen die schwierigere Richtung (Euler-Graph => Euler Circuit) mittels vollständiger Induktion über die Anzahl m der Kanten: Induktionsstart: m = 2 (trivial). Induktionsannahme: Jeder zusammenhängende Graph mit weniger als m Kanten, dessen Knoten alle geraden Grad haben, besitzt eine Euler-Tour. Sei G=(V,E) ein Euler-Graph mit m Kanten. D 1. Bestimme in G einen Kreis. Zum Beispiel K=ACBDA. 2. Lösche die Kanten von K. Den neuen Graphen nennen wir G. Alle Knoten von G haben geraden Grad. Aber der Graph G kann aus mehreren Zusammenhangskomponenten (ZKs) mit weniger als m Kanten bestehen: Z(1) = {A}, Z(2) = {D}, Z(3) = {H,I,C}, Z(4)={B,E,G,F} F 3. Bestimme die Zusammenhangskomponenten von G 4. Starte für alle Zusammenhangskomponenten diesen (rekursiven) Algorithmus zur Berechnung eines Euler-Circuits: Circ(Z(3)) = CIHC Circ(Z(4)) = BEGFB 5. Mische den Kreis K und die Euler-Circuits der ZKs: Circuit = ACIHCBEGFBDA Euler-Graphen Definition: Ein Knoten v eines gerichteten Graphen ist balanciert, wenn die Zahl der in v endenden Kanten gleich der Zahl der in v startenden Kanten ist. Definition: Ein gerichteter Graph ist balanciert, wenn jeder Knoten des Graphen balanciert ist. Definition: Ein gerichteter Graph heißt Euler-Graph, wenn der Graph zusammenhängend und balanciert ist. Satz: Ein Graph besitzt genau dann einen Euler-Circuit, wenn der Graph ein Euler-Graph ist. Beweis: Analog zum konstruktiven Beweis im Falle des ungerichteten Graphen. Definition: Ein Graph besitzt einen Euler-Pfad, wenn es einen Pfad im Graphen gibt, der jede Kante genau einmal verwendet bzw. genau einmal über diese Kante geht. Definition: Ein Knoten v eines gerichteten Graphen ist semi-balanciert falls Satz: indegree(v) outdegree(v) = 1. Ein zusammenhängender Graph besitzt genau dann einen Euler-Pfad, wenn er höchstens zwei semi-balancierte Knoten besitzt und alle anderen balanciert sind. 26

27 Sequence Assembly 53 Beispiel [1]: T = abcde k = 3 abc bcd cde ab bc cd de Algorithmus [B] für Variante [1a]: [1] Die k-1 Tupel in den Fragmenten der Länge k sind die Knoten von G. [2] Füge für jedes Fragment eine Kante in den Graphen G ein: Die Kante für ein Fragment verbindet den Knoten für die ersten k-1 Buchstaben mit dem Knoten, der die letzten k-1 Buchstaben des Fragments repräsentiert. [3] Berechne einen Euler-Pfad von G. [4] In der Pfad-Reihenfolge konkateniere man die ersten Buchstaben aller Knoten. Dann füge man die restlichen k-2 Buchstaben des letzen Knotens hinzu. Sequence Assembly 54 Variante [1b]: Jedes Textfragment f F hat Länge k. Die Textfragmente enthalten keine Sequenzierungsfehler. Alle Textfragmente f der Länge k von T sind in F enthalten. Es gibt keine Repeats länger als k-2 in T. T ist ein echter Text (kein DNA Doppelstrang). Wir nehmen an, dass die Fragmente der Länge k zufällig gewählt werden. Lücke Gap Die Zahl der Lücken kann dadurch reduziert werden, dass man mit einer großen Überdeckung (größer gleich 10) arbeitet. Je größer die Überdeckung, desto größer der Arbeitsaufwand. 27

28 Sequence Assembly 55 Frage: Welche Textfragmente f folgen auf ein Textfragment f? Antwort: Ein Präfix von f muss mit einem Suffix von f übereinstimmen! Präfix l (f ) = Suffix l (f) Überlappung der Länge 0< l < k Dies ist nur eine notwendige Bedingung (Indiz). Beispiel: T = CGCTATGCGC ATGCGC CGCTAT Sequence Assembly 56 Beispiel: T = ATGCTGCACGGATTGG k = 6 F = {ATGCTG, CTGCAC, CACGGA, GGATTG, GATTGG} 1 3 CTGCAC 3 CACGGA ATGCTG GATTGG 5 2 GGATTG 1 T = ATG CTG CACGGATTGG Definition [1]: Der obige Graph mit den Überlappungsinformationen wird als Overlap-Graph bezeichnet. 28

29 Sequence Assembly 57 Algorithmus [A] für Variante [1b]: [1] Die Fragmente sind die Knoten von G. [2] Teste für jedes Paar (f,f ) von Fragmenten, ob es eine echte Überlappung gibt, d.h., ob es einen Präfix von f gibt, der auch Suffix von f ist. [3] Für jedes Paar (f,f ) mit dieser Eigenschaft führen wir eine gerichtete Kante e(f,f ) mit Gewicht w(f,f ) ein, wobei w(f,f ) die Länge der Überlappung ist. [4] Berechne den Hamiltonian-Pfad von G mit dem größten Gewicht. [5] In der Pfad-Reihenfolge betrachten wir alle Fragmente f. Sei f = succ(f) der Nachfolger von f auf dem Hamiltonian-Pfad. Wir addieren zu T den Präfix p = f \ Overlap(f, f ) von f, wobei Overlap(f,f ) = Suffix w(f,f ) (f) = Präfix w(f,f ) (f ) +Text vom letzten Knoten. Sequence Assembly 58 Variante [1c]: Jedes Textfragment f F hat Länge k. Die Textfragmente enthalten keine Sequenzierungsfehler. Alle Textfragmente f der Länge k von T sind in F enthalten. Es gibt keine Repeats länger als k-2 in T. T ist ein echter Text (kein DNA Doppelstrang). Die Längen der Fragmente sind unterschiedlich. Die heutige Sequenzierungstechnologie erlaubt Längen zwischen 400 und 700 Basenpaare. Es kann vorkommen, dass Fragmente in anderen Fragmenten enthalten sind. Die Fragmente, die in anderen enthalten sind, liefern keine zusätzlichen Informationen und werden in der Regel ignoriert oder besonders markiert und bei der Hamiltonian-Pfad-Berechnung nicht berücksichtigt. 29

30 Sequence Assembly 59 Beispiel: T = ATGCTGCACGGATTGG k = 6 F = {ATGCTG, CTGCAC, CACGGA, ACGG, GGATTG, GATTGG} 2 1 ACGG CTGCAC 3 CACGGA ATGCTG GATTGG 2 GGATTG 1 T = ATG CTG CACGGAGGATTGG Sequence Assembly 60 Bezeichnungen [1]: Sei f die Länge des Fragments f. Sei ferner F = f f F die Summe der Längen aller Fragmente in F. Die Länge des berechneten Textes T ist gleich T = f Overlap ( f, f ') f F f F f ist hierbei der Nachfolger von f auf dem Ham.-Pfad. mit dem größten Gewicht: T = f F f Gewicht _ des _ optimalen _ Pfades Der angegebene Algorithmus hat also eigentlich das folgende Problem gelöst: 30

31 Sequence Assembly 61 Shortest Common Superstring Problem (SCS): Gegeben eine Menge von Strings (Textfragmenten) F. Berechne den kürzesten String T, der alle Textfragmente f F als Teilstrings enthält. Das spezielle Hamiltonian-Path-Problem wird auch als Maximum Compression Problem bezeichnet. Das SCS-Problem ist NP-hart, d.h., es ist kein Polynomialzeitalgorithmus für dieses Problem bekannt. Es existieren jedoch eine Reihe von Approximationsalgorithmen, die einen konstanten Approximationsfaktor garantieren (siehe Übung). Mittels eines Greedy-Verfahrens kann man einen Approximationsfaktor von 4 garantieren, d.h., die Länge des berechneten Superstrings T ist höchstens 4 mal die Länge des SCS T. T T ' 4 T nächste Seite Sequence Assembly 62 Beispiel: T = ATGCTGCACGGATTGG k = 6 F = {ATGCTG, CTGCAC, CACGGA, GGATTG, GATTGG} 1 3 CTGCAC 3 CACGGA ATGCTG 1 GATTGG GGATTG 1 Solange es noch Kanten in G gibt: [1] Bestimme die Kante e mit dem größten Gewicht. [2] Verschmelze die Knoten, die von e verbunden werden, zu einem Knoten und modifiziere die entsprechenden Kanten. 31

32 Sequence Assembly 63 Beispiel: T = ATGCTGCACGGATTGG k = 6 F = {ATGCTG, CTGCAC, CACGGA, GGATTG, GATTGG} 1 3 CTGCAC 3 CACGGA ATGCTG 1 3 GGATTGG 1 Solange es noch Kanten in G gibt: [1] Bestimme die Kante e mit dem größten Gewicht. [2] Verschmelze die Knoten, die von e verbunden werden, zu einem Knoten und modifiziere die entsprechenden Kanten. Sequence Assembly 64 Beispiel: T = ATGCTGCACGGATTGG k = 6 F = {ATGCTG, CTGCAC, CACGGA, GGATTG, GATTGG} 1 CACGGA ATGCTGCAC 3 3 GGATTGG Solange es noch Kanten in G gibt: [1] Bestimme die Kante e mit dem größten Gewicht. [2] Verschmelze die Knoten, die von e verbunden werden, zu einem Knoten und modifiziere die entsprechenden Kanten. 32

33 Sequence Assembly 65 Beispiel: T = ATGCTGCACGGATTGG k = 6 F = {ATGCTG, CTGCAC, CACGGA, GGATTG, GATTGG} ATGCTGCACGGATTGG Solange es noch Kanten in G gibt: [1] Bestimme die Kante e mit dem größten Gewicht. [2] Verschmelze die Knoten, die von e verbunden werden, zu einem Knoten und modifiziere die entsprechenden Kanten. Sequence Assembly 66 Variante [1d]: Jedes Textfragment f F hat Länge k. Die Textfragmente enthalten keine Sequenzierungsfehler. Alle Textfragmente f der Länge k von T sind in F enthalten. Es gibt keine Repeats länger als k-2 in T. T ist ein echter Text (kein DNA Doppelstrang). Bei einem DNA Molekül können die Fragmente aus einem der beiden Doppelstränge stammen. Die Orientierung spielt nun eine entscheidende Rolle, da die Sequenzen immer vom 5 Ende in Richtung 3 Ende gelesen (sequenziert) werden. 33

34 Sequence Assembly 67 Beispiel: AACCTTACTACTGGGGTTTTATGCATGCATGCC TTGGAATGATGACCCCAAAATACGTACGTACGG F = { TTACTAC, TTTTATG, GCATGCC, TAAGGTT, ACCCCAG, GCATGCA } Da wir nicht wissen aus welchem der Einzelstränge ein Fragment stammt, betrachten wir für jedes Fragment f noch das komplementäre Fragment cf wobei f und cf in umgekehrter Richtung gelesen werden. f = TTACTAC AATGATG cf = GTAGTAA Ist f ein Fragment des unbekannten DNA-Moleküls, so muss aufgrund der DNA-Struktur und der Basenkomplementarität auch cf ein Fragment des Moleküls sein. Sequence Assembly 68 Problem: Der Algorithmus sollte einen der beiden Stränge rekonstruieren. Er darf nicht von einem Strang zum anderen springen! Problem: Für jedes Fragment f müssen wir uns die Frage stellen, ob wir f selbst oder das komplementäre Fragment cf als Knoten zu G hinzufügen. Ziel: Bestimme eine Teilmenge O* von Fragmenten aus F cf, die nur aus Fragmenten aus einem der beiden Stränge besteht und die entweder f oder cf enthält (dies muss für jedes f aus F gelten). Warnung: Es existiert kein bekanntes Verfahren, dass die erste Bedingung garantieren kann. 34

35 Sequence Assembly 69 Definition [2]: Eine Orientierung O ist eine Teilmenge von F cf mit der folgenden Eigenschaft: Für jedes f aus F ist entweder f O oder cf O. Bezeichnung [2]: Sei (A,B) ein Paar von Fragmenten aus F cf mit A B und B ca: w(a,b) = Oberlap(A,B) Gewicht von der Kante von A nach B Länge des längsten Suffix von A, der ein Präfix von B ist. same(a,b) = max(w(a,b), w(b,a)) größt mögliches Kantengewicht, falls A und B zu einer Orientierung gehören opp(a,b) = max(w(a,cb), w(cb,a)) größt mögliches Kantengewicht, falls A und cb zu einer Orient. gehören Definition [3]: Jeder Orientierung O ordnen wir wie folgt ein Gewicht zu: w( O) = + same( A, B) ( A, B O) ( A O B O ) ( A, B O ) ( A O B O ) opp( A, B) Sequence Assembly 70 F opp same O same O cf Definition [3]: Jeder Orientierung O ordnen wir wie folgt ein Gewicht zu: w( O) = same( A, B) + ( A, B O) ( A O B O) ( A, B O) ( A O B O ) opp( A, B) 35

36 Sequence Assembly 71 Problem: Berechne die optimale Orientierung O opt mit maximalem Gewicht! Da es sehr schwierig ist, eine optimale Orientierung zu berechnen, hat man Verfahren zur Approximation entwickelt. Greedy-Verfahren: Wir betrachten die Fragmentmenge F, wobei wir annehmen, dass die Fragmente in F in einer bestimmten Reihenfolge gegeben sind: F = { f 1, f 2, f 3,..., f m } Wir starten mit der Fragmentmenge O, die nur f 1 enthält. Für alle i = 2,..., m, führen wir die folgenden Operationen aus: Berechne die beiden folgenden Gewichtssummen: w ( fi ) = w( fi, f ) w ( cfi ) = w( cfi, f ) f O f O Ist die erste Summe größer als die zweite, so füge f i zu O hinzu. Andernfalls füge cf i zu O hinzu. Sequence Assembly 72 Das Gewicht der optimalen Orientierung O opt können wir einfach durch das Gesamtgewicht aller Kanten nach oben abschätzen: w ( O ) ( same( f, f ) + opp( f, f )) opt i j< i i Wird f i zu O hinzugefügt, so vergrößert sich das Gesamtgewicht um ( same ( f, f ) + opp( f, f )) i j j< i f j O cf j O Wird cf i zu O hinzugefügt, so vergrößert sich das Gesamtgewicht um ( opp ( f, f ) + same( f, f )) i j j< i f j O cf j O j Bezeichnen wir die aktuelle Gewichtszunahme in Schritt i mit w i, so gilt: 2 w ( same( f, f ) + opp( f, f )) i j< i i j i i i j j i j j 36

37 Sequence Assembly 73 Summieren wir über alle Schritte, so erhalten wir: 1 1 w ( O ) = w i ( same ( fi, f j ) + opp( fi, f j )) w( O opt ) i 2 2 Lemma [1]: i j< i Das Greedy-Verfahren hat eine Laufzeit von O(E+V), wobei E die Anzahl der Kanten und V die Anzahl der Knoten des Overlap-Graphen G = (V,E) ist. Es berechnet eine Orientierung O, deren Gewicht garantiert größer gleich ½ w(o opt ) ist. Die Reihenfolge der Fragmente hat natürlich Einfluss auf das Gesamtgewicht der berechneten Orientierung. Kececioglu und Myers (Algorithmica 1995) haben eine Heuristik entwickelt, mit der man günstige Reihenfolgen der Fragmente berechnen kann. Ferner haben sie auch ein Branch-And-Bound-Verfahren veröffentlicht, dass die optimale Orientierung für hinreichend kleine Probleminstanzen berechnen kann. Sequence Assembly 74 Variante [1e]: Jedes Textfragment f F hat Länge k. Die Textfragmente enthalten keine Sequenzierungsfehler. Alle Textfragmente f der Länge k von T gehören zu F. Es gibt keine Repeats länger als k-2 in T. T ist ein echter Text (kein DNA Doppelstrang). Fragmente, die mit modernsten Sequenzierverfahren produziert wurden, haben eine Fehlerquote von ungefähr 1 %, d.h., im Durchschnitt findet man in 100 Buchstaben einen Fehler. ATGACCCCAAAATCCGTACGTACGGG TTGGAATGATGACCCCAAAATACGTACGTACGGGGCCCT Wie man die Zahl der Fehler reduzieren kann, lernen wir im Abschnitt über Sequencing-by-Hybridization (SBH). Es werden aber immer Fehler in den Sequenzen zurückbleiben...???? 37

38 Sequence Assembly 75 Shortest Common Superstring Problem: Gegeben eine Fragmentmenge F. Berechne den kürzesten String S, der alle Fragmente f aus F als Teilstrings enthält. Shortest Common (DNA) Supersequence Problem: Gegeben eine Fragmentmenge F von DNA-Sequenzen. Berechne die kürzeste DNA-Sequenz S, die für jedes Fragment f aus F entweder f oder cf als Teilsequenz enthält. DNA Sequence Reconstruction Problem: Gegeben eine Fragmentmenge F von DNA-Sequenzen und eine Fehlerquote 0 ε < 1. Berechne die kürzeste DNA-Sequenz S, so dass es für jedes DNA- Fragment f F einen Teilstring s in S gibt, so dass min(d(f,s), d(cf,s)) ε f d(f,s) ist eine Distanzfunktion für Sequenzen, die sogenannte Edit-Distanz. Diese Funktion haben wir in Info V kennen gelernt, als wir Sequenz-Alignments diskutiert haben (Im zweiten Teil dieser Vorlesung werden wir uns intensiv mit diesem Thema beschäftigen). Sequence Assembly 76 Bei der Betrachtung der fehlerfreien idealen Variante des Problems haben wir für jedes Paar (f,f ) von Fragmenten die Überlappung berechnet: Overlap(f,f ) = der längste Suffix von f, der auch ein Präfix von f ist. ATGCCGTAGCC TAGCCAACTGCT Da Sequenzierfehler auftreten können, dürfen wir nicht mehr nach exakten Matchings suchen, sondern wir müssen nach sogenannten approximativen Matchings suchen (Standardproblem der Bioinformatik): Approximative_Overlap(f,f ) = der längste Suffix von f, dessen Edit-Distanz mit einem Präfix von f kleiner gleich einer Konstanten e ist (oder ε Suffix ). Beispiel: e = 1. Ein Fehler ist erlaubt. ATGCCGTAGCC TACCCAACTGCT Substitution ATGCCGTAGCC TA-CCAACTGCT Deletion ATGCCGTA-CC TACCCAACTGCT Insertion 38

39 Sequence Assembly 77 Wir berechnen den Approximative_Overlap(f.f ) für jedes Paar von Fragmenten, in dem wir mittels Dynamischer Programmierung ein paarweises Sequenzalignment (mit Anfangs- und Endgapkosten 0) von f und f berechnen. Dann berechnen wir das Gewicht w(f,f ) der Kante e(f,f ) im Overlap-Graph als w(f,f ) = Approximative_Overlap(f,f ) - d(f,f ) Wir können die Zahl der Kanten im Overlap-Graphen reduzieren, in dem wir die Kanten mit sehr kleinem Gewicht (diese repräsentieren in der Regel zufälligen Übereinstimmungen) eliminieren. Dann verfahren wir wie üblich, d.h. Berechnung einer geeigneten Orientierung O Berechnung eines Hamiltonian-Path mit maximalem Gewicht von G bzw. Berechnung einer approximativen Lösung des HP-Problems. Haben wir den Pfad berechnet, so können wir nicht problemlos, wie in der fehlerfreien Variante, die gesuchte Sequenz aus den Knoten (Texten) zusammensetzen. Sequence Assembly 78 Jede Kante e(f,f ) des berechneten Pfades repräsentiert ein paarweises Alignment. Die verschiedenen paarweisen Alignments müssen zu einem kompatiblen multiplen Alignment zusammengesetzt werden: ATGCCTTGACTGC-TT GAC-GCGTTGCTAAATGC CGTTGCGAAACGCTCGATGC GAAACGCTGGATGCAGTCGCGCGC ATGCCTTGACTGCGTTGCGAAACGCTCGATGCAGTCGCGCGC [1,16] Man studiert nun die Spalten dieses multiplen Alignments und berechnet eine sogenannte Consensus-Sequenz T. Diese Consensus-Sequenz T ist das Resultat des Sequenz-Assembly-Verfahrens. Definition [4]: Jedes Fragment f (oder cf) aus F ist mit einem Interval [i,j] der Consensus-Sequenz T assoziiert. Die Menge der Intervalle I, die zu der Fragmentmenge F (bzw. zur Orientierung O) gehört, bezeichnet man als Fragment-Layout von F (bzw. O). (Für ein Beispielintervall siehe Abbildung oben) 39

40 Sequence Assembly 79 Mit Hilfe des Fragment-Layouts und des entsprechenden multiplen Alignments erhalten wir Hinweise, wo die Consensus-Sequenz fehlerhaft ist. Man studiert unter anderem die Coverage (Überdeckung) der Consensus-Sequenz und sucht hier nach besonders signifikanten Abweichungen von der erwarteten durchschnittlichen Überdeckung. 10 Bereiche mit stark überdurchschnittlicher Überdeckung deuten auf Repeats hin, die fälschlicherweise durch den Algorithmus zu einem Vorkommen komprimiert wurden. 20 Sequence Assembly 80 Man beachte, dass Repeats nicht exakt übereinstimmen müssen, sondern dass man auch von einem Repeat spricht, wenn eine große Ähnlichkeit besteht: CATGCGTCGTCGTCCTATCCATTAGTCGTATCCCTGATCGCCGT Durch das Studium des Fragment-Layouts und des entsprechenden multiplen Alignments kann man in vielen Fällen die verschiedenen Repeats erkennen. CATGCGTCGTCGTCCTATCCCTGATCGCCGT CATG GTCG CGTC TATC TGAT GCCG ATGC TCGT AGTC TCCC ATCG GCGT GTCG TCCT CCAT CCGT TAGT GTAT GATC TCGT ATCCATTA CCTA CCCT CGTA Aufgrund der Abweichung von der durchschnittlichen Überdeckung könnte hier ein Repeat beginnen bzw. enden. Die beiden Repeats könnten sich in einem Buchstaben unterscheiden. Wenn wir annehmen müssen, dass ein Repeat vorliegt, dann könnten wir den Overlap-Graphen entsprechend ändern, und die Berechnung noch einmal durchführen. 40

41 Sequence Assembly 81 Entfernung von circa 30 Bp GCGT GATC CATGCGTCGTCGTCCTATCCATTAGTCGTATCCCTGATCGCCGT Sogenannte Mate-Pairs liefern wichtige Informationen über die Entfernungen zwischen bestimmten Teilsequenzen. Entfernung von 15 Bp GCGT GATC CATGCGTCGTCGTCCTATCCCTGATCGCCGT? Diese Distanzinformationen können als Bedingungen (Constraints) zu dem Optimierungsproblem hinzugefügt werden. Short 2, 10 Kbp Long 50 and 100Kbp Sequence Assembly 82 Variante [1f]: Jedes Textfragment f F hat Länge k. Die Textfragmente enthalten keine Sequenzierungsfehler. Alle Textfragmente f der Länge k von T gehören zu F. Es gibt keine Repeats länger als k-2 in T. T ist ein echter Text (kein DNA Doppelstrang). Lange Repeats sind das komplexeste Problem beim Sequence-Assembly. Für dieses Problem hat man noch keine wirklich zufriedenstellende Lösung gefunden und man arbeitet hier immer noch an besseren Verfahren und Ansätzen. 41

42 Sequence Assembly 83 Schema für DNA Sequence Assembly Gegeben eine Fragmentmenge F (eventuell mit Distanzinformationen (Mate Pairs)) Konstruktion des Overlap-Graphen G Eliminierung von Kanten mit geringer Wahrscheinlichkeit (Gewicht) Berechnung einer optimalen (guten) Orientierung O Auswahl einer Menge von Überlappungen für ein Fragment-Layout (z.b. Berechnung des Hamiltonian-Path mit maximalem Gewicht). Berechnung eines multiplen Alignments und einer Consensus-Sequenz. Analyse der Coverage und Überprüfung von (Abstands)-Bedingungen: Falls Bedingungen durch Consensus-Sequenz verletzt werden oder sehr starke Überdeckungen auf Repeats hinweisen, wird eventuell der Overlap-Graph geändert und wir wiederholen die Prozedur. Sequence Assembly 84 CATGCGTCGTCGTCCTATCCCTGATCGCCGT CATG GTCG CGTC TATC TGAT GCCG e ATGC TCGT AGTC TCCC ATCG GCGT GTCGTCCT CCAT 3 CCGT TAGT GTAT GATC e TCGT ATCCATTA CCTA CCCT e CGTA 42

Bioinformatik I. Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Bioinformatik I. Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002 Bioinformatik I Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002 Der Bauplan des Menschen Das menschliche Genom G ATGC TACG T C A Die Chromosomen Die (46) Chromosomen sind die Träger

Mehr

Was ist Bioinformatik?

Was ist Bioinformatik? Bioinformatik: Vom Genom zum Medikament Was ist Bioinformatik? Biowissenschaften Bioinformatik Informatik Die Bioinformatik entwickelt ein virtuelles Biolabor. Die Bioinformatik entwickelt ein virtuelles

Mehr

Sequence Assembly. Nicola Palandt

Sequence Assembly. Nicola Palandt Sequence Assembly Nicola Palandt 1 Einleitung Das Genom eines Lebewesens ist der Träger aller Informationen, die eine Zelle weitergeben kann. Es besteht aus Sequenzen, die mehrere Milliarden Basen lang

Mehr

Sequence Assembly Gudrun Idrissou Proseminar,

Sequence Assembly Gudrun Idrissou Proseminar, Sequence Assembly Gudrun Idrissou Proseminar, 20.12.2010 1 Einleitung Das Shotgun-Sequencing ist eine weitverbreitete Methode zur Sequenzierung von großen DNA Stücken. Man zerteilt die in Vektoren amplifizierte

Mehr

Algorithmen und Datenstrukturen in der Bioinformatik Zweites Übungsblatt WS 05/06 Musterlösung

Algorithmen und Datenstrukturen in der Bioinformatik Zweites Übungsblatt WS 05/06 Musterlösung Johanna Ploog, Konstantin Clemens Freie Universität Berlin Institut für Mathematik II Arbeitsgruppe für Mathematik in den Lebenswissenschaften Algorithmen und Datenstrukturen in der Bioinformatik Zweites

Mehr

Kapitel 1: Einführung und biologische Grundlagen

Kapitel 1: Einführung und biologische Grundlagen Kapitel 1: Einführung und biologische Grundlagen Ziele der Vorlesung n Grundverständnis wichtiger Verfahren zur Datengewinnung Sequenzierung, Microarrayanalyse,... n Klassifizierung von Bio-Datenbanken,

Mehr

Kapitel 1: Einführung und biologische Grundlagen

Kapitel 1: Einführung und biologische Grundlagen Kapitel 1: Einführung und biologische Grundlagen Ziele der Vorlesung n Grundverständnis wichtiger Verfahren zur Datengewinnung Sequenzierung, Microarrayanalyse,... Literatur und verwendete Materialien

Mehr

3.5 Moderne Genetik - Vorgänge

3.5 Moderne Genetik - Vorgänge 3.5 Moderne Genetik - Vorgänge Der genetische Code Jedes Gen besteht aus sogenannten Basentriplets. Das ist eine Sequenz von drei aufeinanderfolgenden Nukleinbasen, die für eine bestimmte Aminosäure stehen.

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 10.06.2016 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

Bioinformatik Für Biophysiker

Bioinformatik Für Biophysiker Bioinformatik Für Biophysiker Sommersemester 2009 Silke Trißl / Ulf Leser Wissensmanagement in der Bioinformatik Wissensmanagement in der Bioinformatik Schwerpunkte Algorithmen der Bioinformatik Management

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 7 und 8: Euler- und Hamilton-Graphen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 17. April 2018 1/96 WIEDERHOLUNG Eulersche

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 6: Kreis- und Wegeprobleme Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 27. März 2018 1/47 KREIS- UND WEGEPROBLEME 2/47

Mehr

Algorithmen auf Sequenzen

Algorithmen auf Sequenzen Algorithmen auf Sequenzen Fehlertolerante Mustersuche: Distanz- und Ähnlichkeitsmaße Sven Rahmann Genominformatik Universitätsklinikum Essen Universität Duisburg-Essen Universitätsallianz Ruhr Einführung

Mehr

Pharmazeutische Biologie WS2011/2012. Das neue Paradigma: Personalisierte Medizin

Pharmazeutische Biologie WS2011/2012. Das neue Paradigma: Personalisierte Medizin 2. Vorlesung Pharmazeutische Biologie WS2011/2012 Das neue Paradigma: Personalisierte Medizin Prof. Theo Dingermann Institut für Pharmazeutische Biologie Biozentrum Max-von Laue-Str. 9 60438 Frankfurt

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus:

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Die gentechnische Produktion von Insulin - Selbstlerneinheit zur kontextorientierten Wiederholung der molekularen Genetik Das komplette

Mehr

10 Kürzeste Pfade SSSP-Problem

10 Kürzeste Pfade SSSP-Problem In diesem Kapitel setzen wir uns mit der Berechnung von kürzesten Pfaden in einem Graphen auseinander. Definition 10.1 (Pfadgewichte). i) Das Gewicht eines Pfades p = (v 0, v 1,..., v k ) ist die Summe

Mehr

4.9.7 Konstruktion der Suffixbäume

4.9.7 Konstruktion der Suffixbäume .9.7 Konstruktion der Suffixbäume Beipiel: xabxa (siehe Abbildung.27) Man beginnt mit der Konstruktion eines Suffixbaumes für gesamten String und schreibt eine 1 am Blatt, weil der Suffix xabxa an der

Mehr

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick

Mehr

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 23. VO DAP2 SS 2008 14. Juli 2009

Mehr

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung. Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 14. November 2007 1 / 22 2 / 22 Gliederung eulersche und semi-eulersche Graphen Charakterisierung eulerscher Graphen Berechnung eines

Mehr

Bioinformatik. Lokale Alignierung Gapkosten. Silke Trißl / Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. Lokale Alignierung Gapkosten. Silke Trißl / Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik Lokale Alignierung Gapkosten Silke Trißl / Ulf Leser Wissensmanagement in der Bioinformatik Inhalt dieser Vorlesung Ähnlichkeit Lokales und globales Alignment Gapped Alignment Silke Trißl:

Mehr

Verfahren zu Strukturvorhersagen in vereinfachten Modellen. Tobias Voigt Sommerakademie 2002 St. Johann

Verfahren zu Strukturvorhersagen in vereinfachten Modellen. Tobias Voigt Sommerakademie 2002 St. Johann Verfahren zu Strukturvorhersagen in vereinfachten Modellen Tobias Voigt Sommerakademie 2002 St. Johann Einführung! Sequenzierung von Proteinen und Nukleinsäuren ist heute Routine! Die räumliche Struktur

Mehr

Greedy- und Priority Algorithmen. Priority-Algorithmen 1 / 80

Greedy- und Priority Algorithmen. Priority-Algorithmen 1 / 80 Greedy- und Priority Algorithmen Priority-Algorithmen 1 / 80 Was ist ein Greedy-Algorithmus? (1/2) Greedy-Algorithmen bestimmen eine Lösung iterativ, wobei - jedesmal eine Entscheidung getroffen wird,

Mehr

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0

Mehr

Algorithmen auf Sequenzen Paarweiser Sequenzvergleich: Alignments

Algorithmen auf Sequenzen Paarweiser Sequenzvergleich: Alignments Algorithmen auf Sequenzen Paarweiser Sequenzvergleich: Alignments Sven Rahmann Genominformatik Universitätsklinikum Essen Universität Duisburg-Essen Universitätsallianz Ruhr Einführung Bisher: Berechnung

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 02.07.2015 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist:

Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist: Svenja Hüning, Michael Kerber, Hannah Schreiber WS 2016/2017 Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist: Hinweise: Dieses Blatt präsentiert Beispiellösungen zu

Mehr

Graphen KAPITEL 3. Dieses Problem wird durch folgenden Graph modelliert:

Graphen KAPITEL 3. Dieses Problem wird durch folgenden Graph modelliert: KAPITEL 3 Graphen Man kann als Ursprung der Graphentheorie ein Problem sehen, welches Euler 1736 von Studenten aus Königsberg gestellt bekam. Der Fluss Pregel wird von 7 Brücken überquert, und die Frage

Mehr

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016 Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithms and Complexity Group 186.815 Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS 2016 5. Oktober 2016 Machen Sie

Mehr

9 Minimum Spanning Trees

9 Minimum Spanning Trees Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne

Mehr

Seminar: Einladung in die Mathematik

Seminar: Einladung in die Mathematik Seminar: Einladung in die Mathematik Marius Kling 11.11.2013 Übersicht 1. Königsberger Brückenproblem 2. Diskrete Optimierung 3. Graphentheorie in der Informatik 4. Zufällige Graphen 5. Anwendungen von

Mehr

Algorithmen für paarweise Sequenz-Alignments. Katharina Hembach

Algorithmen für paarweise Sequenz-Alignments. Katharina Hembach Proseminar Bioinformatik WS 2010/11 Algorithmen für paarweise Sequenz-Alignments Katharina Hembach 06.12.2010 1 Einleitung Paarweise Sequenz-Alignments spielen in der Bioinformatik eine wichtige Rolle.

Mehr

Übersicht. Bielefeld Hannover. Kamen Paderborn. Unna Wünnenberg Kassel. Ziffer wählen. abheben. auflegen. Gespräch führen

Übersicht. Bielefeld Hannover. Kamen Paderborn. Unna Wünnenberg Kassel. Ziffer wählen. abheben. auflegen. Gespräch führen Übersicht Graphen beschreiben Objekte und Beziehungen zwischen ihnen geeignet für Modellierung verschiedener Aufgaben betrachten endliche, ungerichtete und endliche, gerichtete Graphen Graphen bestehen

Mehr

Übungsaufgaben zur Einführung in die Bioinformatik - Lösungen

Übungsaufgaben zur Einführung in die Bioinformatik - Lösungen 18.01.2013 Prof. P. Güntert 1 Vorlesung BPC I: Aspekte der Thermodynamik in der Strukturbiologie Übungsaufgaben zur Einführung in die Bioinformatik - Lösungen 1. Hamming und Levenshtein Distanzen a) Was

Mehr

Bemerkung: Der vollständige Graph K n hat n(n 1)

Bemerkung: Der vollständige Graph K n hat n(n 1) Bemerkung: Der vollständige Graph K n hat n(n 1) 2 Kanten. Bew: Abzählen! Definition 111. Graphen mit n paarweise zyklisch verbundenen Kanten heißen Kreise (vom Grad n) und werden mit C n bezeichnet. Beispiel

Mehr

Wann sind Codes eindeutig entschlüsselbar?

Wann sind Codes eindeutig entschlüsselbar? Wann sind Codes eindeutig entschlüsselbar? Definition Suffix Sei C ein Code. Ein Folge s {0, 1} heißt Suffix in C falls 1 c i, c j C : c i = c j s oder 2 c C und einen Suffix s in C: s = cs oder 3 c C

Mehr

Zentrales Dogma der Biologie

Zentrales Dogma der Biologie Zentrales Dogma der Biologie Transkription: von der DNA zur RNA Biochemie 01/1 Transkription Biochemie 01/2 Transkription DNA: RNA: Biochemie 01/3 Transkription DNA: RNA: Biochemie 01/4 Transkription RNA:

Mehr

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Paarweises

Mehr

Wichtige Themen aus der Vorlesung Bioinformatik I WS 2013/2014

Wichtige Themen aus der Vorlesung Bioinformatik I WS 2013/2014 Universität des Saarlandes FR 6.2 Informatik Prof. Dr. Hans-Peter Lenhof Daniel Stöckel, M. Sc. Patrick Trampert, M. Sc. Lara Schneider, M. Sc. I Wichtige Themen aus der Vorlesung Bioinformatik I WS 2013/2014

Mehr

MOL.504 Analyse von DNA- und Proteinsequenzen

MOL.504 Analyse von DNA- und Proteinsequenzen MOL.504 Analyse von DNA- und Proteinsequenzen Kurs 1 Monika Oberer, Karl Gruber MOL.504 Modul-Übersicht Einführung, Datenbanken BLAST-Suche, Sequenzalignment Proteinstrukturen Virtuelles Klonieren Abschlusstest

Mehr

Algorithmische Anwendungen WS 2005/2006

Algorithmische Anwendungen WS 2005/2006 Algorithmische Anwendungen WS 2005/2006 Sequenzalignment Gruppe F_lila_Ala0506 Allal Kharaz Yassine ELassad Inhaltsverzeichnis 1 Problemstellungen...................................... 3 1.1 Rechtschreibkorrektur...............................

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Bioinformatik Für Biophysiker

Bioinformatik Für Biophysiker Bioinformatik Für Biophysiker Wintersemester 2006 / 2007 Ulf Leser Wissensmanagement in der Bioinformatik Wissensmanagement in der Bioinformatik Lehrstuhl seit 10/2002 Schwerpunkte Algorithmen der Bioinformatik

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws1314

Mehr

1 Pfade in azyklischen Graphen

1 Pfade in azyklischen Graphen Praktikum Algorithmen-Entwurf (Teil 5) 17.11.2008 1 1 Pfade in azyklischen Graphen Sei wieder ein gerichteter Graph mit Kantengewichten gegeben, der diesmal aber keine Kreise enthält, also azyklisch ist.

Mehr

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen Einführung in Berechenbarkeit, Komplexität und Formale Sprachen V17, 10.12.09 Willkommen zur Vorlesung Einführung in Berechenbarkeit, Komplexität und Formale Sprachen Friedhelm Meyer auf der Heide 1 Rückblick:

Mehr

Was ist der Promotor? Antwort: Eine spezielle Nucleotidsequenz auf der DNA, an der die RNA-Polymerase bindet um die Transkription zu starten.

Was ist der Promotor? Antwort: Eine spezielle Nucleotidsequenz auf der DNA, an der die RNA-Polymerase bindet um die Transkription zu starten. Was ist der Promotor? Antwort: Eine spezielle Nucleotidsequenz auf der DNA, an der die RNA-Polymerase bindet um die Transkription zu starten. Wie bezeichnet man den Strang der DNA- Doppelhelix, der die

Mehr

Inhalt Genexpression Microarrays E-Northern

Inhalt Genexpression Microarrays E-Northern Inhalt Genexpression Microarrays E-Northern Genexpression Übersicht Definition Proteinbiosynthese Ablauf Transkription Translation Transport Expressionskontrolle Genexpression: Definition Realisierung

Mehr

Bioinformatik Für Biophysiker

Bioinformatik Für Biophysiker Bioinformatik Für Biophysiker Wintersemester 2005 / 2006 Ulf Leser Wissensmanagement in der Bioinformatik Wissensmanagement in der Bioinformatik Lehrstuhl seit 10/2002 Schwerpunkte Algorithmen der Bioinformatik

Mehr

Dendrogramm der Primaten

Dendrogramm der Primaten Arbeitsblatt 1 Dargestellt ist ein Ausschnitt der DNA-Sequenz für das Enzym NAD- Polymerase, dass bei den Primatenarten Mensch(M), Schimpanse(S), Gorilla(G), Orang-Utan(O) und Gibbon(Gi) vorhanden ist.

Mehr

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal 3. Kreis- und Wegeprobleme Kapitelübersicht 3. Kreis- und Wegeprobleme Eulerweg, Eulerkreis Charakterisierung von eulerschen Graphen Bestimmung von eulerschen Wegen und Kreisen Hamiltonsche Graphen Definition

Mehr

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i)

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i) Die Probabilistische Methode Beobachtung: Besitzt ein Ereignis Ws > 0, so muss es existieren! Notation: Sei K n der komplette Graph mit n Knoten und ( n 2) Kanten. Satz Falls 2 (k 2) 1 > ( n k), existiert

Mehr

Isomorphie von Bäumen

Isomorphie von Bäumen Isomorphie von Bäumen Alexandra Weinberger 23. Dezember 2011 Inhaltsverzeichnis 1 Einige Grundlagen und Definitionen 2 1.1 Bäume................................. 3 1.2 Isomorphie..............................

Mehr

Optimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn

Optimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn Optimierung Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung 1 Assignment Problem (Zuordnungsproblem) Gewichtetes Perfektes Bipartites Matching agents Costs tasks Weise jedem Agenten genau

Mehr

Graphen. Definitionen

Graphen. Definitionen Graphen Graphen werden häufig als Modell für das Lösen eines Problems aus der Praxis verwendet, wie wir im Kapitel 1 gesehen haben. Der Schweizer Mathematiker Euler hat als erster Graphen verwendet, um

Mehr

Effiziente Algorithmen I

Effiziente Algorithmen I H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug

Mehr

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7 1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Euler-Hamilton)

Diskrete Strukturen Kapitel 4: Graphentheorie (Euler-Hamilton) WS 2015/16 Diskrete Strukturen Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15

Mehr

Kapitel 9: Lineare Programmierung Gliederung

Kapitel 9: Lineare Programmierung Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

Bioinformatik. Zeichenketten und Stringalgorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. Zeichenketten und Stringalgorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik Zeichenketten und Stringalgorithmen Ulf Leser Wissensmanagement in der Bioinformatik Inhalt dieser Vorlesung Warum Stringmatching? Strings und Matching Naiver Algorithmus Ulf Leser: Bioinformatik,

Mehr

Anwendungen dynamischer Programmierung in der Biologie

Anwendungen dynamischer Programmierung in der Biologie Anwendungen dynamischer Programmierung in der Biologie Überblick Algorithmus zum Finden der wahrscheinlichsten Sekundärstruktur eines RNS Moleküls Sequence Alignment Verbesserung von Sequence Alignment

Mehr

Einführung in die Bioinformatik

Einführung in die Bioinformatik Einführung in die Bioinformatik Ringvorlesung Biologie Sommer 07 Burkhard Morgenstern Institut für Mikrobiologie und Genetik Abteilung für Bioinformatik Goldschmidtstr. 1 Online Materialien zur Ringvorlesung:

Mehr

Effiziente Algorithmen (SS2015)

Effiziente Algorithmen (SS2015) Effiziente Algorithmen (SS205) Kapitel 5 Approximation II Walter Unger Lehrstuhl für Informatik 2.06.205 07:59 5 Inhaltsverzeichnis < > Walter Unger 5.7.205 :3 SS205 Z Inhalt I Set Cover Einleitung Approximation

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Datenbanken in der Bioinformatik

Datenbanken in der Bioinformatik Datenbanken in der Bioinformatik Kapitel 1 Grundlagen http://dbs.uni-leipzig.de Institut für Informatik Vorläufiges Inhaltsverzeichnis 1. Grundlagen 2. Klassifizierung von BioDB, Überblick 3. Spezialanwendungen

Mehr

Algorithmen für schwierige Probleme

Algorithmen für schwierige Probleme Algorithmen für schwierige Probleme Britta Dorn Wintersemester 2011/12 24. November 2011 Farbkodierung Beispiel Longest Path Longest Path gegeben: G = (V, E) und k N. Frage: Gibt es einen einfachen Pfad

Mehr

Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,...

Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,... Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,..., k, so dass gilt M = k c i P i i=1 k c i = r. i=1 Diskrete Strukturen 7.1 Matchings

Mehr

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld Westfählische Wilhelms-Universität Eulersche Graphen Autor: 21. Mai 2015 Inhaltsverzeichnis 1 Das Königsberger Brückenproblem 1 2 Eulertouren und Eulersche Graphen 2 3 Auffinden eines eulerschen Zyklus

Mehr

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 2. November 2011 Gradfolgen Zusammenhang Kürzeste Wege H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 Satz von Erdős und Gallai Eine Partition einer natürlichen Zahl ist genau dann die Gradfolge

Mehr

Studiengang Informatik der FH Gießen-Friedberg. Sequenz-Alignment. Jan Schäfer. WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel

Studiengang Informatik der FH Gießen-Friedberg. Sequenz-Alignment. Jan Schäfer. WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel Studiengang Informatik der FH Gießen-Friedberg Sequenz-Alignment Jan Schäfer WS 2006/07 Betreuer: Prof. Dr. Klaus Quibeldey-Cirkel Überblick Einführung Grundlagen Wann ist das Merkmal der Ähnlichkeit erfüllt?

Mehr

Lösungen zu Kapitel 5

Lösungen zu Kapitel 5 Lösungen zu Kapitel 5 Lösung zu Aufgabe : (a) Es gibt derartige Graphen: (b) Offensichtlich besitzen 0 der Graphen einen solchen Teilgraphen. Lösung zu Aufgabe : Es sei G = (V, E) zusammenhängend und V

Mehr

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme 10 Matching-Probleme 10.1 Definition von Matching-Probleme Definition 21 [2-dimensionales Matching] Sei G = (V, E) ein ungerichteter Graph und E E. E ist ein Matching, wenn für alle Kantenpaare e 1, e

Mehr

Bioinformatik. Zeichenketten und Stringalgorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. Zeichenketten und Stringalgorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik Zeichenketten und Stringalgorithmen Ulf Leser Wissensmanagement in der Bioinformatik Inhalt dieser Vorlesung Warum Stringmatching? Strings und Matching Naiver Algorithmus Ulf Leser: Algorithmische

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Aminosäurenanalytik. Probenvorbereitung Eiweißfällung, Oxidation und Hydrolyse Karl-Heinz Jansen SYKAM CHROMATOGRAPHIE

Aminosäurenanalytik. Probenvorbereitung Eiweißfällung, Oxidation und Hydrolyse Karl-Heinz Jansen SYKAM CHROMATOGRAPHIE Aminosäurenanalytik Probenvorbereitung Eiweißfällung, Oxidation und Hydrolyse Karl-Heinz Jansen SYKAM CHROMATOGRAPHIE Proteinfällung 2 Proteinfällung 3 Proteinfällung 4 Proteinfällung 5 Proteinfällung

Mehr

Übung zur Vorlesung Diskrete Strukturen I

Übung zur Vorlesung Diskrete Strukturen I Technische Universität München WS 00/0 Institut für Informatik Aufgabenblatt Prof. Dr. J. Csirik. November 00 Brandt & Stein Übung zur Vorlesung Diskrete Strukturen I Abgabetermin: Tutorübungen am. und.

Mehr

Lösungen zur Vorlesung Berechenbarkeit und Komplexität

Lösungen zur Vorlesung Berechenbarkeit und Komplexität Lehrstuhl für Informatik 1 WS 009/10 Prof. Dr. Berthold Vöcking 0.0.010 Alexander Skopalik Thomas Kesselheim Lösungen zur Vorlesung Berechenbarkeit und Komplexität. Zulassungsklausur Aufgabe 1: (a) Worin

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 20 (23.7.2014) All Pairs Shortest Paths, String Matching (Textsuche) Algorithmen und Komplexität Vorlesungsevaluation Sie sollten alle eine

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 24. April 2019 [Letzte Aktualisierung: 24/04/2019,

Mehr

Das Problem des Handlungsreisenden

Das Problem des Handlungsreisenden Seite 1 Das Problem des Handlungsreisenden Abbildung 1: Alle möglichen Rundreisen für 4 Städte Das TSP-Problem tritt in der Praxis in vielen Anwendungen als Teilproblem auf. Hierzu gehören z.b. Optimierungsprobleme

Mehr

Genannotation bei Prokaryoten

Genannotation bei Prokaryoten Genannotation bei Prokaryoten Maike Tech Abt. Bioinformatik Institut für Mikrobiologie und Genetik (IMG) Universität Göttingen 28. November 2005 Genetik von Pro- und Eukaryoten Eukaryoten Prokaryoten Zellkern

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 6 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 16. Mai 2018 [Letzte Aktualisierung: 18/05/2018,

Mehr

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen

Mehr

Effiziente Algorithmen 2

Effiziente Algorithmen 2 Effiziente Algorithmen 2 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen

Mehr

Approximationsalgorithmen. 19. Dezember / 28

Approximationsalgorithmen. 19. Dezember / 28 Approximationsalgorithmen 19. Dezember 2017 1 / 28 Optimierungsprobleme Das Ziel: Bearbeite schwierige Optimierungsprobleme der Form opt y f (x, y) so dass L(x, y). Die Zielfunktion f (x, y) ist zu minimieren

Mehr

In den Proteinen der Lebewesen treten in der Regel 20 verschiedene Aminosäuren auf. Deren Reihenfolge muss in der Nucleotidsequenz der mrna und damit

In den Proteinen der Lebewesen treten in der Regel 20 verschiedene Aminosäuren auf. Deren Reihenfolge muss in der Nucleotidsequenz der mrna und damit In den Proteinen der Lebewesen treten in der Regel 20 verschiedene Aminosäuren auf. Deren Reihenfolge muss in der Nucleotidsequenz der mrna und damit in der Nucleotidsequenz der DNA verschlüsselt (codiert)

Mehr

5. Bäume und Minimalgerüste

5. Bäume und Minimalgerüste 5. Bäume und Minimalgerüste Charakterisierung von Minimalgerüsten 5. Bäume und Minimalgerüste Definition 5.1. Es ein G = (V, E) ein zusammenhängender Graph. H = (V,E ) heißt Gerüst von G gdw. wenn H ein

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 18 Was tun mit NP-harten Problemen? Viele praxisrelevante

Mehr

Vorlesung Molekulare Humangenetik

Vorlesung Molekulare Humangenetik Vorlesung Molekulare Humangenetik WS 2013/2014 Dr. Shamsadin DNA-RNA-Protein Allgemeines Prüfungen o. Klausuren als indiv. Ergänzung 3LP benotet o. unbenotet Seminar Block 2LP Vorlesung Donnerstags 14-16

Mehr

Übersicht. Aktivitäten-Auswahl-Problem. Greedy Algorithmen. Aktivitäten-Auswahl-Problem. Aktivitäten-Auswahl-Problem. Datenstrukturen & Algorithmen

Übersicht. Aktivitäten-Auswahl-Problem. Greedy Algorithmen. Aktivitäten-Auswahl-Problem. Aktivitäten-Auswahl-Problem. Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Übersicht Greedy Algorithmen Einführung Aktivitäten-Auswahl-Problem Huffman Codierung Matthias Zwicker Universität Bern Frühling 2009 2 Greedy Algorithmen Entwurfsstrategie

Mehr

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2009/10 1 Bernhard Ganter, TU Dresden Modul

Mehr

Übung 2 Algorithmen II

Übung 2 Algorithmen II Yaroslav Akhremtsev, Demian Hespe yaroslav.akhremtsev@kit.edu, hespe@kit.edu Mit Folien von Michael Axtmann (teilweise) http://algo2.iti.kit.edu/algorithmenii_ws17.php - 0 Akhremtsev, Hespe: KIT Universität

Mehr

Diskrete Mathematik Graphentheorie (Übersicht)

Diskrete Mathematik Graphentheorie (Übersicht) Diskrete Mathematik Graphentheorie (Übersicht) Dr. C. Löh 2. Februar 2010 0 Graphentheorie Grundlagen Definition (Graph, gerichteter Graph). Ein Graph ist ein Paar G = (V, E), wobei V eine Menge ist (die

Mehr

Bioinformatik. Zeichenketten und Stringalgorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. Zeichenketten und Stringalgorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik Zeichenketten und Stringalgorithmen Ulf Leser Wissensmanagement in der Bioinformatik Inhalt dieser Vorlesung Warum Stringmatching? Strings und Matching Naiver Algorithmus Ulf Leser: Bioinformatik

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 4. Januar 2011 Berthold Vöcking, Informatik 1 () Vorlesung

Mehr

Informationsvisualisierung

Informationsvisualisierung Informationsvisualisierung Thema: 7. Visualisierung Biologischer Daten Dozent: Dr. Dirk Zeckzer zeckzer@informatik.uni-leipzig.de Sprechstunde: nach Vereinbarung Umfang: 2 Prüfungsfach: Modul Fortgeschrittene

Mehr

Biochemie (für Bioinformatiker) WS 2010/2011, 1. Klausur (50 Punkte)

Biochemie (für Bioinformatiker) WS 2010/2011, 1. Klausur (50 Punkte) Datum: 06.12.2010 Name: Matrikel-Nr.: Vorname: Studiengang: Bioinformatik Biochemie (für Bioinformatiker) WS 2010/2011, 1. Klausur (50 Punkte) Modulnr.: FMI-BI0027 iermit bestätige ich meine Prüfungstauglichkeit.

Mehr

Pairwise Alignment. Steffen Forkmann. Proseminar: BioInformatik

Pairwise Alignment. Steffen Forkmann. Proseminar: BioInformatik Pairwise Alignment Steffen Forkmann Proseminar: BioInformatik Wintersemester 2004/2005 Inhaltsverzeichnis 1 Problemstellungen 3 1.1 Rechtschreibkorrektur............................... 3 1.2 DNA- und Aminosäure-Sequenzen........................

Mehr

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0.

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. 8.4 Digraphen mit negativen Kantengewichten 8.4.1 Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. k 4 5 1 s 1 3 2 C k 0 k 3 1 1 1 k 1 k 2 v Sollte ein Pfad von s nach C und

Mehr