dynamic programming (dp)

23
Dynamic Programming (DP) Three Steps: Initialization Matrix fill (scoring) Traceback (alignment) Global Alignment: Needleman- Wunsch Local Alignment: Smith-Waterman

Upload: zahina

Post on 08-Jan-2016

56 views

Category:

Documents


0 download

DESCRIPTION

Dynamic Programming (DP). Three Steps: Initialization Matrix fill (scoring) Traceback (alignment) Global Alignment: Needleman-Wunsch Local Alignment: Smith-Waterman. G A A T T C A G T T A (sequence #1) G G A T C G A (sequence #2). http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Dynamic Programming (DP)

Dynamic Programming (DP)

• Three Steps: Initialization Matrix fill (scoring) Traceback (alignment)

• Global Alignment: Needleman-Wunsch

• Local Alignment: Smith-Waterman

Page 2: Dynamic Programming (DP)

• G A A T T C A G T T A (sequence #1)

• G G A T C G A (sequence #2)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 3: Dynamic Programming (DP)

DP (Initialization)

• Create N+1 by M+1 Matrix

• M = Seq1 length = 11

• N = Seq2 length = 7

• Assuming no gap opening penalty, 0’s fill the first row and column

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 4: Dynamic Programming (DP)

DP (Scoring)

Simple Scoring Scheme

• Si,j = 1 (Match)

• Si,j = 0 (Mismatch)

• w = 0 (Gap)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 5: Dynamic Programming (DP)

DP (Scoring)

Si,j = 1 (Match), Si,j = 0 (Mismatch), w = 0 (Gap)

F(i,j) = maxF(i-1, j-1) + s(xi, yi)F(i-1, j) - wF(i, j-1) - w

F(i,j)F(i-1, j)

F(i, j-1)F(i-1, j-1)

- w

- w

s(xi, yi)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 6: Dynamic Programming (DP)

DP (Scoring)

Si,j = 1 (Match), Si,j = 0 (Mismatch), w = 0 (Gap)

F(i,j) = maxF(i-1, j-1) + s(xi, yi)F(i-1, j) - wF(i, j-1) - w

F(i,j)F(i-1, j)

F(i, j-1)F(i-1, j-1)

- w

- w

s(xi, yi)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 7: Dynamic Programming (DP)

DP (Scoring)

Si,j = 1 (Match), Si,j = 0 (Mismatch), w = 0 (Gap)

F(i,j) = maxF(i-1, j-1) + s(xi, yi)F(i-1, j) - wF(i, j-1) - w

F(i,j)F(i-1, j)

F(i, j-1)F(i-1, j-1)

- w

- w

s(xi, yi)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 8: Dynamic Programming (DP)

DP (Scoring)

Si,j = 1 (Match), Si,j = 0 (Mismatch), w = 0 (Gap)

F(i,j) = maxF(i-1, j-1) + s(xi, yi)F(i-1, j) - wF(i, j-1) - w

F(i,j)F(i-1, j)

F(i, j-1)F(i-1, j-1)

- w

- w

s(xi, yi)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 9: Dynamic Programming (DP)

DP (Scoring)

Completed Matrix

F(i,j) = maxF(i-1, j-1) + s(xi, yi)F(i-1, j) - wF(i, j-1) - w

F(i,j)F(i-1, j)

F(i, j-1)F(i-1, j-1)

- w

- w

s(xi, yi)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 10: Dynamic Programming (DP)

DP (Traceback)

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 11: Dynamic Programming (DP)

DP (Traceback)

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)

Seq1 A |Seq2 A

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 12: Dynamic Programming (DP)

DP (Traceback)

Seq1 T A |Seq2 _ A

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 13: Dynamic Programming (DP)

DP (Traceback)

Seq1 T T A |Seq2 _ _ A

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 14: Dynamic Programming (DP)

DP (Traceback)

Seq1 G A A T T C A G T T A | | | | | | Seq2 G G A _ T C _ G _ _ A

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 15: Dynamic Programming (DP)

DP (Traceback)

Alternative:

Seq1 G _ A A T T C A G T T A | | | | | | Seq2 G G _ A _ T C _ G _ _ A

G A A T T C A G T T A (Seq1) G G A T C G A (Seq2)

http://www.avatar.se/molbioinfo2001/dynprog/dynamic.html

Page 16: Dynamic Programming (DP)

Basic Local Alignment Search Tool (BLAST)

Heuristic Method

Page 17: Dynamic Programming (DP)

BLAST

Page 18: Dynamic Programming (DP)

BLAST

Page 19: Dynamic Programming (DP)

BLAST

Page 20: Dynamic Programming (DP)

BLAST

Page 21: Dynamic Programming (DP)

What can we search and compare?

DNA vs DNA

Protein vs Protein

DNA vs Protein

Protein vs DNA

Page 22: Dynamic Programming (DP)

Reading Frames

Page 23: Dynamic Programming (DP)

The best BLAST program