5. Problem Definition
Input: primary structure of an RNA
Goal: to predict the secondary structure
Given a primary structure of an RNA, find a secondary
structure that maximizes the number of base pairs
7. Different Approaches
Physical methods (Kim et al)
X-ray diffraction, Nuclear Magnetic Resonance (NMR)
Chemical/enzymatic methods (Ehresmann et al)
Mutational analysis (Tang and Draper)
8. Prediction with
Sequence Only
Structure prediction based on multiple RNA
sequences which are structurally similar
(Sankoff, Gary and Stormo)
Structure prediction based on a single RNA
sequence
Nussinov Folding Algorithm, Zuker Algorithm
12. Nussinov Folding
Algorithm
...
1 2 n
Case 1: (1) and (n) form a pair
Case 2: There is (k) that is not crossed by any pair
where 1 < k < n
13. Nussinov Folding
Algorithm
...
1 2 n
Case 1: (1) and (n) form a pair
V(1, n) = V(2, n-1) + δ(S[1], S[n])
14. Nussinov Folding
Algorithm
...
1 2 n
Case 1: (1) and (n) form a pair
V(1, n) = V(2, n-1) + δ(S[1], S[n])
⇢
1, if(x, y) 2 (a, u), (u, a), (c, g), (g, c), (g, u), (u, g)
(x, y) =
0, otherwise
15. Nussinov Folding
Algorithm
...
1 2 k n
Case 1: (1) and (n) form a pair
Case 2: There is (k) that is not crossed by any pair
where 1 < k < n
V(1, n) = V(1, k) + V(k+1, n)
16. Nussinov Folding
Algorithm
⇢
V (i + 1, j 1) + (S[i], S[j])
V (i, j) = max
maxik<i {V (i, k) + V (k + 1, j)}
j
i
Dynamic programming
...
...
17. Nussinov Folding
Algorithm
⇢
V (i + 1, j 1) + (S[i], S[j])
V (i, j) = max
maxik<i {V (i, k) + V (k + 1, j)}
. ..
Dynamic programming
18. Alternate Optimization Goal
Find the most stable structure: Zuker Algorithm
The hydrogen bond at a base pair tries to stabilize the
structure
Free bases inside a loop tries to disrupt the structure
Difference between these two is the destabilizing energy
Given a primary structure of an RNA, find the
secondary structure with least total energy
19. Destabilizing Energy Measure
Stacked Pair : eS(i, j)
Stabilizes the structure
eS(i, j) is negative
Hairpin : eH(i, j)
The bigger the loop, the more unstable the structure is
eH(i, j) depends on |j-i+1|
20. Destabilizing Energy Measure
Internal Loop or Bulge : eL(i, j, i', j')
The bigger the loop is and the more asymmetric the two
sides are, the more unstable is the structure
eL(i, j, i', j') depends on (|i'-i+1|+|j'-j+1|) and the asymmetry
Multi-loop : eM(i1, j1, i2, j2, ..., ik, jk)
The structure is more unstable if the loop size and k is big
21. Zuker Algorithm
Finds a secondary structure with minimum total
destabilizing energy
Uses a dynamic Programming
Running Time Exponential
23. Conclusion
Summary
An algorithm that finds a secondary structure
with the maximum number of base pairs
Future works
Develop an algorithm that does not make the
assumption of absence of pseudoknots
(Gary and Stormo)
Develop an algorithm that addresses base
triples and other types of base pairs