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

Größe: px
Ab Seite anzeigen:

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

Transkript

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

2 Gliederung des Kapitels a) Einordnung / Motivation b) Begriffe / Grundlagen c) Anwendungen d) e) Kantenbasierte Algorithmen 7/3, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

3 Anmerkungen die Grundidee für solche pfadbasierten Algorithmen haben wir bereits kennen gelernt interessanterweise kann man diese Grundidee gut und schlecht realisieren (/* und auf den ersten Blick unterscheiden sich diese Realisierungen kaum */)... gut bedeutet, dass der entsprechende Algorithmus ein effizienter Algorithmus ist... schlecht bedeutet, dass der entsprechende Algorithmus nachweislich kein effizienter Algorithmus ist 7/3, Folie 3 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

4 Algorithmische Fragestellung gegeben: ein Flussnetzwerk, d.h. ein gerichteter Graph mit zwei ausgezeichneten Knoten s und t (/* die Quelle bzw. die Senke */) und einer Funktion c(.), die jeder Kante eine ganze Zahl > 0 als Kapazität zuordnet gesucht: der maximale Wert eines Flusses in G von s nach t 7/3, Folie 4 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

5 generischer Ansatz ) setze f([u,v]) = 0 für alle Kanten [u,v] in G ) bestimme das zu f(.) gehörende Restflussnetzwerk G f mit der Kapazitätsfunktion c (.) 3) überprüfe, ob es in G f einen Erweiterungspfad P gibt falls nein, stoppe falls ja, wähle das zuerst gefundene P und gehe zu 3) 4) bestimme c P, bestimme den aktualisierten Fluss f (.) und gehe zu )... diesen Ansatz nennt man Ford-Fulkerson-Methode... wir wissen schon, dass diese Methode das leistet, was sie soll 7/3, Folie 5 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

6 Beispiel 3 (0,) (0,3) s 3 t s (0,3) (0,) (0,) t s 3 3 t 7/3, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

7 Beispiel s 3 3 t... Erweiterungspfad: P = (s,,,t) mit c P = (0,) (0,3) s (0,3) (0,) (0,) t (,) (0,3) s (0,3) (,) (,) t 7/3, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

8 Beispiel (,) (0,3) s (0,3) (,) t (,) s 3 t 3 7/3, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

9 Beispiel s 3 3 t s... Erweiterungspfad: P = (s,,,t) mit c P = (,) (0,3) (,) (0,3) (,) t (,) (,3) s (,3) (0,) (,) t 7/3, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

10 Beispiel (,) (,3) s (,3) (0,) t (,) s t... offenbar gibt es keinen Erweiterungspfad mehr... also hat der maximale Fluss den Wert 4 7/3, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

11 Anmerkungen (/* Laufzeit */) es sei G ein Flussnetzwerk mit n Knoten und m Kanten ), ) und 4) kann man offenbar in Zeit O(n+m) realisieren da das jeweils betrachtete Restflussnetzwerk n Knoten und maximal m Kanten besitzt, ist es zulässig, dass die Laufzeit für 3) auch in Abhängigkeit von n und m abgeschätzt wird 3) kann man mit Hilfe der Tiefen- bzw. Breitensuche in der Zeit O(n+m) realisieren... um die Gesamtlaufzeit abzuschätzen, muss man nur noch wissen, wie viele Iterationen benötigt werden 7/3, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

12 Anmerkungen (/* Laufzeit */) es sei z die Größe des maximalen Flusses f*(.), d.h. z = val(f*) wir wissen, dass z eine ganze Zahl ist wir wissen, dass der aktuelle Fluss in 4) jeweils um eine ganze Zahl erhöht wird... also wird der aktuelle Fluss f(.) höchstens z mal verändert und folglich genügen z Iterationen... demzufolge benötigt die Ford-Fulkerson-Methode insgesamt höchstens die Zeit O(z*(n+m)) 7/3, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

13 Anmerkungen (/* Laufzeit */) falls z eine Zahl ist, die nicht viel größer als n und m ist, haben wir mit der Ford-Fuklerson-Methode einen effizienten Algorithmus, um einen maximalen Fluss zu bestimmen... falls z viel größer als n und m sind, ist das nicht mehr der Fall... für n = 0, m = 90 und z = 0 50, liefert unsere Abschätzung, dass die Ford-Fulkerson-Methode 0 5 viele Rechenschritte benötigt (/* das ist garantiert nicht effizient */)... das nächste Beispiel zeigt, dass diese Bedenken nicht ganz unbegründet sind 7/3, Folie 3 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

