La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

ALLINEAMENTI GLOBALI E LOCALI Consideriamo i seguenti due differenti allineamenti delle stesse sequenze Nel primo caso si hanno 14 identità (evidenziate.

Presentazioni simili


Presentazione sul tema: "ALLINEAMENTI GLOBALI E LOCALI Consideriamo i seguenti due differenti allineamenti delle stesse sequenze Nel primo caso si hanno 14 identità (evidenziate."— Transcript della presentazione:

1 ALLINEAMENTI GLOBALI E LOCALI Consideriamo i seguenti due differenti allineamenti delle stesse sequenze Nel primo caso si hanno 14 identità (evidenziate dalle linee verticali che uniscono aminoacidi uguali) e tre sostituzioni conservative (es. A-I, S-T) distribuite su tutta la lunghezza della sequenza. Nel secondo caso si hanno 13 identità ed una sostituzione conservativa su una regione di 14 aminoacidi. Quale dei due allineamenti è da considerarsi migliore? (N.B. Lallineamento globale, secondo alcuni, dovrebbe comprendere lintera lunghezza di entrambe le sequenze; nellesempio dovrebbero essere quindi aggiunti un gap allinizio ed uno alla fine)

2 ALLINEAMENTI GLOBALI O LOCALI? Dal punto di vista biologico generalmente vengono privilegiati gli allineamenti locali, che riguardano regioni limitate delle proteine o di acidi nucleici. In Biologia Molecolare avrete sicuramente sentito parlare di domini delle proteine o anche degli acidi nucleici. Se ad esempio siamo interessati a trovare tutte le sequenze di proteine di una banca dati che contengono un certo dominio, allora sicuramente si cercheranno similarità locali. Gli allineamenti globali vengono applicati quando si vogliono confrontare accuratamente due sequenze in cui la similarità sia estesa per tutta la lunghezza N.B. Un allineamento locale non è necessariamente limitato ad una piccola regione della sequenza, ma potrebbe estendersi anche allintera lunghezza della sequenza.

3 Programmazione dinamica Fornisce lallineamento ottimale tra due sequenze semplici variazioni dellalgoritmo producono allineamento globali o locali lallineamento calcolato dipende dalla scelta di alcuni parametri

4 ALGORITMO DINAMICI DI ALLINEAMENTO Ora inizieremo a considerare alcuni algoritmi esatti di allineamento in grado di determinare il miglior allineamento possibile tra due sequenze in base ad una certa matrice di sostituzione (scelta a seconda della distanza evolutiva tra le due sequenze) e ad un criterio di penalità da attribuire ai gap inseriti. Needleman e Wunsch nel 1970 furono i primi a risolvere il problema con un algoritmo in grado di trovare similarità globali in un tempo proporzionale al prodotto della lunghezza delle due sequenze. Nel 1981 Smith e Waterman svilupparono un nuovo algoritmo in grado di individuare anche similarità locali. Entrambi questi algoritmi sono basati su un approccio informatico chiamato di programmazione dinamica.

5 abbiamo visto che per generare e valutare il miglior allineamento di due sequenze di lunghezza m e n, è necessario effettuare mxn confronti il numero di operazioni da effettuare cresce e i tempi di calcolo di conseguenza si allungano se si vogliono considerare anche i possibili gap in tutte le posizioni (e di tutte le lunghezze possibili) di entrambe le sequenze IPLMTRWDQEQESDFGHKLPIYTREWCTRG |||||||||| CHKIPLMTRWDQQESDFGHKLPVIYTREW IPLMTRWDQEQESDFGHKLP-IYTREWCTRG ||||||||| |||||||||| |||||| CHKIPLMTRWDQ-QESDFGHKLPVIYTREW

6 punteggi diversi per ogni possibile coppia di residui allineati (matrici di sostituzione) gap penalties e gap extension penalties per valutare penalizzazioni dovute allintroduzione di gap nelle sequenze allineate ora bisogna trovare il modo di utilizzare tutti gli strumenti e le valutazioni messe a punto finora senza superare la soglia di complessità di calcolo [ O(mxn) ] che renderebbe il problema non applicabile alle ricerche di similarità in banche dati abbiamo definito un modo sofisticato di valutare il punteggio di un allineamento, che tenga conto di

7 allineamenti tra due sequenze - programmazione dinamica buone notizie: la programmazione dinamica è in grado di trovare il miglior allineamento globale tra due sequenze cattive notizie: 1) spesso loutput mostra più allineamenti DIVERSI col massimo del punteggio 2) ci mette TROPPO TEMPO per effettuare una ricerca esaustiva

