Algorismes de cerca Algorismes de cerca: definició del problema (text,patró) depèn de què...
-
date post
21-Dec-2015 -
Category
Documents
-
view
224 -
download
3
Transcript of Algorismes de cerca Algorismes de cerca: definició del problema (text,patró) depèn de què...
Algorismes de cerca
Algorismes de cerca: definició del problema (text,patró)
depèn de què coneixem al principi:• Cerca exacta:
• Cerca aproximada:
• 1 patró ---> L’algorisme depèn de la llargada i ||
• k patrons ---> L’algorisme depén del nombre k, la llargada i ||
• Només el text ----> Estructurar el text (suffix tree) • Només el/s patró/ns ---> Estructurar el/els patró/ns
depèn de la llargada del patró• l<w (llargada paraula) ---> Algorisme Myers • l>w (llargada paraula) ---> Programació dinàmica
• Extensions • Expressions regulars
• Cerca probabilista
2.2 Pairwise alignment
Given two DNA sequences A (a1a2...an) and B (b1b2...bm) from the alphabet {a,c,t,g}
we say that A* and B* from {a,c,t,g,-} are aligned iff
i) A* and B* become A and B if gaps ( – ) are removed.ii) |A*|=|B*|iii) For all i, it is not possible that ai = bi = -
Which is the best alignment?
How many alignments of two sequences exist?
MALIG (an example)
2.2 Number of alignments
Given two DNA sequences A (a1a2...an) and B (b1b2...bm) there are:
#(a1a2...an ,b1b2...bm) = #(a1a2...an-1 ,b1b2...bm) those that end with (an,-)+ #(a1a2...an ,b1b2...bm-1) those that end with (-,bm) + #(a1a2...an-1 ,b1b2...bm-1) those that end with (an,bm)
a1
a2
a3
b1 b2 b3#(a1,b1)
2.2 Number of alignments
Given two DNA sequences A (a1a2...an) and B (b1b2...bm) there are:
#(a1a2...an ,b1b2...bm) = #(a1a2...an-1 ,b1b2...bm) those that end with (an,-)+ #(a1a2...an ,b1b2...bm-1) those that end with (-,bm) + #(a1a2...an-1 ,b1b2...bm-1) those that end with (an,bm)
a1
a2
a3
b1 b2 b3
1 1 1 1111
2.2 Number of alignments
Given two DNA sequences A (a1a2...an) and B (b1b2...bm) there are:
#(a1a2...an ,b1b2...bm) = #(a1a2...an-1 ,b1b2...bm) those that end with (an,-)+ #(a1a2...an ,b1b2...bm-1) those that end with (-,bm) + #(a1a2...an-1 ,b1b2...bm-1) those that end with (an,bm)
a1
a2
a3
b1 b2 b3
1 1 1 1111
3 ? ?
2.2 Number of alignments
Given two DNA sequences A (a1a2...an) and B (b1b2...bm) there are:
#(a1a2...an ,b1b2...bm) = #(a1a2...an-1 ,b1b2...bm) those that end with (an,-)+ #(a1a2...an ,b1b2...bm-1) those that end with (-,bm) + #(a1a2...an-1 ,b1b2...bm-1) those that end with (an,bm)
a1
a2
a3
b1 b2 b3
1 1 1 1111
3 5 757 ?
2.2 Number of alignments
Given two DNA sequences A (a1a2...an) and B (b1b2...bm) then:
#(a1a2...an ,b1b2...bm) = #(a1a2...an-1 ,b1b2...bm) those that end with ( an , -)+ #(a1a2...an ,b1b2...bm-1) those that end with ( - , bm) + #(a1a2...an-1 ,b1b2...bm-1) those that end with ( an , bm)
a1
a2
a3
b1 b2 b3
1 1 1 1111
3 5 75713 2525 63
But, what is the assymptotic value?
2.2 Assymptotic value
> Σ ( ) ( )k=0
K=n
kn
kn
As
= ( )n2n
#(a1a2...an ,b1b2...bn)
and
n! ~ nn e-n (Stirling approximation)
then
#(a1a2...an ,b1b2...bn) > 22n
2.2 Best alignment
How can an alignment be scored?
catcactactgacgactatcgtagcgcggctatacatctacgccaa- ctac-t-gtgtagatcgccgg c- tgactgc--acgactatcgt- attgcggctacacactacgcacaactactgtatgtcgc-cgg---- * * *** * * ** * ******* * * **** **** ******* * **** ** * ***
How can the best alignment be found?
• Gap: worst case
• Mismatch: unfavorable
• Match: favorable
Then we assign a score for each case,for example 1,-1,-2.
2.2 Edit distance and alignment of strings
The best alignment of two strings …
…is related with the edit distance, first discussed in 1966...
The most efficient algorithm was proposed in 1968 and in 1970
using the technique called “Dynamic programming”
2.2 Best alignment
C T A C T A C T A C G T
ACTGA
2.2 Best alignment
C T A C T A C T A C G T
ACTGA
2.2 Best alignment
C T A C T A C T A C G T ACTGA
The cell contains the score of the best alignment of AC and CTACT.
C T A C T A C T A C G T A C TGA
2.2 Best alignment
C T A C T A C T A C G T 0 -2 -4-6 -8 …A-2C-4T -6GA
BA(AC,CTA) -C
BA(A,CTA)CC
BA(A,CTAC)C -
BA(AC,CTAC)= best
s(AC,CTAC)=max
s(AC,CTA)-2
s(A,CTA)+1
s(A,CTAC)-2
Best alignment
accaccacaccacaacgagcata … acctgagcgatat
acc..t
Given the maximum score,how can the best alignment be found?
• Quadratic cost in space and time
• Up to 10,000 bps sequences in length
Download alggen tool
2.2 Some slides revisited
We have developed the theory according to the following principles:
1) Both sequences have a similar length (global).
2) The model of gaps is linear
If there are k consecutive gaps
the penalty scores k(-2).
Assume that we have sequences with different length
S1
S2
2.2 Semiglobal pairwise alignment
It is meaningless to introduce gaps until both sequences have similar length ….
The most probable alignment should be
How can these alignments be found? Final gaps Initial gaps
2.2 Semiglobal pairwise alignment
C T A C T A C T A C G T
ACT
Initial gaps
Note that
Final gaps
2.2 Semiglobal pairwise alignment
C T A C T A C T A C G T
ACT
The cell contains the score of the best alignment of CTA with the empty sequence.
Given a cell
0 0 0 0 0 0 0 0 0 0 0 00
2.2 Semiglobal pairwise alignment
C T A C T A C T A C G T 0 0 0 0 0 0 0…ACT
The contribution of the initial gaps is disregarded, then
C T A C T A C T A C G T 0 0 0 0 0 0 0…A 1C 2T 3
but, what happens with the final gaps?
2.2 Semiglobal pairwise alignment
C T A C T A C T A C G T 0 0 0 0 0 0 0…A 1C 2T 3
Practice with the alggen tool.
… by checking the last row for the best score.
How does the algorithm search for the best alignment?
2.2 Affine-gap model score
Given the following alignments that have the same score …a g t a c c c c g t a ga g t - c c - - g t a -
a g t a c c c c g t a ga g t - c - c - g t a -
a g t a c c c c g t a ga g t - c - - c g t a -
a g t a c c c c g t a ga g t - - c c - g t a -
a g t a c c c c g t a ga g t - - c - c g t a -
a g t a c c c c g t a ga g t - - - c c g t a -
Which is the most reliable case from a biological point of view?
2.2 Affine-gap model score
Then, how can we distinguish betweenconsecutive gaps and separated gaps?
a g t a c c c c g t a ga g t - - c - c g t a -
a g t a c c c c g t a ga g t - - - c c g t a -
By scoring the opening gaps greater than the extension gaps,
for instance, -10 and -0.5.
Then, the penalty of k consecutive gaps becomes OG + (k-1) EG
which is an affine-gap function.
How is the best alignment found?.
C T A C T A C T A C G T ACTGA
2.2 Affine-gap model score
Smallest arrows: refer to the introduction of an opening gap.Largest arrows: refer to the introduction of an extension gap.
But from which cell do the largest arrows originate?
C T A C T A C T A C G T ACTGA
2.2 Affine-gap model score
In both cases we know which cell contributes with the minimum penalty score.
Acces to clustalW: http://www.ebi.ac.uk/clustalw
2.2 Local alignment
Given two sequences, we can consider the alignments of all their substrings…
…how can the best of them be found?
Two questions arise:
- how can the alignments be compared?
- how can the best one be selected?
2.2 Local alignment
Given a path
Imagine the graph of the scores:can the best subalignments be detected?
accaccacaccacaacgagcata … acctgagcgatat
acc..t
…It suffices to compare the value of each cell with zero!