Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Größe: px
Ab Seite anzeigen:

Download "Kapitel 4: Netzplantechnik Gliederung der Vorlesung"

Transkript

1 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 und Anwendungen 8. Bipartite Graphen 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

2 Gliederung des Kapitels a) Einordnung / Motivation b) Modellierung mit Vorgangspfeil-Netzplänen c) d) Beziehungen zur linearen Programmierung 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

3 ! Konzeptionelle Idee den Vorgängen werden Knoten zugeordnet die Kanten dienen dazu die inhaltlichen (/* und später auch andere zeitliche */) Abhängigkeiten zwischen den einzelnen Vorgängen abzubilden 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

4 ! Beispiel... zunächst wird für jeden Vorgang ein Knoten und für jede inhaltliche Abhängigkeit eine Kante eingefügt Vorgang Name Dauer Beginn... a Erschließen 5 - b Ausschachten 10 - c Anschlüsse 8 b d Fundament 2 b e Rohbau 5 d f Fenster/Türen 5 e g Dach 4 e h Installation 8 c,e i Innenausbau 8 e a c h b d e f g i 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

5 ! Beispiel... dann werden ein Startknoten s, ein Zielknoten t und die zugehörigen Kanten eingefügt Vorgang Name Dauer Beginn... a Erschließen 5 - b Ausschachten 10 - c Anschlüsse 8 b d Fundament 2 b e Rohbau 5 d f Fenster/Türen 5 e g Dach 4 e h Installation 8 c,e i Innenausbau 8 e a c h s b f s d e g i 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

6 Vorgang Name Dauer Beginn...! Beispiel... zum Abschluss erhalten die Kanten Gewichte, die der Dauer des Vorgangs an der Startecke entsprechen 5 a Erschließen 5 - b Ausschachten 10 - c Anschlüsse 8 b d Fundament 2 b e Rohbau 5 d f Fenster/Türen 5 e g Dach 4 e h Installation 8 c,e i Innenausbau 8 e a 10 c 8 h s b 10 d 2 e f g i s 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

7 ! Anmerkung die Kanten des Vorgangsknoten-Netzplans in der angegebenen Art mit Gewichten zu versehen ist adäquat... man kann die inhaltlichen Abhängigkeiten (/* etwa: mit Vorgang y darf erst begonnen werden, nachdem Vorgang x beendet wurde */) auch als zeitliche Abhängigkeiten interpretieren zwischen dem Beginn von Vorgang y und dem Beginn von Vorgang x müssen mindestens so viele Zeiteinheiten vergangen sein, wie der Vorgang x dauert 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

8 ! Die relevanten Fragen a) Ist das Projekt überhaupt durchführbar? b) Wie viel Zeit muss man mindestens einplanen? c) Wann kann mit den Vorgängen frühestens begonnen werden? d) Wann muss man mit den einzelnen Vorgängen spätestens beginnen, damit das Projekt in der kürzest möglichen Zeit durchgeführt werden kann?... diese Fragen lassen sich auf dieselbe Art beantworten, wie wir es für die Modellierung mit Hilfe von Vorgangspfeil-Netzplänen gesehen haben (/* man berechnet die Mindest-Projektdauer, die frühesten Zeitpunkte sowie die bzw. spätesten Zeitpunkte völlig analog */)... da jedem Knoten u mit u s und u t ein Vorgang u zugeordnet ist, entsprechen die bestimmten Zeitpunkte den frühesten bzw. spätesten Startzeitpunkten für den Vorgang u 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

9 ! Zeitliche Abhängigkeiten bisher haben wir und darauf beschränkt, inhaltliche Abhängigkeiten in die Projektplanung einzubeziehen... solche Abhängigkeiten lassen sich auch zeitlich interpretieren (/* zwischen den Startzeitpunkten von zwei Vorgängen muss mindestens eine bestimmte Zeit vergangen sein*/) wir unterscheiden zwei Arten von zeitlichen Abhängigkeiten Minimalzeit-Bedingung (/* zwischen den Startzeitpunkten muss mindestens eine bestimmt Zeit vergangen sein */) Maximalzeit-Bedingung (/* zwischen den Startzeitpunkten darf höchstens eine bestimmt Zeit vergangen sein */) 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

10 ! Begriff: Minimalzeit-Bedingung es seien zwei Vorgänge x und y gegeben es seien ST(x) und ST(y) mögliche Startzeitpunkte für die beiden Vorgänge es sei z irgendeine Konstante die Forderung, dass ST(y) - ST(x) z gelten soll, nennen wir Minimalzeit-Bedingung zwischen den Vorgängen y und x... anschaulich: der Vorgang y soll frühestens z Zeiteinheiten, nach dem der Vorgang x begonnen wurde, begonnen werden... falls z genau die Dauer des Vorgangs x ist, kann man so eine inhaltliche Abhängigkeit ausdrücken 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

