Evolutionäre Bäume. Madox Sesen. 30. Juni 2014

Größe: px
Ab Seite anzeigen:

Download "Evolutionäre Bäume. Madox Sesen. 30. Juni 2014"

Transkript

1 Evolutionäre Bäume Madox Sesen 30. Juni Einleitung Phylogenetische Bäume sind ein wichtiges Darstellungsmittel der Evolutionsforschung. Durch sie werden Verwandtschaftsbeziehungen zwischen Spezies simpel, aber dennoch informationsreich aufgezeigt. Durch die stetig wachsenden Datenbanken an genetischen Daten verschiedenster Spezies ist die Erstellung phylogenetischer Bäume zu einer wichtigen, bioinformatischen Problemstellung geworden. In meiner Ausarbeitung werde ich einige Beispiele an Algorithmen zur Erstellung von phylogenetischen Bäumen vorstellen. 2 Definition[2] Ein phylogenetischer Baum kann für jede mögliche taxonomische Einheit erstellt werden. So lassen sich beispielsweise taxonomische Familien, Stämme, Spezies und sogar einzelne Populationen vergleichen. Ein phylogenetischer Baum ist ein ungerichteter, azyklischer, zusammenhängender Graph. In den äußeren Knoten, den Blättern, werden die zu untersuchenden Objekte angezeigt. Die inneren Knoten stellen hypothetische Objekte dar. Diese müssen evolutionär gesehen nicht existiert haben, werden aber als Abspaltpunkt der beiden Objekte definiert. Der früheste Vaterknoten von zwei Knoten ist der letzte gemeinsame Vorfahre der Kinderknoten. Phylogenetische Bäume enthalten Informationen auf zwei verschiedene Arten. Die erste ist die Topologie. Eine Topologie ist die Konfiguration eines Baumes. Sie beschreibt die Struktur, in der die Knoten zueinander aufgebaut sind. Abbildung 1: Eine simple Topologie für 3 Objekte 1

2 Die zweite sind die Kantenbeschriftungen. Diese können je nach Methode zusätzliche Informationen zur Verfügung stellen, die Auskunft über die Verwandtschaftsbeziehungen geben. Üblicherweise wird hier der evolutionäre Abstand dargestellt. In der Regel sind phylogenetische Bäume zweigabelig. Das bedeutet, jeder Knoten (mit Ausnahme der Wurzel) hat entweder den Grad 1 (Blätter) oder den Grad 3 (innere Knoten). Es gibt jedoch Algorithmen, die vor allem bei Unsicherheiten mehrgabelige Bäume ausgeben können. Phylogenetische Bäume können gewurzelt oder ungewurzelt sein. Gewurzelte Bäume geben mehr Informationen über die Verwandtschaftsbeziehungen, da dadurch alle Blätter einen gemeinsamen Vorfahren zu allen anderen haben - sind allerdings auch schwieriger zu berechnen. Für eine Anzahl von n Objekten gibt es deutlich mehr mögliche gewurzelte als ungewurzelte Bäume: Die Anzahl möglicher gewurzelter Bäume für n Objekte ist: n i=2 2i 3 Die Anzahl möglicher ungewurzelter Bäume für n Objekte ist: n i=3 2i 5 Da diese zwei Funktionen schneller als n! wachsen, wird deutlich, dass alle möglichen Topologien zu erstellen und nach einer sinnvollen zu suchen schon bei kleinem n viel zu ineffizient ist. Man sucht also Algorithmen, die Bäume in effizienter Zeit aufbauen können. Algorithmen, die Bäume aufbauen können auf verschiedene Eigenschaften der zugrunde liegenden Daten basieren: Diskrete Eigenschaften, numerische Eigenschaften und Sequenzen. Diskrete Eigenschaften werden in einer n m-matrix übergeben, wobei n die Anzahl der Objekte und m die Anzahl der Eigenschaften sind. Objekte belegen dabei Zustände jeder Eigenschaft. Bei binären Eigenschaften sind diese lediglich 0 und 1, bei nicht binären kann jede Eigenschaft eine endliche Menge von Zuständen besitzen. Um aus diskreten Eigenschaften Bäume erstellen zu können müssen die Zustände eine feste Ordnung besitzen. Numerische Eigenschaften werden aus dem genetischen Unterschied der Objekte berechnet. Dafür gibt es eine n n-matrix M, die in der Zelle M i,j den genetischen Unterschied der Objekte i und j beinhaltet. Da diese Matrix symmetrisch ist wird nur die halbe Matrix benötigt. Diese numerischen Werte können durch diverse Methoden anhand der genetischen Sequenzen der Objekte berechnet werden. Beispiele dafür wären die p-distanz, die lediglich den Anteil der unterschiedlichen Stellen ausgibt, Jukes-Kantor, welches auch Rückmutationen berücksichtigt, und Kimura, das unterschiedliche Frequenzen für Transversionen und Transitionen angibt. 2

