Download presentation
Presentation is loading. Please wait.
Published byJasmin Small Modified over 9 years ago
1
Pair-wise Sequence Alignment (II) Introduction to bioinformatics 2008 Lecture 6 C E N T R F O R I N T E G R A T I V E B I O I N F O R M A T I C S V U E
2
What can sequence alignment tell us about structure HSSP Sander & Schneider, 1991 ≥30% sequence identity
3
Sequence alignment History of Dynamic Programming algorithm 1970 Needleman-Wunsch global pair-wise alignment Needleman SB, Wunsch CD (1970) A general method applicable to the search for similarities in the amino acid sequence of two proteins, J Mol Biol. 48(3):443-53. 1981 Smith-Waterman local pair-wise alignment Smith, TF, Waterman, MS (1981) Identification of common molecular subsequences. J. Mol. Biol. 147, 195-197.
4
Global dynamic programming i-1 i j-1 j H(i,j) = Max H(i-1,j-1) + S(i,j) H(i-1,j) - g H(i,j-1) - g diagonal vertical horizontal Value from residue exchange matrix This is a recursive formula
5
Dynamic programming i j The cell [i, j] contains the alignment score of the best scoring alignment score of subsequence 1..i and 1..j, that is, the subsequences up to [i, j] Cell [i, j] does not ‘know’ what that best scoring alignment is (it is one out of many possibilities)
6
Global dynamic programming PAM250, Gap =6 (linear) SPEARE 0-6-12-18-24-30-36 S-62-4-10-16-22-28 H-12 -42-3-9-14-20 A-18-10-30-7-13 K-24-16-9-32-4 E-30-22-15-5-3-26 SPEARE S210100 H01 21 A1102-20 K00 30 E0 40 4 These values are copied from the PAM250 matrix (see earlier slide) and represent the S(i, j) values in the DP formula (back two slides) Higgs & Attwood, p. 124 – Note: There are errors in the matrices!! SPEARE S-HAKE The easy algorithm is only for linear gap penalties
7
Global dynamic programming PAM250, Gap =6 (linear) SPEARE 0-6-12-18-24-30-36 S-62-4-10-16-22-28 H-12 -42-3-9-14-20 A-18-10-32-7-13 K-24-16-9-312-4 E-30-22-15-5-3-26 SPEARE S210100 H01 21 A1102-20 K00 30 E0 40 4 These values are copied from the PAM250 matrix (see earlier slide) Higgs & Attwood, p. 124 – Note: There are errors in the matrices!! SPEARE S-HAKE The easy algorithm is only for linear gap penalties Start in left upper cell before either sequence (circled in red). Path will end in lower right cell (circled in blue)
8
DP is a two-step process Forward step: calculate scores Trace back: start at highest score and reconstruct the path leading to the highest score –These two steps lead to the highest scoring alignment (the optimal alignment) –This is guaranteed when you use DP!
9
Global dynamic programming i-1 i j-1 j H(i,j) = Max H(i-1,j-1) + S(i,j) H(i-1,j) - g H(i,j-1) - g diagonal vertical horizontal Problem with simple DP approach: Can only do linear gap penalties Not suitable for affine and concave penalties, but algorithm can be extended to deal with affine penalties (preceding lecture)
10
Global dynamic programming using affine penalties i-2 i-1 i j-2 j-1 j If you came from here, gap was opened so apply gap-open penalty If you came from here, gap was already open, so apply gap-extension penalty Looking back from cell (i, j) we can adapt the algorithm for affine gap penalties by looking back to four more cells (magenta)
11
Time and memory complexity of DP The time complexity is O(n 2 ): if you would align two sequences of n residues, you would need to perform n 2 algorithmic steps (square search matrix has n 2 cells that need to be filled) The memory (space) complexity is also O(n 2 ): if you would align two sequences of n residues, you would need a square search matrix of n by n containing n 2 cells
12
Global dynamic programming all types of gap penalties i-1 j-1 S i,j = s i,j + Max Max{S 0<x<i-1, j-1 - Gap(i-x-1)} S i-1,j-1 Max{S i-1, 0<y<j-1 - Gap(j-y-1)} The complexity of this DP algorithm is increased from O(n 2 ) to O(n 3 ) The gap length is known exactly and so any gap penalty regime can be used
13
Global dynamic programming if affine penalties are used i-1 j-1 S i,j = s i,j + Max Max{S 0<x<i-1, j-1 -G o -(i-x-1)*G e } S i-1,j-1 Max{S i-1, 0<y<j-1 -G o -(j-y-1)*G e }
14
DP recipe for using affine gap penalties M[i,j] is optimal alignment (highest scoring alignment until [i,j]) Check –preceding row until j-2: apply appropriate score and gap penalties –preceding row until i-2: apply appropriate score and gap penalties –and cell[i-1, j-1]: apply score for cell[i-1, j-1] i-1 j-1
15
Global dynamic programming Affine penalties: Gap o =10, Gap e =2 DWVTALK 0-12-14-16-18-20-22-24 T-128-9-6-5-9-11-14 D 09223-5-3-34 W-16-1325115490-21 V-18-10-4372119 15-16 L-20-14-223463137261 K-22-12-9173353395014 -34-2917392750 DWVTALK T83811998 D12168848 W12523265 V621288106 L46 96145 K85687513 These values are copied from the PAM250 matrix (see earlier slide), after being made non- negative by adding 8 to each PAM250 matrix cell (-8 is the lowest number in the PAM250 matrix) The extra bottom row and rightmost column give the final global alignment scores
16
DP is a two-step process Forward step: calculate scores Trace back: start at highest score and reconstruct the path leading to the highest score –These two steps lead to the highest scoring alignment (the optimal alignment) –This is guaranteed when you use DP!
17
Global dynamic programming
18
Semi-global pairwise alignment Global alignment: all gaps are penalised Semi-global alignment: N- and C-terminal gaps (end-gaps) are not penalised MSTGAVLIY--TS----- ---GGILLFHRTSGTSNS End-gaps
19
Semi-global dynamic programming PAM250, Gap =6 (linear) SPEARE 0000000 S0210100 H022 31 A01024-23 K0000171 E0040111 SPEARE S210100 H01 21 A1102-20 K00 30 E0 40 4 These values are copied from the PAM250 matrix (see earlier slide) Higgs & Attwood, p. 124 – Note: There are errors in the matrices!! SPEARE -SHAKE The easy algorithm is only for linear gap penalties Start in left upper cell before either sequence (circled in red). Path will end in cell anywhere in the bottom row or rightmost columns with the highest score
20
Semi-global dynamic programming - two examples with different gap penalties - These values are copied from the PAM250 matrix (see earlier slide), after being made non- negative by adding 8 to each PAM250 matrix cell (-8 is the lowest number in the PAM250 matrix)
21
Semi-global pairwise alignment Applications of semi-global: – Finding a gene in genome – Placing marker onto a chromosome – Generally: if one sequence is much longer than the other Danger: if gap penalties high -- really bad alignments for divergent sequences
22
There are three kinds of alignments Global alignment Semi-global alignment Local alignment
23
Local dynamic programming (Smith & Waterman, 1981) LCFVMLAGSTVIVGTR EDASTILCGSEDASTILCGS Amino Acid Exchange Matrix Gap penalties (open, extension) Search matrix Negative numbers AGSTVIVG A-STILCG
24
Local dynamic programming (Smith and Waterman, 1981) basic algorithm i-1 i j-1 j H(i,j) = Max H(i-1,j-1) + S(i,j) H(i-1,j) - g H(i,j-1) - g 0 diagonal vertical horizontal
25
Example: local alignment of two sequences Align two DNA sequences: –GAGTGA –GAGGCGA (note the length difference) Parameters of the algorithm: –Match: score(A,A) = 1 –Mismatch: score(A,T) = -1 –Gap: g = -2 M[i, j] = M[i, j- 1 ] – 2 M[i- 1, j] – 2 M[i- 1, j- 1 ] ± 1 max 0
26
The algorithm. Step 1: init Create the matrix Initiation –No beginning row/column –Just apply the equation… M[i, j] = M[i, j- 1 ] – 2 M[i- 1, j] – 2 M[i- 1, j- 1 ] ± 1 max 654321 jj 7 6 5 4 3 2 1 ii A G C G G A G AGTGAG 0
27
The algorithm. Step 2: fill in Perform the forward step… M[i, j] = M[i, j- 1 ] – 2 M[i- 1, j] – 2 M[i- 1, j- 1 ] ± 1 max 654321 jj 7 6 5 4 3 2 1 ii A G C G G A 1 G AGTGAG 0 0011 1 1 0 0 20002 0 3110 012
28
The algorithm. Step 2: fill in Perform the forward step… M[i, j] = M[i, j- 1 ] – 2 M[i- 1, j] – 2 M[i- 1, j- 1 ] ± 1 max 654321 jj 7 6 5 4 3 2 1 ii A G C G G A 1 G AGTGAG 0 0 0011 1 1 1 0 0 20002 0 3110 01220 0 0 011 01010 02 0002
29
The algorithm. Step 2: fill in We’re done Find the highest cell anywhere in the matrix M[i, j] = M[i, j- 1 ] – 2 M[i- 1, j] – 2 M[i- 1, j- 1 ] ± 1 max 654321 jj 7 6 5 4 3 2 1 ii A G C G G A 1 G AGTGAG 0 0 0011 1 1 1 0 0 20002 0 3110 01220 0 0 011 01010 02 0002
30
The algorithm. Step 3: trace back Reconstruct path leading to highest scoring cell Trace back until zero: alignment path can begin and terminate anywhere in matrix Alignment: GAG GAG M[i, j] = M[i, j- 1 ] – 2 M[i- 1, j] – 2 M[i- 1, j- 1 ] ± 1 max 654321 jj 7 6 5 4 3 2 1 ii A G C G G A 1 G AGTGAG 0 0 0011 1 1 1 0 0 20002 0 3110 01220 0 0 011 01010 02 0002
31
Local dynamic programming Match/mismatch = 1/-1, Gap =2 ATGACGT 00000000 T00100001 A0 1001000 G00010010 A01002000 C00000310 T00100022 Fill the matrix (forward pass), then do trace back from highest cell anywhere in the matrix till you reach 0 or the beginning of a sequence
32
Local dynamic programming Match/mismatch = 1/-1, Gap =2 ATGACGT 00000000 T00100001 A0 1001000 G00010010 A01002000 C00000310 T00100022 Fill the matrix (forward pass), then do trace back from highest cell anywhere in the matrix till you reach 0 or the beginning of a sequence GAC
33
Local dynamic programming (Smith & Waterman, 1981) i-1 j-1 S i,j = Max S i,j + Max{S 0<x<i-1,j-1 - Pi - (i-x-1)Px} S i,j + S i-1,j-1 S i,j + Max {S i-1,0<y<j-1 - Pi - (j-y-1)Px} 0 Gap opening penalty Gap extension penalty This is the general DP algorithm, which is suitable for linear, affine and concave penalties, although for the example here affine penalties are used
34
Local dynamic programming
35
Global or Local Pairwise alignment Local Global A B A B A B BA AB Local Global A B A C C A BC ABC A B A C C
36
Globin fold protein myoglobin PDB: 1MBN Alpha-helices are labelled ‘A’ (blue) to ‘H’ (red). The D helix can be missing in some globins: What happens with the alignment if D- helix containing globin sequences are aligned with ‘D-less’ ones?
37
sandwich protein immunoglobulin PDB: 7FAB Immunoglobulin structures have variable regions where numbers of amino acids can vary substantially
38
TIM barrel / protein Triose phosphate IsoMerase PDB: 1TIM The evolutionary history of this protein family has been the subject of rigorous debate. Arguments have been made in favor of both convergent and divergent evolution. Because of the general lack of sequence homology, the ancestry of this molecule is still a mystery.
39
What does all this mean for alignments? Alignments need to be able to skip secondary structural elements to complete domains (i.e. putting gaps opposite these motifs in the shorter sequence). Depending on gap penalties chosen, the algorithm might have difficulty with making such long gaps (for example when using high affine gap penalties), resulting in incorrect alignment. Alignments are only meaningful for homologous sequences (with a common ancestor)
40
There are three kinds of pairwise alignments Global alignment – align all residues in both sequences; all gaps are penalised Semi-global alignment – align all residues in both sequences; end gaps are not penalised (zero end gap penalties) Local alignment – align one part of each sequence; end gaps are not applicable
41
Easy global DP recipe for using affine gap penalties (after Gotoh) M[i,j] is optimal alignment (highest scoring alignment until [i, j]) At each cell [i, j] in search matrix, check Max coming from: any cell in preceding row until j-2: add score for cell[i, j] minus appropriate gap penalties; any cell in preceding column until i-2: add score for cell[i, j] minus appropriate gap penalties; or cell[i-1, j-1]: add score for cell[i, j] Select highest scoring cell in bottom row and rightmost column and do trace-back i-1 j-1 Penalty = Pi + gap_length*Pe S i,j = s i,j + Max Max{S 0<x<i-1, j-1 - Pi - (i-x-1)Px} S i-1,j-1 Max{S i-1, 0<y<j-1 - Pi - (j-y-1)Px}
42
Let’s do an example: global alignment Gotoh’s DP algorithm with affine gap penalties (PAM250, Pi=10, Pe=2) Row and column ‘0’ are filled with 0, -12, -14, -16, … if global alignment is used (for N-terminal end- gaps); also extra row and column at the end to calculate the score including C-terminal end-gap penalties. Note that only ‘non-diagonal’ arrows are indicated for clarity (no arrow means that you go back to earlier diagonal cell). DWVTALK T0-503110 D4-7-200-40 W-717-6-5-6-2-3 V-2-64002-2 L-4-221 6-3 K0 -20-35 DWVTALK 0-12-14-16-18-20-22-24 T -120-17-14-13-17-19-22 D -14-8-7-14 -13-42 W -16-219-13-19-18 V -2013-3-16 L -20-22-1814-14 K -22-20-21-12 -24-42-41-18-16-14-120 PAM250 Cell (D2, T4) can alternatively come from two cells (same score): ‘high-road’ or ‘low-road’
43
Let’s do another example: semi-global alignment Gotoh’s DP algorithm with affine gap penalties (PAM250, Pi=10, Pe=2) Starting row and column ‘0’, and extra column at right or extra row at bottom is not necessary when using semi global alignment (zero end- gaps). Rest works as under global alignment. DWVTALK T0-503110 D4-7-200-40 W-717-6-5-6-2-3 V-2-64002-2 L-4-221 6-3 K0 -20-35 DWVTALK T 0-503 D 4-7 W 21-13 V -2-13259 L K PAM250
44
Easy local DP recipe for using affine gap penalties (after Gotoh) M[i,j] is optimal alignment (highest scoring alignment until [i, j]) At each cell [i, j] in search matrix, check Max coming from: any cell in preceding row until j-2: add score for cell[i, j] minus appropriate gap penalties; any cell in preceding column until i-2: add score for cell[i, j] minus appropriate gap penalties; cell[i-1, j-1]: add score for cell[i, j] or 0 Select highest scoring cell anywhere in matrix and do trace-back until zero-valued cell or start of sequence(s) i-1 j-1 Penalty = Pi + gap_length*Pe S i,j = Max S i,j + Max{S 0<x<i-1,j-1 - Pi - (i-x-1)Px} S i,j + S i-1,j-1 S i,j + Max {S i-1,0<y<j-1 - Pi - (j-y-1)Px} 0
45
Let’s do yet another example: local alignment Gotoh’s DP algorithm with affine gap penalties (PAM250, Pi=10, Pe=2) Extra start/end columns/rows not necessary (no end-gaps). Each negative scoring cell is set to zero. Highest scoring cell may be found anywhere in search matrix after calculating it. Trace highest scoring cell back to first cell with zero value (or the beginning of one or both sequences) DWVTALK T0-503110 D4-7-200-40 W-717-6-5-6-2-3 V-2-64002-2 L-4-221 6-3 K0 -20-35 DWVTALK T0003 D4000 W02100 V00259 L0011 K00 PAM250
46
Dot plots Way of representing (visualising) sequence similarity without doing dynamic programming (DP) Make search matrix as for DP, but locally represent sequence similarity by averaging using a sliding window
47
Dot-plots Dot plots are calculated using a diagonal window of preset length that is slid through the search matrix -- typically the central cell holds the window score (e.g. sum, average)
48
Dot-plots a simple way to visualise sequence similarity Can be a bit messy, though... Filter: 6/10 residues have to match...
49
Dot-plots, what about... Insertions/deletions -- DNA and proteins Duplications (e.g. tandem repeats) – DNA and proteins Inversions -- DNA Dot plots are calculated using a diagonal window of preset length that is slid through the search matrix -- typically the central cell holds the window score (e.g. sum, average)
50
Dot-plots, self-comparison Direct repeat Tandem repeat Inverted repeat
51
a heuristic –Heuristics: A rule of thumb that often helps in solving a certain class of problems, but makes no guarantees. Perkins, DN (1981) The Mind's Best Work
52
For your first exam D1: Make sure you understand and can carry out 1. the ‘simple’ DP algorithm for global, semi- global and local alignment (using linear gap penalties but make sure you know the extension of the basic algorithm for affine gap penalties) and 2. The general DP algorithm for global, semi- global and local alignment (using linear, affine and concave gap penalties)!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.