Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to bioinformatics 2007

Similar presentations


Presentation on theme: "Introduction to bioinformatics 2007"— Presentation transcript:

1 Introduction to bioinformatics 2007
E N T R F O I G A V B M S U Introduction to bioinformatics 2007 Lecture 5 Pair-wise Sequence Alignment

2 Bioinformatics “Nothing in Biology makes sense except in the light of evolution” (Theodosius Dobzhansky ( )) “Nothing in bioinformatics makes sense except in the light of Biology”

3 The Genetic Code

4 A protein sequence alignment
MSTGAVLIY--TSILIKECHAMPAGNE----- ---GGILLFHRTHELIKESHAMANDEGGSNNS * * * **** *** A DNA sequence alignment attcgttggcaaatcgcccctatccggccttaa att---tggcggatcg-cctctacgggcc---- *** **** **** ** ******

5 Searching for similarities
What is the function of the new gene? The “lazy” investigation (i.e., no biologial experiments, just bioinformatics techniques): – Find a set of similar protein sequences to the unknown sequence – Identify similarities and differences – For long proteins: first identify domains

6 Is similarity really interesting?

7 Evolutionary and functional relationships
Reconstruct evolutionary relation: Based on sequence -Identity (simplest method) -Similarity Homology (common ancestry: the ultimate goal) Other (e.g., 3D structure) Functional relation: Sequence Structure Function

8 Searching for similarities
Common ancestry is more interesting: Makes it more likely that genes share the same function Homology: sharing a common ancestor – a binary property (yes/no) – it’s a nice tool: When (an unknown) gene X is homologous to (a known) gene G it means that we gain a lot of information on X: what we know about G can be transferred to X as a good suggestion.

9 How to go from DNA to protein sequence
A piece of double stranded DNA: 5’ attcgttggcaaatcgcccctatccggc 3’ 3’ taagcaaccgtttagcggggataggccg 5’ DNA direction is from 5’ to 3’

10 How to go from DNA to protein sequence
6-frame translation using the codon table (last lecture): 5’ attcgttggcaaatcgcccctatccggc 3’ 3’ taagcaaccgtttagcggggataggccg 5’

11 Bioinformatics tool tool Algorithm Data Biological Interpretation
(model)

12 Example today: Pairwise sequence alignment needs sense of evolution
Global dynamic programming MDAGSTVILCFVG Evolution M D A S T I L C G Amino Acid Exchange Matrix Search matrix MDAGSTVILCFVG- Gap penalties (open,extension) MDAAST-ILC--GS

13 How to determine similarity?
Frequent evolutionary events: 1. Substitution 2. Insertion, deletion 3. Duplication 4. Inversion Evolution at work We’ll only use these Common ancestor, usually extinct Z X Y available

14 Alignment - the problem
Algorithmsforgenomes ||||||| algorithms4genomes algorithmsforgenomes |||||||||| algorithms4genomes algorithmsforgenomes ||||||||||? ||||||| algorithms4--genomes Operations: substitution, Insertion deletion GTACT--C GGA-TGAC

15 A protein sequence alignment
MSTGAVLIY--TSILIKECHAMPAGNE----- ---GGILLFHRTHELIKESHAMANDEGGSNNS * * * **** *** A DNA sequence alignment attcgttggcaaatcgcccctatccggccttaa att---tggcggatcg-cctctacgggcc---- *** **** **** ** ******

16 Dynamic programming Scoring alignments
– Substitution (or match/mismatch) • DNA • proteins – Gap penalty • Linear: gp(k)=ak • Affine: gp(k)=b+ak • Concave, e.g.: gp(k)=log(k) The score for an alignment is the sum of the scores of all alignment columns

17 Dynamic programming Scoring alignments
– Substitution (or match/mismatch) • DNA • proteins – Gap penalty • Linear: gp(k)=ak • Affine: gp(k)=b+ak • Concave, e.g.: gp(k)=log(k) The score for an alignment is the sum of the scores over all alignment columns affine penalty concave linear , / Gap length General alignment score: Sa,b =

18 Substitution Matrices: DNA
define a score for match/mismatch of letters Simple: Used in genome alignments: A C G T 1 -1 A C G T 91 -114 -31 -123 100 -125