3 Die sequenzbasierten Bäume bekommen als Eingabe für jede der n Spezies eine repräsentative Sequenz und erstellen dadurch eine Topologie. Im Folgenden werden einige Methoden zur Erstellung von Bäumen aus diskreten Eigenschaften und numerischen Eigenschaften vorgestellt. 3 Diskrete Eigenschaften Um aus diskreten Eigenschaften einen phylogenetischen Baum zu erstellen sind einige Kriterien zu beachten. Zum Einen müssen die betrachteten Eigenschaften evolutionär bedeutend sein, das heißt, sie müssen Selektionskriterien darstellen. Weiterhin muss jede Eigenschaft unabhängig von jeder anderen vererbbar sein. 3.1 Perfekte Phylogenie[1] Das Problem der Perfekten Phylogenie ist für diskrete Eigenschaften mit binären Zuständen definiert. Dabei geht man von einer Ordnung 0 1 aus. Eine perfekte Phylogenie ist die Topologie eines Baumes, die an jeder Kante maximal eine Eigenschaft dazugewinnt. Aufgrund dieser Bedingung sind evolutionäre Ereignisse wie Koevolution und Verlust von Eigenschaften nicht erlaubt. Perfekte Phylogenien sind immer gewurzelt. Dies geschieht ohne zusätzlichen Aufwand und ist einer der Vorteile des Algorithmus. Der Algorithmus ist im Idealfall mit beiden Schritten in O(nm) realisierbar. Ich beschränke mich im Folgenden jedoch auf die naive Variante. Der naive Algorithmus wird in 2 Teilen ausgeführt, wobei der erste Teil überprüft, ob die Matrix die Voraussetzungen für eine perfekte Phylogenie erfüllt, und der zweite Teil den Baum erstellt. Für die Überprüfung liegen folgende Definitionen zu Grunde: S(j) ist die Menge der Objekte, die für Eigenschaft j den Zustand 1 belegen. Nun ist zu überprüfen, ob: i, j S(i) in S(j) enthalten ist, S(j) in S(i) enthalten ist oder die beiden Mengen disjunkt sind. Dafür geht man die Matrix spaltenweise durch und überprüft jede Menge mit allen anderen auf diese Bedingungen. Sind diese Bedingungen nicht erfüllt kann man keinen perfekte Phylogenie aus den Daten erstellen. Der zweite Teil erstellt schließlich den Baum. Der Anfangszustand ist nur ein existierender Knoten: die Wurzel, die im Augenblick auch der aktuelle Knoten ist. Nun geht man die Matrix zeilenweise durch. Bei jeder 1 in der Zelle überprüft man, ob vom aktuellen Knoten eine Kante mit Beschriftung der Eigenschaft zu einem Knoten führt. Wenn ja, geht man die Kante entlang und setzt diesen Knoten als aktuellen Knoten. Wenn nein, erstellt man eine so beschriftete Kante und einen 3

4 Knoten. Am Anfang jeder Zeile wird der aktuelle Knoten wieder auf die Wurzel gesetzt. Nachdem man so alle Zeilen bearbeitet hat müssen nur noch die Objekte hinzugefügt werden. Dafür geht man einfach für jedes Objekt die Kanten entlang, welche die Eigenschaften des Objekts enthalten. Ist der aktuelle Knoten am Ende der Zeile ein Blatt, wird dieser lediglich mit dem Objekt beschriftet. Ist er ein innerer Knoten, wird von diesem aus ein neues Blatt mit dem Objekt erstellt. Der Algorithmus der Perfekten Phylogenie ist simpel und effektiv, sein Problem liegt lediglich im beschränkten Anwendungsgebiet, da in der Praxis nur selten Fälle eintreten in denen es weder Koevolution oder Verlust von Eigenschaften gibt. 4 Numerische Eigenschaften Um Bäume aus numerischen Eigenschaften herzustellen muss die Matrix bestimmte Voraussetzungen erfüllen. Alle numerischen Bäume müssen die Metrik erfüllen. Seien a,b,c zu untersuchende Objekte der Matrix, so muss gelten: a, b, c d(a, c) d(a, b) + d(b, c) Trivial ausgedrückt bedeutet dies, dass die Kantenlänge von a nach c nicht länger sein kann als ein Umweg von a nach b und anschließend von b nach c. Ebenfalls muss die Symmetrie gelten, also d(a, b) = d(b, a). Es handelt sich also um eine an der Hauptdiagonalen gespiegelte Matrix. 4.1 Ultrametrische Bäume Zusätzlich zur Metrik müssen ultrametrische Bäume noch die sogenannte 3-Punkt- Bedingung erfüllen: Seien a,b,c zu untersuchende Objekte der Matrix, so muss gelten: a, b, c d(a, c) max(d(a, b), d(b, c)) Dies ist eine Einschränkung der Metrik, die besagt, dass der direkte Weg von a nach c nicht länger sein kann als der Längste der Wege a b oder b c. Ultrametrische Bäume gehen von der Hypothese der molekularen Uhr aus. Dies bedeutet, dass die Evolutionsraten aller Objekte gleich ist. Auf einer Achse wird mit Hilfe einer Legende die Zeit dargestellt, beginnend von den Blättern aus(siehe Abb. 2). Innere Knoten sind hier von jedem Blatt unter ihnen gleich weit entfernt. Die andere Achse ist nur für die optische Aufteilung der Bäume zuständig. 4