14 Beispiel wir gehen davon aus, dass in der Ford-Fulkerson-Methode 3) mit Hilfe der Tiefensuche realisiert wird wir gehen davon aus, dass die Kanten - wie üblich - in lexikographischer Ordnung besucht werden offenbar hat der maximale Fluss f*(.) den Wert 00 7/3, Folie 4 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

15 Beispiel P = (,,3,4,5,,6) P = (,,5,4,3,,6) P = (,,3,4,5,,6) /3, Folie 5 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

16 Anmerkungen wenn man die Ford-Fulkerson-Methode so implementiert, dass 3) mit Hilfe der Tiefensuche realisiert wird, kann es passieren, dass die Anzahl der Iterationen gleich der Größe z des maximalen Flusses f*(.) ist... in unserem Beispiel mussten wir die Kapazität von zwei Kanten so wählen, dass sie gleich der z sind... dass ist nicht weiter schlimm, da man nur log(z) Platz benötigt wird, um z zu speichern... ein Algorithmus, der O(z*(n+m)) viele Rechenschritte benötigt, ist immer noch expontentiell in der Größe der Beschreibung des gegebenen Flussnetzwerks G (/* es gilt G n+m+m*log(z) */) 7/3, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

17 Eine einfache Verbesserungsmöglichkeit wenn man die Ford-Fulkerson-Methode so implementiert, dass 3) mit Hilfe der Breitensuche realisiert wird, kann man garantieren, dass deutlich weniger Iterationen benötigt werden man kann zeigen, dass dann O(n*m) viele Iterationen genügen... das entsprechende Verfahren heißt Algorithmus von Edmonds und Karp und hat eine Laufzeit in der Größe O((n*m)(n+m))... offenbar ist der Algorithmus von Edmonds und Karp ein effizientes Verfahren zum Bestimmen von maximalen Flüssen in Flussnetzwerken 7/3, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

18 Algorithmus von Edmonds und Karp ) setze f([u,v]) = 0 für alle Kanten [u,v] in G ) bestimme das zu f(.) gehörende Restflussnetzwerk G f mit der Kapazitätsfunktion c (.) 3) überprüfe mit Hilfe der Breitensuche, ob es in G f einen Erweiterungspfad P gibt falls nein, stoppe falls ja, wähle das zu erst gefundene P und gehe zu 3) 4) bestimme c P, bestimme den aktualisierten Fluss f (.) und gehe zu )... offenbar leistet dieser Algorithmus auch das, was er soll 7/3, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

19 Beispiel (00,00) (00,00) (0,) P = (,,6) (0,) 3 (0,) (0,) 4... für dieses kritische Beispiel benötigt der Algorithmus von Edmonds und Karp genau eine Iteration 7/3, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

20 Eigenschaften des Algorithmus von Edmonds und Karp es sei G f das aktuelle Restflussnetzwerk und P der zu erst gefundene Erweiterungspfad Dann gilt: P ist ein kürzester Erweiterungspfad von der Quelle s zur Senke t P besucht jeden Knoten aus V höchstens einmal für jeden besuchten Knoten v ist der Teilpfad von der Quelle s zum Knoten v ein kürzester Pfad von s nach v... der Begriff kürzester Pfad bezieht sich hier auf die Anzahl der Knoten, auf dem betrachten Pfad!!! 7/3, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

21 Anmerkungen es sei G ein Flussnetzwerk mit n Knoten und m Kanten um zu zeigen, dass die Anzahl der Iteration des Algorithmus von Edmonds und Karp in der Größe O(n*m) liegt benötigen wir folgenden Hilfsbegriff es seien f(.) zulässiger Fluss in G und G f das zugehörige Restflussnetzwerk es sei v ein Knoten aus V \ { s,t } dann bezeichnet d f (v) die Entfernung zwischen der Quelle s und dem Knoten v in G f, d.h. die Anzahl der Kanten auf einem kürzesten Pfad von s nach t in G f (/* falls es keinen Pfad von s nach v gibt, so ist d f (v) = + */) 7/3, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

22 Beobachtung es sei G ein Flussnetzwerk mit n Knoten und m Kanten es seien G f,..., G fz die Restflussnetzwerke, die der Algorithmus von Edmonds und Karp sukzessive erzeugt es sei v ein Knoten V \ { s,t } Dann gilt: d f (v) d f (v)... d fz (v)... die Entfernungen eines Knotens v von der Quelle s werden nicht kleiner 7/3, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

