Algorithmen II Vorlesung am

Größe: px
Ab Seite anzeigen:

Download "Algorithmen II Vorlesung am 15.11.2012"

Transkript

1 Algorithmen II Vorlesung am Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum II Wintersemester 2012/2013 in der Helmholtz-Gemeinschaft

2 Das Kreismatroid Wiederholung

3 Kreismatroid Sei C die Menge aller Kreise in G = (V, E) und U die Menge aller unabhängigen Teilmengen von C. Dann bildet (C, U) ein Unabhängigkeitssystem. 1. U 2. I 1 U, I 2 I 1 I 2 U Definition: Matroid Ein Unabhängigkeitssystem (M, U) heißt Matroid, wenn für alle I, J U mit I < J, ein e J \ I existiert, sodass I {e} U. Satz: Das Unabhängigkeitssystem (C, U) ist ein Matroid, genannt Kreismatroid von G. Folgt aus dem Austausschsatz von Steinitz (Übung).

4 Greedy-Lösung In letzter Vorlesung gezeigt: Greedy-Methode optimal für Optimierungsprobleme auf Matroiden. GREEDY-METHODE für MCB Eingabe: Menge C aller Kreise in G = (V, E). Ausgabe: Kreisbasis minimalen Gewichts von G. Sortiere C aufsteigend nach Gewicht zu C 1,..., C k. B for i = 1 to k do if B {C i } linear unabhängig then B B {C i } Liefert optimale Lösung (siehe vorherige Vorlesung), allerdings ist die Anzahl der Kreise in einem Graphen im Allgemeinen exponentiell in m + n (siehe Übung). Idee: Versuche Kandidatenmenge mit polynomieller Größe zu finden.

5 Algorithmus von Horton

6 Algorithmus von Horton Satz 5.7 Für jeden Kreis C aus einer MCB von G existiert zu jedem beliebigen Knoten v aus C eine Kante {u, w} auf C, sodass gilt: C = SP(u, v) + SP(w, v) + {u, w}, wobei SP(u, v) bzw. SP(w, v) ein kürzester Weg von u bzw. w nach v in G ist. Beweis mithilfe der folgenden Lemmata. u w C v

7 Algorithmus von Horton Lemma 5.8 Falls B eine Kreisbasis ist, C B und C = C 1 C 2, dann ist entweder B \ {C} {C 1 } oder B \ {C} {C 2 } wieder eine Kreisbasis. Beweis: C 1 C 2 C = C 1 C 2 (i) Ist der Kreis C 1 darstellbar als Linearkombination von Kreisen aus B \ {C}, so ist offenbar B \ {C} {C 2 } wieder eine Basis. (ii) Ist der Kreis C 1 nur darstellbar als Linearkombination von C und Kreisen aus B \ {C}, so ist C 2 darstellbar als Linearkombination von Kreisen aus B \ {C}. Somit ist dann B \ {C} {C 1 } wieder eine Basis.

8 Algorithmus von Horton Lemma 5.9 Sei B eine Kreisbasis von G. Für zwei Knoten x, y V und einen Weg P in G von x nach y kann jeder Kreis C B, der x und y enthält, ersetzt werden durch einen Kreis C, der P enthält. Beweis: x P 1 P P 2 y x C P 1 P P 2 C 1 y x Es gilt C = C 1 C 2 und somit nach Lemma 5.8, dass entweder B\{C} {C 1 } oder B\{C} {C 2 } wieder eine Basis ist. C 2 P 1 P P 2 y

9 Algorithmus von Horton P 1 P P 2 y x C P 1 P P 2 C 1 C 2 P 1 P P 2 y x x Folgerung: y Seien weder P 1 noch P 2 kürzeste Wege zwischen x und y und sei P kürzester Weg zwischen x und y w(c 1 ) < w(c) und w(c 2 ) < w(c) Jede Basis B, die C enthält, kann in Basis B umgewandelt werden, die anstatt C entweder C 1 oder C 2 enthält (Lemma 5.9). w(b ) < w(b) Wenn B eine MCB ist, dann enthält jeder Kreis in B, der x, y V enthält, auch einen kürzesten Weg zwischen x und y.