5 Abbildung 2: Beispiel für einen ultrametrischen Baum 4.2 UPGMA - Unweighted Pair Group Method with Arithmetic Mean [3] Bei UPGMA wird Schritt für Schritt der Baum von den Blättern aus aufgebaut. Dabei durchsucht man die Matrix nach der kleinsten Distanz zwischen zwei Knoten a und b. Diese beiden Knoten werden nun durch einen neuen Knoten k ersetzt. Die Höhe von k zu jedem seiner Kinder wird mit d(a,b) 2 neu initialisiert. Anschließend wird die Matrix neu berechnet. Dabei wird für alle übrigen Objekte n die neue Distanz wie folgt berechnet (N a ist hier die Anzahl alle Blätter unter dem Knoten a): d(n, k) = Na d(n,a)+d(n,b) N b N a+n b Dies ist der Durchschnitt aus den Distanzen der zusammengefügten Objekte. Das Schema wird nun so lange wiederholt, bis nur noch ein Objekt in der Matrix übrig ist. Dieser Knoten ist nun die Wurzel des ultrametrischen Baumes. Durch den einfachen Algorithmus und die effektive Darstellung ist UPGMA zu einer der populärsten Algorithmen für ultrametrische Bäume geworden. Sein Nachteil liegt vor allem in der Distanzmatrix. Diese ist oft nicht ultrametrisch, bzw. lässt sich nicht durch einen ultrametrischen Baum darstellen. 4.3 Additive Bäume Sowohl für ultrametrische, als auch additive Bäume muss die Distanzmatrix die Eigenschaft einer Metrik erfüllen. Im Gegensatz zur Ultrametrik, muss für die Algorithmen allerdings nicht die 3-Punkt-, sondern zusätzlich die sogenannte 4-Punkt-Bedingung gelten: a, b, c, d d(a, b) + d(c, d) max(d(a, c) + d(b, d), d(a, d) + d(b, c)) Vereinfacht ausgedrückt müssen alle Punkte folgende Form einnehmen können. 5

6 Abbildung 3: 4-Punkt-Bedingung für a,b,c und d 4.4 Fitch-Margoliash[4] Im Gegensatz zu UPGMA geht Fitch-Margoliash nicht von einer gleichen Evolutionsrate aus. Der Algorithmus resultiert in einem ungewurzelten, additiven Baum. Dafür zerlegt Fitch-Margoliash den Baum in Abschnitte aus drei Knoten, die über einen inneren Knoten miteinander verbunden sind. Abbildung 4: Additiver Baum für drei Knoten Seien a,b,c Knoten dieses Konstruktes, dann besteht der Weg von a nach c aus den Kanten b1 und b2, der Weg von b nach c aus b3 und b1 und der Weg von a nach b aus b2 und b3. Da man die Weglängen anhand der Matrix ablesen kann muss man nun nur noch die Längen der einzelnen Kanten berechnen. Die Länge einer dieser Kanten besteht dabei aus der Summe aller Wege, die diese Kante beinhalten, subtrahiert von dem Weg, der diese Kante nicht beinhaltet. Da man auf diese Weise die Länge der Kante doppelt ausgerechnet hat, muss man nun nur noch das Ergebnis halbieren. Für die Kante b2 wäre dies: b2 = 0.5(d(a, b) + d(a, c) d(b, c)) Nach diesem Prinzip wird bei Fitch-Margoliash der ganze Baum aufgebaut. Man beginnt mit den zwei Objekten, die laut der Matrix die geringste Distanz haben, also dem minimalen Wert der Matrix. Der dritte Knoten ist ein Platzhalter, der alle anderen Kanten der Matrix enthält. Im nächsten Schritt würde man nun die bereits berechneten 6

7 Knoten in einem inneren Knoten k, und deren Kanten zu einer temporären Kante zusammenfassen. Deren Länge ist der Mittelwert der Kantenlängen zum inneren Knoten. Dies wiederholt man nun so lange bis der Baum vollständig ist. Das Problem bei Fitch-Margoliash ist, dass bei zu großen evolutionären Abständen sowohl die falsche Topologie, als auch falsche Kantenlängen entstehen können. Um dies zu umgehen wird im Folgenden der Neighbor Joining Algorithmus vorgestellt. 4.5 Neighbor Joining[4] Wie auch Fitch-Margoliash geht der Neighbor Joining-Algorithmus nicht von einer konstanten Evolutionsrate aus. Um einen Baum mit Neighbor Joining zu erstellen, benötigt man zwei Hilfskonstrukte: Zum Einen muss man den sogenannten U-Wert für alle Objekte der Matrix wie folgt berechnen. Wobei i ein Objekt der Matrix ist: U i = n j=1 d(i, j) U i entspricht also der Zeilensumme der Matrix für das Objekt i. Außerdem wird eine Hilfsmatrix δ wie folgt berechnet(n ist dabei die Anzahl Objekte in der Matrix): δ(i, j) = d(i, j) U i+u j N 2 Nun sucht man sich die Zelle mit dem Minimum δ(a, b) in δ. Die beiden Knoten a,b werden nun zu einem neuen inneren Knoten k vereinigt. Dabei lassen sich die Distanzen wie folgt berechnen: d(a, k) = 0.5(d(a, b) + Ua U b N 2 ) d(b, k) = d(a, b) d(a, k) Anschließend werden beide Matrizen und die U-Werte neu berechnet. Dabei benutzt man nun den neuen Knoten k anstatt a und b. Die Berechnungen für den U-Wert und für δ sind analog. Die Distanzmatrix wird für alle Zellen, die den neuen Knoten k enthalten wie folgt berechnet (dabei sind a und b die zu k vereinigten Knoten, und c ein beliebiger anderer der Matrix): d(c, k) = 0.5(d(a, c) + d(b, c) d(a, b)) Diese Schritte werden nun so lange wiederholt, bis die Matrix leer und somit der Baum vollständig ist. 7

