Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Hanne Dunst Geändert vor über 9 Jahren
1
Vergleich von RNA Strukturen A General Edit Distance between RNA Structures von Sebastian Juenemann
2
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
3
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
4
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
5
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)
6
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 ]
7
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
8
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
9
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 )
10
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
11
[1]
12
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
13
[1]
14
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
15
Dynamic Programming Algorithm for Edit(Nested,Plain) Fall 3: Für beliebigen arc (i, i‘) P1 und 1 j j‘ m,
16
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:
17
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)
18
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 }
19
Literatur [1]Tao Jiangn Guohui Lin, Bin Ma, undKaizhong Zhang, 2002, Pp.371-388, A General Edit Distance between RNA Structures
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.