RICERCA DI SIMILARITA’ in DB Problema: identificare all’interno di una banca dati di sequenze quelle sequenze che sono più simili ad una sequenza di nostro interesse (“query”). Soluzione: Allineare la sequenza di interesse (“query”) a tutte le sequenze del DB (sequenze “subject”) e individuare gli allineamenti migliori. L’algoritmo di Smith-Waterman impiega da centesimi a decimi di secondo per ogni allineamento. Se il DB contiene milioni di sequenze saranno necessarie decine o centinaia di migliaia di secondi, cioè alcuni giorni!!!
RICERCA DI SIMILARITA’ in DB: FASTA (di Lipman e Pearson) FASTA velocizza la ricerca utilizzando un strategia di “indicizzazione delle parole”: la sequenza query viene spezzetata in parole di 2 o 3 amminoacidi o 6 nucleotidi. La lunghezza delle parole è definita “k-tuple” (“ktup”). Ad esempio se ktup = 2 il numero di parole amminoacidiche è 20x20 cioè 400. Se ktup = 3 il numero di parole amminoacidiche è 20x20x20 cioè Il programma crea un indice con tutte le “parole” contenute nella sequenza query. DVVHKILLAPERDDKVLAFV
FASTA seleziona dal database solo le sequenze che contengono parole comprese nell’indice creato a partire dalla query. Quindi vengono create matrici dot plot di identità QUERY SUBJECT
FASTA seleziona le diagonali con più parole identiche quindi per queste diagonali calcola i punteggi utilizzando le matrici PAM e BLOSUM. Vengono tenute solo le sequenze che danno i punteggi più alti. QUERY SUBJECT
FASTA allunga le regioni in diagonale congiungendo le parole che si trovano sulla stessa diagonale. QUERY SUBJECT
FASTA congiunge le regioni che si trovano su diagonali diverse mediante gap. QUERY SUBJECT
LVVAISNVGTDTLSHLEAQNKIKS L V L A I S G F G T E S H A D A Q D R I K A F R
LVVAISNVGTDTLSHLEAQNKIKS V V L A I S G F G T E S H A D A Q D R I K A F R
LVVAISNVGTDTLSHLEAQNKIKS V V L A I S G F G T E S H A D A Q D R I K A F R
FASTA esegue l’algoritmo Smith Waterman solo per le sequenze per le quali è stato possibile creare questo allineamento iniziale e non considerando l’intera matrice dot plot ma solo una stretta fascia attorno all’allineamento iniziale. QUERY SUBJECT
LVVAISNVGTDTLSHLEAQNKIKS V V L A I S G F G T E S H A D A Q D R I K A F R xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy xyxy
L’analisi di FASTA quindi è approssimata: Se il valore di ktup è elevato l’analisi è più veloce ma alcune sequenze omologhe possono essere perse. Ad esempio se ktup = 3 proteine omologhe alla sequenza query ma che non hanno conservato alcuni tripeptidi identici a quelli nella query verranno scartate fin dai primi stadi. Pertanto l’analisi è più precisa usando ktup = 2 o addirittura ktup = 1 se la versione del programma lo consente. L’allineamento fornito da FASTA non è il migliore in assoluto perché l’algoritmo di Smith Waterman viene applicato solo ad una fascia della matrice dot plot
RICERCA DI SIMILARITA’ in DB: BLAST (Basic Local Alignment Search Tool) BLAST come FASTA velocizza la ricerca utilizzando un strategia di “indicizzazione delle parole”: la sequenza query viene spezzetata in parole (“W-mers”). La lunghezza delle parole è definita “W” (solitamente = 3). La differenza rispetto a FASTA è che per ogni W-mer viene presa in considerazione una lista di parole affini. Viene anche calcolato un punteggio di similarità dei W-mers e tutti i W-mers che hanno uno score superiore ad una soglia arbitraria (detta “T”) vengono inseriti nell’indice dei W-mers della query.
KQLVVAISNVGTDTLSHLEAQNKIKSASHNLSLTQKSKL query Word (W = 3) LSH 16 ISH 14 MSH 14 VSH 13 LAH 13 LTH 13 LNH 13 FSH 12 LDH Parole affini Soglia (T=13) Score calcolati utilizzando le matrici PAM o Blosum
A partire dalla parola allineata Blast estende l’allineamento a monte e a valle aggiornando continuamente il punteggio di allineamento e generando così allineamenti locali “ungapped” (High scoring segment pair - HSP). Blast non introduce gap nell’allineamento, ma può tollerare alcuni residui che danno punteggio negativo. Il parametro “X” stabilisce quanto lunghi possano essere i segmenti che non aumentano lo score ma lo fanno invece diminuire. Query: LVVAISNVGTDTLSHLEAQNKIKSASHNLSLTQKSKL +++AIS GT+++SH +AQ++IK+AS +L L Subjct: VILAISGFGTESMSHADAQDRIKAASYQLCLKIDRAE High scoring segment pair (HSP)
Riassumendo, i parametri fondamentali di BLAST sono: W =Lunghezza delle parole in cui viene scomposta la seq. query T =La soglia di punteggio al di sotto della quale due parole non sono più considerate equivalenti S =Score al di sopra del quale un HSP è considerato significativo e restituito all’utente X =Misura di quanto possano essere tolleratati segmenti con score negativi
BLAST effettua anche una utilissima analisi statistica dei risultati. In particolare fornisce all’utente un valore definito “E” (“Expected”) che è il numero di HSP casuali con punteggio uguale al nostro HSP che ci si può aspettare di trovare nel DB che abbiamo esplorato. Ad esempio se BLAST fornisce un HSP con score S = 54 ed E = 2 vuol dire che date le dimensioni del database scelto e della nostra sequenza possiamo aspettarci di trovare circa due HSP che danno un punteggio S = 54 per ragioni puramente casuali. Più è basso il valore di E più è affidabile il risultato! Ovviamente vengono considerati significativi solo HSP con valori di E inferiori ad 1 in particolare sono in genere considerati affidabili risultati con valori di E < 0.05.
Esiste una variante di BLAST (“gapped Blast”) che estendendo gli HSP a monte e a valle inserisce anche gap. Gapped Blast è più lento di Blast! Varianti di BLAST: BLASTPcerca in un DB di proteine una sequenza query proteica BLASTN cerca in un DB di nucleotidi una sequenza query nucleotidica BLASTX cerca in un DB di proteine una sequenza query nucleotidica dopo averla tradotta nelle sei possibili orf TBLASTN cerca in un DB di nucleotidi tradotto nelle sei possibili orf una sequenza query proteica TBLASTXcerca in un DB di nucleotidi tradotto nelle sei possibili orf una sequenza query nucleotidica dopo averla tradotta nelle sei possibili orf
Varianti di BLAST PSI-BLASTP(Position Specific Iterated BLAST) Sfrutta la proprietà transitiva della omologia. Facendo ricerche per omologia è probabile che non si riesca ad identificare le sequenze omologhe ma molto distanti dal punto di vista evolutivo. In teoria identificato un set di proteine omologhe alla sequenza query si potrebbe ripetere la ricerca utilizzando tutte le proteine dell’elenco come query per nuove ricerche di omologia. Poiché questo richiederebbe tempi lunghissimi PSI-BLAST sfrutta uno stratagemma che riduce i tempi di calcolo: Trovato un set di proteine simili alla query sequence genera una sorta di sequenza consenso o pattern di amminoacidi che utilizza in un secondo ciclo come nuova query per ricercare nel database. Se vengono trovate nuove sequenze significative il consenzo/pattern viene aggiornato e si può partire con un terzo ciclo di ricerca. Il processo può continuare fino alla convergenza (cioè non aumenta il numero di sequenze trovate).
FASTA cerca allineamenti globali pertanto individua più efficacemente proteine omologhe in cui residui identici e simili sono completamente sparpagliati su regioni molto ampie (come ad esempio l’intero allineamento) BLAST individua molto più efficacemente regioni locali ben conservate (ad esempio segmenti amminoacidici imortanti per il folding, la formazione del sito catalitico etc.)