8 Der Vorteil am Neighbor Joining liegt vor allem in der Geschwindigkeit. Er ist auch bei großen Datenmengen, die andere phylogenetische Algorithmen nicht mehr schaffen, noch gut durchführbar. Aus jeder Distanzmatrix, die die Voraussetzungen erfüllt, kann mit Neighbor Joining ein passender Baum berechnet werden. Ein Problem des Algorithmus ist jedoch, dass, wie auch bei Fitch-Margoliash, die Distanzmatrix nur selten die 4-Punkt-Bedingung erfüllt. 5 Zusammenfassung Die Mittel zur Erstellung von phylogenetischen Bäumen sind vielfältig. Zur Auswahl stehen diverse Methoden, alle mit unterschiedlichen Eigenschaften und Voraussetzungen. Pauschal gibt es keine richtige Antwort, welchen Algorithmus man verwenden sollte. Es kommt hierbei auf die zu untersuchenden Daten und das gewünschte Anwendungsgebiet des Baumes an. 6 Quellen [1] J. Setubal, J. Meidanis: Introduction to Computational Molecular Biology, PWS, 1997; Abschnitte 6.1, 6.2, sowie Errata zu Lemma 6.1. [2] M. Waterman: Introduction to Computational Biology, Chapman & Hall, 1995; Abschnitt [3] P. Clote, R. Backofen: Computational Molecular Biology An Introduction, Wiley 2000; Abschnitte und [4] M. Zvelebil, J. O. Baum: Understanding Bioinformatics, Garland Science, 2008; Abschnitte 7 und 8. 8

Algorithmen für paarweise Sequenz-Alignments. Katharina Hembach

Algorithmen für paarweise Sequenz-Alignments. Katharina Hembach Proseminar Bioinformatik WS 2010/11 Algorithmen für paarweise Sequenz-Alignments Katharina Hembach 06.12.2010 1 Einleitung Paarweise Sequenz-Alignments spielen in der Bioinformatik eine wichtige Rolle.

Mehr

Einführung in die Angewandte Bioinformatik: Phylogenetik und Taxonomie

Einführung in die Angewandte Bioinformatik: Phylogenetik und Taxonomie Einführung in die Angewandte Bioinformatik: Phylogenetik und Taxonomie 24.06.2010 Prof. Dr. Sven Rahmann 1 Phylogenetik: Berechnung phylogenetischer Bäume Phylogenetik (phylum = Stamm): Rekonstruktion

Mehr

2. Repräsentationen von Graphen in Computern

2. Repräsentationen von Graphen in Computern 2. Repräsentationen von Graphen in Computern Kapitelinhalt 2. Repräsentationen von Graphen in Computern Matrizen- und Listendarstellung von Graphen Berechnung der Anzahl der verschiedenen Kantenzüge zwischen

Mehr

Bioinformatik. Distanzbasierte phylogenetische Algorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. Distanzbasierte phylogenetische Algorithmen. Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik Distanzbasierte phylogenetische Algorithmen Ulf Leser Wissensmanagement in der Bioinformatik Phylogenetische Bäume Stammbaum (Phylogenetic Tree) Ulf Leser: Algorithmische Bioinformatik, Wintersemester

Mehr

15. Elementare Graphalgorithmen

15. Elementare Graphalgorithmen Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen

Mehr

Phylogenetik. Vorlesung Einführung in die Angewandte Bioinformatik Prof. Dr. Sven Rahmann. Webseite zur Vorlesung

Phylogenetik. Vorlesung Einführung in die Angewandte Bioinformatik Prof. Dr. Sven Rahmann. Webseite zur Vorlesung Phylogenetik Vorlesung Einführung in die Angewandte Bioinformatik Prof. Dr. Sven Rahmann Webseite zur Vorlesung http://bioinfo.wikidot.com/ Sprechstunde Mo 16-17 in OH14, R214 Sven.Rahmann -at- tu-dortmund.de

Mehr

MafI I: Logik & Diskrete Mathematik (F. Hoffmann)

MafI I: Logik & Diskrete Mathematik (F. Hoffmann) Lösungen zum 14. und letzten Aufgabenblatt zur Vorlesung MafI I: Logik & Diskrete Mathematik (F. Hoffmann) 1. Ungerichtete Graphen (a) Beschreiben Sie einen Algorithmus, der algorithmisch feststellt, ob

Mehr

Phylogenetische Rekonstrukion Sparsamkeits- und Abstandsmethoden 5. Juli 2012

Phylogenetische Rekonstrukion Sparsamkeits- und Abstandsmethoden 5. Juli 2012 Merle Erpenbeck Phylogenetische Rekonstrukion Sparsamkeits- und Abstandsmethoden 5. Juli 202 Seminarausarbeitung im Seminar Mathematische Biologie vorgelegt von Merle Erpenbeck Matrikelnummer: 5896 Betreuer:

Mehr

Minimal spannende Bäume

Minimal spannende Bäume http://www.uni-magdeburg.de/harbich/ Minimal spannende Fakultät für Informatik Otto-von-Guericke-Universität 2 Inhalt Definition Wege Untergraphen Kantengewichtete Graphen Minimal spannende Algorithmen

Mehr

3 Klassifikation wichtiger Optimierungsprobleme

3 Klassifikation wichtiger Optimierungsprobleme 3 Klassifikation wichtiger Optimierungsprobleme 3.1 Das MIN- -TSP Wir kehren nochmal zurück zum Handlungsreisendenproblem für Inputs (w {i,j} ) 1 i

Mehr

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V. Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.

Mehr

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld Westfählische Wilhelms-Universität Eulersche Graphen Autor: 21. Mai 2015 Inhaltsverzeichnis 1 Das Königsberger Brückenproblem 1 2 Eulertouren und Eulersche Graphen 2 3 Auffinden eines eulerschen Zyklus

Mehr

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme Universität Hamburg Fachbereich Mathematik Seminar: Proseminar Graphentheorie Dozentin: Haibo Ruan Sommersemester 2011 Ausarbeitung zum Modulabschluss Graphentheorie spannende Bäume, bewertete Graphen,

Mehr

Proseminar Kodierverfahren bei Dr. Ulrich Tamm Sommersemester 2003 Thema: Codierung von Bäumen (Prüfer Codes...)