10 Algorithmus von Horton Satz 5.7: Für jeden Kreis C aus einer MCB von G existiert zu jedem beliebigen Knoten v aus C eine Kante {u, w} auf C, so dass gilt: C = SP(u, v) + SP(w, v) + {u, w}, wobei SP(u, v) bzw. SP(w, v) ein kürzester Weg von u bzw. w nach v in G ist. Beweis: v 1 v 2 v Q i P i v i+1 v i Betrachte beliebigen Kreis C der MCB, sowie einen belibiegen Knoten v auf C: Indizierung der Knoten auf Kreis sei v = v 0,..., v l = v. Q i := Weg auf C von v nach v i in Richtung der Indizierung. P i := Weg auf C von v i nach v in Richtung der Indizierung. Entweder P i oder Q i ist kürzester Weg von v nach v i (vorherige Folie). Sei i der größte Index, sodass Q i kürzester Weg von v nach v i ist. C = Q i {v i, v i+1 } P i+1 ist gewünschte Darstellung.

11 Algorithmus von Horton Algorithmus von Horton für MCB Eingabe: Graph G = (V, E) Ausgabe: Kreisbasis minimalen Gewichts von G. H for v V und {u, w} E do Berechne Cv uw := SP(u, v) + SP(w, v) + {u, w} if Cv uw ist einfach then H H {C uw v } Sortiere Elemente aus H aufsteigend zu C 1,..., C k B for i = 1 to k do if B {C i } linear unabhängig then B B {C i }

12 Algorithmus von Horton Algorithmus von Horton für MCB Eingabe: Graph G = (V, E) Ausgabe: Kreisbasis minimalen Gewichts von G. H for v V und {u, w} E do Berechne Cv uw := SP(u, v) + SP(w, v) + {u, w} if Cv uw ist einfach then H H {C uw v } Sortiere Elemente aus H aufsteigend zu C 1,..., C k B for i = 1 to k do if B {C i } linear unabhängig then B B {C i } B m n + K(G) O(n m), weil H m n wobei m O(n 2 ) O(m n log n) O(m 3 n) O(m 2 ) Gesamtlaufzeit: O(m 3 n)

13 Algorithmus von de Pina

14 Algorithmus von de Pina Sei T ein aufspannender Baum (bzw. Wald) in G und e 1,..., e N die Nichtbaumkanten aus G\T in einer beliebigen Ordnung, wobei gilt N = m n + K(G). Eingabe: Graph G = (V, E) Ausgabe: MCB von G for j = 1 bis N do Initialisiere S 1,j {e j } for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält Ausgabe ist: {C 1,..., C N }

15 Algorithmus von de Pina Sei T ein aufspannender Baum (bzw. Wald) in G und e 1,..., e N die Nichtbaumkanten aus G\T in einer beliebigen Ordnung, wobei gilt N = m n + K(G). Eingabe: Graph G = (V, E) Ausgabe: MCB von G for j = 1 bis N do Initialisiere S 1,j {e j } for k = 1 bis N do O(m 3 + c m) Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k Ausgabe ist: {C 1,..., C N }, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält Annahme: Berechnung von C k kann in O(c) durchgeführt werden. Es gilt (ohne Beweis): c O(m 2 + n 2 log n) Gesamtlaufzeit: O(m 3 + m n 2 log n) vgl. Horton: O(m 3 n) O(m)

16 Beispiel 9 e 8 e 7 e 6 e 2 e 1 e 4 2 e e e e 5

17 Beispiel 9 e 8 e 7 e e 10 e 2 e 1 e 4 2 e e 5 Initialisierung: Ergebnis: for j = 1 bis N do Initialisiere S 1,j {e j } S 1,1 = {e 1 }, S 1,2 = {e 2 }, S 1,3 = {e 3 }, S 1,4 = {e 4 }, S 1,5 = {e 5 } 10 e 9

18 Beispiel 9 e 8 e 7 e S 1,1 = {e 1 }, S 1,2 = {e 2 }, S 1,3 = {e 3 }, S 1,4 = {e 4 }, S 1,5 = {e 5 } e 10 e 2 e 1 e 4 2 e e 5 k = 1: S 2,2 := S 1,2 S 1,1 = {e 1, e 2 } S 2,3 := S 1,3 S 1,1 = {e 1, e 3 } S 2,4 := {e 4 } S 2,5 := {e 5 } w(c 1 ) = 9 10 e 9 for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält

19 Beispiel 9 e 8 e 7 e S 1,1 = {e 1 }, S 1,2 = {e 2 }, S 1,3 = {e 3 }, S 1,4 = {e 4 }, S 1,5 = {e 5 } e 10 e 2 e 1 e 4 2 e e 5 k = 1: k = 2: S 2,2 := S 1,2 S 1,1 = {e 1, e 2 } S 2,3 := S 1,3 S 1,1 = {e 1, e 3 } S 2,4 := {e 4 } S 2,5 := {e 5 } S 3,3 := S 2,3 = {e 1, e 3 } S 3,4 := S 2,2 S 2,4 = {e 1, e 2, e 4 } S 3,5 := S 2,5 = {e 5 } w(c 1 ) = 9 w(c 2 ) = e 9 for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält

20 Beispiel 9 e 8 e 7 e 6 e 2 e 1 e 4 2 e e S 1,1 = {e 1 }, S 1,2 = {e 2 }, S 1,3 = {e 3 }, S 1,4 = {e 4 }, S 1,5 = {e 5 } e e 5 k = 1: S 2,2 := S 1,2 S 1,1 = {e 1, e 2 } S 2,3 := S 1,3 S 1,1 = {e 1, e 3 } S 2,4 := {e 4 } k = 2: S 2,5 := {e 5 } S 3,3 := S 2,3 = {e 1, e 3 } S 3,4 := S 2,2 S 2,4 = {e 1, e 2, e 4 } S 3,5 := S 2,5 = {e 5 } k = 3: S 4,4 := {e 1, e 2, e 4 } S 4,5 := {e 5 } w(c 1 ) = 9 w(c 2 ) = 12 w(c 3 ) = 15 for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält

21 Beispiel 9 e 8 e 7 e 6 e 1 e 2 2 e 4 e e S 1,1 = {e 1 }, S 1,2 = {e 2 }, S 1,3 = {e 3 }, S 1,4 = {e 4 }, S 1,5 = {e 5 } e e 5 k = 1: k = 2: S 2,2 := S 1,2 S 1,1 = {e 1, e 2 } S 2,3 := S 1,3 S 1,1 = {e 1, e 3 } S 2,4 := {e 4 } S 2,5 := {e 5 } S 3,3 := S 2,3 = {e 1, e 3 } S 3,4 := S 2,2 S 2,4 = {e 1, e 2, e 4 } S 3,5 := S 2,5 = {e 5 } k = 3: S 4,4 := {e 1, e 2, e 4 } S 4,5 := {e 5 } k = 4: S 5,5 := {e 5 } w(c 1 ) = 9 w(c 2 ) = 12 w(c 3 ) = 15 w(c 4 ) = 13 for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält

22 Beispiel 9 e 8 e 7 e 6 e 1 e 2 2 e 4 e e e e 5 S 2,2 := S 1,2 S 1,1 = {e 1, e 2 } S 2,3 := S 1,3 S 1,1 = {e 1, e 3 } S 2,4 := {e 4 } S 2,5 := {e 5 } for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k S 1,1 = {e 1 }, S 1,2 = {e 2 }, S 1,3 = {e 3 }, S 1,4 = {e 4 }, S 1,5 = {e 5 } k = 1: k = 2: S 3,3 := S 2,3 = {e 1, e 3 } S 3,4 := S 2,2 S 2,4 = {e 1, e 2, e 4 } S 3,5 := S 2,5 = {e 5 } k = 3: S 4,4 := {e 1, e 2, e 4 } S 4,5 := {e 5 } k = 4: S 5,5 := {e 5 } k = 5:, falls C k eine gerade Anzahl Kanten aus S k,j enthält w(c 1 ) = 9 w(c 2 ) = 12 w(c 3 ) = 15 w(c 4 ) = 13 w(c 5 ) = 17, falls C k eine ungerade Anzahl Kanten aus S k,j enthält

23 Korrektheit des Algorithmus von de Pina

24 Vektorenschreibweise Betrachte algebraische Interpretation des Algorithmus: Betrachte Kreise als Inzidenzvektoren über E mit Einschränkung auf die Nichtbaumkanten {e 1,..., e N }. e 8 e 7 e 6 e 1 e 2 e 3 e 4 e 9 C e 10 e 5 Beispiel: Kreise werden mithilfe der Nichtbaumkanten e 1, e 2, e 3, e 4 und e 5 beschrieben. C = e 1... e 5 Kreis C kann mithilfe der Fundamentalkreise C i (C i =Fundamentalkreis der Nichtbaumkante e i ) rekonstruiert werden. C = C 1 C 2 C 4 C 5