23 Begründung es seien G f und G f nacheinander erzeugte Restflussnetzwerke Annahme: es sei v ein Knoten, für den d f (v) > d f (v) gilt wir wählen v so, dass auf dem kürzesten Pfad P* von s nach v in G f für alle Zwischenknoten u gilt: d f (u ) d f (u )... das geht offenbar (/* falls man einen Zwischenknoten u findet, der diese Eigenschaft nicht hat, so setzt man u = v */)... man kann sich leicht überlegen, dass es auf dem kürzesten Pfad P* von s nach v in G f wenigstens einen Zwischenknoten u gibt falls nicht, so muss es in G f die Kante [s,v] geben [s,v] darf dann nicht in G f vorkommen dann müsste aber die Kante [v,s] in einem kürzesten Erweiterungspfad in G f von s nach t benutzt worden sein (/* das geht nicht, da dann s zweimal besucht würde */) 7/3, Folie 3 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

24 Begründung... in G f... in G f s u v s u es gilt d f (u) d f (u) < + und d f (v) = d f (u) + wegen d f (v) < d f (v), darf die Kante [u,v] in G f nicht vorkommen (/* sonst gilt sofort d f (v) = d f (u) + d f (u) + = d f (v) */) also muss die Kante [v,u] in G f auf dem zu erst gefundenen, kürzesten Erweiterungspfad P von s nach t liegen 7/3, Folie 4 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

25 Begründung... in G f... in G f s u v s u v t da [v,u] in G f auf dem zu erst gefundenen kürzesten Erweiterungspfad P von s nach t liegt, wissen wir: der Teilpfad P von s über v nach u in G f kann nicht mehr Kanten enthalten als der Pfad P in G f von s nach u (/* da P ein kürzester Pfad von s nach t ist, muss dessen Teilpfad P auch ein kürzester Pfad von s nach u sein */) also gilt: d f (v) = d f (u) - 7/3, Folie 5 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

26 Begründung... in G f... in G f s u v s u v wir wissen, dass gilt: d f (v) = d f (u) - wir wissen, dass gilt: d f (v) = d f (u) + t wenn d f (v) < d f (v) gilt, müsste auch d f (u) + < d f (u) - gelten also müsste auch d f (u) < d f (u) - gelten... wir haben jedoch vorausgesetzt, dass d f (u) d f (u) gilt, und haben damit einen Widerspruch abgeleitet 7/3, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

27 Beobachtung es sei G ein Flussnetzwerk mit n Knoten und m Kanten Dann gilt: Der Algorithmus von Edmonds und Karp benötigt höchstens O(n*m) viele Iterationen 7/3, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

28 Hilfsbegriff zur Begründung es sei G f ein Restflussnetzwerk mit der Kapazitätsfunktion es sei [u,v] eine Kante in G f die Kante [u,v] heißt kritisch für G f, falls gilt: der zu erst gefundene kürzeste Erweiterungspfad P in G f, der die Kante [u,v] benutzt es gilt c ([u,v]) = c P > 0... c P ist die minimale Kapazität einer Kante auf dem Erweiterungspfad P 7/3, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

29 Einige hilfreiche Beobachtungen es sei G ein Flussnetzwerk mit n Knoten und m Kanten es seien G f,..., G fz die Restflussnetzwerke, die der Algorithmus von Edmonds und Karp sukzessive erzeugt Dann gilt: Wenn die Kante [u,v] in einem Restflusswerk G fi kritisch ist, so kommt die Kante [u,v] oder die Kante [v,u] in G vor. Wenn die Kante [u,v] in einem Restflusswerk G fi kritisch ist, so kommt die Kante [u,v] im Restflusswerk G fi+ nicht vor. In jedem Restflusswerk G fi mit i < z kommt wenigstens eine kritische Kante [u,v] vor. 7/3, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

30 Qualitative Idee es sei G ein Flussnetzwerk mit n Knoten und m Kanten es seien G f,..., G fz die Restflussnetzwerke, die der Algorithmus von Edmonds und Karp sukzessive erzeugt wir werden zeigen:... jede überhaupt als kritische Kante infrage kommende Kante [u,v] kann nur O(n) mal benutzt werden, um ein neues Restflussnetzwerk zu definieren... da höchstens m viele Kanten überhaupt als kritische Kanten infrage kommen, kann es nur O(n*m) viele Restflussnetzwerke geben, die der Algorithmus von Edmonds und Karp sukzessive erzeugt 7/3, Folie 30 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

