Vergleich von RNA Strukturen A General Edit Distance between RNA Structures von Sebastian Juenemann.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen für das Erfüllbarkeitsproblem SAT
Advertisements

Algorithmentheorie 08 – Dynamische Programmierung (4) Editierdistanz Approximative Zeichenkettensuche Sequence Alignment Prof. Dr. Th. Ottmann WS
Christian Scheideler SS 2009
Algorithm Engineering
Man bestimme den „minimalen aufspannenden Baum“ des Graphen.
Themen Grundlagen Bedingungen für Koalitionsstrukturen
Inhalt Saarbrücken,.
Minimum Spanning Tree: MST
Genome Rearrangements
Paarweises Sequenz Alignment
7.2 B-Bäume / B*-Bäume als Hilfsmittel zur Indexorganisation
Thema: Algorithmusdesignverfahren Vu Hoang Lam IMN04 HTWK-Leipzig Obersemminar Softwareentwicklung.
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Das LCA – Problem in Suffixbäumen
Suche in Texten (Stringsuche )
3. Kapitel: Komplexität und Komplexitätsklassen
Einige entscheidbare bzw. rekursiv aufzählbare Sprachen
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Algorithmen und Komplexität
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Approximationsalgorithmen …liefern in polynomieller.
Klaus Volbert 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Sommersemester 2004.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Secondary Structure Prediction for Aligned RNA Sequences
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Algorithmen und Komplexität
Christian Schindelhauer
Minimum Spanning Tree: MST
The Rectilinear Steiner Tree Problem is NP-complete
Approximationsalgorithmen Facility Location K-Median Cheng, Wei 12. Juli.
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Flüsse, Schnitte, bipartite Graphen
Einführung in die Programmierung
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Christian Scheideler Institut für Informatik Universität Paderborn
Dynamische Programmierung mit Anwendung auf Sequence Alignment Problem
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Formale Sprachen Mathematische Grundlagen Rudolf FREUND, Marian KOGLER.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Bipartite Graphen Der Satz von König.
Minimal spannende Bäume
Sebastian Loose DPF – A Perceptual Distance Function for Image Retrieval Proseminar SS 2005 Distanzen und Ähnlichkeitsmaße im Hochdimensionalem.
1/67 Johann-Wolfgang-Goethe Universität Frankfurt am Main Aktuelle Themen der Bioinformatik RNA-Sekundärstruktur- vorhersage mit Pseudoknots Johann-Wolfgang-Goethe.
Gene Prediction Marco Block Jonas Heise Nima Keshvari Michael Schreiber.
Anwendung der Ellipsoidmethode in der Kombinatorischen Optimierung
Gliederung der Vorlesung
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
Das Problem des Handlungsreisenden
 Präsentation transkript:

Vergleich von RNA Strukturen A General Edit Distance between RNA Structures von Sebastian Juenemann

Inhalt Einleitung Motivation Einführung Edit Operations Base Edit Operations Arc Edit Operations Edit Distance Komplexität von Eidit(Crossing, Plain) Dynamic Programming Algorithm for Edit(Nested, Plain) Edit(Crossing, Nested) Literatur

Einleitung Die sekundäre und tertiäre Struktureigenschaft der RNA ist ein wichtiger Faktor in biologischen Systemen arc-annotated sequences sind eine nützliche Repräsentation von RNA-Struktur-Information „edit distance“ um strukturelle Gleichheit zwischen RNA Sequenzen zu ermitteln

Motivation verschiedene Möglichkeiten RNA Strukturen abzubilden und Vergleiche zu formulieren sek. Struktur mittels (un- / oder benannten) trees Algorithmen von Zhang, Shasha, Shapiro SCFGs Sakakibara, Brown Vergleich auf dem Sequenz-Level Sankoff, Zhang, Zucker

Einführung Primäre RNA Sequenz = String S  {A, U, C, G}*, wobei |S| = n Sekundäre und tertiäre Struktur von S = Menge P von „arcs“ Für alle (i 1, i 2 )  P gilt 1  i 1  i 2  n S[i 1 ] und S[i 2 ] sind komplementäre Basen  Basenpaar Für belibige (i 1, i 2 ), (i 3, i 4 )  P gilt i 1  i 2  i 3  i 4 (independent) i 1  i 3  i 4  i 2 (nested) i 1  i 3  i 2  i 4 (crossing) „arc-annotated sequence“ (S, P)

edit operations Allgemeine Deffinitionen: arc-annotated sequence (S 1, P 1 ) und (S 2, P 2 ) über fixen Alphabet  und einem sequenc alignment M (i 1, i 2 )  P 1 und (j 1, j 2 )  P 2 S 1 [i 1 ] aliniert mit ( ) S 2 [j 1 ] und S 1 [i 2 ] aliniert mit ( ) S 2 [j 2 ]

base edit operations „free“: Base S 1 [i] ausserhalb eines Bogenereignis „base-match“: S 1 [i] S 2 [j] AND S 1 [i] =S 2 [j] cost: nothing „base-mismatch“: S 1 [i] S 2 [j] AND S 1 [i] ≠S 2 [j] cost: w m „base-deletion“ („base-insertion“): S1[i] Leerfeld cost: w d