8 Algoritmi dinamici di allineamento dividiamo la procedura in 3 passi successivi 1) consideriamo le due sequenze da allineare in una specie di dot matrix : nelle caselle scriviamo i punteggi in rosso derivati dalla matrice di sostituzione scelta

9

10 QERTY |||: QERS allineamentopunteggio QQ + EE + RR + TS = = 15 cominciamo a calcolare la matrice di questo allineamento usata nellalgoritmo di programmazione dinamica

11 calcolando le somme lungo le diagonali, effettueremmo unoperazione equivalente al calcolo dei punteggi ottenuto facendo scorrere le due sequenze luna sullaltra resterebbe aperto il problema della valutazione dei gap

12 passo 2 della procedura: ricerca del percorso che consente di ottenere il massimo punteggio in base a delle regole stabilite, tenendo anche conto dei gap Algoritmi dinamici di allineamento qualche semplice osservazione ci consente di risparmiare tempo di calcolo:

13 se una sequenza è scritta da sinistra a destra e laltra dall'alto in basso, allora qualsiasi percorso valido deve mantenere sempre una direzione tendenziale che va dall'angolo in alto a sinistra a quello in basso a destra

14 Misura della similarità: i punteggi in diagonale si SOMMANO fuori dalla diagonale, si PENALIZZA di 5 punti

15 vediamo quindi come si calcolano le cifre riportate in nero nella matrice evidenzieremo poi in grigio il migliore percorso allinterno della matrice, secondo le regole e i punteggi stabiliti

16

17 il migliore allineamento globale per le sequenze in matrice risulta quindi il seguente: TFDERILGVQ-TYWAECLA || | | |. || QTFWECIKGDNATY

18 per ricostruire lallineamento migliore si può memorizzare il percorso disegnato riempiendo la matrice alla fine bisogna partire dalla casella a punteggio maggiore e ricostruire il percorso a ritroso seguendo le freccette TFDERILGVQ-TYWAECLA || | | |. || QTFWECIKGDNATY

19 PERCORSI VALIDI Un allineamento tra le due sequenze è rappresentato da un percorso allinterno della matrice, avente direzione tendenziale dallangolo in alto a sinistra allangolo in basso a destra (frecce nere di figura). Non avrebbero senso percorsi da destra a sinistra o dal basso verso lalto: ciò significherebbe considerare nuovamente un aminoacido già allineato (una sorta di ripiegamento). Spostamenti orizzontali o verticali equivalgono allinserimento di gap allineati con il simbolo che si raggiunge nella nuova riga o colonna

20 PUNTEGGI In ogni casella viene memorizzato il punteggio dellallineamento fino a quella casella. La programmazione dinamica consiste proprio nellassegnare un valore ad ogni casella della matrice di allineamento a partire dai valori contenuti nelle tre caselle adiacenti (raffigurate con il ? in figura) che a loro volta saranno state calcolate precedentemente. Lalgoritmo infatti procede da sinistra a destra lungo le righe della matrice e terminata una riga passa alla riga successiva. Se vengono predefinite la prima riga e la prima colonna, lalgoritmo è quindi in grado di riempire automaticamente tutto il resto della matrice.

21 PERCORSO OTTIMALE: ALL. GLOBALI Così come è stato ideato da N. & W. lallineamento globale comprende lintera lunghezza di entrambe le sequenze e pertanto un percorso ottimale inizierà necessariamente dallangolo in alto a sinistra della matrice e terminerà nella casella in basso a destra (che conterrà anche il punteggio dellallineamento ottimo globale). abbiamo deciso di trascurare i gap iniziali e finali nelle due sequenze, per cui gli allineamenti globali che consideriamo sono quelli che iniziano dalla prima riga o dalla prima colonna e terminano nellultima riga o nellultima colonna. Per individuare lallineamento ottimale è sufficiente individuare appunto nellultima riga o colonna la casella con il massimo punteggio e poi ricostruire il percorso che ha portato a quella casella a partire da una casella della prima riga o colonna

