Biologia_Computazionale_lezione3

Download Report

Transcript Biologia_Computazionale_lezione3

MATERIALE DEL CORSO
http://linux.btbs.unimib.it
ALLINEAMENTO DI SEQUENZA
• PER ESEGUIRE UN ALLINEAMENTO DI SEQUENZA SONO
NECESSARI ESSENZIALMENTE 3 STRUMENTI:
-
Avere a disposizione una MATRICE DI SOSTITUZIONE. La matrice definisce la
il GRADO di SIMILARITA’ tra amminoacidi;
-
Avere a disposizione un ALGORITMO DI ALLINEAMENTO cercando di
massimizzare il punteggio dato dalla matrice e valutando quanti gap
(interruzioni) inserire;
-
Avere a disposizione per evitare allineamenti senza senso una PENALITA’
per l’introduzione dei GAP.
I GAP riflettono inserzioni/delezioni
avvenute durante l’evoluzione
LLTTVRNN
LLTTVRNN
LLVRNN
LL--VRNN
SIMILARITA’ DI SEQUENZA
• Nel punteggio di similarità di sequenza si tiene conto del fatto
che gli amminoacidi a confronto in ogni posizione siano simili,
differenti o identici e di una penalità per i gap.
2 penalità per i gap
(apertura (fisso),
estensione (lunghezza
dipendente))
L
NG
i 1
k i
S ab   s(ai , bi )   (   l (k )  1)
• PER DEFINIRE LA SIMILARITA’ TRA LE DUE SEQUENZE SI USANO
MATRICI BASATE SU PRESUPPOSTI DIVERSI:
-
identità/non identità;
Caratteristiche chimico-fisiche degli aa;
Basate sul codice genetico: valutare quante mutazioni fare in una tripletta per
passare da un aa a un altro. (se ad es. si cambia un solo nucleotide la sostituzione la
sostituzione sarà meno penalizzata perché si tratta di evento probabile nel corso dell’evoluzione)
-
Basate su criteri evolutivi estrapolati da confronto di sequenze di proteine
omologhe (MATRICI BLOSUM E PAM)
L’utilizzo della matrice di similarita’ appropriata per ciascuna analisi
e’ cruciale per avere buoni risultati.
Infatti relazioni importanti da un punto di vista biologico possono
essere indicate da anche molto debole similarità.
Sequenze
poco divergenti