Proseminar Kodierverfahren bei Dr. Ulrich Tamm Sommersemester 2003 Thema: Codierung von Bäumen (Prüfer Codes...) Proseminar Kodierverfahren bei Dr. Ulrich Tamm Sommersemester 2003 Thema: Codierung von Bäumen (Prüfer Codes...) Inhalt: Einleitung, Begriffe Baumtypen und deren Kodierung Binäre Bäume Mehrwegbäume Prüfer

Mehr

Isomorphie von Bäumen

Isomorphie von Bäumen Isomorphie von Bäumen Alexandra Weinberger 23. Dezember 2011 Inhaltsverzeichnis 1 Einige Grundlagen und Definitionen 2 1.1 Bäume................................. 3 1.2 Isomorphie..............................

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen

Mehr

Datenstrukturen. einfach verkettete Liste

Datenstrukturen. einfach verkettete Liste einfach verkettete Liste speichert Daten in einer linearen Liste, in der jedes Element auf das nächste Element zeigt Jeder Knoten der Liste enthält beliebige Daten und einen Zeiger auf den nächsten Knoten

Mehr

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:

Mehr

Graphen und Bäume. A.1 Graphen

Graphen und Bäume. A.1 Graphen Algorithmen und Datenstrukturen 96 A Graphen und Bäume A.1 Graphen Ein gerichteter Graph (auch Digraph) G ist ein Paar (V, E), wobei V eine endliche Menge und E eine Relation auf V ist, d.h. E V V. V heißt

Mehr

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum

Mehr

Aufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1

Aufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1 Lösungen zu den Übungsaufgaben im Kapitel 4 des Lehrbuches Operations Research Deterministische Modelle und Methoden von Stephan Dempe und Heiner Schreier Aufgabe 1: Berechnen Sie für den in Abbildung

Mehr

Verkettete Datenstrukturen: Bäume

Verkettete Datenstrukturen: Bäume Verkettete Datenstrukturen: Bäume 1 Graphen Gerichteter Graph: Menge von Knoten (= Elementen) + Menge von Kanten. Kante: Verbindung zwischen zwei Knoten k 1 k 2 = Paar von Knoten (k 1, k 2 ). Menge aller

Mehr

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung

Mehr

5 Interpolation und Approximation

5 Interpolation und Approximation 5 Interpolation und Approximation Problemstellung: Es soll eine Funktion f(x) approximiert werden, von der die Funktionswerte nur an diskreten Stellen bekannt sind. 5. Das Interpolationspolynom y y = P(x)

Mehr

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Vortrag von Michael Daumen am 13.12.2000 Thema : Minimum Spanning Tree und 2-Approximation der TSP-Tour Inhalt des Vortrags : 1. genaue Vorstellung des

Mehr

Binary Decision Diagrams (Einführung)

Binary Decision Diagrams (Einführung) Binary Decision Diagrams (Einführung) Binary Decision Diagrams (BDDs) sind bestimmte Graphen, die als Datenstruktur für die kompakte Darstellung von booleschen Funktionen benutzt werden. BDDs wurden von

Mehr

3.6 Eigenwerte und Eigenvektoren

3.6 Eigenwerte und Eigenvektoren 3.6 Eigenwerte und Eigenvektoren 3.6. Einleitung Eine quadratische n n Matrix A definiert eine Abbildung eines n dimensionalen Vektors auf einen n dimensionalen Vektor. c A x c A x Von besonderem Interesse

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen

Vorlesung Informatik 2 Algorithmen und Datenstrukturen Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 Bäume: Grundlagen und natürliche Suchbäume) Prof. Dr. Susanne Albers Bäume (1) Bäume sind verallgemeinerte Listen (jedes Knoten-Element kann mehr

Mehr

14. Rot-Schwarz-Bäume

14. Rot-Schwarz-Bäume Bislang: Wörterbuchoperationen bei binären Suchbäume effizient durchführbar, falls Höhe des Baums klein. Rot-Schwarz-Bäume spezielle Suchbäume. Rot-Schwarz-Baum mit n Knoten hat Höhe höchstens 2 log(n+1).

Mehr

Bipartite Graphen. Beispiele

Bipartite Graphen. Beispiele Bipartite Graphen Ein Graph G = (V, E) heiÿt bipartit (oder paar), wenn die Knotenmenge in zwei disjunkte Teilmengen zerfällt (V = S T mit S T = ), sodass jede Kante einen Knoten aus S mit einem Knoten

Mehr

Phylogenetische Bäume

Phylogenetische Bäume Phylogenetische Bäume Hauptseminar AfS Algorithmen der Bioinformatik Andreas Brieg Ilmenau, 06.07.2007 Phylogenetische Bäume Gliederung Einleitung Distanzbasierte Methoden Ultrametriken und ultrametrische

Mehr

6. Übung zur Linearen Optimierung SS08

6. Übung zur Linearen Optimierung SS08 6 Übung zur Linearen Optimierung SS08 1 Sei G = (V, E) ein schlichter ungerichteter Graph mit n Ecken und m Kanten Für eine Ecke v V heißt die Zahl der Kanten (u, v) E Grad der Ecke (a) Ist die Anzahl

Mehr

Lösungen zu Übungsblatt 9

Lösungen zu Übungsblatt 9 Analysis : Camillo de Lellis HS 007 Lösungen zu Übungsblatt 9 Lösung zu Aufgabe 1. Wir müssen einfach das Integral 16 (x + y d(x, y x +y 4 ausrechnen. Dies kann man einfach mittels Polarkoordinaten, da

Mehr

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}} 2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Tutorium: Diskrete Mathematik. Matrizen

Tutorium: Diskrete Mathematik. Matrizen Tutorium: Diskrete Mathematik Matrizen Steven Köhler mathe@stevenkoehler.de mathe.stevenkoehler.de Definition I Eine Matrix ist eine rechteckige Anordnung (Tabelle) von Elementen, mit denen man in bestimmter

Mehr

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7 1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten

Mehr

Very simple methods for all pairs network flow analysis

Very simple methods for all pairs network flow analysis Very simple methods for all pairs network flow analysis Tobias Ludes 02.07.07 Inhalt Einführung Algorithmen Modifikation der Gomory-Hu Methode Einführung Nach Gomory-Hu nur n-1 Netzwerk-Fluss- Berechnungen

Mehr

Genome Rearrangements

Genome Rearrangements Schriftliche Ausarbeitung zum Vortrag über Genome Rearrangements im Proseminar Bioinformatik (Sommersemester 2011) Verfasser: Christof Schramm Betreuer: Prof. Heun 1 Biologischer Hintergrund Ein wichtiges

Mehr

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke Steve Göring 13.07.2012 1/18 Gliederung Einleitung Grundlagen Vertex-Cover-Problem Set-Cover-Problem Lösungsalgorithmen

Mehr

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. 8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.

Mehr

Euklidische Distanzmatrizen. Andrei Grecu

Euklidische Distanzmatrizen. Andrei Grecu Euklidische Distanzmatrizen Andrei Grecu Übersicht Motivation Definition und Problemstellung Algo 1: Semidefinite Programmierung Algo 2: Multidimensional Scaling Algo 3: Spring Embedder Algo 4: Genetischer

Mehr

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 23. November 2011 Betweenness Centrality Closeness Centrality H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 Betweenness Centrality Grundlegende Idee: Ein Knoten ist wichtig, wenn er auf

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

Wiederholung zu Flüssen

Wiederholung zu Flüssen Universität Konstanz Methoden der Netzwerkanalyse Fachbereich Informatik & Informationswissenschaft SS 2008 Prof. Dr. Ulrik Brandes / Melanie Badent Wiederholung zu Flüssen Wir untersuchen Flüsse in Netzwerken:

Mehr

Ausarbeitung über den Satz von Menger und den Satz von König

Ausarbeitung über den Satz von Menger und den Satz von König Ausarbeitung über den Satz von Menger und den Satz von König Myriam Ezzedine, 0326943 Anton Ksernofontov, 0327064 Jürgen Platzer, 0025360 Nataliya Sokolovska, 0326991 1. Beweis des Satzes von Menger Bevor

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS) Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,

Mehr

Aufgabe 7: Distanzbasierte Phylogenie: Neighbor Joining. Stefan Kröger, Philippe Thomas Wissensmanagement in der Bioinformatik

Aufgabe 7: Distanzbasierte Phylogenie: Neighbor Joining. Stefan Kröger, Philippe Thomas Wissensmanagement in der Bioinformatik Aufgabe 7: Distanzbasierte Phylogenie: Neighbor Joining Stefan Kröger, Philippe Thomas Wissensmanagement in der Bioinformatik Daten Wir verwenden neue Daten Die müssen sie ausnahmsweise selber suchen DNA-Sequenzen

Mehr

Graphentheorie 1. Diskrete Strukturen. Sommersemester Uta Priss ZeLL, Ostfalia. Hausaufgaben Graph-Äquivalenz SetlX

Graphentheorie 1. Diskrete Strukturen. Sommersemester Uta Priss ZeLL, Ostfalia. Hausaufgaben Graph-Äquivalenz SetlX Graphentheorie 1 Diskrete Strukturen Uta Priss ZeLL, Ostfalia Sommersemester 2016 Diskrete Strukturen Graphentheorie 1 Slide 1/19 Agenda Hausaufgaben Graph-Äquivalenz SetlX Diskrete Strukturen Graphentheorie

Mehr

Lineare Algebra und analytische Geometrie II

Lineare Algebra und analytische Geometrie II Prof. Dr. H. Brenner Osnabrück SS 2016 Lineare Algebra und analytische Geometrie II Auf dem R n gibt es sehr viele verschiedene Normen, allerdings hängen sehr viele wichtige Begriffe wie die Konvergenz

Mehr

5. Clusteranalyse. Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

5. Clusteranalyse. Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften 5. Clusteranalyse Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften benennen und anwenden können, einen Test auf das Vorhandensein einer Clusterstruktur kennen, verschiedene

Mehr

Referat zum Thema Huffman-Codes

Referat zum Thema Huffman-Codes Referat zum Thema Huffman-Codes Darko Ostricki Yüksel Kahraman 05.02.2004 1 Huffman-Codes Huffman-Codes ( David A. Huffman, 1951) sind Präfix-Codes und das beste - optimale - Verfahren für die Codierung

Mehr

Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Kapitel 4: Netzplantechnik Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Netzplantechnik 5. Minimal spannende Bäume 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

Lösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie

Lösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie Hochschuldozent Dr. Christian Schindelhauer Paderborn, den 21. 2. 2006 Lösungen zur 1. Klausur in Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie Name :................................

Mehr

5. Clusteranalyse Vorbemerkungen. 5. Clusteranalyse. Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

5. Clusteranalyse Vorbemerkungen. 5. Clusteranalyse. Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften 5. Clusteranalyse Vorbemerkungen 5. Clusteranalyse Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften benennen und anwenden können, einen Test auf das Vorhandensein einer

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 11: Graphen Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2010/2011 1/59 Graphische Darstellung von Zusammenhängen schon

