Sunteți pe pagina 1din 11

Curs 2

Bioinformatica

2.1. Alinierea secventelor

Definitie
Alinierea secventelor este procedura de comparare a doua (aliniere perechi secvente) sau mai mai multe
secvente (aliniere de secvente multiple) prin cautarea unor serii de caractere individuale sau patternuri
(tipare) de caractere care sunt in aceaisi ordine in secventa.

Sunt doua tipuri de aliniere a secventelor, globale si locale. Secventele care sunt foarte similare si
aproximativ de aceiasi lungime sunt candidate ideale pentru alinierea globala, luind in calcul intreaga
lungime a secventei. Alinieri locale sunt mai potrivite pentru secvente care au lunigimi de secvente
similare dar si zone in care disimilaritatea este ridicata.

Alinierea secventelor este utila pentru descoperirea informatiilor functionale, structurale sau evolutive
in secventele biologice. Este foarte important sa se obtina cea mai buna alinierea posibila sau
“optimala” pentru a descoperi aceste informatii. Secventele indica cit de mult seamana sau sunt
similare secventele analizate, care au probabil aceaisi functie, fie un rol regulator in cazul moleculelor
de DNA similar, fie functii bio-chimice similare si structuri tri-dimensionale in cazul unor proteine. In
plus, daca doua secvente din organisme diferite sunt similare, ele ar putea avea o secventa comuna a
unui stramos si atunci secventa este definita ca fiind omoloaga. Alinierile indica schimbarile care ar
putea sa se produca intre doua specii omoloage si un stramos comun in timpul evolutiei.

Numarul de pasi necesari de a schimba o secventa in alta secventa este distanta evolutiva intre secvente
si este de asemenea numarul de pasi pentru a schimba stramosul comun in una din secventele x plus
numarul de pasi necesari pentru a schimba stramosul comun in una din secventele y.
Mostenitorul comun al acestor secvente nu este disponibil astfel incit nu putem calcula pe x si y
sepearat ci doar x+y, care este distanta nepotrivirilor de aliniere (pauzele sau gap-urile nu sunt
numarate). In analiza arborelui filogenetic a trei sau mai multe secvente similare, se pot estima distante
separat fata de stramos.

Alinierea secventelor se face in principal cu urmatorii algoritmi:

- analiza matricii punct (dot matrix analysis- DMA)


- algoritmi de programare dinamica (dynamic programming – DP)
- FASTA, BLAST care utilizeaza metode pe cuvint sau k-uple.

2. 2. Analiza matricii punct (dot matrix analysis- DMA)

DMA este utilizata in special pentru a compara doua secvente in scopul cautarii unei alinieri intre
secvente si a fost descrisa prima data de Gibbs si McIntyre (1970). Metoda este folosita si pentru a
descrie secvente directe sau inversate intre proteine si DNA si pentru a prezice regiunile din RNA care
sunt auto-complementare si deci din acest motiv au potetialul de a forma o structura secundara.

Vom nota intr-o functie de scor cu 1 pentru potrivire (un punct – dot) si cu 0 nepotrivirea (spatiu
liber), fara ferestruire intr-o matrice in care pe axa x este o secventa iar pe axa y cealalta secventa.

Interpretarea este urmatoarea:


 Regiunile cu similaritate apar ca diagonale de puncte
 Diagonala inversa (perpendicular pe diagonala) indica inversiuni
 Secventele care traverseaza diagonala sunt palindroame (cuvinte care sunt identice oricum le-
am citi: de la inceput la sfirsit sau invers)
Aceasta matrice presupune ca ambele secvente sunt proteine sau secvente DNA. Daca una din secvente
este secventa DNA, cealalta secventa trebuie translatata si apoi aliniata cu a doua, secventa proteina.
Exista programe (LALIGN sau BESTFIT) care au recomandat o matrice de scor combinata cu
penalitati de gap-uri (spaţii libere).

Punctele pot avea de asemeni ponderi (adica valori intregi in intervalul [-n, +n]). Anumite potriviri sunt
cotate cu valori mai mari decit altele depinzind de vecinatate (e.g. matrici PAM, BLOSUM). Se pune
un punct numai daca se obtine un minim total sau o pondere medie.

Citeva exemple interesante sunt structura Calmoludin vs Calmoludin, Chimpanzu hemoglobina


intergenic DNA vs maimuta paianjen (spider monkey), etc.

2.3. Algoritmi de programare dinamica (dynamic programming – DP) pentru


alinierea secventelor.