11 ! Modellierung von Minimalzeit-Bedingungen es sei ST(y) - ST(x) z eine Minimalzeit-Bedingungen zwischen den Vorgängen y und x... diese Minimalzeit-Bedingung zwischen den Vorgängen y und x wird im Vorgangsknoten-Netzplan durch eine Kante vom Knoten x zum Knoten y modelliert, die das Gewicht z hat x z y 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

12 ! Begriff: Maximalzeit-Bedingung es seien zwei Vorgänge x und y gegeben es seien ST(x) und ST(y) mögliche Startzeitpunkte für die beiden Vorgänge es sei z irgendeine Konstante die Forderung, dass ST(y) - ST(x) z gelten soll, nennen wir Maximalzeit-Bedingung zwischen den Vorgängen y und x... anschaulich: der Vorgang y soll spätestens z Zeiteinheiten, nach dem der Vorgang x begonnen wurde, begonnen werden 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

13 ! Modellierung von Maximalzeit-Bedingungen es sei ST(y) - ST(x) z eine Maximalzeit-Bedingungen zwischen den Vorgängen y und x offenbar sind die Bedingungen ST(y) - ST(x) z und ST(x) - ST(y) -z äquivalent... diese Maximalzeit-Bedingung zwischen den Vorgängen y und x entspricht einer Minimalzeit-Bedingung zwischen den Vorgängen x und y... diese Maximalzeit-Bedingung zwischen den Vorgängen y und x wird im Vorgangsknoten-Netzplan durch eine Kante vom Knoten y zum Knoten x modelliert, die das Gewicht -z hat x -z y 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

14 ! Anmerkungen der betrachtete Ansatz, Vorgangsknoten-Netzpläne anstelle von Vorgangspfeil-Netzplänen für die Modellierung zu verwenden, erlaubt es komplexere Zusammenhänge zu beschreiben die entstehende gerichteten, kantengewichteten Graphen sind nicht länger kreisfrei (/* zwischen dem Vorgang y und dem Vorgang x kann sowohl eine Minimalzeit- als auch eine Maximalzeit-Bedingung gelten */) und können Kanten mit negativen Gewichten enthalten (/* zwischen dem Vorgang y und dem Vorgang x kann eine Maximalzeit- Bedingung gelten */) 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

15 ! Konsequenzen die Antworten auf die uns interessierenden Fragen, müssen ein wenig anders abgeleitet werden... a) Ist das Projekt überhaupt durchführbar? b) Wie viel Zeit muss man mindestens einplanen? c) Wann kann mit den Vorgängen frühestens begonnen werden? d) Wann muss man mit den einzelnen Vorgängen spätestens beginnen, damit das Projekt in der kürzest möglichen Zeit durchgeführt werden kann? 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

16 ! Beispiel (/* problematische Modellierung */) drei Vorgänge a, b und c mit den Vorgangsdauern D[a] = 8, D[b] = 4 und D[c] = 3 den Minimalzeit-Bedingungen ST(b) - ST(a) 2 sowie ST(c) - ST(a) 3 der Maximal-Zeitbedingung ST(b) - ST(a) 3-3 s a 2 b 4 t 3 c 3 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

17 ! Beispiel (/* problematische Modellierung */) -3 s a 2 b 4 t 3 c 3... für a,b und c entsprechen die frühesten Startzeitpunkte wie üblich dem maximalen Gewicht eines Pfades von s zum jeweiligen Knoten (/* d.h. F[a] = 0, F[b] = 2 und F[c] = 3 */)... der früheste Startzeitpunkt von t entspricht nicht mehr dem maximalen Gewicht eines Pfades von s zum Knoten t (/* die Dauer des Vorgangs a kommt in der Modellierung gar nicht vor */) 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

18 ! Beispiel (/* korrekte Modellierung */) drei Vorgänge a, b und c mit den Vorgangsdauern D[a] = 8, D[b] = 4 und D[c] = 3 den Minimalzeit-Bedingungen ST(b) - ST(a) 2 sowie ST(c) - ST(a) 3 der Maximal-Zeitbedingung ST(b) - ST(a) s a 2 b 4 t 3 c 3 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