31 Begründung (/* einfacher Fall */) es sei die betrachtete Kante eine vom Typ [s,u] oder [u,t]... dann kann diese Kante nur einmal kritisch sein falls eine Kante vom Typ [s,u] oder [u,t] in im Restflussnetzwerk G fi kritisch ist, so enthält das Restflussnetzwerk G fi+ die Kante [s,u] oder [u,t] nicht mehr und dafür die Kante [u,s] oder [t,u] diese Kanten können im Restflussnetzwerk G fi+ nicht auf einem kürzesten Erweiterungspfad P von der Quelle s zur Senke t benutzt werden (/* sonst würden s oder t mehr als einmal besucht werden */) 7/3, Folie 3 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

32 Begründung (/* der schwierigere Fall */) es sei die betrachtete Kante eine vom Typ [u,v] mit u s und v t es sei G fi das Restflussnetzwerk, in dem die Kante [u,v] eine kritische Kante ist... in G fi... in G fi+ s u v s s u v s offenbar gilt d fi (v) = d fi (u) + 7/3, Folie 3 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

33 Begründung (/* der schwierigere Fall */) damit die Kante [u,v] in einem Restflussnetzwerk G fj mit j > i+ wieder eine kritische Kante werden kann, muß es ein k mit i+ k < j geben, so dass die umgedrehte Kante [v,u] eine kritische Kante im Restflussnetzwerk G fk ist... in G fk... in G fk+ s u v s s u v s offenbar gilt d fk (u) = d fk (v) + 7/3, Folie 33 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

34 Begründung (/* der schwierigere Fall */) wir wissen, dass d fi (v) = d fi (u) + gilt wir wissen, dass d fk (u) = d fk (v) + gilt wir wissen auch, dass i < k gilt, und damit gilt auch d fi (v) d fk (v)... also gilt d fk (u) = d fk (v) + d fi (u) + + = d fi (v) +... folglich hat sich die Entfernung des Knotens u von der Quelle s im Restflussnetwerk G fk im Vergleich zur Entfernung des Knotens u von der Quelle s im Restflussnetzwerk G fj echt vergrößert 7/3, Folie 34 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

35 Konsequenzen es sei G ein Flussnetzwerk mit n Knoten und m Kanten es seien G f,..., G fz die Restflussnetzwerke, die der Algorithmus von Edmonds und Karp sukzessive erzeugt dann gibt es mit Blick auf eine Kante [u,v] im schlimmsten Fall... spätestens wenn die Kante n-mal kritisch geworden ist, gilt d f (u) n in jedem noch zu untersuchenden Restflussnetzwerke G f... folglich kann die Kante [u,v] in in keinem der zu untersuchenden Restflussnetzwerke G f auf einem kürzesten Erweiterungspfad von der Quelle s zur Senke t benutzt werden (/* auf dem Teilpfad bis zum Knoten u würde schon jeder Knoten einmal vorkommen */) 7/3, Folie 35 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

36 Zusammenfassung wenn man die Ford-Fulkerson-Methode zur Bestimmung von maximalen Flüssen verwendet, sollte man stets nach kürzesten Erweiterungspfaden suchen wenn man eine Bereitensuche benutzt (/* siehe Algorithmus von Edmonds und Karp */), erhält man einen effizienten pfadbasierten Algorithmus 7/3, Folie 36 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

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

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Wasist das? Maximaler Fluss Minimaler Schnitt Warumtut man das? Logistische

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

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

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus

Mehr

Statistische Untersuchungen zu endlichen Funktionsgraphen

Statistische Untersuchungen zu endlichen Funktionsgraphen C# Projekt 1 Name: Statistische Untersuchungen zu endlichen Funktionsgraphen Aufgabe: Basierend auf dem Abschnitt 2.1.6. Random mappings, Kap.2, S 54-55, in [1] sollen zunächst für eine beliebige Funktion

Mehr

Algorithmen & Datenstrukturen 1. Klausur

Algorithmen & Datenstrukturen 1. Klausur Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 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/ws1314

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

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

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

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

Praktikum Planare Graphen

Praktikum Planare Graphen 1 Praktikum Planare Graphen Michael Baur, Martin Holzer, Steffen Mecke 10. November 2006 Einleitung Gliederung 2 Grundlagenwissen zu planaren Graphen Themenvorstellung Gruppeneinteilung Planare Graphen

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

Datenstrukturen & Algorithmen

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

Mehr

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

Datenstrukturen und Algorithmen SS07

Datenstrukturen und Algorithmen SS07 Datenstrukturen und Algorithmen SS07 Datum: 27.6.2007 Michael Belfrage mbe@student.ethz.ch belfrage.net/eth Programm von Heute Online Algorithmen Update von Listen Move to Front (MTF) Transpose Approximationen

Mehr

Algorithmen II Vorlesung am 15.11.2012

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

Mehr

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

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

Algorithmen und Datenstrukturen

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