19 Substitution matrices for a.a.
Amino acids are not equal: Some are similar and easily substituted: biochemical properties structure Some mutations occur more often due to similar codons The two above give us substitution matrices orange: nonpolar and hydrophobic. green: polar and hydrophilic magenta box are acidic light blue box are basic

20 BLOSUM 62 substitution matrix

21 Constant vs. affine gap scoring
-1 -2 extension intro Gap Scoring -3 Affine Constant …and +1 for match Seq1 G T A G - T - A Seq A T G - A T G - Const -2 –2 1 –2 –2 (SUM = -7) -2 – –2 (SUM = -7) Affine – (SUM = -7) -3 – –3 (SUM = -11)‏

22 Dynamic programming Scoring alignments
T D W V T A L K T D W L - - I K 2020 10 1 Affine gap penalties (open, extension) Amino Acid Exchange Matrix Score: s(T,T)+s(D,D)+s(W,W)+s(V,L)-Po-2Px + +s(L,I)+s(K,K)

23 Amino acid exchange matrices
2020 How do we get one? And how do we get associated gap penalties? First systematic method to derive a.a. exchange matrices by Margaret Dayhoff et al. (1968) – Atlas of Protein Structure

24 amino acid exchange matrix (log odds)
Q E G H I L K M F P S T W Y V A R N D C Q E G H I L K M F P S T W Y V PAM250 matrix amino acid exchange matrix (log odds) Positive exchange values denote mutations that are more likely than randomly expected, while negative numbers correspond to avoided mutations compared to the randomly expected situation

25 Amino acid exchange matrices
Amino acids are not equal: 1. Some are easily substituted because they have similar: • physico-chemical properties • structure 2. Some mutations between amino acids occur more often due to similar codons The two above observations give us ways to define substitution matrices

26 Pair-wise alignment T D W V T A L K T D W L - - I K
Combinatorial explosion - 1 gap in 1 sequence: n+1 possibilities - 2 gaps in 1 sequence: (n+1)n - 3 gaps in 1 sequence: (n+1)n(n-1), etc. 2n (2n)! n = ~ n (n!) n 2 sequences of a.a.: ~1088 alignments 2 sequences of 1000 a.a.: ~10600 alignments!

27 Technique to overcome the combinatorial explosion: Dynamic Programming
Alignment is simulated as Markov process, all sequence positions are seen as independent Chances of sequence events are independent Therefore, probabilities per aligned position need to be multiplied Amino acid matrices contain so-called log-odds values (log10 of the probabilities), so probabilities can be summed

28 To say the same more statistically…
To perform statistical analyses on messages or sequences, we need a reference model. The model: each letter in a sequence is selected from a defined alphabet in an independent and identically distributed (i.i.d.) manner. This choice of model system will allow us to compute the statistical significance of certain characteristics of a sequence, its subsequences, or an alignment. Given a probability distribution, Pi, for the letters in a i.i.d. message, the probability of seeing a particular sequence of letters i, j, k, ... n is simply Pi Pj Pk···Pn. As an alternative to multiplication of the probabilities, we could sum their logarithms and exponentiate the result. The probability of the same sequence of letters can be computed by exponentiating log Pi + log Pj + log Pk+ ··· + log Pn. In practice, when aligning sequences we only add log-odds values (residue exchange matrix) but we do not exponentiate the final score.

29 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): 1981 Smith-Waterman local pair-wise alignment Smith, TF, Waterman, MS (1981) Identification of common molecular subsequences. J. Mol. Biol. 147,

30 Pairwise sequence alignment
Global dynamic programming MDAGSTVILCFVG Evolution M D A S T I L C G Amino Acid Exchange Matrix Search matrix MDAGSTVILCFVG- Gap penalties (open,extension) MDAAST-ILC--GS

31 Global dynamic programming
j-1 j i-1 i Value from residue exchange matrix H(i-1,j-1) + S(i,j) H(i-1,j) - g H(i,j-1) - g diagonal vertical horizontal H(i,j) = Max This is a recursive formula

32 Global alignment The Needleman-Wunsch algorithm
Goal: find the maximal scoring alignment Scores: m match, -s mismatch, -g for insertion/deletion Dynamic programming Solve smaller subproblem(s)‏ Iteratively extend the solution The best alignment for X[1…i] and Y[1…j] is called M[i, j] X1 … Xi Xi Y1 … - Yj-1 Yj -