19 ! Anmerkung der Vorgangsknoten-Netzplan wird wie folgt erzeugt: je Vorgang einen Vorgangsknoten je zeitlicher Abhängigkeit eine entsprechende Kante zwischen zwei Vorgangsknoten mit dem entsprechenden Gewicht ein Startknoten s, der zu jedem Vorgangsknoten, welcher nicht Startecke einer Kante mit positivem Gewicht ist, eine Kante mit dem Gewicht 0 hat ein Zielknoten t, wobei von jedem Vorgangsknoten eine Kante zum Zielknoten t geht, die die Dauer des Vorgangs als Gewicht hat 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

20 ! Die Antworten auf die Fragen a) und b) die Mindestprojektdauer T entspricht dem maximalen Gewicht eines Pfades vom Startknoten s zum Zielknoten t falls es Kreise mit positivem Gewicht gibt, gibt es keinen Pfad mit maximalem Gewicht und das Projekt ist nicht durchführbar (/* die zeitlichen Abhängigkeiten sind in sich widersprüchlich */) 8-3 s a 2 b 4 t 3 c 1 3 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

21 ! Die Antworten auf die Fragen c) und d) der früheste Startzeitpunkt F[x], zu dem mit einem Vorgang x begonnen werden kann, entspricht wieder dem maximalen Gewicht eines Pfades vom Startknoten s zum Knoten x der späteste Startzeitpunkt S[x], zu dem mit einem Vorgang x begonnen werden kann, so dass die Mindestprojektdauer T eingehalten wird, entspricht dem Wert T minus dem maximalen Gewicht eines Pfades vom Knoten x zum Zielknoten t... also alles wie gehabt (/* zur Berechnung der maximalen Gewichte der entsprechenden Pfade benötigt man einen Algorithmus, der mit Graphen umgehen kann, die möglicherweise nicht kreisfrei sind und Kanten mit negativen Gewichten haben */) 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