Mehr

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

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

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

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

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

Mehr

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen WS 08/09 Friedhelm Meyer auf der Heide Vorlesung 8, 4.11.08 Friedhelm Meyer auf der Heide 1 Organisatorisches Am Dienstag, 11.11., fällt die

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

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen

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

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

Informatik 11 Kapitel 2 - Rekursive Datenstrukturen

Informatik 11 Kapitel 2 - Rekursive Datenstrukturen Fachschaft Informatik Informatik 11 Kapitel 2 - Rekursive Datenstrukturen Michael Steinhuber König-Karlmann-Gymnasium Altötting 15. Januar 2016 Folie 1/77 Inhaltsverzeichnis I 1 Datenstruktur Schlange

Mehr

Graphen: Einführung. Vorlesung Mathematische Strukturen. Sommersemester 2011

Graphen: Einführung. Vorlesung Mathematische Strukturen. Sommersemester 2011 Graphen: Einführung Vorlesung Mathematische Strukturen Zum Ende der Vorlesung beschäftigen wir uns mit Graphen. Graphen sind netzartige Strukturen, bestehend aus Knoten und Kanten. Sommersemester 20 Prof.

Mehr

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20 Suche in Spielbäumen Suche in Spielbäumen KI SS2011: Suche in Spielbäumen 1/20 Spiele in der KI Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche Einschränkung von Spielen auf: 2 Spieler:

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

Verfahren zur Berechnung von Routen zur Gewährleistung von Ende-zu-Ende QoS

Verfahren zur Berechnung von Routen zur Gewährleistung von Ende-zu-Ende QoS Verfahren zur Berechnung von Routen zur Gewährleistung von Ende-zu-Ende QoS Dezember 007 Dipl.-Ing. Stefan Abu Salah Dipl.-Ing. Achim Marikar QoS (Quality of Service): Sicherstellung der Qualität Zeitkritische

Mehr

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015 Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken

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

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

Lineare Programmierung

Lineare Programmierung Lineare Programmierung WS 2003/04 Rolle der Linearen Programmierung für das TSP 1954: Dantzig, Fulkerson & Johnson lösen das TSP für 49 US-Städte (ca. 6.2 10 60 mögliche Touren) 1998: 13.509 Städte in

Mehr

Konzepte der Informatik

Konzepte der Informatik Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer

Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer Vorlesung Informatik 2 Algorithmen und Datenstrukturen (20 Graphen) T. Lauer 1 Motivation Wie komme ich am besten von Freiburg nach Ulm? Was ist die kürzeste Rundreise durch eine gegebene Menge von Städten?

Mehr

Wissensbasierte Systeme

Wissensbasierte Systeme WBS3 Slide 1 Wissensbasierte Systeme Sebastian Iwanowski FH Wedel Kap. 3: Algorithmische Grundlagen der KI WBS3 Slide 2 Suchstrategien Warum sind Suchstrategien so wichtig in Wissensbasierten Systemen?

Mehr

Eine molekulare Lösung des Hamiltonkreisproblems mit DNA

Eine molekulare Lösung des Hamiltonkreisproblems mit DNA Eine molekulare Lösung des Hamiltonkreisproblems mit DNA Seminar Molecular Computing Bild: http://creatia2013.files.wordpress.com/2013/03/dna.gif Andreas Fehn 11. Juli 2013 Gliederung 1. Problemstellung

Mehr

Branch-and-Bound. Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir

Branch-and-Bound. Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir Effiziente Algorithmen Lösen NP-vollständiger Probleme 289 Branch-and-Bound Wir betrachten allgemein Probleme, deren Suchraum durch Bäume dargestellt werden kann. Innerhalb des Suchraums suchen wir 1.

Mehr

Kapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Kapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung Kapitel 6 Komplexität von Algorithmen 1 6.1 Beurteilung von Algorithmen I.d.R. existieren viele Algorithmen, um dieselbe Funktion zu realisieren. Welche Algorithmen sind die besseren? Betrachtung nicht-funktionaler

Mehr

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

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

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

Die k kürzesten Wege in gerichteten Graphen

Die k kürzesten Wege in gerichteten Graphen Die k kürzesten Wege in gerichteten Graphen Marc Benkert Wintersemester 001/00 1 Einführung 1.1 Problemstellung In einem gerichteten, gewichteten Graphen G = (V, E) sollen die k kürzesten Wege zu zwei

Mehr

Die Verbindung von Linearer Programmierung und Graphentheorie