22 ALLINEAMENTO GLOBALE Nella versione di allineamento globale viene effettuata una sorta di pre- elaborazione, che consiste nel riportare tutti i punteggi di allineamento per ogni possibile coppia di simboli che si incontrerà nella matrice, in maniera da averli già tutti pronti e non doverli cercare successivamente nella matrice di sostituzione. E da notare che anche la matrice di sostituzione usata non è una classica PAM o BLOSUM ma è stata normalizzata in modo da non contenere valori negativi. In questo modo si garantisce che il punteggio dellallineamento non diminuirà spostandosi verso destra e verso il basso nella matrice di allineamento.

23 Smith & Waterman (1981) Allineamento locale – Il sistema di punteggio deve includere valori negativi per amminoacidi diversi – quando il valore della matrice diventa negativo, allora viene fissato a 0 – lallineamento viene prodotto a partire dalla casella che contiene il valore massimo attraverso un retropercorso che si ferma ad una casella con valore 0

24 Algoritmi dinamici di allineamento é importante notare che il punteggio è massimo in senso relativo il valore assoluto dei punteggi che associamo agli allineamenti dipende dai valori contenuti nella matrice di sostituzione che utilizziamo ci sono matrici i cui valori variano tra 0 e 100, altre che variano da -1 a +1, adottando punteggi decimali

25 Algoritmi dinamici di allineamento L algoritmo di Needleman e Wunsch è stato sviluppato per lallineamento globale L algoritmo di Smith e Waterman è stato sviluppato per lallineamento locale Ma ciò che realmente fa diventare un algoritmo di questo tipo locale o globale è il tipo di matrice di sostituzione che si usa: se contiene solo valori + allineamenti globali se contiene valori +/- allineamenti locali

26 RICOSTRUZIONE ALLINEAMENTO Proviamo a ricostruire lallineamento globale trovato come ottimo nellesempio. Si parte dalla casella con il valore 66 (quella con il valore massimo nellultima riga o colonna). Il 66 è stato ottenuto da 56+10, da 59-5 o da 51-5? Da e quindi si può allineare Y con Y. Il 56 da dove è stato ottenuto? Da 57-5, da45-5 o da 48+8?.....

27 N&W SU EMBOSS Sempre sul sito GUI di EMBOSS EMBOSS/ EMBOSS/ è disponibile una versione eseguibile sul WEB dellalgoritmo di Needleman & Wunsch (needle).

28 PARAMETRI In genere si lasciano i parametri prefissati, però è possibile cambiare il punteggio attribuito allapertura di un gap (10) e alla sua estensione (0.5). Anche la matrice di sostituzione può essere scelta, a seconda della distanza filogenetica tra le sequenze da confrontare

29 ESEMPIO Proviamo a confontare le due diverse proteine derivanti dallo stesso gene subunità 1A di rubisco di Arabidopsis thaliana

30 ESEMPIO Accediamo al record del gene e attraverso i link ai due diversi record delle proteine (hanno i codici NP_ e NP_974098) Link ai record delle proteine corrispondenti (nel database PROTEIN) Link ai record dei mRNA corrispondenti (nel database GENBANK)