33 The algorithm Goal: find the maximal scoring alignment
Scores: m match, -s mismatch, -g for insertion/deletion The best alignment for X[1…i] and Y[1…j] is called M[i, j] 3 ways to extend the alignment Y[1…j-1] Y[j] X[1…i-1] X[i] Y[1…j-1]Y[j] X[1…i] - Y[1…j] - M[i-1, j-1] + m - s M[i,j] = M[i, j-1] - g M[i-1, j] - g

34 The algorithm – final equation
Corresponds to: * X1…Xi-1 Xi Y1…Yj-1 Yj M[i-1, j-1] + score(X[i],Y[j])‏ M[i, j] = max M[i, j-1] – g X1…Xi - Y1…Yj-1 Yj M[i-1, j] – g X1…Xi-1 Xi Y1…Yj - j-1 j i-1 * -g i -g

35 Example: global 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-1, j-1] ± 1 M[i, j] = max M[i, j-1] – 2 M[i-1, j] – 2

36 The algorithm. Step 1: init
M[i-1, j-1] ± 1 Create the matrix Initiation 0 at [0,0] Apply the equation… M[i, j] = max M[i, j-1] – 2 M[i-1, j] – 2 j 1 2 3 4 5 6 i - G A G T G A - 1 G 2 A 3 G 4 G 5 C 6 G 7 A

37 The algorithm. Step 1: init
M[i-1, j-1] ± 1 M[i, j] = max M[i, j-1] – 2 M[i-1, j] – 2 j Initiation of the matrix: 0 at pos [0,0] Fill in the first row using the “” rule Fill in the first column using “” -14 A -12 G -10 C -8 -6 -4 -2 - T i

38 The algorithm. Step 2: fill in
M[i-1, j-1] ± 1 M[i, j] = max M[i, j-1] – 2 M[i-1, j] – 2 j Continue filling in of the matrix, remembering from which cell the result comes (arrows)‏ -14 A -12 G -10 C -8 -6 2 -1 -4 -3 1 -2 - T i

39 The algorithm. Step 2: fill in
M[i-1, j-1] ± 1 M[i, j] = max M[i, j-1] – 2 M[i-1, j] – 2 j We are done… Where’s the result? 2 -1 -4 -5 -8 -11 -14 A 1 -2 -3 -6 -9 -12 G -7 -10 C 3 - T The lowest-rightmost cell i

40 The algorithm. Step 3: traceback
Start at the last cell of the matrix Go against the direction of arrows Sometimes the value may be obtained from more than one cell (which one?)‏ M[i-1, j-1] ± 1 M[i, j] = max M[i, j-1] – 2 M[i-1, j] – 2 j 2 -1 -4 -5 -8 -11 -14 A 1 -2 -3 -6 -9 -12 G -7 -10 C 3 - T i

41 The algorithm. Step 3: traceback
The ‘low’ and the ‘high’ road Extract the alignments j a)‏ GAGT-GA 2 -1 -4 -5 -8 -11 -14 A 1 -2 -3 -6 -9 -12 G -7 -10 C 3 - T GAGGCGA a b)‏ b GA-GTGA GAGGCGA i You can also jump from the high to the low road in the middle (following the arrow): to what alignment does that lead?

42 Affine gaps Penalties: go - gap opening (e.g. -8)‏
ge - gap extension (e.g. -1)‏ M[i-1, j-1] X1… Xi Y1… Yj M[i, j] = score(X[i], Y[j]) + max Ix[i-1, j-1] Iy[i-1, j-1] X1…Xi - Y1…Yj-1 Yj X1… - Y1… Yj M[i, j-1] + go Ix[i, j] = max Ix[i, j-1] + ge X1… - - Y1…Yj-1 Yj M[i-1, j] + go Iy[i, j] = max Iy[i-1, j] + gx @ home: think of boundary values M[*,0], I[*,0] etc.

43 Semi-global pairwise alignment
Global alignment: all gaps are penalised Semi-global alignment: N- and C-terminal (5’ and 3’) gaps (end-gaps) are not penalised MSTGAVLIY--TS----- ---GGILLFHRTSGTSNS End-gaps End-gaps