22 ! Zurück zum Beispiel 8-3 s a 2 b 4 t 3 c 3... offenbar gilt,wie gewünscht: T = 8 F[a] = 0, F[b] = 2 und F[c] = 3 S[a] = 8, S[b] = 3 und S[c] = 5 (... S[b] 4, weil im inversen Graphen der längste Pfad von t nach b die Länge 5 hat 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

23 ! Zugehörige algorithmische Fragestellung gegeben: gesucht: ein gerichteter Graph G = (V,E) eine Gewichtsfunktion w(.) für G ein Startknoten s das maximale Gewicht eines Pfades von s zu jedem anderen Knoten in G (/* falls ein solcher existiert */)... der Graph G habe genau n Knoten (/* der Einfachheit halber sei V = { 1,...,n } */) und m Kanten 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

24 ! Hintergrund der Algorithmus von Bellman und Ford nutzt die folgenden Zusammenhänge aus jeder Pfad vom Startknoten s zu einem anderen Knoten v mit einem maximalen Gewicht hat höchstens n - 1 Kanten in einem solchen Pfad P = (s,..,u,v) ist das Anfangsstück P = (s,..,u) ein Pfad mit maximalem Gewicht vom Startknoten s zum Knoten u, der eine Kante weniger benutzt... bestimme sukzessive die Gewichte aller Pfade vom Startknoten s zu jedem anderen Knoten v (/* geordnet nach der Anzahl der Kanten die diese Pfade benutzen*/)... das Gewicht des Pfades zum Knoten v, der unter allen bisher untersuchten am größten ist, wird sich als Schätzwert gemerkt 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

25 ! Zugrunde liegende Datenstrukturen ein Array L[1..m] mit den Informationen zu allen Kanten von G (/* de facto die Verkettung der einzelnen Listen der Adjazenzliste A[1..n] von G */) ein Array D[1..n] (/* in dem sich die aktuellen Schätzwerte gemerkt werden */) ein Array D [1..n] (/* in dem sich die neuen Schätzwerte zwischenzeitlich gemerkt werden */) ein Array P[1..n] (/* in dem sich für jeden Knoten der aktuelle Vorgänger gemerkt wird */) 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

26 ! Realisierung setze D[j] = - und P[j] = 0 für alle j = 1,...,n setze D[s] = 0 for j = 1,..., n - 1 do setze D [j] = D[j] for i = 1,...,m do bestimme die Kante (u,v) in L[i] bestimme H = D[u] + w((u,v)) if D [v] < H then setze D [v] = H und P[v] = u for j = 1,...,m do setze D[j] = D [j] 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

27 ! Anmerkung man sieht unmittelbar, dass der Algorithmus von Bellman und Ford insgesamt O(n*m) viele Rechenschritte benötigt es sollte klar sein, dass der Algorithmus das Gewünschte leistet (/* falls der gegebene Graph keine Zyklen mit positivem Gewicht hat */)... um herauszubekommen, ob es im Graphen einen Zyklus mit positivem Gewicht gibt, wird der folgende Test durchgeführt 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

28 ! Zugehöriger Test... nach Beendigung der eigentlichen Berechnung wird folgender Test eingefügt setze flag = true for i = 1,...,m do bestimme die Kante (u,v) in L[i] if D[v] < D[u] + w((u,v)) then setze flag = false if flag == false then gib G enthält einen relevanten Zyklus mit negativem Gewicht aus... offenbar benötigt der zusätzliche Test O(m) viele Rechenschritte 4/3, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung Kapitel : Minimal spannende Bäume Gliederung der Vorlesung. Fallstudie Bipartite Graphen 2. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Wege. Traveling

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung Kapitel : Minimale spannende Bäume Gliederung der Vorlesung. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman

Mehr

Kapitel 8: Bipartite Graphen Gliederung der Vorlesung

Kapitel 8: Bipartite Graphen Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman Problem. Flüsse in Netzwerken

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal spannende Bäume 5. Kürzeste Pfade 6. Traveling Salesman Problem 7. Flüsse

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Pfade. Traveling Salesman Problem. Flüsse in Netzwerken

Mehr

Kapitel 3: Kürzeste Pfade Gliederung der Vorlesung

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

Mehr

Aufgaben zur Klausurvorbereitung

Aufgaben zur Klausurvorbereitung Vorlesung Graphen und Optimierung Sommersemester 2013/14 Prof. S. Lange Aufgaben zur Klausurvorbereitung Hier finden Sie eine Reihe von Übungsaufgaben, die wir an den beiden Vorlesungsterminen am 29.01.2014

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

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

Mehr

Kapitel 1: Fallstudie Bipartite Graphen Gliederung der Vorlesung

Kapitel 1: Fallstudie Bipartite Graphen Gliederung der Vorlesung Kapitel : Fallstudie Bipartite Graphen Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und. Minimal spannende Bäume. Kürzeste Wege 6. Traveling Salesman

Mehr

Kapitel 9: Lineare Programmierung Gliederung

Kapitel 9: Lineare Programmierung Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik Sommersemester 2016 Steffen Lange 0/1, Folie 1 2016 Prof. Steffen Lange - HDa/FbI - Theoretische Informatik Literatur S. Lange, M. Margraf, Theoretische Informatik, Lehrmaterial

Mehr

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0.

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. 8.4 Digraphen mit negativen Kantengewichten 8.4.1 Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. k 4 5 1 s 1 3 2 C k 0 k 3 1 1 1 k 1 k 2 v Sollte ein Pfad von s nach C und

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorleung. Falltudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal pannende Bäume 5. Kürzete Pfade 6. Traveling Saleman Problem 7. Flüe in Netzwerken

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. äume / Graphen. Hashing 6. Algorithmische Geometrie 4/6, Folie 1 2014 Prof. Steffen Lange - HDa/FbI

Mehr

Folien aus der Vorlesung Optimierung I SS2013

Folien aus der Vorlesung Optimierung I SS2013 Folien aus der Vorlesung Optimierung I SS2013 Dr. Jens Maßberg Institut für Optimierung und Operations Research, Universität Ulm July 10, 2013 Datenstrukturen für Graphen und Digraphen Graph Scanning Algorithmus

Mehr

Kapitel 3: Untere Schranken für algorithmische Probleme Gliederung

Kapitel 3: Untere Schranken für algorithmische Probleme Gliederung Gliederung 1. Grundlagen 2. Analyse der Laufzeit von Algorithmen 3. Untere Schranken für algorithmische Probleme 4. Sortier- und Selektionsverfahren 5. Paradigmen des Algorithmenentwurfs 6. Ausgewählte

Mehr

Kapitel 3: Sortierverfahren Gliederung

Kapitel 3: Sortierverfahren Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

1.Aufgabe: Minimal aufspannender Baum

1.Aufgabe: Minimal aufspannender Baum 1.Aufgabe: Minimal aufspannender Baum 11+4+8 Punkte v 1 v 2 1 3 4 9 v 3 v 4 v 5 v 7 7 4 3 5 8 1 4 v 7 v 8 v 9 3 2 7 v 10 Abbildung 1: Der Graph G mit Kantengewichten (a) Bestimme mit Hilfe des Algorithmus

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

Klausurvorbereitung. 1 Zentrale Begriffe. 2 Bipartite Graphen. 2.1 Begriffe. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S.

Klausurvorbereitung. 1 Zentrale Begriffe. 2 Bipartite Graphen. 2.1 Begriffe. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S. Lange Klausurvorbereitung Hier finden Sie alle Begriffe, Zusammenhänge und Algorithmen, die mit Blick auf die Klausur relevant sind. Um es

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

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

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

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Kapitel 2: Analyse der Laufzeit von Algorithmen Gliederung

Kapitel 2: Analyse der Laufzeit von Algorithmen Gliederung Gliederung 1. Motivation / Einordnung / Grundlagen 2. Analyse der Laufzeit von Algorithmen 3. Untere Schranken für algorithmische Probleme 4. Sortier- und Selektionsverfahren 5. Paradigmen des Algorithmenentwurfs

Mehr

Datenstrukturen und Algorithmen (SS 2013)

Datenstrukturen und Algorithmen (SS 2013) Datenstrukturen und Algorithmen (SS 2013) Übungsblatt 10 Abgabe: Montag, 08.07.2013, 14:00 Uhr Die Übungen sollen in Gruppen von zwei bis drei Personen bearbeitet werden. Schreiben Sie die Namen jedes

Mehr

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar.

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar. Gegeben sei ein Netzwerk N = (V, A, c, s, t) wie in der Vorlesung. Ein maximaler s-t-fluss kann immer mit Hilfe einer Folge von höchstens A Augmentationsschritten gefunden werden. Wendet man den Dijkstra-Algorithmus

Mehr

Wie wird ein Graph dargestellt?

Wie wird ein Graph dargestellt? Wie wird ein Graph dargestellt? Für einen Graphen G = (V, E), ob gerichtet oder ungerichtet, verwende eine Adjazenzliste A G : A G [i] zeigt auf eine Liste aller Nachbarn von Knoten i, wenn G ungerichtet

Mehr

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 25. Oktober 2007 1 / 20 2 / 20 Wir werden Optimierungsprobleme vom folgenden Typ betrachten: gegeben eine Menge X und eine Funktion

Mehr

Graphalgorithmen II. Sebastian Ehrenfels Sebastian Ehrenfels Graphalgorithmen II / 44

Graphalgorithmen II. Sebastian Ehrenfels Sebastian Ehrenfels Graphalgorithmen II / 44 Graphalgorithmen II Sebastian Ehrenfels 4.6.2013 Sebastian Ehrenfels Graphalgorithmen II 4.6.2013 1 / 44 Inhalt 1 Datenstrukturen Union-Find Fibonacci-Heap 2 Kürzeste wege Dijkstra Erweiterungen Bellman-Ford

Mehr

Kapitel 4: Komplexitätstheorie Gliederung

Kapitel 4: Komplexitätstheorie Gliederung Gliederung 0. Einleitung und Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 4.1. Motivation und Grundbegriffe 4.2. Die Komplexitätsklassen P und NP

Mehr

Routing Algorithmen. Begriffe, Definitionen

Routing Algorithmen. Begriffe, Definitionen Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine

Mehr

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5)

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5) Praktikum Diskrete Optimierung (Teil 5) 6.05.009 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen

Mehr

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7 Technische Universität München WS 2012 Institut für Informatik Prof. Dr. H.-J. Bungartz Prof. Dr. T. Huckle Prof. Dr. M. Bader Kristof Unterweger Perlen der Informatik I Wintersemester 2012 Aufgabenblatt

Mehr

Berechnung von Abständen

Berechnung von Abständen 3. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 3.4. Es sei G = (V, E) ein Graph. Der Abstand d(v, w) zweier Knoten v, w V ist die minimale Länge eines Weges von v nach w.

Mehr

Breitensuche BFS (Breadth First Search)

Breitensuche BFS (Breadth First Search) Breitensuche BFS (Breadth First Search) Algorithmus BREITENSUCHE EINGABE: G = (V, E) als Adjazenzliste, Startknoten s V 1 Für alle v V 1 If (v = s) then d[v] 0 else d[v] ; 2 pred[v] nil; 2 Q new Queue;

Mehr

Teil 2: Graphenalgorithmen

Teil 2: Graphenalgorithmen Teil : Graphenalgorithmen Anwendungen Definitionen Datenstrukturen für Graphen Elementare Algorithmen Topologisches Sortieren Kürzeste Wege Problemstellung Ungewichtete Graphen Distanzgraphen Gewichtete

Mehr

Das Heiratsproblem. Definition Matching

Das Heiratsproblem. Definition Matching Das Heiratsproblem Szenario: Gegeben: n Frauen und m > n Männer. Bekanntschaftsbeziehungen zwischen allen Männern und Frauen. Fragestellung: Wann gibt es für jede der Frauen einen Heiratspartner? Modellierung

Mehr

Kapitel 2: Sortier- und Selektionsverfahren Gliederung