Die Verbindung von Linearer Programmierung und Graphentheorie Die Verbindung von Linearer Programmierung und Graphentheorie Definition 5.9. Ein kombinatorisches Optimierungsproblem entspricht einem LP, bei dem statt der Vorzeichenbedingungen x i 0 Bedingungen der

Mehr

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Ein 5.55-Approximationsalgorithmus für das VPND-Problem Lars Schäfers Inhalt Einführung:

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

Breiten- und Tiefensuche in Graphen

Breiten- und Tiefensuche in Graphen Breiten- und Tiefensuche in Graphen Inhalt Theorie. Graphen. Die Breitensuche in der Theorie am Beispiel eines ungerichteten Graphen. Die Tiefensuche in der Theorie am Beispiel eines gerichteten Graphen

Mehr

ABITURPRÜFUNG 2009 LEISTUNGSFACH INFORMATIK

ABITURPRÜFUNG 2009 LEISTUNGSFACH INFORMATIK ABITURPRÜFUNG 2009 LEISTUNGSFACH INFORMATIK (HAUPTTERMIN) Bearbeitungszeit: 270 Minuten Hilfsmittel: Wörterbuch zur deutschen Rechtschreibung Taschenrechner (nicht programmierbar, nicht grafikfähig) (Schüler,

Mehr

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

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

Mehr

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

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

Mehr

Wasserfall-Ansätze zur Bildsegmentierung

Wasserfall-Ansätze zur Bildsegmentierung Wasserfall-Ansätze zur Bildsegmentierung von Philipp Jester Seminar: Bildsegmentierung und Computer Vision 16.01.2006 Überblick 1. Problemstellung 2. Wiederholung: Wasserscheiden-Ansätze 3. Der Wasserfall-Ansatz

Mehr

15 Optimales Kodieren

15 Optimales Kodieren 15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen

Mehr

Grundwissen Informatik Q11/12 Fragenkatalog

Grundwissen Informatik Q11/12 Fragenkatalog 12_Inf_GrundwissenInformatik_Opp.doc 1 Grundwissen Informatik Q11/12 Fragenkatalog 11/2 Aufgabengebiet 1: Graphen, Wege durch Graphen: 1. Durch welche Bestandteile wird ein Graph festgelegt? 2. Nenne verschiedene

Mehr

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29 1 29 Teil III: Routing - Inhalt I Literatur Compass & Face Routing Bounded & Adaptive Face Routing Nicht Ω(1) UDG E. Kranakis, H. Singh und Jorge Urrutia: Compass Routing on Geometric Networks. Canadian

Mehr

Information Systems Engineering Seminar

Information Systems Engineering Seminar Information Systems Engineering Seminar Algorithmische Prüfung der Planarität eines Graphen Marcel Stüttgen, 22.10.2012 FH AACHEN UNIVERSITY OF APPLIED SCIENCES 1 Planarität - Definition Ein Graph heißt

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

Vortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik)

Vortrag. Suchverfahren der Künstlichen Intelligenz. Sven Schmidt (Technische Informatik) Vortrag Suchverfahren der Künstlichen Intelligenz Sven Schmidt (Technische Informatik) Suchverfahren der Künstlichen Intelligenz Grundlagen Zustandsraumrepräsentation Generische Suche Bewertung von Suchstrategien

Mehr

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege Lange Nacht der Wissenschaft Ein Klassiker Die Mathematik der Kürzesten Wege 09.06.2007 schlechte@zib.de Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB) http://www.zib.de/schlechte 2 Überblick

Mehr

Guten Morgen und Willkommen zur Saalübung!

Guten Morgen und Willkommen zur Saalübung! Guten Morgen und Willkommen zur Saalübung! 1 Wie gewinnt man ein Spiel? Was ist ein Spiel? 2 Verschiedene Spiele Schach, Tic-Tac-Toe, Go Memory Backgammon Poker Nim, Käsekästchen... 3 Einschränkungen Zwei

Mehr

Schwierige Probleme in der Informatik Informationen für die Lehrperson

Schwierige Probleme in der Informatik Informationen für die Lehrperson Schwierige Probleme in der Informatik Informationen für die Lehrperson Thema, Adressaten,... Das Thema dieses Moduls sind NP-vollständige Probleme, also schwierige Probleme in der Informatik. GraphBench

Mehr

AutoSPARQL. Let Users Query Your Knowledge Base

AutoSPARQL. Let Users Query Your Knowledge Base AutoSPARQL Let Users Query Your Knowledge Base Christian Olczak Seminar aus maschinellem Lernen WS 11/12 Fachgebiet Knowledge Engineering Dr. Heiko Paulheim / Frederik Janssen 07.02.2012 Fachbereich Informatik

Mehr

