Informatica e biotecnologie Informatica e biotecnologie

annuncio pubblicitario
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
Scarica