25 Bilinearform for k = 1 bis N do Finde einen kürzesten Kreis C k, der eine ungerade Anzahl von Kanten aus S k,k enthält for j = k + 1 bis { N do S k,j S k+1,j S k,j S k,k, falls C k eine gerade Anzahl Kanten aus S k,j enthält, falls C k eine ungerade Anzahl Kanten aus S k,j enthält Betrachte S k,k nach k-ten Durchlauf ebenfalls als Vektor über {e 1,..., e N }, der Menge der Nichtbaumkanten. N Definiere Bilinearform zweier Vektoren C und S: C, S := (c i s i ) i=1 Produkt und Summe sind über GF(2) definiert. C und S sind orthogonal zueinander genau dann, wenn C, S =0. C, S = 1 genau dann, wenn C eine ungerade Anzahl Einträge mit S gemeinsam hat.

26 Algebraische Variante Eingabe: Graph G = (V, E) Ausgabe: MCB von G for i = 1 bis N do S i {e i } for k = 1 bis N do Finde einen kürzesten Kreis C k mit C k, S k = 1 for i = k + 1 bis N do if C k, S i = 1 then S i S i S k Ausgabe ist: {C 1,..., C N } Hinweis: Schreibe S k abkürzend für S k,k Lemma 5.12 Die zweite äußere Schleife des Algorithmus erhält die Invariante C i, S j+1 = 0 für alle i, 1 i j N.

27 Vereinfachende Schreibweise Eingabe: Graph G = (V, E) Ausgabe: MCB von G S 1 {e 1 } C 1 kürzester Kreis mit C 1, S 1 = 1 for k = 2 bis N do Berechne beliebigen Vektor S k, der eine nichttriviale Lösung des Systems C i, X = 0 für i = 1 bis k 1 ist. Finde einen kürzesten Kreis C k mit C k, S k = 1. Ausgabe ist: {C 1,..., C N } Satz 5.13 Der Algorithmus SIMPLE MCB berechnet eine MCB.

28 Bemerkungen Die Laufzeit kann auf O(m 2 n + m n 2 log n) reduziert werden. Empirische Verbesserung: Verheiratung von Horton und de Pina. Berechne Kandiatenmenge H von Horton. Suche kürzesten Kreis C k ausschließlich in dieser Kandiatenmenge Lösungsraum wird verkleinert. Algorithmus von Horton kann mithilfe schneller Matrix-Multiplikation auf eine Laufzeit O(m ω n) reduziert werden (Bekannt: ω < 2.376).

29 Zertifikat für MCB

30 Zertifikat G = (V, E) MCB-Berechnung MCB-Check Problem: Zertifikat für MCB-Algorithmus Gegeben sei der Graph G = (V, E), w : E R + 0 und eine Menge von Kreisen A von G. Gib ein Zertifikat dafür an, dass A eine MCB von G ist. Zertifikat Die gegebenen Kreise bilden eine minimale Kreisbasis in G = (V, E).

31 Zertifikat-Erstellung MCB-CHECKER Eingabe: Graph G = (V, E), Kreise C 1,... C N Ausgabe: Zertifikat zur Prüfung, ob C 1,... C N eine MCB von G sind. 1. Berechne aufspannenden Wald T, dabei seien {e 1,..., e N } die Nichtbaumkanten. 2. Definiere A := (C 1... C N ) als N N-Matrix, deren i-te Spalte der Inzidenzvektor von C i mit {e 1,..., e N } ist. 3. Berechne A 1. A ist genau dann invertierbar, wenn C 1,..., C N linear unabhängig. S 1,..., S N von A 1 bilden das Zertifikat.

32 Zertifikat-Erstellung MCB-CHECKER Eingabe: Graph G = (V, E), Kreise C 1,... C N Ausgabe: Zertifikat zur Prüfung, ob C 1,... C N eine MCB von G sind. 1. Berechne aufspannenden Wald T, dabei seien {e 1,..., e N } die Nichtbaumkanten. 2. Definiere A := (C 1... C N ) als N N-Matrix, deren i-te Spalte der Inzidenzvektor von C i mit {e 1,..., e N } ist. 3. Berechne A 1. A ist genau dann invertierbar, wenn C 1,..., C N linear unabhängig. S 1,..., S N von A 1 bilden das Zertifikat. Lemma 5.16 Seien S 1,..., S N und C 1,..., C N linear unabhängig. Falls C i ein kürzester Kreis mit S i, C i = 1 für alle 1 i N ist, dann ist C 1,..., C N eine MCB. Allgemeiner: für die Matrix mit Spalten A 1... A N, wobei A i jeweils ein kürzester Kreis mit S i, A i = 1 ist, gilt: N i=1 w(a i) w(b) für jede Kreisbasis B.

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

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra Effiziente Algorithmen und Datenstrukturen I Kapitel 10: Lineare Algebra Christian Scheideler WS 2008 19.02.2009 Kapitel 10 1 Überblick Notation Arithmetik auf großen Zahlen (Addition und Multiplikation)

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

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) 5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume Effiziente Algorithmen und Datenstrukturen I Kapitel 9: Minimale Spannbäume Christian Scheideler WS 008 19.0.009 Kapitel 9 1 Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen

Mehr

8 Diskrete Optimierung

8 Diskrete Optimierung 8 Diskrete Optimierung Definition 8.1. Ein Graph G ist ein Paar (V (G), E(G)) besteh aus einer lichen Menge V (G) von Knoten (oder Ecken) und einer Menge E(G) ( ) V (G) 2 von Kanten. Die Ordnung n(g) von

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

Mehr

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel 3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36

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

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

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J Greedy-Strategie Definition Paradigma Greedy Der Greedy-Ansatz verwendet die Strategie 1 Top-down Auswahl: Bestimme in jedem Schritt eine lokal optimale Lösung, so dass man eine global optimale Lösung

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 5 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Die Komplexitätsklassen P und NP

Die Komplexitätsklassen P und NP Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und

Mehr

Kombinatorische Optimierung

Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesungen 5 und 6 Programm

Mehr

Maximale s t-flüsse in Planaren Graphen

Maximale s t-flüsse in Planaren Graphen Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen 6. Juni 2017 Guido Brückner INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg

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

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen Der Tragödie IV. Theyl Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University

Mehr

Maximale s t-flüsse in Planaren Graphen

Maximale s t-flüsse in Planaren Graphen Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen June 1, 2015 Ignaz Rutter INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg

Mehr

Primzahlzertifikat von Pratt

Primzahlzertifikat von Pratt Primzahlzertifikat von Pratt Daniela Steidl TU München 17. 04. 2008 Primzahltests in der Informatik "Dass das Problem, die Primzahlen von den Zusammengesetzten zu unterscheiden und letztere in ihre Primfaktoren

Mehr

Elemente der Analysis II

Elemente der Analysis II Elemente der Analysis II Kapitel 3: Lineare Abbildungen und Gleichungssysteme Informationen zur Vorlesung: http://www.mathematik.uni-trier.de/ wengenroth/ J. Wengenroth () 15. Mai 2009 1 / 35 3.1 Beispiel

Mehr

Definition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind.

Definition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind. 3.5 Gerichteter Pfad Definition 291 Eine Folge (u 0, u 1,..., u n ) mit u i V für i = 0,..., n heißt gerichteter Pfad, wenn ( i {0,..., n 1} ) [ (u i, u i+1 ) A]. Ein gerichteter Pfad heißt einfach, falls

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

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

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 3: Minimal aufspannende Bäume und Matroide

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 3: Minimal aufspannende Bäume und Matroide Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 3: Minimal aufspannende Bäume und Matroide Dipl-Math. Wolfgang Kinzner 3.4.2012 Kapitel 3: Minimal aufspannende Bäume und Matroide Minimal aufspannende

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Seminararbeit für das SE Reine Mathematik- Graphentheorie

Seminararbeit für das SE Reine Mathematik- Graphentheorie Seminararbeit für das SE Reine Mathematik- Graphentheorie Der binäre Rang, der symplektische Graph, die Spektralzerlegung und rationale Funktionen Vortrag am 24.01.2012 Heike Farkas 0410052 Inhaltsverzeichnis

Mehr

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik Vorlesung für den Bereich Diplom/Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes

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

Das Knapsack-Kryptosystem

Das Knapsack-Kryptosystem Das Knapsack-Kryptosystem Frank Hellweg 21. Februar 2006 1 Einleitung Das Knapsack-Kryptosystem wurde 1978 von den amerikanischen Kryptologen Martin Hellman und Ralph Merkle entwickelt [MH78] und war eines

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

Algorithmentheorie. 13 - Maximale Flüsse

Algorithmentheorie. 13 - Maximale Flüsse Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Traversierung Durchlaufen eines Graphen, bei

Mehr

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1 Allgemeines. Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition.. (a) Ein Graph G =(V, E) heißt kreisfrei, wenn er keinen Kreis besitzt. Beispiel: Ein kreisfreier Graph: FG KTuEA, TU Ilmenau