Bäume und Wälder. Bäume und Wälder 1 / 37

Bäume und Wälder. Bäume und Wälder 1 / 37 Bäume und Wälder Bäume und Wälder 1 / 37 Bäume Ein (ungerichteter) Baum ist ein ungerichteter Graph G = (V, E), der zusammenhängend ist und keine einfachen Kreise enthält. Bäume und Wälder 2 / 37 Bäume

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

Algorithmen und Datenstrukturen Balancierte Suchbäume

Algorithmen und Datenstrukturen Balancierte Suchbäume Algorithmen und Datenstrukturen Balancierte Suchbäume Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Überblick Einführung Einfügen und Löschen Einfügen

Mehr

Informatik-Sommercamp 2012. Mastermind mit dem Android SDK

Informatik-Sommercamp 2012. Mastermind mit dem Android SDK Mastermind mit dem Android SDK Übersicht Einführungen Mastermind und Strategien (Stefan) Eclipse und das ADT Plugin (Jan) GUI-Programmierung (Dominik) Mastermind und Strategien - Übersicht Mastermind Spielregeln

Mehr

Seminar künstliche Intelligenz

Seminar künstliche Intelligenz Seminar künstliche Intelligenz Das Kürzeste-Wege-Problem in öffentlichen Verkehrsnetzen Stefan Görlich mi5517 25.05.2005 Inhalt 1. Einleitung 1.1 Problemstellung 3 1.2 Zielsetzung 3 1.3 Die Suche in öffentlichen

Mehr

Kapitel 4: Analyse von Petrinetzen

Kapitel 4: Analyse von Petrinetzen Kapitel 4: Analyse von Petrinetzen 1. Beispiele 2. Analyseansatz 3. Markierungsgraph 4. Beschränktheit 5. State Space Explosion: Beispiel 6. Komplementbildung 7. Zusammenhängend 8. Tot, lebendig, verklemmungsfrei

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

Institut für Programmierung und Reaktive Systeme 25. August 2014. Programmier-Labor. 04. + 05. Übungsblatt. int binarysearch(int[] a, int x),

Institut für Programmierung und Reaktive Systeme 25. August 2014. Programmier-Labor. 04. + 05. Übungsblatt. int binarysearch(int[] a, int x), Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 25. August 2014 Programmier-Labor 04. + 05. Übungsblatt Aufgabe 21: a) Schreiben Sie eine Methode

Mehr

Kapitel 2: Formale Sprachen Kontextfreie Sprachen. reguläre Grammatiken/Sprachen. kontextfreie Grammatiken/Sprachen

Kapitel 2: Formale Sprachen Kontextfreie Sprachen. reguläre Grammatiken/Sprachen. kontextfreie Grammatiken/Sprachen reguläre Grammatiken/prachen Beschreibung für Bezeichner in Programmiersprachen Beschreibung für wild cards in kriptsprachen (/* reguläre Ausdrücke */)?; [a-z]; * kontextfreie Grammatiken/prachen Beschreibung

Mehr

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert Inhalt Einführung 1. Arrays 1. Array unsortiert 2. Array sortiert 3. Heap 2. Listen 1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert 3. Bäume

Mehr

Wissensbasierte Systeme

Wissensbasierte Systeme WBS5 Slide 1 Wissensbasierte Systeme Vorlesung 5 vom 17.11.2004 Sebastian Iwanowski FH Wedel WBS5 Slide 2 Wissensbasierte Systeme 1. Motivation 2. Prinzipien und Anwendungen 3. Logische Grundlagen 4. Suchstrategien

Mehr

Programmiertechnik II

Programmiertechnik II Bäume Symboltabellen Suche nach Werten (items), die unter einem Schlüssel (key) gefunden werden können Bankkonten: Schlüssel ist Kontonummer Flugreservierung: Schlüssel ist Flugnummer, Reservierungsnummer,...

Mehr

Algorithmische Methoden der Netzwerkanalyse

Algorithmische Methoden der Netzwerkanalyse Algorithmische Methoden der Netzwerkanalyse Marco Gaertler 9. Dezember, 2008 1/ 15 Abstandszentralitäten 2/ 15 Distanzsummen auf Bäumen Lemma Sei T = (V, E) ein ungerichteter Baum und T s = (V S, E s )

Mehr

JÖRG RAMBAU. Neulich an der TU Berlin...