Kapitel 2: Sortier- und Selektionsverfahren Gliederung Gliederung 1. Laufzeit von Algorithmen 2. Sortier- und Selektionsverfahren 3. Paradigmen des Algorithmenentwurfs 4. Ausgewählte Datenstrukturen 5. Algorithmische Geometrie 6. Randomisierte Algorithmen

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. äume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/5, olie 1 2014 Prof. Steffen Lange - HDa/bI

Mehr

Kapitel 4: Komplexitätstheorie Gliederung

Kapitel 4: Komplexitätstheorie Gliederung Gliederung 0. Motivation und Einordnung 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 4.1. Motivation und Grundbegriffe 4.2. Die Komplexitätsklassen P und NP 4.3.

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen Lerneinheit : Kürzeste Pfade in Graphen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 016.6.01 Einleitung Diese Lerneinheit beschäftigt

Mehr

10 Kürzeste Pfade SSSP-Problem

10 Kürzeste Pfade SSSP-Problem In diesem Kapitel setzen wir uns mit der Berechnung von kürzesten Pfaden in einem Graphen auseinander. Definition 10.1 (Pfadgewichte). i) Das Gewicht eines Pfades p = (v 0, v 1,..., v k ) ist die Summe

Mehr

Name:... Vorname:... Matr.-Nr.:... Studiengang:...

Name:... Vorname:... Matr.-Nr.:... Studiengang:... Technische Universität Braunschweig Sommersemester 2013 IBR - Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Dr. Christiane Schmidt Stephan Friedrichs Klausur Netzwerkalgorithmen 16.07.2013 Name:.....................................

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/2, Folie 1 2014 Prof. Steffen Lange - HDa/FbI

Mehr

1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen

1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen Gliederung 1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen 1/1, Folie 1 2009 Prof. Steffen Lange - HDa/FbI - Effiziente

Mehr

p = (v 0, v 1,..., v k )

p = (v 0, v 1,..., v k ) 1 Routenlaner Hamburg 300 km 200 km Berlin 450 km Köln 200 km 400 km Frankfurt 50 km 200 km 150 km Mannheim Saarbrücken 100 km 250 km Stuttgart 200 km Dresden 300 km Nürnberg 200 km München Berechne den

Mehr

Kürzeste Wege. Ein Startknoten, nichtnegative Gewichte

Kürzeste Wege. Ein Startknoten, nichtnegative Gewichte Kürzeste Wege Gegeben ein Digraph D = (V, A) mit Bogengewichten c(a). Aufgabe: Finde einen Weg W von einem Knoten zu allen anderen oder zu einem bestimmten mit c(w) minimal. Problem: negative Gewichte

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

Algorithmen & Datenstrukturen 2 Praktikum 3

Algorithmen & Datenstrukturen 2 Praktikum 3 Algorithmen & Datenstrukturen 2 Praktikum 3 Thema: Graphalgorithmen Sommersemester 2016 Prof. Dr. Christoph Karg Hochschule Aalen Dieses Praktikum widmet sich dem Thema Graphalgorithmen. Ziel ist die Implementierung

Mehr

lässt sich auch ableiten, dass es einen augmentierenden Pfad der Länge höchstens

lässt sich auch ableiten, dass es einen augmentierenden Pfad der Länge höchstens Praktikum Algorithmen-Entwurf (Teil 5)..5 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen Endpunkt

Mehr

Modul Algorithmik, T-Katalog

Modul Algorithmik, T-Katalog Modul Algorithmik, T-Katalog Sommersemester 2017 Steffen Lange 1/1, Folie 1 2017 Prof. Steffen Lange - HDa/FbI - Algorithmik Organisatorisches u Vorlesung Folien im Netz u Übung eine Übung alle 14 Tage

Mehr

Kap. 6.6: Kürzeste Wege

Kap. 6.6: Kürzeste Wege Kap. 6.6: Kürzeste Wege Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 1./. VO DAP SS 009./9. Juli 009 1 Nachtest für Ausnahmefälle Di 1. Juli 009, 16:00 Uhr,

Mehr

Kap. 6.6: Kürzeste Wege

Kap. 6.6: Kürzeste Wege 0.0.00 Nachtest für Ausnahmefälle Kap..: Kürzeste Wege Professor Dr. Lehrstuhl für Algorithm Engineering, LS Fakultät für Informatik, TU Dortmund./. VO DAP SS 00./. Juli 00 Di. Juli 00, :00 Uhr, OH, R.

Mehr

Optimale Lösungen mit Greedy-Strategie erfordern Optimalität der Greedy-Wahl. Beispiele für optimale Greedy-Lösungen