Mehr

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20. Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.

Mehr

Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48

Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48 Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48 Grundbegriffe der Informatik Einheit 12: Erste Algorithmen in Graphen Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009

Mehr

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Basis und Dimension Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Definition. Sei V ein K-Vektorraum und (v i ) i I eine Familie von Vektoren

Mehr

Kombinatorische Optimierung

Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 1 Programm des

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Lineare Gleichungssysteme Sei K ein Körper, a ij K für 1 i m, 1 j n. Weiters seien b 1,..., b m K. Dann heißt a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n = b 2... a m1

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 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/ws0910

Mehr

Customization (Zuschneiden)

Customization (Zuschneiden) Customization (Zuschneiden) Anpassen der (Graph)Datenstruktur an die Anwendung. I Ziel: schnell, kompakt. I benutze Entwurfsprinzip: make the common case fast I Listen vermeiden Mögliches Problem: Software-Engineering-Alptraum

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Makespan-Scheduling Kapitel 4: Approximationsalgorithmen (dritter Teil) (weitere Beispiele und Illustrationen an der Tafel) Hilfreiche Literatur: Vazarani: Approximation Algorithms, Springer Verlag, 2001.

Mehr

Kombinatorische Optimierung

Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 4 Programm des

Mehr

Maximale s t-flüsse in Planaren Graphen

Maximale s t-flüsse in Planaren Graphen Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen June 18, 2012 Ignaz Rutter INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg

Mehr

Rechnerische Komplexität

Rechnerische Komplexität Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit

Mehr

Resolutionsalgorithmus

Resolutionsalgorithmus 112 Resolutionskalkül Mit dem Begriff Kalkül bezeichnet man eine Menge von syntaktischen Umformungsregeln, mit denen man semantische Eigenschaften der Eingabeformel herleiten kann. Für den Resolutionskalkül:

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

Algorithmen und Datenstrukturen (WS 2007/08) 63

Algorithmen und Datenstrukturen (WS 2007/08) 63 Kapitel 6 Graphen Beziehungen zwischen Objekten werden sehr oft durch binäre Relationen modelliert. Wir beschäftigen uns in diesem Kapitel mit speziellen binären Relationen, die nicht nur nur besonders

Mehr

Vorlesung 3 MINIMALE SPANNBÄUME

Vorlesung 3 MINIMALE SPANNBÄUME Vorlesung 3 MINIMALE SPANNBÄUME 72 Aufgabe! Szenario: Sie arbeiten für eine Firma, die ein Neubaugebiet ans Netz (Wasser, Strom oder Kabel oder...) anschließt! Ziel: Alle Haushalte ans Netz bringen, dabei

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

Probleme aus NP und die polynomielle Reduktion

Probleme aus NP und die polynomielle Reduktion Probleme aus NP und die polynomielle Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 15. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester 2015. gehalten von Harald Baum

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester 2015. gehalten von Harald Baum Fachschaft Mathematik und Informatik (FIM) LA I VORKURS Herbstsemester 2015 gehalten von Harald Baum 2. September 2015 Inhaltsverzeichnis 1. Stichpunkte zur Linearen Algebra I 2. Körper 3. Vektorräume

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

Abschnitt: Algorithmendesign und Laufzeitanalyse Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher

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

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. Musterlösung. Problem 1: Boruvka MST

3. Musterlösung. Problem 1: Boruvka MST Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner. Musterlösung Problem : Boruvka MST pt (a) Beweis durch Widerspruch. Sei T MST von G, e die lokal minimale Kante eines

Mehr

Der Golay-Code und das Leech-Gitter