Algoritmul de aliniere a doua secvente care permit spatii (gap-uri) trebuie sa efectueze un numar de
comparatii proportional cu patratul unei secvente de lungime medie n adica O(n2), ca in comparatia
din matricea punct. Daca aliniamentul include si spatii de orice lungime in orice pozitie in oricare
secventa, numarul de comparatii devine astronomic si nu este fezabil a se face prin metode de
comparare directe. Programarea dinamica ia in consideratie spatiile dar cere un numar rezonabil de
comparatii. Spatiul corespunde inserarii sau stergerii unui rezidual

Ideea de baza este vizualizarea unei secvente deasupra celeilalte secvente cu spatii inserate in ambele
pentru a arata similaritatile

Se iau in considerare doua tipuri de aliniament: global si local. Fiind date doua secvente:

S = CTGTCGCTGCACG
T = TGCCGTG

CTGTCG-CTGCACG CTGTCGCTGCACG--
-TGC-CG-TG---- -------TGC-CGTG
alinierea globala aliniere locala

Scorul matricii poate fi calculat simplu, de exemplu prin alocare de valori:


 pentru potrivire
 penalitate pentru nepotrivire
 penalitate pentru spatiu

scor ( A)    x    y    z unde x, y respectiv z sunt numarul de elemente care satisfac cele trei
situatii enumerate mai sus. In exemplul de aliniere globala de mai sus, daca  = 10,  = -2 si  = -5,
calculul este scor(A) = 11:
Scorul general este: -5 + 10 + 10 – 2 – 5 – 2 – 5 – 5 + 10 + 10 - 5 = 11

Daca se ia in calcul divergenta dintre matrici modelate de matricea de mutatie M, ale carei elemente
descriu probabilitatea mutatiei unui amino-acid dupa o perioada de evolutie data si valorile de date
tabelate se obtine:

scor ( A)  4  2  4 11  9  7  15

Matricile de substitutie evolutive sunt considerate pe baza observatiilor ratelor de mutatie. Cele mai
cunoscute sunt:
 familia PAM (Point Accepted Mutation): PAM250, PAM 120, etc.
 familia BLOSUM (Block Substitution Matrix): BOLSUM62, BLOSUM50, etc.

Algoritmul de aliniere globala cel mai des utilizat este Needleman-Wunsch iar cel local Smith-
Waterman. Variante ale acestor algoritmi utilizeaza functii de penalizare a spatiilor si matrici de scor.