44 Variation on global alignment
Global alignment: previous algorithms is called global alignment, because it uses all letters from both sequences. CAGCACTTGGATTCTCGG CAGC-----G-T----GG Semi-global alignment: don’t penalize for end gaps CAGCA-CTTGGATTCTCGG ---CAGCGTGG Applications of semi-global: Finding a gene in genome Placing marker onto a chromosome One sequence much longer than the other Danger! – really bad alignments for divergent seqs seq X: seq Y:

45 Semi-global pairwise alignment
Applications of semi-global: – Finding a gene in genome – Placing marker onto a chromosome – One sequence much longer than the other Danger: if gap penalties high -- really bad alignments for divergent sequences Protein sequences have N- and C-terminal amino acids that are often small and hydrophilic

46 Semi-global alignment
Ignore 5’ or N- terminal end gaps First row/column set to 0 Ignore C-terminal or 3’ end gaps Read the result from last row/column 1 3 -1 -2 2 T G A -

47 Take-home messages Homology Why are we interested in similarity?
Pairwise alignment: global alignment and semi-global alignment Three types of gap penalty regimes: linear, affine and concave Make sure you can calculate alignment using the DP algorithm

48 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

49 Global dynamic programming PAM250, Gap =6 (linear)
S P E A R 2 1 H -1 -2 K 3 4 S P E A R -6 -12 -18 -24 -30 -36 2 -4 -10 -16 -22 -28 H -3 -9 -14 -20 -1 -7 -13 K -15 -5 -2 6 These values are copied from the PAM250 matrix (see earlier slide) The extra bottom row and rightmost column give the penalties that would need to be applied due to end gaps Higgs & Attwood, p. 124

50 Global dynamic programming Linear, Affine or Concave gap penalties
j-1 All penalty schemes are possible because the exact length of the gap is known i-1 Gap opening penalty Max{S0<x<i-1, j-1 - Pi - (i-x-1)Px} Si-1,j-1 Max{Si-1, 0<y<j-1 - Pi - (j-y-1)Px} Si,j = si,j + Max Gap extension penalty

51 Global dynamic programming Gapo=10, Gape=2
W V T A L K 8 3 11 9 12 1 6 4 25 2 5 10 14 7 13 D W V T A L K -12 -14 -16 -18 -20 -22 -24 8 -9 -6 -5 -11 9 2 3 -3 -34 -13 25 11 5 4 -21 -10 -4 37 21 19 15 -2 23 46 31 26 1 17 33 53 39 50 14 -29 -1 27 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

52 Easy DP recipe for using affine gap penalties
j-1 i-1 M[i,j] is optimal alignment (highest scoring alignment until [i,j]) Check preceding row until j-2: apply appropriate gap penalties preceding row until i-2: apply appropriate gap penalties and cell[i-1, j-1]: apply score for cell[i-1, j-1]

53 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!

54 Global dynamic programming

55 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) Global score is 65 –10 – 1*2 –10 – 2*2

56 Local dynamic programming (Smith & Waterman, 1981)
LCFVMLAGSTVIVGTR E D A S T I L C G Negative numbers Amino Acid Exchange Matrix Search matrix Gap penalties (open, extension) AGSTVIVG A-STILCG

57 Local dynamic programming (Smith & Waterman, 1981)
j-1 i-1 Gap opening penalty Si,j + Max{S0<x<i-1,j-1 - Pi - (i-x-1)Px} Si,j + Si-1,j-1 Si,j + Max {Si-1,0<y<j-1 - Pi - (j-y-1)Px} Si,j = Max Gap extension penalty

58 Local dynamic programming

59 Dot plots Way of representing (visualising) sequence similarity without doing dynamic programming (DP) Make same matrix, but locally represent sequence similarity by averaging using a window

60 Comparing two sequences
We want to be able to choose the best alignment between two sequences. A simple method of visualising similarities between two sequences is to use dot plots. The first sequence to be compared is assigned to the horizontal axis and the second is assigned to the vertical axis.

61 Dot plots can be filtered by window approaches (to calculate running averages) and applying a threshold They can identify insertions, deletions, inversions


Download ppt "Introduction to bioinformatics 2007"

Similar presentations


Ads by Google