Mehr

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. a) Es seien W 1 = (V, E 1 ), W 2 = (V, E 2 ) Untergraphen von G, die beide Wälder sind. Weiter gelte E 1 > E 2.

Mehr

Toleranzbasierte Algorithmen für das Travelling Salesman Problem. Gerold Jäger

Toleranzbasierte Algorithmen für das Travelling Salesman Problem. Gerold Jäger Toleranzbasierte Algorithmen für das Travelling Salesman Problem Gerold Jäger (Zusammenarbeit mit Jop Sibeyn, Boris Goldengorin) Institut für Informatik Martin-Luther-Universität Halle-Wittenberg gerold.jaeger@informatik.uni-halle.de

Mehr

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Paarweises

Mehr

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/3, Folie 1 2010 Prof. Steffen Lange - HDa/FbI

Mehr

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat

Mehr

Angewandte Informatik

Angewandte Informatik Angewandte Informatik Analyse des Graphs G zur Bestimmung von Parallel- undreihenschaltung Prof. Dr. Nikolaus Wulff Gewichteter Multigraph Die Adjazenzmatrix eines Graphen eignet sich auch zur Analyse

Mehr

Vorlesung 2 KÜRZESTE WEGE

Vorlesung 2 KÜRZESTE WEGE Vorlesung 2 KÜRZESTE WEGE 34 Kürzeste Wege im Graphen Motivation! Heute:! Kürzeste Wege von einem Knoten (SSSP)! Kürzeste Wege zwischen allen Knotenpaaren (APSP)! Viele Anwendungen:! Navigationssysteme!

Mehr

A2.3 Lineare Gleichungssysteme

A2.3 Lineare Gleichungssysteme A2.3 Lineare Gleichungssysteme Schnittpunkte von Graphen Bereits weiter oben wurden die Schnittpunkte von Funktionsgraphen mit den Koordinatenachsen besprochen. Wenn sich zwei Geraden schneiden, dann müssen

Mehr

Topologische Grundbegriffe I. 1 Offene und Abgeschlossene Mengen

Topologische Grundbegriffe I. 1 Offene und Abgeschlossene Mengen Topologische Grundbegriffe I Vortrag zum Proseminar Analysis, 26.04.2010 Nina Neidhardt und Simon Langer Im Folgenden soll gezeigt werden, dass topologische Konzepte, die uns schon für die Reellen Zahlen

Mehr

Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem

Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem Andreas Moser Dietmar Ebner Christian Schauer Markus Bauer 9. Dezember 2003 1 Einführung Der in der Vorlesung gezeigte Algorithmus für das Steiner

Mehr

WS 2008/09. Diskrete Strukturen

WS 2008/09. Diskrete Strukturen WS 2008/09 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0809

Mehr

7. Sortieren Lernziele. 7. Sortieren

7. Sortieren Lernziele. 7. Sortieren 7. Sortieren Lernziele 7. Sortieren Lernziele: Die wichtigsten Sortierverfahren kennen und einsetzen können, Aufwand und weitere Eigenschaften der Sortierverfahren kennen, das Problemlösungsparadigma Teile-und-herrsche

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

2.11 Kontextfreie Grammatiken und Parsebäume

2.11 Kontextfreie Grammatiken und Parsebäume 2.11 Kontextfreie Grammatiken und Parsebäume Beispiel: Beispiel (Teil 3): Beweis für L(G) L: Alle Strings aus L der Länge 0 und 2 sind auch in L(G). Als Induktionsannahme gehen wir davon aus, dass alle

Mehr

Definition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen:

Definition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen: HeapSort Allgemeines Sortieralgorithmen gehören zu den am häufigsten angewendeten Algorithmen in der Datenverarbeitung. Man hatte daher bereits früh ein großes Interesse an der Entwicklung möglichst effizienter

Mehr

2 i. i=0. und beweisen Sie mittels eines geeigneten Verfahrens die Korrektheit der geschlossenen Form.

2 i. i=0. und beweisen Sie mittels eines geeigneten Verfahrens die Korrektheit der geschlossenen Form. für Informatik Prof. aa Dr. Ir. Joost-Pieter Katoen Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Tutoraufgabe (Vollständige Induktion): Finden Sie eine geschlossene Form für die

Mehr

16. All Pairs Shortest Path (ASPS)

16. All Pairs Shortest Path (ASPS) . All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e

Mehr

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth Lineare Algebra Mathematik II für Chemiker Daniel Gerth Überblick Lineare Algebra Dieses Kapitel erklärt: Was man unter Vektoren versteht Wie man einfache geometrische Sachverhalte beschreibt Was man unter

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V

Mehr

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965). 5. Graphenprobleme Im folgenden bezeichnen G = (E, K) einen endlichen Graphen mit der Eckenmenge E und der Kantenmenge K. G kann ungerichtet, gerichtet, schlicht oder nicht schlicht sein. 5.1 Spannende

Mehr

Algorithmen II Vorlesung am 15.11.2012

Algorithmen II Vorlesung am 15.11.2012 Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes

Mehr

Single Source Sortest Path Negative Kreise All-Pair Shortest Path Problem Minimum Mean Cycle Zusammenfassung. Shortest Paths

Single Source Sortest Path Negative Kreise All-Pair Shortest Path Problem Minimum Mean Cycle Zusammenfassung. Shortest Paths Shortest Paths Label Correcting Algorithms Florian Reitz Universität Trier Fachbereich IV Fach Informatik Seminar Netzwerkalgorithmen WS 2005/2006 Einleitung: Problemübersicht Eben: Schnelle Algorithmen

Mehr

Praktikum Einführung in die Mathematik 1 WS 2010/2011 Blatt 2 Lösungen