31 ESEMPIO Codici GENBANK : e Codici REFSEQ (database composto di sequenze pulite e verificate di mRNA e PROTEINE: NP_ e NP_ AA 136 AA

32 ESEMPIO

33 ESEMPIO | Aminoacidi conservati : Aminoacidi sostituiti in modo conservativo

34 ALTRO ESEMPIO Proviamo ad allineare anche le due sequenze nucleotidiche dei mRNA delle due varianti della 1A di rubisco di arabidopsis (clickare sui link mRNA dal record di GENE )

35 ALTRO ESEMPIO Proviamo ad allineare anche le due sequenze nucleotidiche dei mRNA delle due varianti della 1A di rubisco di arabidopsis (clickare sui link mRNA dal record di GENE )

36 S&W SU EMBOSS Sempre sul sito GUI di EMBOSS EMBOSS/ EMBOSS/ è disponibile una versione eseguibile sul WEB dellalgoritmo di Smith & Waterman (water).

37 ESEMPIO Sempre le due varianti della 1A di rubisco di arabidopsis

38 ESEMPIO

39 ALTRO ESEMPIO Proviamo anche con le due sequenze nucleotidiche

40 METODI EURISTICI I programmi dinamici visti sinora (N&W e S&W) sono ideali per allineare sequenze in modo esatto, ma sono troppo lenti per effettuare ricerche di similarità in banche dati (abbiamo visto le dimensioni delle banche dati...). Per allineare due sequenze di mille basi servono 1000x1000 operazioni= Anche contando un centesimo di secondo per allineamento provate ad immaginare una ricerca in un database di milioni di sequenze... Richiederebbe decine di migliaia di secondi cioè diverse ore! Perciò sono stati ideati dei programmi molto più veloci ma approssimati che rinunciano ad un po di precisione (non è garantito che la sequenza indicata come più simile lo sia effettivamente!).

41 FASTA Sviluppato da Lipman e Pearson nel Effettua una indicizzazione di parole (ktup=2 per proteine (400 possibilità) e ktup=6 per acidi nucleici), cioè un elenco delle posizioni in cui compaiono tutte le possibili parole di quella lunghezza, sia per query, sia per ogni sequenza (subject) del database. Ogni volta che una parola è trovata su entrambe le sequenze questa è rappresentata come diagonale (fig. A). Il programma poi assegnando degli score cerca di unire più diagonali in modo da trovare il percorso migliore

42 SERVER WEB FASTA

43 ESEMPIO ESECUZIONE Proviamo a cercare nel database SWISSPROT la solita sequenza proteica della subunità 1A di RUBISCO Si può subito notare il tempo impiegato per la ricerca!

44 RISULTATI Elenco delle proteine più simili trovate

45 E-VALUE I programmi di ricerca di similarità restituiscono un E-VALUE come indice della bontà dellallineamento. Tale valore (che dipende da molti fattori, tra cui la lunghezza della sequenza query, la lunghezza del match trovato, la dimensione del database su cui si è effettuata la ricerca...) rappresenta la probabilità che tale allineamento sia dovuto al caso. Quanto più tale valore è prossimo allo 0 tanto migliore è lallineamento. In genere viene usata la notazione scientifica per esprimere le-value. 1.9e-110 significa 10 elevato alla –110 quindi un valore molto prossimo allo 0! 0.1 invece significa che una volta su 10 si può ottenere casualmente lo stesso allineamento

46 BLAST Basic Local Alignment Search Tool è stato sviluppato (e successivamente) migliorato da Altschul ed altri ricercatori del NCBI a partire dal Anche BLAST effettua una indicizzazione di parole. Si crea un indice di parole di una certa lunghezza (es W=3 per le proteine). Per ogni parola di lunghezza W della query viene generata una lista di parole affini (W-mers) che producono uno score superiore ad una soglia T se allineati con la parola della sequenza query. Si cercano quindi in tutte le sequenze della banca dati le W-mers. BLAST cerca quindi di estendere lallineamento in entrambe le direzioni, ottenendo dei segmenti HSP di allineamento locale non ulteriormente estensibili.

47 LE VERSIONI DI BLAST Esistono differenti versioni di BLAST a seconda della natura della sequenza query e del database. BLASTN: query nucleotidi, database nucleotidi BLASTP: query aminoacidi, database aminoacidi BLASTX: query nucleotidi (tradotta nei 6 possibili frame), database aminoac TBLASTN: query aminoacidi, database nucleotidi (tradotto nei 6 frame) TBLASTX: query nucleotidi (tradotta), database nucleotidi (tradotto) A N A N A N blastn blastp blastx QUERYDATABASE CONFRONTO A LIVELLO? tblastn tblastx

48 SERVER WEB BLAST (cercare NCBI BLAST)

49 TUTORIAL BLAST

50 BLASTP sequenza query database matrice mascheramento repeat

51 BLASTP

52 BLASTP visualizzazione grafica degli allineamenti colori

53 BLASTP

54 ALTRI BLAST PSI-BLAST usa una ricerca iterativa. Le sequenze trovate in ogni ciclo sono usate per costruire un modello di sequenza da cercare nel ciclo successivo. In questo modo si trovano sequenze simili a quelle simili trovate in un solo passo! BLAST2SEQUENCE Effettua il BLAST tra due sequenze sequenza query sequenze simili alla query (primo ciclo di BLAST) secondo ciclo di BLAST questa sequenza potrebbe essere particolarmente interessante ma non lavrei trovata con un semplice BLAST

55 ESEMPIO BLAST2SEQUENCE Proviamo ad allineare con il BLAST2SEQUENCE le solite due sequenze nucleotidiche

56 ESEMPIO BLAST2SEQUENCE Vengono trovati due allineamenti locali


Scaricare ppt "ALLINEAMENTI GLOBALI E LOCALI Consideriamo i seguenti due differenti allineamenti delle stesse sequenze Nel primo caso si hanno 14 identità (evidenziate."

Presentazioni simili


Annunci Google