molto
divergenti
BLOSUM80
PAM1
BLOSUM62
PAM120
BLOSUM45
PAM250
Penalizzazioni degli indels
•
Generalmente si usano funzioni del tipo “lineare”
wx = gx
•
o, più frequentemente, di tipo “affine”
wx = g + rx
oppure
wx = g + r(x—1)
dove g è il punteggio di penalizzazione per l’apertura, r per l’elongazione
e x la lunghezza dell’indel
Gap
•
2 sequenze biologiche possono differire tra loro non solo per sostituzione di un
residuo con un altro ma anche per inserzione o delezione di residui.
•
E’ quindi spesso necessario introdurre degli spazi “-” in una o in entrambe le
sequenze da allineare, anche al fine di portare le sequenze alla stessa lunghezza.
•
•
Una sequenza di spazi contigui si definisce gap.
Necessario determinare un criterio per l’inserimento di tali gap.
•
L’inserimento di un gap abbassa lo score dell’allineamento; in questo modo,
essendo il nostro scopo quello di massimizzare lo score dell’allineamento,
verranno inseriti gap solo quando ciò è strettamente necessario.
Penalità associate ai GAP
•
La maggior parte degli algoritmi di allineamento usano penalità associate ai gap,
diverse per apertura ed estensione.
•
IL GOP (Gap Opening Penalty) è la penalità da pagare ogni qual volta viene
inserito un gap
IL GEP (Gap Extension Penalty) è la penalità da pagare ogni qual volta viene
esteso un gap già esistente.
•
•
Di solito GOP> GEP cioè aprire un nuovo gap è più costoso che estenderne uno
essitente. In questo modo si tende ad avere inserzioni e delezioni di parecchi
residui per volta piuttosto che inserzioni e delezioni sparse
GOP
L
NG
i 1
k i
GEP
S ab   s(ai , bi )   (   l (k )  1)
ALLINEAMENTO DI SEQUENZE
A COPPIE
AGTTTGAATGTTTTGTGTGAAAGGAGTATACCATGAGATGAGATGACCACCAATCATTTC
||||||||||||||||||| |||||||| ||| | |||||| |||||||||||||||||
AGTTTGAATGTTTTGTGTGTGAGGAGTATTCCAAGGGATGAGTTGACCACCAATCATTTC
MULTIPLO
KFKHHLKEHLRIHSGEKPFECPNCKKRFSHSGSYSSHMSSKKCISLILVNGRNRALLKTl
KYKHHLKEHLRIHSGEKPYECPNCKKRFSHSGSYSSHISSKKCIGLISVNGRMRNNIKTKFKHHLKEHVRIHSGEKPFGCDNCGKRFSHSGSFSSHMTSKKCISMGLKLNNNRALLKRl
KFKHHLKEHIRIHSGEKPFECQQCHKRFSHSGSYSSHMSSKKCV---------------KYKHHLKEHLRIHSGEKPYECPNCKKRFSHSGSYSSHISSKKCISLIPVNGRPRTGLKTs
Algoritmi per allineamento a coppie
•
Costruire tutti i possibili allineamenti e selezionare quello con score più alto?
•
NO! Impraticabile anche solo per corte sequenze di 20 aa
ALLINEAMENTO MEDIANTE PROGRAMMAZIONE DINAMICA
Date due stringhe S e T, con |S|=n e |T|=m, il nostro obiettivo è il calcolo dell’allineamento
ottimale di S e T.
Gli algoritmi di programmazione dinamica vengono utilizzati nella risoluzione di problemi di
ottimizzazione; nel nostro caso ci interessa massimizzare lo score dell’allineamento.
Un algoritmo di programmazione dinamica trova la soluzione migliore spezzando il problema
originale in sottoproblemi più semplici da risolvere.
La soluzione di ogni sottoproblema si basa sulle soluzioni dei sottoproblemi già risolti.
Variazioni dell’algoritmo producono allineamenti globali o locali
Metodo della matrice a punti (Dot matrix)
• proposto da Gibbs and McIntyre (1970)
• sistema di visualizzazione di un allineamento
• consente di evidenziare ripetizioni dirette o inverse nelle sequenze
• il maggiore vantaggio di questa tecnica consiste nel dare tutte le possibili
corrispondenze di simboli tra due sequenze
• esempi di programmi che lo codificano:
– COMPARE e DOTPLOT nel pacchetto GCG
– DOTLET
Metodo della matrice a punti (Dot matrix)
• Il dot-plot è una semplice
rappresentazione grafica
della similarità di 2 sequenze
• In ogni posizione in cui nelle
2 sequenze si trovano
nucleotidi identici/simili
viene segnato un punto (dot)
•Le regioni di similarità tra
due sequenze danno una
diagonale
•I gaps appaiono come salti
in diagonale e le regioni
ripetute come segmenti
diagonali paralleli
•È possibile utilizzare dei
filtri per diminuire rumore
di fondo ed evidenziare le
similarità. Per es. il puntino
viene segnato solo quando,
in una finestra di quattro
basi/amminoacidi, almeno
tre sono identiche
•Quindi per riconoscere le
similarità in sequenze
lontane evolutivamente
occorre ampliare la finestra
•Il limite della dot matrix è
data dal fatto che non dà un
valore all’allineamento , è
solo una rappresentazione
grafica
13 aprile 2015
Sequenze/Domini ripetuti
•Es. seq proteica contro se stessa. In cui evidenziate le seq
corrispondenti ai due domini della proteina – diversi domini
ripetuti – nel dominio A 4 regioni ripetute fatte a loro volta
da piccole sequenze di aa ripetuti (leu-rich)
Rappresentazione DOT-PLOT
Diagonali = individuano regioni di similarità nelle 2 proteine (tra sottosequenze)
Qualunque allineamento delle 2 seq. Può essere rappresentato come una spezzata
che parte dall’angolo in alto a sin. e raggiunge quello in basso a destra.
m
a
r
g
a
r
e
t
d
a
y
h
q
f
f
margaretqaklerdayhqff
*
*
*
*
*
* * Duplicazione
*
* *
*
*
* *
* Inversione
*
*
*
*
* *
*
*
*
Similarità
*
*
*
Allineamento GLOBALE o LOCALE
GLOBALE quando prova a cercare la corrispondenza ottimale tra tutti gli
amminoacidi di entrambe le sequenze.
LOCALE
quando cerca di individuare regioni locali di similarità. È
biologicamente rilevante perchè ad es. potrebbe permetterci di individuare
domini correlati in proteine in cui le altre porzioni della seq. non hanno
relazioni evolutive. Ricerca di omologhi in un una banca dati (molte proteine
non correlate).
Global alignment
LTGARDWEDIPLWTDWDIEQESDFKTRAFGTANCHK
||. | | | .|
.| || || | ||
TGIPLWTDWDLEQESDNSCNTDHYTREWGTMNAHKAG
Local alignment
IPLWTDWDIEQES
||||||||.||||
IPLWTDWDLEQES
ALLINEAMENTO MEDIANTE PROGRAMMAZIONE DINAMICA
Il primo algoritmo è stato sviluppato da Needleman e Wunsch nel 1970
per l’individuazione di similarità globali in un tempo proporzionale al
prodotto delle lunghezze delle due sequenze
Nel 1981 Smith e Waterman hanno sviluppato un algoritmo per il
riconoscimento delle similarità locali
L’algoritmo si svolge in 3 fasi:
1.
Realizzazione di una dot matrix, nelle cui caselle si mettono i valori
ottenuti da una matrice di sostituzione, normalizzata in modo da
avere solo score positivi
2.
Si cerca il percorso tra le caselle che totalizza il punteggio massimo,
tenendo conto solo di alcune direzioni permesse nella deconvoluzione
dell’allineamento
3.
Si cerca la casella con il punteggio massimo e si procede a ritroso per
ricavare i singoli appaiamenti
Algoritmo di Smith & Waterman (1981)
• È un metodo di allineamento locale
– Si deve includere una soglia al di sotto della quale l’appaiamento di 2 aa sia
da considerare negativo
– Il sistema di punteggio deve includere valori negativi per amminoacidi
diversi (matrici PAM o BLOSUM)
– Il concetto di locale implica che il punteggio non deve essere influenzato
dalle regioni esterne all’allineamento
– quando i 3 percorsi di origine saranno negativi, allora viene scelto lo 0 come
valore (cioè l’inizio di un nuovo allineamento)
– l’allineamento viene prodotto a partire dalla casella che contiene il valore
massimo attraverso un retropercorso che si ferma ad una casella con valore
0
– Per trovare il punteggio massimo non ci si limita all’ultima riga o all’ultima
colonna
ALLINEAMENTI MULTIPLI
Gli allineamenti multipli vengono utilizzati per:
1.
Trovare motivi/domini conservati che caratterizzano le
famiglie di proteine
2.
Riconoscere omologia tra una nuova sequenza e una
famiglia di proteine
3.
Nella predizione della struttura secondaria e terziaria di
nuove proteine
4.
Riconoscere relazioni filogenetiche (come strumento
nell’analisi evoluzionistica molecolare)
Un allineamento multiplo delle sequenze S1, S2,….Sn è una serie di sequenze S1’, S2’, Sn’
contenenti gaps, tali per cui:
Tutte le sequenze S’ sono di uguale lunghezza
Sj’ è un’estensione di Sj ottenuta mediante inserimento di gap
Rappresentato sotto forma di tabella in cui righe sono le seq
e colonne corrispondenti a ciascun sito dell’allineamento
Un allineamento multiplo contiene più informazioni di un allineamento coppie
ALLINEAMENTI MULTIPLI
L’allineamento multiplo è un’ipotesi di omologia posizionale tra basi o
aminoacidi
Tutti i residui presenti nella stessa colonna di un multiallineamento sono
evolutivamente correlati
No applicabili algoritmi di allineamento globale esatto (cresce
esponenzialmente con il numero di sequenze da allineare es. N seq lunghezza
L -> O(LN)
Teoricamente sarebbe possibile applicare l’algoritmo di Needleman e Wunsch,
ma in pratica non lo è perché richiede tempi di esecuzione troppo lunghi
METODI APPROSSIMATI
ALLINEAMENTO PROGRESSIVO
• Basato su costruzione di una successione di allineamenti a coppie
• Dato un insieme S costituito da n sequenze da allineare, si scelgono due
sequenze s1 e s2 e si allineano; questo allineamento resta fissato nei passi
successivi
• Si sceglie una terza sequenza s3 e si allinea al precedente allineamento, e così
via
• E’ un approccio euristico e non garantisce di trovare allineamento multiplo
ottimale ma efficiente e dà risultati ragionevoli
• Prevedono che coppie di sequenze che presentano un maggior grado di
similarità tra loro siano allineate per prime (giustificato dal fatto che coppie di seq +
simili avranno maggiore probabilità di essere derivate + recentemente da un antenato
comune e il loro allineamento fornisce informazioni più affidabili - le posizioni dei gap in
seq maggiormente correlate sono tipicamente + accurate rispetto a quelle relative a seq
meno simili, per cui i gap degli allineamenti iniziali vanno preservati durante
l’allineamento progressivo)
ClustalW
• ClustalW è il programma + popolare per gli allineamenti multipli di
biosequenze
• Dato un insieme S di n sequenze da allineare, ClustalW allinea
tutte le coppie di sequenze di S separatamente e costruisce una
matrice con le distanze tra ogni coppia di sequenze, che esprime il
grado di divergenza di ciascuna coppia di sequenze
Seq. A
Seq. B
Seq. C
Seq. A
0.00
Seq. B
0.11
0.00
Seq. C
0.32
0.43
0.00
Seq. D
0.17
0.18
0.57
Seq. D
0.00
ClustalW
• Viene calcolato un albero guida a partire dalla matrice di distanza.
Sequenze con elevato grado di similarità si trovano vicine
nell’albero e viceversa (metodo neighbour-joining)
• Le sequenze sono progressivamente allineate secondo un ordine
di similarità, dedotto dall’albero guida
Seq. A
Seq. B
Seq. C
Seq. A
0.00
Seq. B
0.11
0.00
Seq. C
0.32
0.43
0.00
Seq. D
0.17
0.18
0.57
Seq. D
AB
0.00
A
B
• Si sceglie la coppia + vicina che formerà il primo “sotto-albero”
ClustalW
Sostituiamo nella tabella la entry AB alle singole entry A e B e
calcoliamo le distanze di AB dalle sequenze rimanenti facendo una
semplice media aritmetica:
Seq. AB Seq. C
Seq. AB
0.00
Seq. C
0.375
?
0.00
Seq. D
?
0.175
0.57
Seq. D
d (AB,C)= (d(A,C) + d(B,C))/2 =
0.375
D (AB, D) = (d(A,D)+d(B,D))/2 =
0.175
0.00
Iterando il procedimento si ottiene
l’albero completo.
ClustalW
• Otterremo un albero i cui rami hanno lunghezza proporzionale
alla distanza tra le sequenze :
A
B
D
C
• Quest’albero verrà utilizzato per guidare l’allineamento
progressivo.
• Nel nostro esempio verranno allineate per prime le sequenze
A e B. Successivamente verrà allineata la sequenza D
all’allineamento AB e infine verrà allineata la sequenza C
all’allineamento ABD.
Allineamento con ClustalW



La presenza di un
simbolo * in fondo
ad una colonna
indica un match del
100%.
Il simbolo : indica
un’alta similarità
(>75%).
Il simbolo . indica
una media
similarità (50%75%).
•Quando le sequenze da allineare non sono molto divergenti
(similarità >50% per le proteine e >70% per gli acidi nucleici) ClustalW dà
una risposta ottimale
•In caso contrario sono necessari aggiustamenti (correzione
manuale dell’allineamento)
• Una volta che 2 o + seq siano state allineate in un cluster, questo
allineamento è fissato e non può più essere modificato nelle fasi
successive dell’allineamento progressivo.
• Problemi di minimo locale: se in una qualunque fase viene
introdotto un errore si propagherà sulle fasi successive
• Affidabilità del multiallineamento dipende danche dal set di seq
considerate – es. Se si include una seq non realmente omologa
allineamento prodotto risulta alterato da inserzione molti gap
addizionali (controllo seq input per rimuovere quelle “spurie”)
VANTAGGI DI CLUSTAL-W
• Accorgimenti per rendere meno soggetta ad errori la procedura di
allineamento progressivo;
• Matrici di sostituzioni diverse a diverse distanze evolutive (si seleziona la
FAMIGLIA DI MATRICI piuttosto che una specifica MATRICE);
• Variazione delle penalità da attribuire ai gap a seconda della matrice scelta e
della posizione in cui inserirli;
• Penalità maggiori per gap distanziati da meno di 8 aa;
• Penalità aggiustate localmente a seconda dell’aa che precede inserzione del
gap;
• Cut off di identità (40%) per evitare inclusione di seq divergenti finchè quelle
più simili sono state allineate;