Evolutionary Trees Julia Gerke 24.01.2011 Inhalt Inhalt........................................................................................................................................... 2 1. Phylogenetische Bäume ......................................................................................................... 3 2. Unabhängige Merkmale ......................................................................................................... 3 2.1 Voraussetzungen ............................................................................................................... 3 2.2 Unabhängige Merkmale mit binärer Eigenschaft ............................................................. 4 Lemma ................................................................................................................................. 4 Beweis ................................................................................................................................. 4 2.3 Algorithmus ...................................................................................................................... 5 1. Phase................................................................................................................................ 5 2. Phase................................................................................................................................ 6 2.4 Laufzeit ............................................................................................................................. 7 3. Vergleichende Informationswerte .......................................................................................... 7 3.1 Distanzmatrix.................................................................................................................... 7 3.2 Konstruktion eines additiven Baums ................................................................................ 7 3.3 Laufzeit ............................................................................................................................. 8 4. Zusammenfassung.................................................................................................................. 8 5. Literatur.................................................................................................................................. 9 -2- 1. Phylogenetische Bäume Im Laufe der Zeit entwickelten sich verschiedene Spezies. Diese evolutionäre Entwicklung kann mit Hilfe von evolutionären Bäumen dargestellt werden. Doch auch hierbei gibt es unterschiedliche Darstellungen, die verschiedene Aspekte der Evolution näher betrachten. Eine bestimmte Art dieser Bäume ist der phylogenetische Baum. Die Blätter des Baums zeigen die Spezies der heutigen Zeit, deren evolutionäre Entwicklung dargestellt werden soll. Ein innerer Knoten des Baums steht für den gemeinsamen Vorfahren der Spezies seiner Blätter. Bei einem phylogenetischen Baum handelt es sich jedoch nur um eine theoretische Möglichkeit. Da aufgrund der geringen Daten über die Vorfahren der heutigen Spezies nur Annahmen gemacht werden können, handelt es sich bei einem phylogenetischen Baum nicht unbedingt um die einzig richtige, sondern nur eine mögliche Darstellung. Dabei wird hauptsächlich darauf geachtet, wie die Blätter und die inneren Knoten miteinander verbunden sind, bzw. wer mit wem verwandt ist. Auch die Distanz zwischen Blättern und Knoten kann wichtig sein. Sie steht oft für die evolutionäre Distanz zwischen den Spezies und wird durch gewichtete Kanten angegeben. Ein entscheidendes Merkmal eines Baumes ist die Wurzel. Sind nicht genügend Informationen vorhanden, so besitzt der Baum keine Wurzel. Dadurch lässt sich anhand des Baumes nicht erkennen welcher Knoten der Vorfahre der anderen Knoten ist. Aus einem entwurzelten Baum lässt sich somit nur erkennen welche Spezies näher verwandt sind als andere. Phylogenetische Bäume können auf verschiedenen Eingabe-Informationen, in Bezug auf Objekte, basieren: • discrete character Ø unabhängige Merkmale durch eine "character state" Matrix wird der Zustand eines Merkmals angegeben • comparative numerical data Ø vergleichende Informationswerte die symmetrische Distanzmatrix enthält die Distanz zwischen den einzelnen Objekten 2. Unabhängige Merkmale 2.1 Voraussetzungen In einem Baum, der auf "discrete character" basiert, werden Objekte, wie z.B. Spezies, im Bezug auf Merkmale und deren Zustände abgebildet. Dabei müssen zwei wichtige Vorraussetzung gelten: 1. Die Merkmale werden unabhängig voneinander vererbt. 2. Alle möglichen Zustände eines Merkmals wurden vom Vorfahren vererbt. Merkmale, auf welche diese Vorraussetzungen zutreffen, werden auch als homolog bezeichnet. Es wird also angenommen, dass Objekte genetisch näher verwandt sind, wenn sie denselben Zustand eines Merkmals besitzen. Dabei können jedoch folgende Probleme auftreten: • • Konvergente Evolution Zusammenhang der Zustände eines Merkmals -3- Bei der konvergenten Evolution haben sich unabhängig voneinander ähnliche Merkmale entwickelt. Dies würde der Annahme widersprechen, weshalb festgelegt wird, dass dies nicht vorkommen soll. Das zweite Problem betrifft den Zusammenhang der Zustände desselben Merkmals. Angenommen X ist ein Vorfahr von A und B, mit CA=1 und CB=0 als Zustand des binären Merkmals C. Gleichzeitig soll Y≠X der Vorfahr von D und E, mit CD=0 und CE=1. Welchen Zustand hatte dann X, 1 oder 0? Würde CX=0 sein, dann müsste außerdem CY=1 gelten → 0 ist der Urzustand, 1 stammt von 0 ab X:0 Y:1 Gewinn A:1 Verlust B:0 D:0 E:1 Das würde bedeuten, dass D die Umkehrung von CY, also den Urzustand von Y, darstellt. Da es sich in diesem speziellen Fall um ein binäres Merkmal handelt, können die Darstellungen auch als Verlust bzw. Gewinn des Merkmals interpretiert werden, d.h. durch Verlust eines Merkmals wird wieder der Urzustand erreicht. Diese Situation kommt in der Regel in der Natur nicht vor, weshalb dies im Graphen ebenfalls nicht vorkommen soll. 2.2 Unabhängige Merkmale mit binärer Eigenschaft Um einen perfekten phylogenetischen Baum aus einer "binary state matrix" zu bekommen, wird ein Algorithmus verwendet, der aus zwei Phasen besteht. In der ersten Phase entscheidet der Algorithmus, ob es überhaupt möglich ist, aus der Matrix einen perfekten phylogenetischen Baum zu erstellen. Wenn dies der Fall ist ist, wird ein möglicher Baum in der zweiten Phase konstruiert. Für diesen Algorithmus wird festgelegt, dass 0 den Urzustand darstellt und 1 den davon abstammenden Zustand eines Merkmals. Da es sich hier um einen binären Baum T handelt, hat jedes Merkmal der "binary state matrix" eine Kante in T, die den Übergang von 0 in den Zustand 1 bedeutet. Wird der Pfad von der Wurzel bis zu einem Blatt betrachtet, so sind in dem Pfad alle Merkmale des Objekts bzw. Blatts mit dem Zustand 1 enthalten. Daraus lässt sich der Vektor des Objekts ableiten, der alle Merkmale zusammenfasst. Der Vektor einer Wurzel ist (0. ...0). Um jedoch eine Matrix auf perfekte Phylogenie zu überprüfen, müssen noch einige Bedingungen zutreffen. Es gilt, jede Spalte j ist ein Merkmal und jede Zeile i steht für ein Objekt. Lemma Eine binäre Matrix kann genau dann als perfekter phylogenetischer Baum dargestellt werden, wenn für jedes Merkmalspaar, bestehend aus i und j, die Objektmengen Oi und Oj disjunkt sind oder die eine in der anderen enthalten ist. Beweis Angenommen der binäre Baum T erfüllt die perfekte Phylogenie, sodass für jedes Merkmal c genau eine Kante (u,v) existiert. In dem Teilbaum Tv, dessen Wurzel sich am Knoten v befindet, sind alle Objekte, für die der Zustand von c gleich 1 ist, enthalten. Gleichzeitig wird angenommen, dass für die Objekte A, B und C gilt: A, B ∈ Oi, C ∉ Oi und B, C∈ Oj, A ∉ Oj. Um den Pfad von B∈ Oi, Oj bis zur Wurzel bilden zu können, muss im Pfad sowohl eine Kan-4- te (p,q) für i als auch eine Kante (r,s) für j existieren. Angenommen (p,q) befindet sich höher im Baum als (r,s), dann beinhaltet der Teilbaum Tq den Teilbaum Ts. p i q r Tq j s Ts Für C gilt: C ∈ Oj ↔ C ∈ Ts und C∉ Oi ↔ C ∉ Tq. Das würde jedoch bedeuten, dass C in Ts enthalten ist ohne inTq enthalten zu sein. Da aber Ts ein Teilbaum von Tq ist, müssen alle Objekte, die in Ts enthalten sind auch in Tq sein. Dies führt zu einem Widerspruch. □ Als Voraussetzung gilt, dass die zweite Aussage des Lemmas auf alle Merkmale zutrifft und die Merkmale eindeutig sind. Angenommen es gibt nur ein Merkmal 1. Dadurch können die Objekte in zwei Mengen unterteilt werden, A=O1 und B= ¬O1, wobei B aus den Objekten besteht, die das Merkmal nicht besitzen. Anschließend wird eine Wurzel mit zwei Knoten a, b erstellt. Knoten a steht für die Menge A, b für Menge B. 1 Die Kante zwischen der Wurzel und a wird mit 1 gekennzeichnet. Als letztes wird jedes Kind der Wurzel in die Anzahl der Objekte seiner Menge a b aufgeteilt. Die Matrix hat nun k+1 Merkmale und für ein Merkmal j gilt Oi à Oj für alle anderen i. Aus M wird das Merkmal j entfernt, sodass eine neue kleinere Matrix M' entsteht, die außer Merkmal j alle Merkmale von M besitzt. Auf j wird das obige Beispiel angewendet. Durch schrittweises Entfernen der Merkmale aus der Matrix wird der Baum nach und nach durch neue Kanten vergrößert, die für ein Merkmal stehen. Dadurch werden die Mengen die sich in den Blättern befinden schrittweise kleiner, da sich durch einfügen neuer Kanten aufteilen, bis am Ende ein perfekter phylogenetischer Baum entstanden ist. Dies ist jedoch nur der Fall, wenn die Objekte die von der Aufteilung durch j betroffen sind, sich alle am selben Knoten befinden. Würde das Merkmal j sowohl Objekte des Knotens a als auch Objekte von b aufteilen, dann bedeutet dies Oj ' Oi ≠ ∅. Dies widerspricht sich mit der Voraussetzung. □ Trifft das Lemma auf zwei Merkmale nicht zu, so werden sie als nicht kompatibel bezeichnet. 2.3 Algorithmus 1. Phase Im Entscheidungsalgorithmus wird überprüft, ob das Lemma auf die Matrix zutrifft. Dafür wird der Reihe nach jede Spalte auf ihre Kompatibilität zu allen anderen Spalten geprüft. Da das Überprüfen eine Laufzeit von O(n) besitzt, welche O(m2) mal ausgeführt werden muss, würde sich insgesamt eine Laufzeit von O(nm2) ergeben. Es gibt jedoch einen Algorithmus, der mit einer Laufzeit von O(nm) wesentlich effizienter ist. In diesem Fall soll jede Spalte nur genau einmal überprüft werden. Dies wird bewerkstelligt, indem die Spalten oder auch Merkmale durch einen Sortieralgorithmus nach der Anzahl -5- der Zustände 1 geordnet werden. Wurde dann das erste Merkmal bearbeitet, so braucht es nicht ein weiteres Mal geprüft werden, da alle folgenden Merkmale entweder eine Teilmenge oder disjunkt von dem Merkmal sind. Der Algorithmus verwendet für die Sortierung der Spalten einen Radix Sort und erstellt zusätzlich eine Hilfsmatrix L. Außerdem wird eine Hilfsvariable k gewählt die zu Beginn jeder neuen Zeile -1 beträgt. Gilt nun Mij=1, so wird Lij =k und k=j. Daraus ergeben sich folgende Matrizen für M und L: M i l 1 2 ... 1 0 0 ... 2 0 1 ... j 3 0 1 ... 4 1 0 ... L 5 1 1 ... i l 1 2 ... 1 2 j 3 ... -1 ... 2 ... 4 -1 ... 5 4 3 ... Zusätzlich wird L überprüft. Wenn Lij ≠ Llj und sowohl Lij, als auch Llj nicht Null sind, kann aus M kein perfekter Phylogenetischer Baum erstellt werden. Beweis Wenn Oj Œ Ok dann ist k<j, d.h. das Merkmal k liegt in M links von Merkmal j. Nach der obigen Tabelle ist k= 4 und j=5. Gilt außerdem ist Lij=k und Llj=k' < k, dann ist Mlk=0 und Mik=1. fl Ok ' Oj ≠ ∅ fl Oj Œ Ok oder Ok Œ Oj damit das Lemma korrekt ist aber: fl Ok Oj fl Oj Ok Ø da k<j Ø durch die Sortierung Ø l ∈ Oj, l ∉ Ok Ø da Mlk =0, Mlj=1 fl die Merkmale sind weder disjunkt noch Teilmenge des einen fl Widerspruch Ø keine perfekte Phylogenie □ 2. Phase Im Konstruktionsalgorithmus wird der phylogenetische Baum aufgebaut. Zu Beginn wird ein Knoten erstellt, die Wurzel. Anschließend wird nacheinander jedes in der Matrix enthaltene Objekt in den Baum eingefügt. Dafür werden die Merkmale mit dem Zustand 1 betrachtet. Ist noch keine Kante für ein Merkmal im Baum vorhanden, so wird ein neuer Knoten erstellt, der mit dem aktuellen Knoten verbunden wird. Der neu entstandene Ast wird mit dem Merkmal beschriftet. Bei dem aktuellen Knoten handelt es sich um den Knoten des vorherigen Merkmals, wobei nach Einfügen eines neuen Knotens, der neue Knoten der aktuelle Knoten wird. Wenn bereits eine Kante für das Merkmal vorhanden ist, wird der Endpunkt dieser Kante der aktuelle Knoten. Als letztes werden für jeden Knoten, so viele Blätter erstellt, wie er Objekte enthält. Dies betrifft die Objekte, deren letztes Merkmal den Zustand 0 besitzt, da sie sich noch in der Menge des Merkmals befinden, welches als letztes den Zustand 1 hatte. Die so entstandenen Kanten stehen für das nicht Vorhandensein des letzten Merkmals und werden nicht beschriftet. -6- 2.4 Laufzeit Das in der 1. Phase angewandte Sortierverfahren besitzt eine Laufzeit von O(nm). Auch der Algorithmus, der die Matrix prüft, besitzt dieselbe Laufzeit. Bei dieser Laufzeit ist O(nm) der "worst case", denn jedes Element in der Matrix (nxm) muss mindestens einmal betrachtet werden, um eine Entscheidung treffen zu können. In der 2. Phase muss ebenfalls jedes Element einmal betrachtet werden, um den Baum konstruieren zu können. Daraus ergibt sich insgesamt eine Laufzeit von O(3nm), dabei kann die 3 in O versteckt werden, weshalb sich eine asymptotisch optimale Laufzeit von O(nm) ergibt. 3. Vergleichende Informationswerte 3.1 Distanzmatrix Bei der Konstruktion von phylogenetischen Bäumen, deren Grundlage der Vergleich der Distanzen ist, gibt es eine wichtige Vorraussetzung. Auf die Distanzen d einer Matrix M muss die Additivität zutreffen, d.h. jedes Blatt des Baumes darf nur ein Objekt enthalten. Die Additivität basiert auf dem Prinzip "metric space". In einem metrischen Raum wird je zwei Elementen dieses Raumes ein positiver reeller Wert zugeordnet, der den Abstand der beiden Elemente darstellt. Ein metrischer Raum muss folgende Bedingungen erfüllen: • • • • dij = 0 dij > 0 dij = dji dij ≤ dik + dkj für i = j für i ≠ j für alle i, j für alle i, j, k → ∆-Ungleichung Allerdings ist nicht jeder metrische Raum additiv. Dafür muss noch eine weitere Bedingung zutreffen, die "four point condition": dij + dkl = dik + djl ≥ dil + djk Da es zwischen jeweils zwei Objekten eine Distanz geben muss, ist die Distanzmatrix symmetrisch (nxn). Der daraus resultierende Baum besitzt bei n Objekten n Blätter. Die Distanzmatrix liefert allerdings keinerlei Informationen darüber, welche der Objekte Vorfahren sind. Deshalb hat der Baum keine Wurzel. 3.2 Konstruktion eines additiven Baums Für die Konstruktion eines perfekten phylogenetischen Baum aus einer Matrix M mit den Objekten W, X, Y und Z, dessen Kante (i, j)=dij, gilt: • • • Mxz = dxc + dcz Mxy = dxc + dcy Myz = dyc + dcz Ø dxc = Mxz – dcz Ø dcy = Mxy – dxc Ø dcz = Myz – dyc • dxc = Mxz – (Myz – (Mxy – dxc)) Ø dxc = Mxz – Myz + Mxy – dxc Ø 2 dxc = Mxz – Myz + Mxy • dxc = (Mxy + Mxz – Myz)/2 Berechnung der restlichen Kanten analog -7- Auf diese Weise kann jede Distanz zwischen den Blättern und den Knoten berechnet werden. Mit Hilfe der berechneten Distanzen wird auch der Baum konstruiert. Im ersten Schritt wird durch die obigen Formeln berechnet, wo der innere Knoten C liegt, der die Kanten (x, y), (x, z) und (y, z) teilt, d.h. wie die 3 Objekte miteinander verbunden sind und wie lang die neu entstandenen Kanten sind. X Y Z Im zweiten Schritt wird das nächste Objekt W von M hinzugefügt, indem ein neuer innerer Knoten gebildet wird, der eine bereits vorhandene Kante teilt und W in den bereits bestehenden Baum einfügt. Um W an die richtigen Stelle im Baum zu setzen, werden jeweils wieder die 3 Distanzen zwischen dem einzufügenden Objekt W und zwei beliebigen bereits im Baum vorhandenen Objekten ,z.B. X und Y, betrachtet. Entsteht durch die Anwendung der Formeln ein neuer innerer Knoten C2, welcher die Kante (x, y) teilt, dann kann W mit dwc korrekt in den Baum integriert werden. 2 X Y Z W Ist der neue Knoten C2 jedoch identisch mit einem bereits vorhandenen Knoten, z.B. C, dann teilt C2 eine andere Kante des Baumes. Die Formeln werden auf W und zwei weitere Objekte des Baumes angewendet, deren Kanten noch nicht überprüft wurden. Dieser Vorgang wird solange wiederholt bis sich W einfügen lässt. X Y W Z Für jedes weitere Objekt von M, das in den Baum eingefügt werden soll, wird genauso verfahren wie bei W. 3.3 Laufzeit Da für jedes Objekt, das neu in den Baum integriert werden soll, alle bereits im Baum vorhandenen Objekte überprüft werden müssen, kommt es bei n Objekten im schlimmsten Fall zu einer Laufzeit von O(n2). 4. Zusammenfassung Evolutionäre Zusammenhänge können durch phylogenetische Bäume dargestellt werden. Diese variieren jedoch stark und haben unterschiedliche Eingabe-Werte. Während sich Bäume, die auf dem Prinzip des "dicrete character" basieren, vor allem auf die gemeinsamen Merkmale konzentrieren, liegt der Schwerpunkt der "comparativ numerical data" Bäume auf der evolutionären Distanz, die zwischen den zu betrachtenden Objekten besteht. -8- Im Gegensatz zu den Distanzbäume mit O(n2), besitz der unabhängige Merkmalbaum eine Laufzeit von O(nm). Bei welcher dieser Laufzeiten es sich um die Effizientere handelt, ist abhängig von der Größe von n und m. 5. Literatur J. Setubal, J. Meidanis: Introduktion to Computitional Molecolar Biology, PWS, 1997; Abschnitte 6.1, 6.2, 6.5.1 sowie Errata zu Lemma 6.1 P. Clote, R. Backofen: Computational Molecular Biology - An Introduktion, Wiley 2000; Abschnitte 4.3.0 und 4.3.1 -9-