Evolutionstræer (Phylogenetic trees)

Relaterede dokumenter
Prioritetskøer og hobe. Philip Bille

Forén og find. Introduktion Hurtig find Hurtig forening Vægtet forening Stikompression Dynamiske sammenhængskomponenter.

Danmarks Tekniske Universitet

Algoritmeanalyse. Øvre grænse for algoritme. Øvre grænse for problem. Nedre grænse for problem. Identificer essentiel(le) operation(er)

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Grådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Binære søgetræer. Binære søgetræer. Nærmeste naboer. Nærmeste nabo

UPGMA-metoden eksempel truede tigre

22 Hobe. Noter. PS1 -- Hobe. Binære hobe. Minimum-hob og maximum-hob. Den abstrakte datatype minimum-hob. Opbygning af hobe. Operationen siv-ned.

Definition : Et træ er en sammenhængende ikke-orienteret graf uden simple kredse. Sætning : En ikke-orienteret graf er et træ hvis og kun hvis der er

Binære søgetræer. Binære søgetræer. Nærmeste naboer. Nærmeste nabo

Sortering. Eksempel: De n tal i sorteret orden

Algoritmer og datastrukturer Course No Cheat Sheet May 15, 2012

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Sortering. Eksempel: De n tal i sorteret orden

REGNSKOVENS PLANTER KÆMPERNE

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

I denne opgave arbejder vi med følgende matematiske begreber:

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

DM507 Algoritmer og datastrukturer

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

DM507 Algoritmer og datastrukturer

Om binære søgetræer i Java

Sammenhængskomponenter i grafer

Skruedyrenes evolution

DM507 Algoritmer og datastrukturer

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid

Immunologisk bioinformatik

02105 Eksamensnoter. Lasse Herskind S maj Sortering 3

Sortering. De n tal i sorteret orden. Eksempel: Kommentarer:

DM507 Algoritmer og datastrukturer

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

DM507 Algoritmer og datastrukturer

Rekonstruktion af evolutionære træer vha. eksperimenter

Søgning og Sortering. Philip Bille

Vægtede grafer. I en vægtet graf har enhver kant tilknyttet en numerisk værdi, kaldet kantens vægt

Reeksamen i Diskret Matematik

Transkript:

BM forelæsning d november 00 Referat af Claus Skovgaard Evolutionstræer (Phylogenetic trees) Baseres på hvor meget de forskellige arter ligner hinanden og hvordan man tror udviklingen har forløbet menneske chimpanse gorilla orangutang gibbon Man har længe forsket i dette, og hvor man tidligere baserede lighederne på den fysiske lighed, har DA tilføjet ekstra og mere præcis information om sammenhængene imellem arter Man kan dog ikke være sikker på, at finder man et gen, som optræder i de arter man kigger på, og så laver et evolutionstræ for det gen, at det så svarer nøjagtigt til artstræet Der kan ske duplikeringer af gener, men det ene gen ofte blot går til igen og udvikler sig til et pseudo-gen Også bakterier kan overføre gener fra en art til en anden Tegning over udvikling Somme tider tegner man gen-træet inde i artstræet Eksempel med arter: : duplikation : specifikation A B C paraloger ortologer latteral transfer

Evolutionstræer og de sammenhænge der kan udledes kan ofte være meget nyttige i bla udvikling af medicin Vi er interesseret i træers topologi og kantlængder Ikke alle træ-algoritmer bestemmer en rod, men fortæller dog stadig om sammenhænge Der findes dog algoritmer som efterfølgende kan bestemme roden ved hjælp af forskellige tekninkker Evolutionstræer er som oftest binære træer, og med blade kan vi sige følgende: Med rod Uden rod - interne knuder - interne knuder - kanter - kanter Vi definerer: U : # binære træer uden rod R : # binære træer med rod Vi har så at: U = U = U = U = U = U - (-) = (-)!! R = (-) U = (-)!! Det ses at der er mange muligheder, så vi må finde en mere effektiv måde at konstruere evolutionstræerne på Der findes klasser af metoder: Aftstandsbaserede Ser på hvor forskellige de er (sekvens af tegn/mængde af egenskaber) o UPGMA o eighbour-joining Sekvensbaserede Mål for hvor godt træet er og maksimerer derud fra o Parsimony Probabilistiske o Maksimere sandsynligheden for træet er korrekt, P(T S) o Maksimere likelihood, P(S T)

Afstandsbaserede metoder sekvenser Evolutionær afstand Eks Jukes-Cantor d = log( f ) Hvor mange positioner er forskellige: x i = abcd x j = accb UPGMA (Unweighted Pair Group Method using Arithmetic averages) Algoritmen ligner Kruskal Man opbevarer disjunkte mængder af knuder, kaldet klynger Man er stadig interesseret i at finde de klynger der er tættest på hinanden, men er til forskel fra Kruskal defineret ud fra den gennemsnitlige afstand af alle muligheder I Kruskal oprettes der ikke nye knuder, hvorfor heller ikke alle de oprindelige knuder bliver til blade (som i UPGMA) Man starter ud med bladene ( blade) Dem som er tættest på hinanden bliver sat sammen og den nydannede knude indsættes i tabellen og afstandene for den regnes ud til alle andre punkter

+ + + Evolutionær afstand Afstandstabel d + d d + = ( ) + Slet række og som ikke længere skal bruges + u er vi så færdige med at bruge og og de kan fjernes fra tabellen Algoritme (uden detaljer) For i = to C i = {x i } h j = 0 C = {C i,,c } For k = - to - C i og C j : min d C k = C i C j Tilføj knude k som gøres forælder af knude i og j C = (C {C k }) {C i,c j } For hvert C C d kl = (d il C i +d jl C j )/ C k h k = d kl / Molekylærklokken (molecular clock) Teorien om at udviklingen altid sker i samme fart Alle stilængder fra en knude v til et blad under v er ens: v ~ > x = v ~ > y x v y Ultrametriske afstande d d = d ik jk > 0 k i j Afstande: : k til j : k til i : i til j

Molekylærklokken ikke-negative ultrametriske afstande additivitet Eksempel på at det ikke gælder den anden vej (additivitet > ultrametriske afstande): d = d = 7 d = 9 d = ½ (d + d d ) = ½ (7+9 ) = 6 d = ½ (d + d d ) = Eksempel på et træ som det ser ud i virkeligheden og som UPGMA vil fejlkonstruere Det af UPGMA (fejlagtigt) konstruerede træ er vist til højre for det virkelige træ eighbour-joining D = d ri = ( r + r ) i k = d j Algoritme For i = to C i = {x i } C = {C i,, C } For k = + to - C i og C j : min D C k = C i C j Tilføj knude k som gøres forælder af knude i og j C = (C C k ) {C i, C j } For hvert C C d kl = ½ (dil + ri rj) d ki = ½ (d + r i r j ) d kj = d d ki

Indsæt en kant mellem de to knuder, der svarer til de to klynger, der er tilbage i C T l( e) Virker hvis afstande er næsten additive som er defineret: max{ d d } min{ } Med næsten additiv menes altså at afstandene næsten passer med træet Med tilsvarende afstand af d i træet e T T d menes den eighbour-joining bestemmer ikke hvor roden skal være Til at finde den, findes forskellige teknikker Bla kan brugeren hjælpe til ved at definere en out-group, som er en sekvens der ikke er i familie med resten Out-group en minder altså ikke om de andre og vil være den sidste der bliver tilføjet træet fordi den har den største afstand Roden vil bedst blive placeret på den kant som fører til denne out-group 6