Ecuatiile care urmeaza descriu algoritmul din figura de mai sus. Sunt trei directii in matricea de scor
prin care se poate ajunge intr-o pozitie (i,j) : diagonala fara penalitate de spatiu liber, miscare pe
coloana j sau linia i cu penalitate de spatiu liber care depinde de marimea spatiului liber (gap). Pentru
doua secvente a  a1a2 ...an si b  b1b2 ...bm , daca notam cu C (i, j ) costul (scorul) pozitiei i in secventa a
si al pozitiei j in secventa b, cu s(i, j ) scorul de similaritate a caracterelor la pozitiile i si j iar cu dx
penalitatea pentru spatiul liber x si cu dy penalitatea pentru spatiul liber y , obtinem:
C(i, j )  max {C(i 1, j 1)  s(i, j), max (C(i 1, j)  dx), max (C(i, j 1)  dy}

Conditiile initiale sunt C(i,1)  (i 1)  dx, C(1, j)  ( j 1)  dy , 1  i  n, 1  j  m . De obicei, dx =
dy, si putem nota dx = dy = d. Fiecare element al matrici de scor este setat de:

C (i  1, j  1)  s(i, j )

C (i, j )  max C (i  1, j )  d
C (i, j  1)  d

Algoritmul presupune respectarea urmatorilor pasi:


1. Initializare matrice scor
2. calculare scor initializare matrice traseu invers
3. deducerea aliniamentului folosind matricea traseu invers

Exemplu. 1
Consideram matricea de substitutie BLOSUM62 (anexa) si doua secvente SEND si AND. Penalitatea
de spatiu (gap) este 10 (g = -10) si nu sunt gapuri de extensie.

Notatiile pentru celulele matricii sunt date in figura in stânga.


Scorul celulelor incepe din pozitia C(2,2). Mai intii se
completeaza toate valorile date de matricea de tranzitie
BLOSUM62. De exemplu, ND are valoare 1 regasita in
C(3,5), iar DD are valoarea de tranzitie 6, regasita in C(4,5).
Aceste valori sunt valorile s(i,j) din matrice de scor care va fi
calculata.

Pasul 1. Calculăm C(2,2), g este notaţia pentru valoare gap (-10)

În timp ce C(1, 1), C(1, 2), and C(2, 1) sunt citite din matricea de scor, S(S, A) este scorul de de
transformare S ↔ A luat din matricea BLOSUM62.
Pentru matricea scor C(2,2) = qdiag care este 1. Celula corespunzătoare pentru traseul de întoarcere
(traceback matrix) este ”diag”:

Se completează avansând în matrice, recursiv. În pasul următor se calculează C(2,3)

Calculăm valoarea celulei C(2,3)

Pentru matricea scor C(2,3) = qleft care este +9. Celula corespunzătoare pentru traseul de întoarcere
(traceback matrix) este ”left”.

După ce sunt completate toate celulele, matricea de scor şi matricea de întoarcere (traceback) sunt:
Matricea de întoarcere (traceback):
 întoarcere (traceback) = procesul de deducere al celui mai bun aliniament din matricea de
întoarcere (traceback).
 Procesul de întoarcere începe de la ultima celulă completată cu scorul corespunzător, adică
cea mai de jos din dreapta.
 Se mută în celula precedentă conform valorii de întoarcere scrisă în celulă.
 Pnetru fiecare celulă sunt doar trei mutări posibile: diagonală (către colţul stânga sus al
matricii), sus (up), sau stânga (left).
 traseul de întoarcere se finalizează (este terminat) cănd se ajunge la ultima celulă din colţul
din stânga sus, celula notată cu ”done”.

Cel mai bun aliniament se deduce din


valorile celulelor mergând înapoi:
 diag – literele din două secvenţe
sunt aliniate
 left – este introdus un gap în
secvenţa din stânga
 up - este introdus un gap în secvenţa
de deasupra

Secvenţele sunt alineate înapoi (backward)

Pas-cu-pas (1)
Prima celulă din drumul înapoi indică ”diag”, şi implică alinierea următoarelor litere

Pas-cu-pas (2)
A doua celulă din drumul înapoi indică ”diag”, şi implică alinierea următoarelor litere
Pas-cu-pas (3)
A treia celulă din drumul înapoi indică ”left”, şi implică un gap în secvenţa din stânga (se staţionează
pe litera A din secvenţa din stânga

Pas-cu-pas (4)
A patra celulă din drumul înapoi indică din nou ”diag”, şi indică faptul ca urmatoarele litere sunt
aliniate.

Rezultă cel mai bun aliniament Nedelman-Wunsch:

Este cea mai buna aliniere, cu un scor de: 1+(-10)+6+6 = +3 (Valorile sunt luate din tabela Blosum si
gap).
O căutare exhaustiva (calculează pentru toate combinaţiile posibile), calculează următoarele scoruri:

Soluţia este mai rapidă dar este vorba de secvenţe foarte mici. Următoarele situaţii sunt clarificatoare
 pentru două secvenţe de lungime reziduu 12, numărul combinaţiilor posibile este de
aproximativ 1 milion
 pentru pentru două secvenţe de lungime reziduu 150, ar trebui 1088 aliniamente.

Nedelman-Wunch cere doar o matrice 150150.

Exemplu 2. Consideram valorile de +10 pentru potrivire, -2 pentru nepotrivire si -5 pentru spatiu. Vom
nota cu C matricea de similaritate.
Fie cele 2 siruri: a = CTCGCAGC si b = CATTCAC.

C T C G C A G C
0 -5 -10 -15 -20 -25 -30 -35 -40
C -5 10 -2 10 -2 10 -2 -2 10
A -10 -2 -2 -2 -2 -2 10 -2 -2
T -15 -2 10 -2 -2 -2 -2 -2 -2
T -20 -2 10 -2 -2 -2 -2 -2 -2
C -25 10 -2 10 -2 10 -2 -2 10
A -30 -2 -2 -2 -2 -2 10 -2 -2
C -35 10 -2 10 -2 10 -2 -2 10

Exemplu de demo interactiv


http://experiments.mostafa.io/public/needleman-wunsch/
2.4. Alte problematici referitoare la alinierea secventelor

 Algoritmi de substitutie amino acizi


 Algorimul euristic BLAST pentru doua secvente
 Algoritmi de analiza multisecventiale – este legata de analiza filogenetica (PILEUP,
CLUSTALW)
 Statistici ale secventelor (functii din toolbox Bioinformatics de la MATLAB)

Aliniamentul a trei secvente cu algoritm de programare dinamica.

Anexa A.

O descriere formala intuitiva a algoritmului de programare dinamica este data mai jos

Referinţă
1. Richard Durbin, Sean R. Eddy , Anders Krogh, Graeme Mitchison, Biological Sequence
Analysis - Probabilistic Models of Proteins and Nucleic Acid, Cambridge University Press,
1998 (Chapter 2).
Matricea de substitutie BLOSUM62

S-ar putea să vă placă și