Optimale Lösungen mit Greedy-Strategie erfordern Optimalität der Greedy-Wahl. Beispiele für optimale Greedy-Lösungen Wiederholung Optimale Lösungen mit Greedy-Strategie erfordern Optimalität der Greedy-Wahl unabhängig von Subproblemen Optimalität der Subprobleme Beispiele für optimale Greedy-Lösungen Scheduling Problem

Mehr

12. Der Algorithmus von Dijkstra. Informatik II für Verkehrsingenieure

12. Der Algorithmus von Dijkstra. Informatik II für Verkehrsingenieure . Der Algorithmus von Dijkstra Informatik II für Verkehrsingenieure Problemstellung Gegeben: Graph G =(V, E, len) mit positiver Kantenfunktion len : E! R 0, Knoten s, t V Mögliche Aufgaben Berechne Distanz

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (2) Spannbäume Kürzeste Wege Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 455 Wiederholung Traversierung eines Graphen via Tiefendurchlaufs

Mehr

4. Kreis- und Wegeprobleme Abstände in Graphen

4. Kreis- und Wegeprobleme Abstände in Graphen 4. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 4.4. Es sei G = (V,E) ein Graph. Der Abstand d(v,w) zweier Knoten v,w V ist die minimale Länge eines Weges von v nach w. Falls

Mehr

2. Das single-source-shortest-path-problem

2. Das single-source-shortest-path-problem . Das single-source-shortest-path-problem Zunächst nehmen wir an, dass d 0 ist. Alle kürzesten Pfade von a nach b sind o.b.d.a. einfache Pfade.. Dijkstra s Algorithmus Gegeben: G = (V, A), (A = V V ),

Mehr

Kapitel 2: Zahlentheoretische Algorithmen Gliederung

Kapitel 2: Zahlentheoretische Algorithmen Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

Anwendungen. Für optimale Wege in DAGs gibt es eine Fülle von Anwendungen. Wir betrachten zwei:

Anwendungen. Für optimale Wege in DAGs gibt es eine Fülle von Anwendungen. Wir betrachten zwei: Anwendungen Für optimale Wege in DAGs gibt es eine Fülle von Anwendungen. Wir betrachten zwei: Optimale Einteilung in Blöcke (z.b. in der Textverarbeitung) Projektplanung Graphentheorie HS Bonn-Rhein-Sieg,

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

Algorithmische Mathematik I

Algorithmische Mathematik I Algorithmische Mathematik I Wintersemester 2011 / 2012 Prof. Dr. Sven Beuchler Peter Zaspel Übungsblatt zur Wiederholung Teil 1. Abgabe am -. Aufgabe 1. a) Was ist eine B-adische Darstellung mit fixer

Mehr

Kapitel 5: Dynamisches Programmieren Gliederung

Kapitel 5: Dynamisches Programmieren Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

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

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

Blocksatzbildung. Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeben ist eine Folge F = (1,..., n) von n Gegenständen.

Blocksatzbildung. Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeben ist eine Folge F = (1,..., n) von n Gegenständen. Blocksatzbildung Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeben ist eine Folge F = (1,..., n) von n Gegenständen. Jeder Gegenstand hat eine Länge l(i). Die Gegenstände sollen in Blöcke eingeteilt

Mehr

Blocksatzbildung. Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeben ist eine Folge F = (1,..., n) von n Gegenständen.

Blocksatzbildung. Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeben ist eine Folge F = (1,..., n) von n Gegenständen. Blocksatzbildung Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeben ist eine Folge F = (1,..., n) von n Gegenständen. Jeder Gegenstand hat eine Länge l(i). Die Gegenstände sollen in Blöcke eingeteilt

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Wdhlg.: Dijkstra-Algorithmus I Bestimmung der

Mehr

Kapitel 6: Graphalgorithmen Gliederung

Kapitel 6: Graphalgorithmen Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (1) Darstellung Traversierung Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 441 Generalisierung von Bäumen Verallgemeinerung (von Listen zu Graphen)

Mehr

Kapitel 2: Analyse der Laufzeit von Algorithmen Gliederung

Kapitel 2: Analyse der Laufzeit von Algorithmen Gliederung Gliederung 1. Motivation / Einordnung / Grundlagen 2. Analyse der Laufzeit von Algorithmen 3. Untere Schranken für algorithmische Probleme 4. Sortier- und Selektionsverfahren 5. Paradigmen des Algorithmenentwurfs

Mehr

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie Gliederung 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. 2.2. Reguläre Sprachen 2.3. Kontextfreie Sprachen 2/1, Folie 1 2015 Prof. Steffen

Mehr

Informatik B Sommersemester Musterlösung zur Klausur am