Der Golay-Code und das Leech-Gitter Der Golay-Code und das Leech-Gitter Vortrag zum Seminar Gitter und Codes Nils Malte Pawelzik.5.5 Inhaltsverzeichnis Designs 3. Elementare Eigenschaften eines Designs und die Eindeutigkeit eines - (, 5,

Mehr

Lösungen zum 3. Aufgabenblatt

Lösungen zum 3. Aufgabenblatt SS, Lineare Algebra Die Lösungen wurden erstellt von: Isabel Voigt, Vanessa Lamm und Matthias Rehder Hinweis: Eine Liste der zur Bearbeitung verwendeten Literatur ist unter www.mathematiwelt.com aufrufbar.

Mehr

Pratts Primzahlzertifikate

Pratts Primzahlzertifikate Pratts Primzahlzertifikate Markus Englert 16.04.2009 Technische Universität München Fakultät für Informatik Proseminar: Perlen der Informatik 2 SoSe 2009 Leiter: Prof. Dr. Nipkow 1 Primzahltest Ein Primzahltest

Mehr

Mathematik für Informatiker 1 Wintersemester 2013/14 Übungsblatt 12

Mathematik für Informatiker 1 Wintersemester 2013/14 Übungsblatt 12 Dipl.Inf. Malte Isberner Dr. Oliver Rüthing Dipl.Inf. Melanie Schmidt Dr. Hubert Wagner Übungen zur Vorlesung Mathematik für Informatiker 1 Wintersemester 2013/14 Übungsblatt 12 Die Lösungshinweise dienen

Mehr

Effiziente Algorithmen I

Effiziente Algorithmen I H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug

Mehr

Laufzeit und Komplexität

Laufzeit und Komplexität Laufzeit und Komplexität Laufzeit eines Algorithmus Benchmarking versus Analyse Abstraktion Rechenzeit, Anzahl Schritte Bester, Mittlerer, Schlechtester Fall Beispiel: Lineare Suche Komplexitätsklassen

Mehr

Euklidischer Algorithmus, Restklassenring und seine Struktur, Chinesischer Restklassensatz

Euklidischer Algorithmus, Restklassenring und seine Struktur, Chinesischer Restklassensatz Tobias Kraushaar Kaiserstr. 178 44143 Dortmund Matr.- Nr.: 122964 Euklidischer Algorithmus, Restklassenring und seine Struktur, Chinesischer Restklassensatz 1. EINLEITUNG... 2 2. HAUPTTEIL... 3 2.1. Der

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

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

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP

Mehr

Lineare Abhängigkeit

Lineare Abhängigkeit Lineare Abhängigkeit Vorbemerkung. Es sei X eine Menge. Eine Familie von Elementen von X ist eine Abbildung I X, i x i. I heißt dabei Indexmenge. Man verwendet dabei oft die Schreibweise (x i ) oder (x

Mehr

Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time

Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time Universität Konstanz Mathematisch-naturwissenschaftliche Sektion Fachbereich Mathematik und Statistik Wintersemester 2001/02 Mikkel Thorup: Undirected Single-Source Shortest Paths with Positive Integer

Mehr

37 Gauß-Algorithmus und lineare Gleichungssysteme

37 Gauß-Algorithmus und lineare Gleichungssysteme 37 Gauß-Algorithmus und lineare Gleichungssysteme 37 Motivation Lineare Gleichungssysteme treten in einer Vielzahl von Anwendungen auf und müssen gelöst werden In Abschnitt 355 haben wir gesehen, dass

Mehr

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten Gliederung Zusammenhang von Graphen Stark Zusammenhängend K-fach Zusammenhängend Brücken Definition Algorithmus zum Finden von Brücken Anwendung Zusammenhangskomponente Definition Wichtige Aussagen und

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

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

Graphen: Datenstrukturen und Algorithmen

Graphen: Datenstrukturen und Algorithmen Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.

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

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Algorithmen für Graphen Fragestellungen: Suche

Mehr

Bestimmung einer ersten

Bestimmung einer ersten Kapitel 6 Bestimmung einer ersten zulässigen Basislösung Ein Problem, was man für die Durchführung der Simplexmethode lösen muss, ist die Bestimmung einer ersten zulässigen Basislösung. Wie gut das geht,

Mehr

Periodische Fahrpläne und Kreise in Graphen

Periodische Fahrpläne und Kreise in Graphen Periodische Fahrpläne und Kreise in Graphen Vorlesung Algorithmentechnik WS 2009/10 Dorothea Wagner Karlsruher Institut für Technologie Eisenbahnoptimierungsprozess 1 Anforderungserhebung Netzwerkentwurf

Mehr

Alles zu seiner Zeit Projektplanung heute

Alles zu seiner Zeit Projektplanung heute Alles zu seiner Zeit Projektplanung heute Nicole Megow Matheon Überblick Projektplanung Planen mit Graphentheorie Maschinenscheduling Ein 1 Mio. $ Problem Schwere & leichte Probleme? Zeitplanungsprobleme?

Mehr

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

Mehr

Einführung in Approximative Algorithmen und Parametrisierte Komplexität

Einführung in Approximative Algorithmen und Parametrisierte Komplexität Einführung in Approximative Algorithmen und Parametrisierte Komplexität Tobias Lieber 10. Dezember 2010 1 / 16 Grundlegendes Approximationsalgorithmen Parametrisierte Komplexität 2 / 16 Grundlegendes Definition

Mehr

Vektorräume und Rang einer Matrix

Vektorräume und Rang einer Matrix Universität Basel Wirtschaftswissenschaftliches Zentrum Vektorräume und Rang einer Matrix Dr. Thomas Zehrt Inhalt:. Lineare Unabhängigkeit 2. Vektorräume und Basen 3. Basen von R n 4. Der Rang und Rangbestimmung

Mehr

Kapitel MK:IV. IV. Modellieren mit Constraints

Kapitel MK:IV. IV. Modellieren mit Constraints Kapitel MK:IV IV. Modellieren mit Constraints Einführung und frühe Systeme Konsistenz I Binarization Generate-and-Test Backtracking-basierte Verfahren Konsistenz II Konsistenzanalyse Weitere Analyseverfahren

Mehr

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5) Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff

Mehr

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland. 1 Programmierung 2 Dynamische Programmierung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 2 Übersicht Stammt aus den Zeiten als mit Programmierung

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

mit "Skalarprodukt" aus i-tem "Zeilenvektor" und j-tem "Spaltenvektor"

mit Skalarprodukt aus i-tem Zeilenvektor und j-tem Spaltenvektor Zusammenfassung Matrizen Transponierte: Addition: mit Skalare Multiplikation: Matrixmultiplikation: m x p m x n n x p mit ES "Skalarprodukt" aus i-tem "Zeilenvektor" und j-tem "Spaltenvektor" "Determinante"

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck Lemma 15 KLP 1 ist genau dann lösbar, wenn das dazugehörige LP KLP 2 eine Lösung mit dem Wert Z = 0 besitzt. Ist Z = 0 für x 0, x 0, dann ist x eine zulässige Lösung von KLP 1. Beweis von Lemma 15: Nach

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

In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N. Wenn (mit einem n > 1)

In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N. Wenn (mit einem n > 1) 34 Determinanten In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N Wenn (mit einem n > 1) a 11 a 12 a 1n a 21 a 22 a 2n A =, (1)

Mehr

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Stefan Lucks Diskrete Strukturen (WS 2009/10) 57 2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Uhr: Stunden mod 24, Minuten mod 60, Sekunden mod 60,... Rechnerarithmetik: mod 2 w, w {8, 16, 32,

Mehr

Stackelberg Scheduling Strategien

Stackelberg Scheduling Strategien Stackelberg Scheduling Strategien Von Tim Roughgarden Präsentiert von Matthias Ernst Inhaltsübersicht Einleitung Vorbetrachtungen Stackelberg Strategien Ergebnisse Seminar Algorithmische Spieltheorie:

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Minimal spannende Bäume

Minimal spannende Bäume Minimal spannende Bäume Ronny Harbich 4. Mai 006 (geändert 19. August 006) Vorwort Ich danke Patrick Bahr und meinem Bruder Steffen Harbich für die Unterstützung bei dieser Arbeit. Sie haben sowohl zu

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

Vorlesung 12 22. bzw. 23. Januar 2014. Determinanten 1. Cramersche Regel

Vorlesung 12 22. bzw. 23. Januar 2014. Determinanten 1. Cramersche Regel Vorlesung 2 22 bzw 23 Januar 204 Lineares Gleichungssystem a a 2 b b 2 = F a a 2 a 3 b b 2 b 3 c c 2 c 3 = V V =< a, b c > c b a b a F V Seite 70 a x + a 2 x 2 + a 3 x 3 b = 0 < a x + a 2 x 2 + a 3 x 3

Mehr

Alignment-Verfahren zum Vergleich biologischer Sequenzen

Alignment-Verfahren zum Vergleich biologischer Sequenzen zum Vergleich biologischer Sequenzen Hans-Joachim Böckenhauer Dennis Komm Volkshochschule Zürich. April Ein biologisches Problem Fragestellung Finde eine Methode zum Vergleich von DNA-Molekülen oder Proteinen

Mehr

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling Approximationsalgorithmen: Klassiker I Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling VO Approximationsalgorithmen WiSe 2011/12 Markus Chimani

Mehr

Minimal spannender Baum

Minimal spannender Baum Minimal spannender Baum 16 1 2 21 5 11 19 6 6 3 14 33 10 5 4 18 Die Kreise zeigen die vorgesehenen Standorte neu zu errichtender Filialen einer Bank. Entlang der bestehenden Straßen sollen Telefonleitungen

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