JÖRG RAMBAU. Neulich an der TU Berlin... Neulich an der TU Berlin... WO BLEIBT DER AUFZUG? Grrr!! u(x, y) = 1 + 4πy Zzzzz... u 0 (ξ)e (x ξ) 2 4y dξ Kann Mathematik da helfen? Wo bleibt der Aufzug Diskrete Mathematik spart Zeit und Nerven Jörg

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Sommersemester 2014 Jochen Hoenicke (Software Engineering) Einführung in die Informatik Sommersemester

Mehr

w a is die Anzahl der Vorkommen von a in w Beispiel: abba a = 2

w a is die Anzahl der Vorkommen von a in w Beispiel: abba a = 2 1 2 Notation für Wörter Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg w a is die Anzahl der Vorkommen von a in w Beispiel: abba

Mehr

Algorithmen und Datenstrukturen Suchbaum

Algorithmen und Datenstrukturen Suchbaum Algorithmen und Datenstrukturen Suchbaum Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Datenstruktur zur Repräsentation dynamischer Mengen

Mehr

Vergleich von Methoden zur Rekonstruktion von genregulatorischen Netzwerken (GRN)

Vergleich von Methoden zur Rekonstruktion von genregulatorischen Netzwerken (GRN) Exposé zur Bachelorarbeit: Vergleich von Methoden zur Rekonstruktion von genregulatorischen Netzwerken (GRN) Fakultät: Informatik, Humboldt-Universität zu Berlin Lijuan Shi 09.05.2013 Betreuer: Prof. Dr.

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

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

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

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

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1 3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)

Mehr

8. Uninformierte Suche

8. Uninformierte Suche 8. Uninformierte Suche Prof. Dr. Ruolf Kruse University of Mageurg Faculty of Computer Science Mageurg, Germany ruolf.kruse@cs.uni-mageurg.e S otationen () otationen: Graph Vorgänger (ancestor) von Knoten

Mehr

Algorithmik - Kompaktkurs

Algorithmik - Kompaktkurs Algorithmik - Kompaktkurs Sommersemester 2012 Steffen Lange 0/1, Folie 1 2012 Prof. Steffen Lange - HDa/FbI - Algorithmik Organisatorisches Vorlesung Folien im Netz (/* bitte zur Vorlesung mitbringen */)

Mehr

Smart Graphics: Methoden 2 Suche

Smart Graphics: Methoden 2 Suche Smart Graphics: Methoden 2 Suche Vorlesung Smart Graphics LMU München Medieninformatik Butz/Boring Smart Graphics SS2007 Methoden: Suche Folie 1 Themen heute Smart Graphics Probleme als Suchprobleme Suchverfahren

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

Modellierung biologischer. Christian Maidorfer Thomas Zwifl (Seminar aus Informatik)

Modellierung biologischer. Christian Maidorfer Thomas Zwifl (Seminar aus Informatik) Modellierung biologischer Prozesse Christian Maidorfer Thomas Zwifl (Seminar aus Informatik) Überblick Einführung Arten von Modellen Die stochastische Pi-Maschine Warum Modelle Die Biologie konzentriert

Mehr

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke Vorlesungsplan 17.10. Einleitung 24.10. Ein- und Ausgabe 31.10. Reformationstag, Einfache Regeln 7.11. Naïve Bayes, Entscheidungsbäume 14.11. Entscheidungsregeln, Assoziationsregeln 21.11. Lineare Modelle,

Mehr

x 2 x 1 x 3 5.1 Lernen mit Entscheidungsbäumen

x 2 x 1 x 3 5.1 Lernen mit Entscheidungsbäumen 5.1 Lernen mit Entscheidungsbäumen Falls zum Beispiel A = {gelb, rot, blau} R 2 und B = {0, 1}, so definiert der folgende Entscheidungsbaum eine Hypothese H : A B (wobei der Attributvektor aus A mit x

Mehr

Formale Systeme. Binary Decision Diagrams. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

Formale Systeme. Binary Decision Diagrams. Prof. Dr. Bernhard Beckert WS 2010/2011 KIT INSTITUT FÜR THEORETISCHE INFORMATIK Formale Systeme Prof. Dr. Bernhard Beckert WS / KIT INSTITUT FÜR THEORETISCHE INFORMATIK KIT University of the State of Baden-Württemberg and National Large-scale Research Center of the Helmholtz Association

Mehr

Datenstrukturen. Mariano Zelke. Sommersemester 2012

Datenstrukturen. Mariano Zelke. Sommersemester 2012 Datenstrukturen Mariano Zelke Sommersemester 2012 Mathematische Grundlagen: Das Handwerkszeug Mariano Zelke Datenstrukturen 2/26 Formeln: n - i = n (n+1) 2 und - i=1 k i=0 a i = ak+1 1 a 1, falls a 1 Rechnen

Mehr