arc edit operations „arc-match“: S 1 [i 1 ] = S 2 [j 1 ] AND S 1 [i 2 ] = S 2 [j 2 ] cost: nothing „arc-mismatch“: S 1 [i 1 ] ≠ S 2 [j 1 ] AND S 1 [i 2 ] ≠ S 2 [j 2 ] cost: w am S 1 [i 1 ] ≠ S 2 [j 1 ] OR S 1 [i 2 ] ≠ S 2 [j 2 ] cost: w am ½ „arc-breaking“: S 1 [i 1 ] S 2 [j 1 ] AND S 1 [i 2 ] S 2 [j 2 ] (i 1, i 2 )  P 1 (j 1, j 2 )  P 2 bricht (i 1, i 2 ) auf und hinterlässt S 1 [i 1 ] und S 1 [i 2 ] free cost: w b

arc edit operations „arc-altering“: S 1 [i 1 ] S 2 [j 1 ] AND S 1 [i 2 ] Leerfeld löscht Base S 1 [i 2 ] und bricht (i 1, i 2 ) auf cost: w a „arc-removing“: S 1 [i 1 ] Leerfeld AND S 1 [i 2 ] Leerfeld Bricht arc (i 1, i 2 ) auf und deletes beide Basen cost: w r (normalerweise: w r  w d )

edit distance between arc- annotated sequences Komplexität der Transformierung von S 1 in S 2 abhängig von der Komplexität der Eingabesequenzen Komplexitätsklassen des Edit Distance Problem: Edit(Crossing, Crossing), Edit(Crossing, Nested), Edit(Crossing, Plain), Edit(Nested, Nested), Edit(Nested, Plain), Edit(Plain, Plain). Berechenbar in Ο(nm) (Levenstein, Sankof und Kruskal) Edit distance = minimale Kosten der edit transcipts = Summe der darin enthaltenden edit operations

[1]

Komplexität von Edit(Crossing, Plain) MAX-CUT-3: gegeben ein gerichteter Graph G = (V, E), finde Teilmenge von V assoziiert mit der maximalen Kardinalität einer Menge E(V 1, V 2 ) von Kanten. Dieses Problem ist MAX SNP-hard Konstruktion eine L-Reduktion von MAX-CUT-3 nach Edit(Crossing, Plain). Edit(Crossing, Plain) ist MAX SNP-hard Teilproblem von Edit(Crossing, Nested), somit ist auch Edit(Crossing, Nested) MAX SNP-hard

[1]

Dynamic Programming Algorithm for Edit(Nested, Plain) (S 1, P 1 ) und (S 2, Ø) Instanzen von Edit(Nested, Plain) DP(i, i’; j, j’) entspricht der edit distance zwischen dem Paar partieller Sequnezen (S 1 [i, i’], P 1 [i, i’]) und (S 2 [j, j’], Ø) Fall 1: Für beliebige 1  i  n und 1  j  j‘  m, Fall 2: Für beliebige 1  i  i‘  n und 1  j  m, sodass (i) i = 1 oder (i -1, i‘‘)  P 1 für einige i‘‘ > i‘ und (ii) jeder arc aus P 1 komplett das Interval [i, i‘] enthält, darin enthalten oder disjunkt von ihm ist

Dynamic Programming Algorithm for Edit(Nested,Plain) Fall 3: Für beliebigen arc (i, i‘)  P1 und 1  j  j‘  m,

Dynamic Programming Algorithm for Edit(Nested,Plain) Fall 4: Für beliebige 1  i  i‘  n und 1  j  j‘  m, sodass (i) (i, i‘)  P1, (ii) i = 1 oder (i – 1, i‘‘)  P1 für einige i‘‘ > i‘, (iii) jeder arc aus P 1 komplett das Interval [i, i‘] enthält, darin enthalten oder disjunkt von ihm ist Wenn i‘ frei ist, dann: Wenn i‘ nicht frei ist:

Dynamic Programming Algorithm for Edit(Nested,Plain) Fall 1 und Fall 3 (max |P1| = n/2 ): O(nm 2 ) Fall 2: O(nm) Fall 4: O(nm 3 ) Benutzung von „back-tracing technique“  optimale Alinierung von S 1 und S 2 in O(nm 2 ) Edit(Nested, Plain) ist lösbar in O(nm3)

Dynamic Programming Algorithm for Edit(Crossing, Nested) Generell nicht berechenbar (MAX SNP-hard) Lösung: score condition: 2 w a = w b + w r  cost von base-deletion w r – w am /2 base  Wegfall von arc-altering und arc-removing Somit: dynamic programming algorithm ähnlich dem Edit(Nested, Plain) Laufzeit O(n 2 m) Approximationswert von max {2 w a / w b + w r, w b + w r / 2 w a }

Literatur [1]Tao Jiangn Guohui Lin, Bin Ma, undKaizhong Zhang, 2002, Pp , A General Edit Distance between RNA Structures