Informatik B Sommersemester Musterlösung zur Klausur am Informatik B Sommersemester 01 Musterlösung zur Klausur am 1.0.01 Leider wurde der Hinweis, dass alle Lösungen kurz (stichpunktartig), aber inhaltlich ausreichend zu kommentieren sind, nicht immer beachtet.

Mehr

Algorithmen und Datenstrukturen SS09. Foliensatz 16. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik

Algorithmen und Datenstrukturen SS09. Foliensatz 16. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik Foliensatz 16 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 2009 TU Ilmenau Seite 1 / 45 Graphen TU Ilmenau Seite 2 / 45 Graphen 1 2 3 4 5 6 7 8

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

7. Lineare Gleichungssysteme

7. Lineare Gleichungssysteme 7. Lineare Gleichungssysteme Lineare Gleichungssysteme A~x = ~ b mit A 2 R m;n ; ~x 2 R n ~x ist gesucht, r = Rg(A); a x + a 2 x 2 + : : : + a n x n = b a m x + a m2 x 2 + : : : + a mn x n = b m. Struktur

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

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

Freie Bäume und Wälder

Freie Bäume und Wälder (Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese

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

Graphdurchmusterung, Breiten- und Tiefensuche

Graphdurchmusterung, Breiten- und Tiefensuche Prof. Thomas Richter 18. Mai 2017 Institut für Analysis und Numerik Otto-von-Guericke-Universität Magdeburg thomas.richter@ovgu.de Material zur Vorlesung Algorithmische Mathematik II am 18.05.2017 Graphdurchmusterung,

Mehr

10. Übungsblatt zu Algorithmen I im SS 2010

10. Übungsblatt zu Algorithmen I im SS 2010 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders G.V. Batz, C. Schulz, J. Speck 0. Übungsblatt zu Algorithmen I im SS 00 http//algo.iti.kit.edu/algorithmeni.php

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

Tutoraufgabe 1 (Starke Zusammenhangskomponenten):

Tutoraufgabe 1 (Starke Zusammenhangskomponenten): für Informatik Prof. aa Dr. Ir. Joost-Pieter Katoen Allgemeine Hinweise: Datenstrukturen und Algorithmen SS1 Übungsblatt (Abgabe 4.0.01) Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder

Mehr

Lernmodul 7 Algorithmus von Dijkstra

Lernmodul 7 Algorithmus von Dijkstra Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer

Mehr

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009 . Klausur zur Vorlesung Algorithmentechnik Wintersemester 008/009 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie den Aufkleber mit Ihrem

Mehr

Algorithmen I - Tutorium 28 Nr. 11

Algorithmen I - Tutorium 28 Nr. 11 Algorithmen I - Tutorium 28 Nr. 11 13.07.2017: Spaß mit Schnitten, Kreisen und minimalen Spannbäumen Marc Leinweber marc.leinweber@student.kit.edu INSTITUT FÜR THEORETISCHE INFORMATIK (ITI), PROF. DR.

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphdarstellungen Maike Buchin 0.6.017 Graphen Motivation: Graphen treten häufig als Abstraktion von Objekten (Knoten) und ihren Beziehungen (Kanten) auf. Beispiele: soziale

Mehr

Kapitel 3: Berechnungstheorie Gliederung

Kapitel 3: Berechnungstheorie Gliederung Gliederung 0. Motivation und Einordnung 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 3.1. Einordnung 3.2. Berechnungsmodelle 3.3. Diskussion 3.4. Ergebnisse und

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 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

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 2/2, Folie 1 2014 Prof. Steffen Lange - HDa/FbI

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Minimale Spannbäume Maike Buchin 18.7., 20.7.2017 Einführung Motivation: Verbinde Inseln mit Fähren oder Städte mit Schienen und verbrauche dabei möglichst wenig Länge. Problem:

Mehr

Teil 2: Graphenalgorithmen

Teil 2: Graphenalgorithmen Teil : Graphenalgorithmen Anwendungen Definitionen Datenstrukturen für Graphen Elementare Algorithmen Topologisches Sortieren Kürzeste Wege Minimal aufspannende Bäume Problemstellung Algorithmus von Prim

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

Muster. Informatik 3 (Februar 2004) Name: Matrikelnummer: Betrachten Sie den folgenden Suchbaum. A G H J K M N

Muster. Informatik 3 (Februar 2004) Name: Matrikelnummer: Betrachten Sie den folgenden Suchbaum. A G H J K M N 2 von 15 Aufgabe 1: Suchbäume (14 ) Betrachten Sie den folgenden Suchbaum. A B C D E F G H I J K L M N O P R (a) (1 Punkt ) Geben Sie die Höhe des Knotens F an. (b) (1 Punkt ) Geben Sie die Tiefe des Knotens

Mehr