Biologia computazionale Docente: Giorgio Valentini Istruttore: Matteo Re Università degli studi di milano C.d.l. Biotecnologie Industriali e Ambientali Biologia computazionale A.A. 2010-2011 semestre II 5 Evoluzione e filogenesi - 2
Metodi basati su: Bio CS Distanza Costruzione di alberi filogenetici: Classi di metodi disponibili CS Metodi basati su: Distanza Massima parsimonia (minima evoluzione) Massima verosimiglianza Abbiamo già discusso un medoto basato su distanze: UPGMA
Abbiamo bisogno di altri metodi? Bio Costruzione di alberi filogenetici: Classi di metodi disponibili CS Abbiamo già discusso un medoto basato su distanze: UPGMA Abbiamo bisogno di altri metodi?
Cosa non va in UPGMA? (rivediamo l’esempio…) Bio Costruzione di alberi filogenetici: problemi con UPGMA… CS Cosa non va in UPGMA? (rivediamo l’esempio…) A B C D 6 7 4 5 3 ? A B C D Quest’albero … implica che la distanza tra B e C ha lo stesso valore della distanza tra B e D? Ma la matrice delle distanze non conteneva valori diversi?
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: problemi con UPGMA… CS UPGMA calcola la media delle due distanze e pone sia C che D alla medesima distanza (1.5) da B … Cosa succede se le velocità evolutive dopo la divergenza sono diverse? A B C D 7 6 4 5 3 A B C D .5 .5 4 2.5 1 2 NB: è un effetto dell’ipotesi dell’orologio molecolare!
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: problemi con UPGMA… CS TAXA MOLTO SIMILI Velocità evolutive differenti (non contemplate dall’ipotesi dell’orologio molecolare) possono causare problemi a UPGMA Specialmente nel caso di taxa molto simili (distanze molto piccole)! Produce questa matrice ..che produce quest’albero Questo albero A B C 4 3 A B C 1 2 B C A … e i due alberi sono DIVERSI !
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Cronogrammi CS Alberi ultrametrici ( cronogrammi) 1 3 1 1 3 2 1 1 1 1 a b c Le distanze (nei cronogrammi) devono obbedire a 4 regole: Non-negatività: d(a,b) ≥ 0 Distinguibilità: d(a,b) = 0 if and only if a = b Simmetria: d(a,b) = d(b,a) Disug. triangolare: d(a,c) ≤ d(a,b) + d(b,c) Inoltre devono anche soddisfare la: Condizione dei tre punti: d(a,b) ≤ max( d(a,c), d(b,c) ) 1 0.4 2 1 c a b
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Cronogrammi CS Alberi ultrametrici ( cronogrammi) 1 3 1 1 3 2 1 1 1 1 a b c Le distanze (nei cronogrammi) devono obbedire a 4 regole: Non-negatività: d(a,b) ≥ 0 Distinguibilità: d(a,b) = 0 if and only if a = b Simmetria: d(a,b) = d(b,a) Disug. triangolare: d(a,c) ≤ d(a,b) + d(b,c) Inoltre devono anche soddisfare la: Condizione dei tre punti: d(a,b) ≤ max( d(a,c), d(b,c) ) 1 0.4 2 1 c a b
Costruzione di alberi filogenetici: Motivi dei problemi di UPGMA Bio Costruzione di alberi filogenetici: Motivi dei problemi di UPGMA CS UPGMA è molto sensibile alla presenza di velocità evolutive differenti (assume che esse siano uguali su tutti i rami). Il clustering funziona SOLO SE i dati sono ultrametrici Le distanze sono ultrametriche SE soddisfano la ‘condizione dei tre punti'. Condizione dei tre punti: B A B C A C Per ogni combinazione di tre taxa, le due distanze maggiori devono essere uguali.
Costruzione di alberi filogenetici: Esempio di errore di UPGMA Bio Costruzione di alberi filogenetici: Esempio di errore di UPGMA CS Velocità evolutive non costanti A B C D E 5 4 7 10 6 9 F 8 11 TOPOLOGIA ERRATA
Costruzione di alberi filogenetici: Esempio di errore di UPGMA Bio Costruzione di alberi filogenetici: Esempio di errore di UPGMA CS Velocità evolutive non costanti A B C D E 5 4 7 10 6 9 F 8 11 TOPOLOGIA ERRATA Esiste un metodo chiamato Neighbor Joining che avrebbe ricostruito la topologia dell’albero in modo corretto.
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: NeighborJoining (NJ) CS Neighbor Joining e costruzione di alberi additivi (filogrammi, lunghezza rami proporzionale a distanze genetiche) A c C a x b B d D A e B sono neighbors (“vicini”) poichè sono connessi da un singolo nodo interno. Anche C e D sono vicini, ma A e D non lo sono.
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Alberi additivi CS Se l’albero è additivo, allora deve essere rispettata la: Condizione dei 4 punti A a c C x b d B D dAC + dBD = dAD + dBC = a + b + c + d + 2x = dAB + dCD + 2x dAB + dCD < dAC + dBD Condizione dei 4 punti dAB + dCD < dAD + dBC vicini non-vicini Fondamentalmente dice che la distanza tra i vicini è minore di quella tra i non-vicini.
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Neighbor Joining (NJ) CS NJ: costruzione dell’albero più corto Partiamo da una struttura a stella (nessuna struttura gerarchica) C A B D Distanze pair-wise Lunghezza dell’albero Numero di taxa
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Neighbor Joining (NJ) CS Possiamo utilizzare queste formule per calcolare la lunghezza del nuovo albero: (Saitou and Nei, 1987)
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Neighbor Joining (NJ) CS Ad ogni passo tutte le coppie di vicini vengono esaminate e viene scelta quella che produce l’albero più corto (criterio di minima evoluzione). (Saitou and Nei, 1987)
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Neighbor Joining (NJ) CS Come nel caso di UPGMA ad ogni ciclo viene aggiunto un ramo interno … ma adesso è sempre il ramo più corto possibile ! (Saitou and Nei, 1987)
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Neighbor Joining (NJ) CS Come nel caso di UPGMA ad ogni ciclo viene aggiunto un ramo interno … ma adesso è sempre il ramo più corto possibile ! Albero non radicato (Saitou and Nei, 1987)
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Massima parsimonia Definizione: parsimònia s. f. [dal lat. parsimonia, der. di parcĕre «risparmiare» (supino parsum)]. – La qualità di chi è parco; moderazione, giusta misura nell’uso del denaro o di altri beni, per un senso di doverosa economia o per abituale frugalità di vita: avere, usare p.; … Principio, o legge, della p.: uno dei modi con cui viene denominato il principio (altrimenti detto legge di economia, o principio del minimo sforzo, o del minimo mezzo, o del minimo lavoro) così enunciato da G. Galilei nel «Dialogo sopra i due massimi sistemi» (Giornata seconda): la natura ... non opera con l’intervento di molte cose quel che si può fare col mez(z)o di poche, volendo significare che ogni fenomeno naturale si realizza sempre con il minimo dispendio sia di materia sia di energia. http://www.treccani.it/vocabolario/parsimonia/
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS E’ possibile applicare il concetto di parsimonia alla costruzione di alberi filogenetici? In fondo gli alberi filogenetici sono IPOTESI evolutive (come gli allineamenti utilizzati per definire le distanze tra i membri di un set di sequenze…). Quindi tra tutte le possibili ipotesi (alberi) vorremmo scegliere quella che spiega le sequenze con il minor numero di eventi evolutivi (da qui il termine parsimonia). Tra tutte le possibili ipotesi in grado di spiegare i dati (sequenze) vogliamo scegliere la più SEMPLICE RASOIO DI OCCAM
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Massima parsimonia: Osserviamo ogni colonna di un allineamento multiplo e costruiamo un albero che la “descriva” Costruiamo un albero consenso atgccgca-actgccgcaggagatcaggactttcatgaatatcatcatgcgtggga-ttcag acctccatacgtgccccaggagatctggactttcacc---tggatcatgcgaccgtacctac t-atgg-t-cgtgccgcaggagatcaggactttca-gt--g-aatcatctgg-cgc--c-aa t--tcgt-ac-tgccccaggagatctggactttcaaa---ca-atcatgcgcc-g-tc-tat aattccgtacgtgccgcaggagatcaggactttcag-t--a-tatcatctgtc-ggc--tag
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Massima parsimonia: Cosa intendiamo quando ci riferiamo ad un albero in grado di “descrivere” (spiegare) una colonna del multiallineamento? Ipotesi di lavoro: Costruiamo tutti i possibili alberi per una colonna del multiallineamento e poi scegliamo il migliore PROBLEMI: Come costruiamo tutti i possibili alberi per una data colonna? Come riconosciamo l’albero migliore?
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Massima parsimonia: Come costruiamo tutti i possibili alberi per una data colonna? Come riconosciamo l’albero migliore? Ad ogni nodo interno dell’albero possiamo mettere A oppure G. Alle foglie, invece, dobbiamo rispettare le proporzioni osservate (3A, 1G). A G ? (A or G) AGCT AACT Topologie possibili : 1 Al posto dei TAXA abbiamo i nucleotidi (osservati)
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Massima parsimonia: Come costruiamo tutti i possibili alberi per una data colonna? Come riconosciamo l’albero migliore? Consideriamo il nucleotide più frequente (A) come ancestor … A G A or G A or G 0 if A 1 if G 1 if A AGCT AACT scelta: A Alberi possibili : 1 Al posto dei TAXA abbiamo nt
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Massima parsimonia: Come costruiamo tutti i possibili alberi per una data colonna? Come riconosciamo l’albero migliore? Scegliamo i nucleotidi ai nodi interni in modo da spiegare i taxa (nt osservati) minimizzando il numero totale di sostituzioni! A G 1 if A AGCT AACT Alberi possibili : 1 Totale sostituzioni : 1 (non male…)
A B Bio CS Come determinare tutti i possibili alberi? Costruzione di alberi filogenetici: Massima parsimonia CS Come determinare tutti i possibili alberi? Quando gli organismi sono 2 esiste un unico albero possibile: A B
A B Bio CS Come determinare tutti i possibili alberi? Costruzione di alberi filogenetici: Massima parsimonia CS Come determinare tutti i possibili alberi? Se gli organismi fossero 3 Il terzo potrebbe posizionarsi … A B
A B Bio CS Come determinare tutti i possibili alberi? Costruzione di alberi filogenetici: Massima parsimonia CS Come determinare tutti i possibili alberi? E se gli organismi fossero 4 ? Per ognuno dei tre possibli alberi precedenti potremmo aggiungere il quarto organismo ad ognuno dei loro 4 rami (o potremmo usarlo come una nuova radice) Il numero di possibili alberi con 4 organismi è quindi: 3*5=15 A B Se partissimo da quest’albero con 3 organismi
Costruzione di alberi filogenetici: Numero dei possibili alberi: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Numero dei possibili alberi: Ni : n. di alberi dati i taxa Bi : n. di rami in un albero dati i taxa Bi=Bi-1+2, e anche i * 2-2 Ni=Ni-1*(Bi-1+1) + 1 a causa della potenziale nuova radice N2= 1 B2=2 Taxa Rami Alberi 2 1 3 4 6 15 5 8 105 10 945 7 12 10,395 14 135,135 9 16 2,027,025 18 34,459,425 11 20 654,729,075
A cosa assomiglia questo tasso di crescita? Bio Costruzione di alberi filogenetici: Massima parsimonia CS Numero dei possibili alberi: Ni : n. di alberi dati i taxa Bi : n. di rami in un albero dati i taxa Bi=Bi-1+2, e anche i x 2-2 Ni=Ni-1*(Bi-1+1) + 1 a causa della potenziale nuova radice N2= 1 B2=2 Taxa Rami Alberi 2 1 3 4 6 15 5 8 105 10 945 7 12 10,395 14 135,135 9 16 2,027,025 18 34,459,425 11 20 654,729,075 A cosa assomiglia questo tasso di crescita?
E’ definito da una relazione di ricorrenza, quindi … Bio Costruzione di alberi filogenetici: Massima parsimonia CS Numero dei possibili alberi: Ni : n. di alberi dati i taxa Bi : n. di rami in un albero dati i taxa Bi=Bi-1+2, e anche i x 2-2 Ni=Ni-1*(Bi-1+1) + 1 a causa della potenziale nuova radice N2= 1 B2=2 Taxa Rami Alberi 2 1 3 4 6 15 5 8 105 10 945 7 12 10,395 14 135,135 9 16 2,027,025 18 34,459,425 11 20 654,729,075 E’ definito da una relazione di ricorrenza, quindi … Giusto… come al solito, esponenziale
Bio CS Possiamo “risparmiare” qualche albero rinunciando alla radice: Costruzione di alberi filogenetici: Massima parsimonia CS Possiamo “risparmiare” qualche albero rinunciando alla radice: Alberi radicati e non radicati Ovunque sia la radice “appiattitela”
Costruzione di alberi filogenetici: Regole per alberi non radicati: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Regole per alberi non radicati: Sono anch’essi biforcati Non è possibile che 3 rami partano da uno stesso nodo A B C D
Esistono altre combinazioni? Bio Costruzione di alberi filogenetici: Massima parsimonia CS Possibili alberi non radicati per 4 taxa: Tre alberi possibili A B C D A C B D Esistono altre combinazioni? A D C B
Bio CS Possibili alberi non radicati per 5 taxa: Costruzione di alberi filogenetici: Massima parsimonia CS Possibili alberi non radicati per 5 taxa: Per ognuno dei tre alberi (da 4 taxa) possiamo aggiungere un ramo ad ognuno dei 5 rami disponibili 3*5=15 alberi A B C D
Costruzione di alberi filogenetici: Bio Costruzione di alberi filogenetici: Massima parsimonia CS “Radicare” un albero: Outgroup Includere un organismo che sappiamo a priori essere più distante evolutivamente da ogni taxa rispetto ad ogni distanza tra i taxa appartenenti all’albero da radicare se outgroup si posiziona qui … A B C D outgroup A B C D
Costruzione di alberi filogenetici: Numero di alberi non radicati: Bio Costruzione di alberi filogenetici: Massima parsimonia CS Numero di alberi non radicati: Ni : num. alberi dati i taxa Bi : num. rami in un albero dati i taxa Bi=Bi-1+2, e anche i * 2-3 Ni=Ni-1*(Bi-1) non serve il +1 per l’eventuale nuova radice … qui non ci sono radici N2= 1 B2=2 Taxa Rami Alberi 3 1 4 5 7 15 6 9 105 11 945 8 13 10,395 135,135 10 17 2,027,025 19 34,459,425 12 21 654,729,075
Bio CS Comparazione (alberi non radicati vs radicati): Costruzione di alberi filogenetici: Massima parsimonia CS Comparazione (alberi non radicati vs radicati): Taxa Alb. non radicati Alb. radicati 3 1 4 15 5 105 6 945 7 10,395 8 135,135 9 2,027,025 10 34,459,425 11 654,729,075 12 13,749,310,575 Riduzione consistente del numero di alberi … e nonstante questo abbiamo guadagnato un solo taxa (in termini di relazione tra num. alberi e num. taxa)
La complessità è ancora esponenziale… Bio Costruzione di alberi filogenetici: Massima parsimonia CS Come possiamo ridurre la complessità del problema? La complessità è ancora esponenziale… Non possiamo utilizzare la programmazione dinamica … Il problema non è composto da sottoproblemi ripetitivi Ogni sottoproblema è un albero … e ogni albero è unico … EURISTICHE
Bio CS Ignorare larghi subset di possibili soluzioni Costruzione di alberi filogenetici: Euristiche che evitano l’enumerazione di tutti gli alberi CS Ignorare questa combinazione di rami Ignorare larghi subset di possibili soluzioni Utilizzare euristiche o metodi di predizione
Costruzione di alberi filogenetici: euristica Branch and Bound Bio Costruzione di alberi filogenetici: euristica Branch and Bound CS Poniamo un limite superiore ragionevole alla lunghezza complessiva dell’albero utilizzando un algoritmo veloce (ad es. UPGMA) Poi esploriamo le possibili soluzioni purchè non superino la lunghezza stimata inizialmente B & B dipende molto dalla qualità dei dati … e non garantisce di trovare la soluzione ottimale
Bio Costruzione di alberi filogenetici: euristica Branch and Bound CS Branch and Bound ci fa “perdere” taxa nella soluzione finale? NO Ci fa perdere alcune “topologie” tra le possibili soluzioni? SI (è proprio questo il suo obiettivo … ma tra di esse potrebbe esserci la soluzione ottimale) Non preoccupiamoci di questi possibili modi di ramificare … vanno oltre la soglia di lunghezza A B C D X X X
Torniamo all’algoritmo di Bio Torniamo all’algoritmo di Massima parsimonia CS In alcune colonne i simboli sono tutti uguali Non forniscono nessuna informazione Tutti gli alberi hanno costo minimo In alcune colonne i simboli sono tutti diversi Anche queste sono inutili Colonne informative devono contenere almeno due simboli diversi ed almeno uno di essi deve essere ripetuto almeno due volte AGCT AACT ACCT A
Bio CS Massima Parsimonia: l’albero consenso Ogni colonna genera un albero Se le topologie coincidono l’algoritmo finisce qui Se esistono topologie differenti utilizziamo un criterio di “maggioranza” Se il campione (numero di sequenze) è troppo piccolo eseguiamo un bootstrapping : Estraiamo casualmente sequenze dal multiallineamento Generiamo più alberi Etichettiamo i rami con la percentuale di occorrenze in cui compaiono in un albero Queste informazioni vengono utilizzate come misura di “ripetibilità” (più un ramo è frequente e più lo consideriamo supportato dai dati)
Metodi per costruire alberi filogenetici Bio Metodi per costruire alberi filogenetici CS Metodi basati su: Distanza Massima parsimonia Massima verosimiglianza Questi li abbiamo visti… Il seguito nella prossima puntata …