Praktikum Einführung in die Mathematik 1 WS 2010/2011 Blatt 2 Lösungen Praktikum Einführung in die Mathematik 1 WS 2010/2011 Blatt 2 Lösungen 27. bis 29. Oktober 2010 (1) Lösung von Aufgabe (1) : ad (a) : Die Aussage 2n + 1 < 2 n wird durch Induktion über n für alle n gezeigt.

Mehr

Randomisierte Algorithmen 2. Erste Beispiele

Randomisierte Algorithmen 2. Erste Beispiele Randomisierte Algorithmen Randomisierte Algorithmen 2. Erste Beispiele Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 35 Randomisierter Identitätstest

Mehr

Vervollständigung Lateinischer Quadrate

Vervollständigung Lateinischer Quadrate Vervollständigung Lateinischer Quadrate Elisabeth Schmidhofer 01.12.2013 Inhaltsverzeichnis 1 Vorwort 3 2 Einleitung 4 2.1 Beispele.............................................. 4 3 Lateinische Quadrate

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Kapitel 15: Graphen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik

Mehr

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche Algorithmus zum Graphen-Matching und Anwendung zur inhaltsbasierten Bildersuche Gliederung 1. Einführung 2. Algorithmus Beschreibung Beispiel Laufzeit 3. Anwendung des Algorithmus Seite 1 von 18 1. Einführung

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 00

Mehr

KV Logik als Arbeitssprache. Christoph Hörtenhuemer LVA-Nummer: LVA-Leiterin: Wolfgang Windsteiger. Agnes Schoßleitner

KV Logik als Arbeitssprache. Christoph Hörtenhuemer LVA-Nummer: LVA-Leiterin: Wolfgang Windsteiger. Agnes Schoßleitner KV Logik als Arbeitssprache LVA-Nummer: 326.014 LVA-Leiterin: Wolfgang Windsteiger Abgabedatum: 02. 06. 2004 Christoph Hörtenhuemer 0355958 Agnes Schoßleitner 0355468 Inhaltsverzeichnis Kurzbeschreibung...

Mehr

Kürzeste Wege in Graphen. Orte mit Straßenverbindungen. Coma I Rolf Möhring

Kürzeste Wege in Graphen. Orte mit Straßenverbindungen. Coma I Rolf Möhring Kürzeste Wege in Graphen Orte mit Straßenverbindungen Orte als Knoten eines Graphen Straßenverbindungen als Kanten eines Graphen Ungerichteter Graph G = (V,E) Kanten Knoten Knotenmenge V = {,,n} oder {,,n

Mehr

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 18.4. 2012 176 Automatentheorie und formale Sprachen VL 5 Reguläre und nichtreguläre Sprachen Kathrin Hoffmann 18. Aptil 2012 Hoffmann (HAW

Mehr

Bioinformatik. Lokale Alignierung Gapkosten. Silke Trißl / Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. Lokale Alignierung Gapkosten. Silke Trißl / Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik Lokale Alignierung Gapkosten Silke Trißl / Ulf Leser Wissensmanagement in der Bioinformatik Inhalt dieser Vorlesung Ähnlichkeit Lokales und globales Alignment Gapped Alignment Silke Trißl:

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

Mehr

WS 2014/15 Diskrete Strukturen Kapitel 3: Kombinatorik (2)

WS 2014/15 Diskrete Strukturen Kapitel 3: Kombinatorik (2) WS 2014/15 Diskrete Strukturen Kapitel 3: Kombinatorik (2) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_14

Mehr

(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.)

(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.) 3. Untergruppen 19 3. Untergruppen Nachdem wir nun einige grundlegende Gruppen kennengelernt haben, wollen wir in diesem Kapitel eine einfache Möglichkeit untersuchen, mit der man aus bereits bekannten

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum

Mehr

Notizen zu Transformationen und Permutationen. T (A) = {f : A A}

Notizen zu Transformationen und Permutationen. T (A) = {f : A A} Transformationen Notizen zu Transformationen und Permutationen Ist A eine Menge, so ist die Menge T (A) = {f : A A} bezüglich der Komposition (Hintereinanderausführung) als Operation und der identischen

Mehr

B / B* - Bäume. Guido Hildebrandt Seminar Datenbanksysteme

B / B* - Bäume. Guido Hildebrandt Seminar Datenbanksysteme B / B* - Bäume Guido Hildebrandt Seminar Datenbanksysteme 25.11.2010 Gliederung Einleitung Binärbaum B - Baum B* - Baum Varianten Zusammenfassung Quellen Gliederung Einleitung Binärbaum B - Baum B* - Baum

Mehr

Grundlagen Kondition Demo. Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang

Grundlagen Kondition Demo. Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang Numerisches Rechnen (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang Institut für Geometrie und Praktische Mathematik RWTH Aachen Wintersemester 2011/12 IGPM, RWTH Aachen Numerisches Rechnen

Mehr

Vorlesung 4 BETWEENNESS CENTRALITY

Vorlesung 4 BETWEENNESS CENTRALITY Vorlesung 4 BETWEENNESS CENTRALITY 101 Aufgabe! Szenario: Sie arbeiten bei einem sozialen Online-Netzwerk. Aus der Netzwerk-Struktur Ihrer Benutzer sollen Sie wichtige Eigenschaften extrahieren. [http://www.fahrschule-vatterodt.de/

Mehr

Elliptische Funktionen

Elliptische Funktionen Elliptische Funktionen Jeff Schomer Universität Freiburg (Schweiz) 27.09.2007 Einleitung In diesem Seminar werden wir über doppelt periodische und elliptische Funktionen sprechen. Nachdem wir grundlegende

Mehr