Informatica e biotecnologie Ricerca di informazioni e analisi di sequenze CGCTTCGGACGAAATCGCATCAGCATACGATCGCATGCCGGGCGGGATAAC ||||||||||||||||||||||||||||| CGAAATCGCATCAGCATACGATCGCATGC Informatica e biotecnologie Strumenti per raccogliere e organizzare le informazioni sui dati biologici ricerca delle informazioni visualizzazione analisi ... 1 Banche dati biologiche Banca dati biologica: raccoglie informazioni e dati su dati biologici. L’informazione proviene da Letteratura specializzata sull’argomento Analisi effettuate in laboratorio (in vitro e in vivo) Analisi bioinformatiche (in silico) NCBI National Center for Biotechnology Information: centro di raccolta di risorse di vario tipo http://www.ncbi.nlm.nih.gov/ accesso alla National Library of Medicine e al National Institutes of Health accesso a vari database attraverso Entrez PubMed (data base della letteratura biomedica) GenBank … accesso a software per riconoscimento e allineamento di sequenze 2 NCBI Banche dati biologiche Quali dati? Sequenze di caratteri (nucleotidi del DNA, amminoacidi delle proteine) GenBank Banca del genoma dell’ NIH accessibile da ncbi 78000 sequenze di DNA in GenBank nel 1992, ora le dimensioni raddoppiano ogni 6-8 mesi formato ANS.1 standard per dati di sequenze per DB relazionali (Abstract Syntax Notation One) Humane Genome Project genomi completi o parziali di 900 specie 3 GenBank Entry Ogni banca dati è caratterizzata da un elemento biologico centrale (entry): es: banche dati di sequenze di acidi nucleici elemento centrale: sequenza nucleotidica di DNA o RNA fatta la query (interrogata la banca dati), vengono associate le annotazioni che classificano quell’elemento: nome della specie, funzione, referenze bibliografiche -> attributi dell’elemento centrale 4 Banche dati distribuite Problema dell’accesso a banche dati distribuite su diversi siti e con strutture eterogenee cross referencing rilascio della banca dati in formato XML: oltre ai dati viene fornita sia la struttura logica che la struttura fisica della banca dati Ricerca dei dati Modalità di ricerca dei dati attraverso “motori di ricerca su banche dati biologiche” campo “text search” o form per l’immissione del dato cercato (query semplice) Specifica di criteri di ricerca mediante operatori booleani: AND, OR, BUT NOT (specializzazione della query) History: combino più query già fatte 5 Formato dei dati Diversi formati usati sia per visualizzare, dare in output i dati risultato di ricerca, sia per l'inserimento dati quando si vuole intraprendere una ricerca o un'analisi certi software di analisi per dati biologici chiederanno in input la (le) sequenze in un determinato formato -> sono in grado di decodificare l'informazione biologica e di elaborarla quando è presentata in quel formato quali formati abbiamo a disposizione quando andiamo a prenderci un dato biologico in una banca dati, su cui magari poi vogliamo fare delle analisi? Banche dati biologiche Esempio di elemento di GenBank Dalla ricerca in categoria Nucleotide (sequenze di acidi nucleici) parola chiave Arabidopsis thaliana formato di visualizzazione Seleziono una entry salva il risultato 6 Entry GenBank •Nome dell'organismo •codice di identificazione all'interno della base di dati •riferimenti alla letteratura scientifica •cross references -> link a informazioni presenti in altre banche dati •sequenza Banche dati biologiche Esempio di file di GenBank Formati: Formato ASN.1 adatto allo scambio via sw Formato XML per manipolazione e presentazione sul Web Formato FASTA semplice sequenza 7 ASN.1 FASTA 8 XML Banche dati biologiche Formato dei dati in NCBI FASTA leggibile da vari programmi per l’analisi delle sequenze contiene poche informazioni collegate GenBank formato legacy in disuso ASN.1 (Abstract Syntax Notation.One) specifica generica dei dati, usata in tutti i DB di NCBI Formati usati sia per dati risultato di ricerca sia per l'inserimento dati 9 Banche dati biologiche Una banca dati può supportare oltre ai formati standard (FASTA, ANS.1) dei formati di dati particolari, che possono essere usati da software per l'analisi del tipo dato trattato dalla banca dati Esempio: Protein Data Bank formato legacy di PDB usato comunemente dai software per l'analisi di proteine mmCIF: solo il nuovo software per l'analisi delle strutture usa questo formato Banche dati biologiche Letteratura: PubMed: http://www.ncbi.nlm.nih.gov Sequenze di acidi nucleici: GenBank: http://www.ncbi.nlm.nih.gov SRS: http://srs.ebi.ac.uk Seq. del genoma: GenBank: http://www.ncbi.nlm.nih.gov Swiss-Prot: http://www.expasy.ch/spro Struttura delle proteine: Protein Data Bank: http://www.rcsb.org/pdb Risorse Web: EBI Biocatalog: http://www.ebi.ac.uk/biocat/ IUBio Archive: http://iubio.bio.indiana.edu 10 Sequenze Rappresentazione dei dati biologici L’uso di sequenze è la forma di gran lunga più diffusa per rappresentare dati biologici di varia natura: Ad esempio: DNA genomico Proteine cDNA mRNA ... si trovano sotto forma di sequenze nel DB GenBank del NCBI Sequenze Hanno un formato puramente testuale: sono stringhe di lettere di un certo alfabeto Esempi di sequenze biologiche: Sequenze DNA -> formate da 4 tipi di lettere: A (adenina), C (citosina), G (guanina), T (timina) esempio: ATGCCGTAA, TAG, TTT, … Sequenze RNA -> formate da 4 tipi di lettere: A (adenina), C (citosina), G (guanina),U (uracile) esempio: AUCGCUAA, AUUCG, … Sequenze proteiche: formate da 20 lettere corrispondenti agli amminoacidi: A, C, D, E, F, G, H, I, K, L, M, N, P, Q, R, S, T, V, W, Y esempio: MPIVDTGSVAPLSAAEK… 11 Sequenze DNA La rappresentazione di una molecola di DNA come sequenza di simboli {A,T,C,G} è ovviamente un'astrazione di una struttura chimica 3D Tuttavia se lo scopo è quello di usare le tecniche per l’analisi di sequenze, possiamo temporaneamente ignorare tale struttura Analogo vale per molecole di RNA Sequenze di proteine La rappresentazione di proteine come sequenze di simboli {A, C, D, E, F, G, H, I, K, L, M, N, P, Q, R, S, T, V, W, Y} è anche detta struttura primaria A causa della maggiore complessità chimica degli amminoacidi rispetto agli acidi nucleici è più difficile tenere separato il contenuto informativo delle sequenze dalle proprietà degli amminoacidi componenti 12 Sequenze Vantaggi possibilità di analisi mediante tecniche consolidate: pattern matching, pattern recognition portabilità tra vari sistemi operativi compatibilità tra diverse applicazioni trasferibilità tra computer remoti Svantaggi soprattutto per le proteine, il tipo di informazione “sequenziale” ha un contenuto informativo parziale Confronti fra sequenze I confronti fra sequenze costituiscono la tecnica di analisi fondamentale per applicazioni biotecnologiche: individuazione delle proprietà caratterizzanti famiglie di proteine, e delle funzionalità dei geni definizione di alberi evolutivi definizione di modelli di omologia strumento base per ricerche in DB attraverso “query” basate su sequenze 13 Tipi di analisi sulle sequenze 1. Allineamento di sequenze A coppie (usato ad es. per ricerche in DB a sequenze) Multiplo (usato ad es. per inferenze filogenetiche) Osservazione: l’allineamento di sequenze a coppie è la tecnica di analisi più usata Principale metodo per l’associazione di funzioni biologiche al genoma e per il trasferimento di tali informazioni fra genomi di organismi diversi 2. Analisi/caratterizzazione di singole sequenze 3. Traduzione “DNA -> proteina” Software di supporto all'analisi Esistono diversi “tool” specializzati che automatizzano l’analisi di sequenze: GENSCAN : individuazione di “zone di codifica” in sequenze genomiche BLAST (integrato in GenBank), FASTA : ricerca di zone di omologia locali in coppie di sequenze; individuazione di pattern corrispondenti per ricerche in DB ALIGN : ricerca del miglior allineamento globale (intera lunghezza) fra due sequenze Protein Machine Server (presso European Institute for Biotechnology): conversione “DNA -> Proteine” e viceversa 14 Software di supporto all'analisi Molti di questi programmi sono integrati in web-server; alcuni possono anche essere installati ed eseguiti localmente (spesso in ambiente Linux e con interazione a linea di comando) Tecniche di analisi di sequenze Le stesse tecniche di analisi possono essere applicate a sequenze di nucleotidi (DNA, RNA) e di amminoacidi (proteine), anche se con scopi diversi 15 Allineamento di sequenze Uno dei problemi di base nell’analisi di sequenze (di nucleotidi o di amminoacidi) consiste nel determinare se due sequenze sono correlate, ossia se è plausibile che derivino da un comune antenato attraverso un processo di mutazione e selezione. I processi di mutazione considerati comprendono sostituzioni, aggiunte e cancellazioni (delezioni) di elementi nella sequenza. Il tipo di mutazione è influenzato dal meccanismo di selezione naturale, cosicché alcuni cambiamenti possono essere più frequenti di altri. Allineamento di sequenze Es: DNA: Per quanto riguarda il DNA uno degli scopi primari è la comprensione del meccanismo delle mutazioni, attraverso lo studio comparativo di sequenze Mutazioni puntuali: sostituzioni di singoli nucleotidi (significative se all’interno di zone particolari, es. zone di codifica) Mutazioni segmentali (più significative): sostituzioni di più nucleotidi adiacenti in punti arbitrari, inserimento o eliminazione di nuovi nucleotidi, etc. 16 Allineamento di sequenze Il problema viene affrontato cercando di individuare “similarità” fra sequenze: una delle tecniche fondamentali in Bioinformatica Concetto base: trovare l’allineamento ottimale (globale o locale) di due sequenze Allineamento ottimale Il criterio di ottimalità si basa sull’attribuzione di un punteggio (score) tanto più elevato quanto maggiore è la similarità delle due sequenze -> modello probabilistico per valutare tali punteggi (scoring model ). 17 Allineamento semplice L’allineamento semplice si ottiene facendo scorrere una sequenza sull’altra un nucleotide/amminoacido alla volta CGCTTCGGACGAAATCGCATCAGCATACGATCGCATGCCGGGCGGGATAAC ||||||||||||||||||||||||||||| CGAAATCGCATCAGCATACGATCGCATGC cerco il massimo numero di corrispondenze Allineamento di sequenze: gap La possibilità di avere aggiunte e cancellazioni fa sì che nell’allineamento vi possano essere dei vuoti (gap). • A meno che le sequenze non coincidano perfettamente è molto spesso necessario introdurre “gap” per trovare un più alto numero di corrispondenze La figura mostra un possibile allineamento di due catene polipeptidiche. Legenda: la linea centrale indica con lettere i residui identici e con un segno + i residui simili (rispetto alle proprietà chimico-fisiche) Un segno - denota i gap 18 Allineamento di sequenze Approccio: Passo1: confrontare le sequenze (inizialmente in modo arbitrario) Passo2: assegnare un punteggio sulla base di criteri fissati Passo3: ripetere l’operazione, muovendo in tutti i modi possibili una sequenza rispetto all’altra il punteggio massimo corrisponde all’allineamento ottimale Approccio facilmente automatizzabile Allineamento di sequenze Perché sia biologicamente attendibile bisogna risolvere alcune questioni: come stabilire il punteggio per l’allineamento? es. +1 per posizioni uguali, -1 per discrepanze possono essere inseriti dei buchi (gap) nelle sequenze per trovare corrispondenze altrove? come valutare i gap? Quale algoritmo usare per l’allineamento ottimale? Esistono alcune differenze fra allineamenti di sequenze DNA e allineamenti di sequenze proteiche 19 Allineamento: terminologia Identità: occorrenza dello stesso elemento (base o aminoacido) nella stessa posizione delle 2 sequenze allineate Similarità (proteine): occorrenza di amminoacidi chimicamente simili (reciprocamente sostituibili) nella stessa posizione Esempio: acido glutammico e acido aspartico sono simili Omologia: concetto più astratto, che indica un legame di tipo evolutivo fra 2 sequenze Esempio: allineamento di sequenze di proteine e DNA proteine DNA 20 Matrici di valutazione: proteine matrici di valutazione: scoring matrix Abbiamo detto che occorre assegnare un punteggio all'allineamento sulla base di criteri fissati strumento per valutare con un punteggio un allineamento (è significativo? Se sì, quanto?): matrici di valutazione Cosa sono? Sono tabelle di valori che indicano la probabilità che una coppia di amminoacidi sia “allineata” Valori: parti intere di log( P{a,b}/ P{a_r}), dove P{a,b} : probabilità di allineamento (non casuale) della coppia di amminoacidi a e b, determinata in base a statistiche tratte da allineamenti noti come validi P{a_r} : probabilità di occorrenza “random” dell'aminoacido a in una sequenza Esempio: matrice di valutazione BLOSUM45 (proteine) 21 Matrici di valutazione (proteine) Un valore in tabella è positivo se P{a,b}è maggiore di P{a_r}: è più probabile che l’allineamento dei due amminoacidi corrispondenti sia il risultato di un evento evolutivo Se il valore è < = a zero: è più probabile che l’allineamento dei due amminoacidi corrispondenti sia casuale Idea per assegnare un punteggio all'allineamento: i singoli valori delle matrici di valutazioni possono essere sommati, per assegnare un punteggio all’intero allineamento Matrici di valutazione (proteine) Valori sulla diagonale: indicano l’ordine di casualità nell’allineamento di due amminoacidi nelle 2 sequenze dipendono dalla frequenza di occorrenza dell’aminoacido (più raro è l’aminoacido, più grande la probabilità che l’allineamento dello stesso aminoacido nelle 2 sequenze non sia casuale) Nota: le matrici di valutazione sono matrici triangolari 22 Struttura diagonale Matrici di valutazione: acidi nucleici Sono molto più semplici di quelle usate per le proteine non si tiene conto della natura chimica (similarità) non si tiene conto della frequenza delle basi esempio BLAST: punteggio (standard) positivo per le identità, negativo per le discrepanze 23 Gap Le sequenze di DNA possono mutare sia per sostituzioni puntuali che per inserimento o eliminazione di intere sottosequenze di nucleotidi E’ spesso necessario inserire dei buchi (gap) nelle sequenze da allineare per avere allineamenti significativi Tale operazione va fatta con discrezione: si assegnano penalità (punteggi negativi) per l'inserimento di gap Valutazione dei gap La penalità assegnata a gap singoli è molto più grande di quella assegnata a blocchi di gap consecutivi: E' più probabile che si verifichi una sola mutazione che coinvolge più nucleotidi adiacenti, piuttosto che si verifichino numerose mutazioni isolate che coinvolgono un unico nucleotide Esempio: -11 per gap singoli, -1 per gap consecutivi 24 Algoritmi di allineamento (cenni) Sono delle specializzazioni di algoritmi per la risoluzione di problemi di ottimizzazione: vi è un numero elevato di soluzioni possibili, ma solo un sottoinsieme ristretto è ottimale il problema originale è decomposto in sottoproblemi più semplici (di dimensioni più piccole) esiste una “sequenzialità” nella risoluzione dei sottoproblemi (si risolvono prima i sottoproblemi di dimensioni minori, poi quelli di dimensioni maggiori) Algoritmi di allineamento (cenni) Nel caso di allineamento di due sequenze di dati biologici l'obiettivo è: massimizzare il numero di coppie di elementi allineati con un punteggio positivo minimizzare il numero di gap e allineamenti con punteggio negativo Il problema è decomposto nell’allineare in modo ottimale prima coppie di singoli elementi (sottoproblema di dimensione minore) e poi “sottosequenze” via via più grandi (sottoproblemi di dimensioni maggiori) 25 Algoritmi di allineamento (cenni) Allineamento di coppie di elementi di due sequenze: 3 decisioni possibili 1. Tenere allineati i due elementi 2. Inserire un gap nella sequenza I 3. Inserire un gap nella sequenza II La decisione 1 ha un punteggio che (sulla base della “scoring matrix” usata) può essere negativo o positivo; 2 e 3 hanno un punteggio negativo Si sceglie la decisione col punteggio più alto ...and so on -> non ci addentriamo nei dettagli di come funziona l'algoritmo Esempio di allineamento locale L’allineamento locale (fra spezzoni di sequenze) ottimale si ottiene partendo dalla 5a posizione di Seq I, ed inserendo un gap sempre in Seq I 26 Matrice di allineamento di seq.I e II Allineamento globale esistono diversi tipo di allineamento globale o locale Allineamento globale: Le sequenze sono allineate secondo la loro intera lunghezza (inserimento di gap se hanno lunghezze diverse) Si riempie la matrice M partendo dall’angolo superiore sinistro fino a quello inferiore destro -> Viene tracciato solo il cammino che corrisponde all’allineamento ottimale algoritmo Needleman-Wunsch 27 EMBOSS- Needle: Allineamento globale http://www.ebi.ac.uk/emboss/align/: NeedlemanWunsch global alignment from EBI - European Bioinf. Inst. specifica dei parametri: - allineamento globale/locale - scoring matrix - proteine/DNA - gap penalties... ALIGN “Utility” del pacchetto sw FASTA per l’allineamento globale di coppie di sequenze E' integrato in applicazioni WEB, es. SDSC Biology Workbench http://workbench.sdsc.edu/index.html http://fasta.bioch.virginia.edu/fasta/align.htm Se scaricate il programma è eseguibile ambiente Linux (va compilato); interfaccia a linea di comando Accetta sequenze memorizzate in formato FASTA (lo standard più semplice) 28 ALIGN: esempio di allineamento di 2 sequenze protiche Allinemento locale Locale (vedi esempio diapositive precedenti) E’ di gran lunga il più usato Non sempre le 2 sequenze da allineare sono note: ad esempio quando si usano query a sequenze per ricerche in basi di dati Spesso si cercano analogie fra spezzoni di sequenze 29 Allineamento locale Non richiede che il confronto di due sequenze sia svolto per la loro intera lunghezza Variante dell’algoritmo per l’allineamento globale: algoritmo Smith-Waterman In caso di punteggio parziale negativo, l’allineamento corrente può essere abbandonato L’allineamento può terminare in qualsiasi punto della matrice Tools: SSEARCH, LALIGN (utilities FASTA); BLAST Query basate su sequenze L’allineamento viene usato per cercare sequenze “similari” in DB biologici Problema di efficienza sequenza di query = stringa lunga fino a qualche migliaio di caratteri nel DB migliaia di sequenze di dimensioni analoghe Cercare allineamenti ottimali è in genere impraticabile Soluzione: Si usano tecniche euristiche per velocizzare le ricerche, senza garantire allineamenti ottimali -> si guadagna in efficienza ma si può sbagliare 30 BLAST Basic Local Alignment Search Tool: è il programma ad oggi più diffuso per ricerche basate su sequenze Usato da molti server di ricerca Integrato in GenBank (NCBI) Molto veloce (migliaia di confronti/min): versione efficiente dell’algoritmo di allineamento locale Cerca zone di similarità locali http://www.ncbi.nlm.nih.gov/BLAST/ BLAST 31 BLAST Implementazioni: NCBI BLAST, WU-BLAST (funzionalità aggiuntive per ricerche nelle sequenze Genoma) Integrati entrambi in applicazioni WEB Disponibili anche come pacchetti sw free (scaricabili anche solo gli eseguibili) Ambiente Linux Informazioni: sito del NCBI oppure http://blast.wustl.edu BLAST Programmi disponibili blastall (ricerche di tipo generali; modalità: blastp, blastn, blastx, tblastn) blastpgp (allineamenti multipli) bl2seq (allineamenti locali di due sequenze) ... 32 BLAST: modi di funzionamento Diverse modalità di funzionamento (espresse come opzioni di blastall) blastp: query di sequenze proteine (PS) a base dati PS blastn: query di sequenze acido nucleiche (NS) a base dati NS blastx: query NS tradotta nei 6 possibili frame PS a base dati PS tblastn: query PS a base dati NS tradotta nei 6 possibili frame 33