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

2 Gliederung des Kapitels a) Einordnung / Motivation b) c) Wegbasierte Algorithmen 7/, Folie 015 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

3 u Begriff: Fluss es sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion ein Fluss für G ist eine Funktion f(.), die jeder Kante e in E eine nichtnegative reelle Zahl zuordnet, wobei für jeden Knoten v V mit v s und v t gilt: f((u,v)) = f((v,u)) (u,v) E (v,u) E... in jeden Knoten fließen genauso viele Produkte heraus wie hinein (/* Flusserhaltungs-Bedingung */) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

4 u Begriff: zulässiger Fluss sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein Fluss für G f(.) ist zulässig, falls für alle Kanten e E gilt: 0 f(e) c(e)... die Kapazitäten beschränken, wie viele Produkte entlang einer Kante maximal fließen können (/* Kapazitätsbeschränkungs-Bedingung */) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

5 u Begriff: Wert eines zulässigen Flusses sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss in G sei E E so gewählt, dass E alle Kanten mit dem Endknoten t enthält der Wert val(f) des Flusses f(.) bestimmt sich wie folgt: val(f) = f(e) e E 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

6 u Beispiel gegebenes Flussnetzwerk G = (V,E) mit... s t 3 4 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

7 u Beispiel zulässiger Fluss f(.) für G (/* wenn an einer Kante e der Wert (f,c) steht, so gilt f(e) = f und c(e) = c */) mit dem Wert val(f) = 3 s (1,) (1,4) 1 (0,) (3,7) 3 t (,3) (3,4) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

8 u Algorithmische Problem gegeben: ein Flussnetzwerk, d.h. ein gerichteter Graph mit einer Quelle s und einer Senke t eine Funktion c(.), die jeder Kante eine ganze Zahl größer 0 als Kapazität zuordnet gesucht: ein zulässiger Fluss f(.) für G, für den gilt, dass der Wert des Flusses val(f) maximal ist 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

9 u Anmerkungen wir werden uns zunächst einen nahe liegenden Lösungsansatz genauer ansehen feststellen, dass er nicht funktioniert und ihn im Anschluss so anpassen, dass das Gewünschte geleistet wird 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

10 u Zur Erinnerung ein Pfad von einem Knoten u zu einem Knoten v ist... ein Weg von einem Knoten u zu einem Koten v ist ein Pfad, in dem jede Kante nur einmal verwendet wird ein einfacher Weg von einem Knoten u zu einem Knoten v ist, ein Weg in dem jeder Knoten nur einmal benutzt wird wenn es einen Pfad von u nach v gibt, gibt es auch einen Weg von u nach v und auch einen einfachen Weg von u nach v 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

11 u Algorithmische Idee sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion 1) setze f(e) = 0 für alle e E ) prüfe, ob es in G einen einfachen Weg von der Quelle s zur Senke t gibt, so dass für alle Kanten e auf diesem Weg f(e) < c(e) gilt falls nein, gib den bisher bestimmten Fluss aus falls ja, sei W der gefundene Weg bestimme unter allen Kanten e auf dem Weg W diejenige Kante e*, für die der Wert c(e) - f(e) minimal ist setze h = c(e*) - f(e*) setze f(e) = f(e) + h für alle Kanten e auf dem Weg W gehe zu )... offenbar ist jeder Schritt ) erzeugte Fluss auch zulässig 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

12 u Beispiel gegebenes Flussnetzwerk G = (V,E) mit Quelle s, Senke t und der zugehörige Kapazitätsfunktion c(.) sowie der zu Beginn festgelegte zulässige Fluss f(.) s (0,) (0,4) 1 (0,) (0,7) 3 t (0,3) (0,4) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

13 u Beispiel in Schritt ) kann der folgende rot markierte Weg gefunden werden s (0,) (0,4) 1 (0,) (0,7) 3 t (0,3) (0,4) Resultat von Schritt ) (/* Flussnetzwerk G mit dem aktuellen Fluss */) s (,) (,4) 1 (0,) (,7) 3 t (0,3) (,4) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

14 u Beispiel in Schritt ) kann der folgende rot markierte Weg gefunden werden s (,) (,4) 1 (0,) (,7) 3 t (0,3) (,4) Resultat von Schritt ) (/* Flussnetzwerk G mit dem aktuellen Fluss */) s (,) (,4) 1 (0,) (4,7) 3 t (,3) (4,4) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

15 u Beispiel in Schritt ) wird festgestellt, dass es keinen passenden Weg mehr gibt, der von der Quelle s zur Senke t geht s (,) (,4) 1 (0,) (4,7) 3 t (,3) (4,4) als Ergebnis wird ein zulässiger Fluss f(.) mit dem Wert val(f) = 4 ausgegeben 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

16 u Beispiel es gibt jedoch einen zulässigen Fluss f(.) mit dem Wert val(f) = 5 s (,) (1,4) 1 (1,) (5,7) 3 t (3,3) (4,4) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

17 u Anmerkung der vorgestellte Lösungsansatz funktioniert nicht man könnte einwenden, dass die im Beispiel verwendeten Wege von der Quelle s zur Senke t nur ungeschickt ausgewählt wurden... wenn man das vermeiden will, bedarf es lokal überprüfbarer Kriterien (/* die bisher aber niemand kennt */)... nahe liegenden Kriterien (/* bspw. unter allen möglichen Wegen einen kürzesten Weg zu benutzen bzw. einen, der den aktuellen Fluss maximal vergrößert */) taugen nicht 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

18 u Modifiziertes Beispiel (zur Illustration) (0,) (0,) (0,4) 1 (0,) (0,) s (0,4) (0,4) 3 t (0,7) 1 (0,) (0,) (0,)... gemäß beider Kriterien wird der rot markierte Weg ausgewählt und (wie gehabt) ein zulässiger Fluss f(.) mit val(f) = 4 bestimmt... es gibt jedoch (wie gehabt) einen Fluss f(.) mit val(f) = 5 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

19 u Anmerkungen um den Wert eines maximalen Flusses in einem Flussnetzwerk zu bestimmen, genügt es nicht, zu Beginn einen Fluss f(.) zu bestimmen zu überprüfen, ob es in G noch einen Weg von s zu t gibt, über den noch Produkte fließen können, und - falls das der Fall ist - f(.) geeignet zu vergrößern... dieser Ansatz funktioniert jedoch in einer leicht modifizierten Form... bevor wir die relevanten Details ausarbeiten, schauen wir uns genauer an, welche Eigenschaften zulässige Flüsse haben 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

20 u Begriff: (s,t)-schnitt sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei (S,T) eine Zerlegung der Knotenmenge V, d.h. es gilt S T = V und S T = (S,T) ist ein (s,t)-schnitt, falls gilt: s S und t T 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

21 u Beispiel s t 3 4 S = { s } S = { s,1 }, S = { s, }, S = { s,3 } S = { s,1, }, S = { s,1,3 }, S = { s,,3 } S = { s,1,,3 } 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

22 u Hilfsbegriff: relevante Kanten eines (s,t)-schnitt sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion es sei (S,T) ein (s,t)-schnitt jede Kante e = (u,v) mit u S und v T nennen wir relevante Kante für den (s,t)-schnitt (S,T)... relevante Kanten sind den Schnitt kreuzende Kanten, entlang derer Material von s nach t transportiert werden kann 7/, Folie 015 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

23 u Begriff: Kapazität eines (s,t)-schnitt sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei (S,T) ein (s,t)-schnitt sei R E die Menge der relevanten Kanten für den (s,t)-schnitt (S,T) die Kapazität c((s,t)) des (s,t)-schnitts (S,T) ist definiert als: c((s,t)) = c(e) e R 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

24 u Beispiel s t 3 4 S = { s } mit c(s,t) = c((s,1)) + c((s,)) = 5 S = { s,1 } mit c(s,t) = c((s,)) + c((1,)) + c((1,3)) = 9,..., S = { s,3 } mit c(s,t) = c((s,1)) + c((s,)) + c((3,t))= 1... S = { s,1,,3 } mit c(s,t) = c((3,t)) = 7 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

25 u Die zentrale Eigenschaft zulässiger Flüsse sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss Dann gilt: val(f) = f(e), wobei R die Menge der relevanten e R Kanten irgendeines (s,t)-schnitt (S,T) sind.... das ist de facto eine direkte Folgerung aus der Flusserhaltungs- Bedingung 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

26 u Illustration der Beweisidee s (,) (,3) (,4) 1 (0,) (4,4) (4,7) 3 t S = { s,1} T = {,3,t } R = { (s,),(1,),(1,3) } val(f) = f((3,t)) = 0 = 0 = f((3,t)) + f((s,)) + f((1,) - f((,3)) + f((1,3)) + f((,3) - f((3,t)) = f((3,t)) - f((3,t)) + f((s,)) + f((1,)) + f((1,3)) + f((,3)) - f((,3)) = f((s,)) + f((1,)) + f((1,3)) = f(e) e R 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

27 u Anmerkungen zur Beweisidee benutze die Definition val(f) =... addiere auf der rechten Seite für alle Knoten v in T die Werte f(e) für alle Kanten mit dem Endknoten v und subtrahiere die Werte f(e) für alle Kanten mit dem Anfangsknoten v wegen der Flusserhaltungsbedingung hat man den Wert der rechten Seite nicht verändert in der Summe auf der rechten Seite kommt der Wert f(e) für jede relevante Kante e des (s,t)-schnittes (S,T) genau einmal vor (/* dieser Wert wird addiert */) der Wert f(e) jeder anderen Kante kommt zweimal vor (/* dieser Wert wird einmal addiert und einmal subtrahiert */) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

28 u Eine unmittelbare Folgerung sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss Dann gilt: val(f) c((s,t)), wobei (S,T) irgendein (s,t)-schnitt ist. Begründung:... da f(.) ein zulässiger Fluss ist, gilt f(e) c(e) für alle Kanten e und damit gilt auch mit Blick auf die relevanten Kanten R des (s,t)-schnittes (S,T): val(f) = f(e) c((s,t)) e R 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

29 u Eine weitere unmittelbare Folgerung sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss Dann gilt: Wenn val(f) = c((s,t)) für irgendeinen (s,t)-schnitt (S,T) gilt, so ist f(.) sogar ein maximaler Fluss. Begründung:... für jeden anderen zulässigen Fluss f (.) muss mit Blick auf die relevanten Kanten R dieses (s,t)-schnittes (S,T) ebenfalls gelten: val(f ) = f (e) c((s,t)) e R 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

30 u Anmerkung die letzte Folgerung zeigt uns einen Weg, wie man nachweisen kann, dass ein Algorithmus zum Bestimmen maximaler Flüsse hierzu genügt es zu zeigen, dass es einen (s,t)-schnitt (S,T) gibt, so dass für alle relevanten Kanten e dieses (S,T)-Schnittes gilt, dass die Werte f(e) und c(e) gleich sind (/* dann gilt auch val(f) = c((s,t)) */)... wir schauen uns jetzt an, wie man einen solches maximalen Fluss auf eine andere Art beschreiben kann und leiten daraus dann eine algorithmische Idee ab 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

31 u Zugrunde liegende Intention... Ausgangpunkt: Flussnetzwerk G mit einem gegebenen Fluss f(.) (4,4) 1 (0,) s (0,3) (4,5) (4,4) t Zentrale Frage: Wie könnte man den aktuellen Fluss modifizieren? durch die Kanten (s,), (1,) und (1,t) könnte mehr Material fließen durch die Kanten (s,1), (1,) und (,t) könnte weniger Material fließen ein anderer Blick auf G und f hilft, diese beide Aspekten geeignet zu modellieren 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

32 u Zugrunde liegende Intention... Ausgangspunkt: Flussnetzwerk G mit einem gegebenen Fluss f(.) (4,4) 1 (0,) s (0,3) (4,5) (4,4) t... das zu G und f(.) gehörende Restflussnetzwerk G f 1 s t 4 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

33 u Spätere Verwendung... im Restflussnetzwerk G f gibt es einen passenden Weg von s nach t, der die Kanten (s,), (,1) und (1,t) benutzt und einen Materialfluss der Größe ermöglicht 1 s t 4... zusammen mit dem Fluss f(.) erhält man folgenden Gesamtfluss: (4,4) 1 (,) s (,3) (,5) (4,4) t 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

34 u Begriff: Restflussnetzwerk sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss in G das zugehörige Restflusswerk G f mit der Kapazitätsfunktion c (.) ist folgt definiert: G f enthält dieselbe Knotenmenge wie G zu jeder Kante e = (u,v) von G mit f(e) < c(e) gibt es in G f die Vorwärtskante e = (u,v) mit der Kapazität c (e ) = c(e) - f(e) zu jeder Kante e = (u,v) von G mit f(e) > 0 gibt es in G f eine Rückwärtskante e = (v,u) mit der Kapazität c (e ) = f(e)... Vorwärtskanten werden später blau und Rückwärtskanten rot dargestellt... offenbar hat G f nur Kanten e mit c (e ) > 0 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

35 u Beispiel s (,) (1,4) 1 (1,) (3,7) 3 t (1,3) (,4) s t 4 1 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

36 u Begriff: Erweiterungsweg im Restflusswerk und dessen Kapazität sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t und c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss in G und G f das zugehörige Restflussnetzwerk mit der Kapazitätsfunktion c (.) ein einfacher Weg W in G f von der Quelle s zur Senke t heißt Erweiterungsweg im Restflussnetzwerk G f die Kapazität c W des Erweiterungsweges W ist die Kapazität derjenigen Kante e auf dem Weg W, für die Kapazität c (e ) minimal ist 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

37 u Beispiel s t es sei W = (s,,1,3,t)... dann ist c W = 1 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

38 u Ein grundlegender Zusammenhang sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss in G und G f das zugehörige Restflussnetzwerk mit der Kapazitätsfunktion c (.) Dann gilt: Wenn es in G f keinen Erweiterungsweg gibt, so ist f(.) ein maximaler Fluss in G.... offenbar genügt es zu zeigen, dass es in G einen (s,t)-schnitt (S,T) mit val(f) = c((s,t)) gibt 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

39 u Beweisidee da es in G f keinen Erweiterungsweg gibt, ist die Senke t von der Quelle s aus nicht erreichbar es seien S die Teilmenge aller Knoten in G f, die von der Quelle s aus erreichbar sind, und T = V \ S offenbar ist (S,T) eine (s,t)-schnitt in G f (/* und damit auch auch ein (s,t)-schnitt G */) es sei nun e = (u,v) eine Kante in G, die für den (s,t)-schnitt (S,T) relevant ist, d.h. es gilt u S und v T da f(.) ein zulässiger Fluss in G ist, gilt auch 0 f(e) c(e) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

40 u Beweisidee Annahme: f(e) < c(e) da c(e) - f(e) > 0 ist, gibt es in G f die Vorwärtskante e = (u,v) da der Knoten u zu S gehört, muss in G f der Knoten u von der Quelle s aus erreichbar sein also wäre auch der Knoten v in G f von der Quelle s aus erreichbar also müsste der Knoten v zur Menge S gehören und folglich kann die Kante e = (u,v) keine Kante in G sein, die für den (s,t)-schnitt (S,T) relevant ist 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

41 u Begriff: Aktualisierter Fluss im Flussnetzwerk sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss in G und G f das zugehörige Restflussnetzwerk mit der Kapazitätsfunktion c (.) sei W ein Erweiterungsweg in G f mit der Kapazität c W dann ist der aktualisierte Fluss f (.) in G für alle Kanten e = (u,v) wie folgt definiert: f (e) = f(e) + c w, falls die zur Kante e gehörende Vorwärtskante e = (u,v) zum Weg W in G f gehört f (e) = f(e ) - c W, falls die zur Kante e gehörende Rückwärtskante e = (v,u) zum Weg W in G f gehört f (e) = f(e), sonst 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

42 u Anmerkung da ein Erweiterungsweg ein einfacher Weg ist, ist die Definition des aktualisierten Flusses f (.) korrekt... in einem Erweiterungsweg wird jede Kante einmal benutzt... in einem Erweiterungsweg können nicht gleichzeitig die Kanten (u,v) und (v,u) benutzt werden 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

43 u Folgerung sei G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t sowie c(.) die zugehörige Kapazitätsfunktion sei f(.) ein zulässiger Fluss in G und G f das zugehörige Restflussnetzwerk mit der Kapazitätsfunktion c (.) sei W ein Erweiterungsweg in G f mit der Kapazität c W sei f (.) der aktualisierte Fluss in G Dann gilt: f (.) ist ein zulässiger Fluss für G mit val(f ) = val(f) + c W. 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

44 u Beweisidee sei W = (s,v 1,...,v k,t) der gefundene Erweiterungsweg, wobei offenbar für jeden Zwischenknoten v i gilt: in W wird genau eine Kante mit dem Anfangsknoten v i und genau eine Kante mit dem Endknoten v i benutzt es sind drei Dinge zu überprüfen: f (.) erfüllt die Flusserhaltungs-Bedingung f (.) erfüllt die Kapazitätserhaltungs-Bedingung val(f ) = val(f) + c W 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

45 u Beweisidee Aspekt: Flusserhaltungs-Bedingung mit Blick auf irgendeinen Knoten v i auf dem Weg W in G f (/* es sind vier Fälle zu unterscheiden */)... Knoten v i in G f und die in W benutzten Kanten: c W c W c W c W c W c W c W c W v i v i v i v i... und in G: + c W + c W + c W - c W - c W + c W - c W - c W v i v i v i v i 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

46 u Beweisidee Aspekt: Kapazitätsbeschränkungs-Bedingung (/* es sind zwei Fälle zu unterscheiden, wobei wir benutzen können, das f(e) c(e) für alle Kanten in G gilt */)... Kante e = (u,v) in G f : c W c (e ) = c(e) - f(e) 0 < c W c (e ) = f(e)... und die zugehörige Kante e in G: f (e) = f(e) + c W c(e) 0 f (e) = f(e) - c W < f(e) c(e) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

47 u Beweisidee Aspekt: val(f ) = val(f) + c W da der Erweiterungsweg W ein einfacher Weg ist, kommt der Knoten t nur einmal vor da t eine Senke im Flussnetzwerk ist, gibt es in G keine Kante mit der Anfangsecke t die zugehörige Kante e auf dem Weg W in G f mit dem Endknoten t muss also eine Vorwärtskante sein also gilt: f (e) = f(e) + c W und damit gilt auch: val(f ) = val(f) + c W 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

48 u Das Min-Cut-Max-Flow-Theorem es seien G = (V,E) ein Flussnetzwerk mit Quelle s und Senke t und c(.) die zugehörige Kapazitätsfunktion es sei f*(.) ein maximaler Fluss für G es sei (S*,T*) ein (s,t)-schnitt mit minimaler Kapazität für G Dann gilt: Der Wert val(f*) eines maximalen Flusses f*(.) für G ist gleich der Kapazität c((s*,t*)) des (s,t)-schnittes (S*,T*).... dass val(f*) c((s*,t*)) gilt, haben wir uns schon überlegt... dass c((s*,t*)) val(f*) gilt, folgt aus den letzten Überlegungen 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

49 u abgeleitete algorithmische Idee sei f(.) so gewählt, dass f(e) = 0 für alle Kanten e in G gilt 1) bestimme das zu f(.) gehörende Restflussnetzwerk G f ) falls es in G f keinen Erweiterungsweg gibt, so gilt f(.) = f*(.) (/* dass das korrekt ist, wissen wir auch schon */) 3) falls es einen Erweiterungsweg gibt, bestimme c W sowie den aktualisierten Fluss f (.), setze f(.) = f (.) und gehe zu )... wenn alle Kapazitäten c(.) ganzzahlig sind, kann 3) nicht endlich oft ausgeführt werden, da c W stets eine ganze Zahl größer oder gleich 1 ist 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

50 u Zwischenzusammenfassung wir kennen damit also schon eine algorithmische Idee, die funktioniert, um maximale Flüsse in Flussnetzwerken zu bestimmen wir diskutieren noch, wie man diese algorithmische Idee effizient realisiert (/* wie das geht, ist nicht ganz offensichtlich*/) 7/, Folie Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

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

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

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 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

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

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

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

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 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

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

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

Kombinatorische Optimierung

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

Mehr

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Mathematik-Dossier. Die lineare Funktion

Mathematik-Dossier. Die lineare Funktion Name: Mathematik-Dossier Die lineare Funktion Inhalt: Lineare Funktion Lösen von Gleichungssystemen und schneiden von Geraden Verwendung: Dieses Dossier dient der Repetition und Festigung innerhalb der

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

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

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

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

Maximizing the Spread of Influence through a Social Network

Maximizing the Spread of Influence through a Social Network 1 / 26 Maximizing the Spread of Influence through a Social Network 19.06.2007 / Thomas Wener TU-Darmstadt Seminar aus Data und Web Mining bei Prof. Fürnkranz 2 / 26 Gliederung Einleitung 1 Einleitung 2

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

4. Musterlösung. Problem 1: Kreuzende Schnitte **

4. Musterlösung. Problem 1: Kreuzende Schnitte ** Unverstät Karlsruhe Algorthmentechnk Fakultät für Informatk WS 05/06 ITI Wagner 4. Musterlösung Problem 1: Kreuzende Schntte ** Zwe Schntte (S, V \ S) und (T, V \ T ) n enem Graph G = (V, E) kreuzen sch,

Mehr

Kapitel 3: Problemformulierungen in der KI. oder das Problem ist die halbe Lösung

Kapitel 3: Problemformulierungen in der KI. oder das Problem ist die halbe Lösung Kapitel 3: Problemformulierungen in der KI oder das Problem ist die halbe Lösung Lernziele: eine Struktur für die Definition eines problemlösenden Agenten kennen die wichtige Rolle von Abstraktionen in

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

Informatik Biber. Lehrmittel für die informatische Bildung an der Sekundarstufe I. Kopiervorlagen. Informatik Biber

Informatik Biber. Lehrmittel für die informatische Bildung an der Sekundarstufe I. Kopiervorlagen. Informatik Biber Informatik Biber Informatik Biber Lehrmittel für die informatische Bildung an der Sekundarstufe I Kopiervorlagen Verkehr Optimieren Wie finde ich die bester Rundreise? Inhaltsverzeichnis Lernaufgaben ohne

Mehr

Kapitel 2: Formale Sprachen Gliederung

Kapitel 2: Formale Sprachen Gliederung Gliederung 0. Einleitung und Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.1. Chomsky-Grammatiken 2.2. Reguläre Sprachen 2.3. Kontextfreie Sprachen

Mehr

Graphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007

Graphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007 Graphentheorie Rainer Schrader Organisatorisches Zentrum für Angewandte Informatik Köln 23. Oktober 2007 1 / 79 2 / 79 Organisatorisches Organisatorisches Dozent: Prof. Dr. Rainer Schrader Weyertal 80

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

2.11 Kontextfreie Grammatiken und Parsebäume

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

Mehr

Graphentheorie Mathe-Club Klasse 5/6

Graphentheorie Mathe-Club Klasse 5/6 Graphentheorie Mathe-Club Klasse 5/6 Thomas Krakow Rostock, den 26. April 2006 Inhaltsverzeichnis 1 Einleitung 3 2 Grundbegriffe und einfache Sätze über Graphen 5 2.1 Der Knotengrad.................................

Mehr

Einführung in Petri-Netze. Modellierung von Abläufen und Prozessen (1) Abhängigkeitsgraphen: Motivation. Petri-Netze

Einführung in Petri-Netze. Modellierung von Abläufen und Prozessen (1) Abhängigkeitsgraphen: Motivation. Petri-Netze Einführung in Petri-Netze Modellierung von Abläufen und Prozessen () Motivation Abhängigkeitsgraphen: A B 6 C 5 D Petri-Netze Markierungen Invarianten Credits: L. Priese, H. Wimmel: Petri-Netze, Theoretische

Mehr

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

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

Mehr

6.2 Petri-Netze. kommunizierenden Prozessen in der Realität oder in Rechnern Verhalten von Hardware-Komponenten Geschäftsabläufe Spielpläne

6.2 Petri-Netze. kommunizierenden Prozessen in der Realität oder in Rechnern Verhalten von Hardware-Komponenten Geschäftsabläufe Spielpläne 6.2 Petri-Netze WS 06/07 mod 621 Petri-Netz (auch Stellen-/Transitions-Netz): Formaler Kalkül zur Modellierung von Abläufen mit nebenläufigen Prozessen und kausalen Beziehungen Basiert auf bipartiten gerichteten

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

Grundlagen des Maschinellen Lernens Kap. 4: Lernmodelle Teil II

Grundlagen des Maschinellen Lernens Kap. 4: Lernmodelle Teil II 1. Motivation 2. Lernmodelle Teil I 2.1. Lernen im Limes 2.2. Fallstudie: Lernen von Patternsprachen 3. Lernverfahren in anderen Domänen 3.1. Automatensynthese 3.2. Entscheidungsbäume 3.3. Entscheidungsbäume

Mehr

Algorithmen und Datenstrukturen (WS 2007/08) 63

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

Mehr

Gleichungen - Aufgabenstellung und Lösungsstrategien

Gleichungen - Aufgabenstellung und Lösungsstrategien Gleichungen - Aufgabenstellung und Lösungsstrategien Franz Pauer Institut für Mathematik, Universität Innsbruck, Technikerstr. 25, A-6020 Innsbruck, Österreich. Franz.Pauer@uibk.ac.at 18. Juli 2006 1 Einleitung

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

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

Periodische Fahrpläne und Kreise in Graphen

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

Mehr

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

Zeichnen von Graphen. graph drawing

Zeichnen von Graphen. graph drawing Zeichnen von Graphen graph drawing WS 2006 / 2007 Gruppe: D_rot_Ala0607 Christian Becker 11042315 Eugen Plischke 11042351 Vadim Filippov 11042026 Gegeben sei ein Graph G = (V; E) Problemstellung V E =

Mehr

Negative Zahlen. Lösung: Ordne in einen Zahlenstrahl ein! 7;5; 3; 6. Das Dezimalsystem

Negative Zahlen. Lösung: Ordne in einen Zahlenstrahl ein! 7;5; 3; 6. Das Dezimalsystem Negative Zahlen Negative Zahlen Ordne in einen Zahlenstrahl ein! 7;5; 3; 6 Das Dezimalsystem Zerlege in Stufen! Einer, Zehner, usw. a) 3.185.629 b) 24.045.376 c) 3.010.500.700 Das Dezimalsystem a) 3M 1HT

Mehr

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Tardos Janick Martinez Esturo jmartine@techfak.uni-bielefeld.de xx.08.2007 Sommerakademie Görlitz Arbeitsgruppe 5 Gliederung

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

Architektur verteilter Anwendungen

Architektur verteilter Anwendungen Architektur verteilter Anwendungen Schwerpunkt: verteilte Algorithmen Algorithmus: endliche Folge von Zuständen Verteilt: unabhängige Prozessoren rechnen tauschen Informationen über Nachrichten aus Komplexitä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

Definition eines Spiels

Definition eines Spiels Definition eines piels 1. Einleitung 1.1 Einführung: Die mathematische pieltheorie beschäftigt sich nicht nur mit der Beschreibung und Analyse von pielen im üblichen inn, sondern allgemein mit Konfliktsituationen

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

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

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

Wie findet das Navi den Weg?

Wie findet das Navi den Weg? 0.05.0 Verwandte Fragestellungen Problemstellungen aus der Praxis Prof. Dr. Paul Rawiel Gliederung des Vortrags Speicherung von Kartendaten zur Navigation Kriterien für die Navigation Finden des kürzesten

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

Dynamische Optimierung. Kapitel 4. Dynamische Optimierung. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 160 / 206

Dynamische Optimierung. Kapitel 4. Dynamische Optimierung. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 160 / 206 Kapitel 4 Dynamische Optimierung Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 160 / 206 Inhalt Inhalt 4 Dynamische Optimierung Allgemeiner Ansatz und Beispiele Stochastische dynamische

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

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

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Steinerbäume Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Verfasser Flamur Kastrati Betreuer Prof. Dr. habil. Thomas

Mehr

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

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

Mehr

Kapitel 15: Differentialgleichungen

Kapitel 15: Differentialgleichungen FernUNI Hagen WS 00/03 Kapitel 15: Differentialgleichungen Differentialgleichungen = Gleichungen die Beziehungen zwischen einer Funktion und mindestens einer ihrer Ableitungen herstellen. Kommen bei vielen

Mehr

Ein Branch & Cut Verfahren zur Lösung des gewichteten Steinerbaumproblems in Graphen

Ein Branch & Cut Verfahren zur Lösung des gewichteten Steinerbaumproblems in Graphen Jack-III Ein Branch & Cut Verfahren zur Lösung des gewichteten Steinerbaumproblems in Graphen Diplomarbeit angefertigt von Thorsten Koch eingereicht beim Fachbereich Mathematik der Technischen Universität

Mehr

Hefte zur Logistik Prof. Dr. Siegfried Jetzke. Heft 4 Kostenrechnung für Tourenplanung dispositiv

Hefte zur Logistik Prof. Dr. Siegfried Jetzke. Heft 4 Kostenrechnung für Tourenplanung dispositiv Hefte zur Logistik Prof. Dr. Siegfried Jetzke Heft 4 Kostenrechnung für Tourenplanung dispositiv Oktober 2010 Dieses Heft ist urheberrechtlich geschützt. Wenn Sie die Quelle angeben, können Sie gerne dieses

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

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

Lenstras Algorithmus für Faktorisierung

Lenstras Algorithmus für Faktorisierung Lenstras Algorithmus für Faktorisierung Bertil Nestorius 9 März 2010 1 Motivation Die schnelle Faktorisierung von Zahlen ist heutzutage ein sehr wichtigen Thema, zb gibt es in der Kryptographie viele weit

Mehr

Erzeugung zufälliger Graphen und Bayes-Netze

Erzeugung zufälliger Graphen und Bayes-Netze Erzeugung zufälliger Graphen und Bayes-Netze Proseminar Algorithmen auf Graphen Georg Lukas, IF2000 2002-07-09 E-Mail: georg@op-co.de Folien: http://op-co.de/bayes/ Gliederung 1. Einleitung 2. einfache

Mehr

Tutorial: Entlohnungsberechnung erstellen mit LibreOffice Calc 3.5

Tutorial: Entlohnungsberechnung erstellen mit LibreOffice Calc 3.5 Tutorial: Entlohnungsberechnung erstellen mit LibreOffice Calc 3.5 In diesem Tutorial will ich Ihnen zeigen, wie man mit LibreOffice Calc 3.5 eine einfache Entlohnungsberechnung erstellt, wobei eine automatische

Mehr

Ein Algorithmus für die

Ein Algorithmus für die VGG 1 Ein Algorithmus für die Visualisierung gerichteter Graphen in der Ebene (2D) Seminar Graph Drawing SS 2004 bei Prof. Bischof (Lehrstuhl für Hochleistungsrechnen) Gliederung VGG 2 Einleitung Motivation

Mehr

PROSEMINAR ONLINE ALGORITHMEN

PROSEMINAR ONLINE ALGORITHMEN PROSEMINAR ONLINE ALGORITHMEN im Wintersemester 2000/2001 Prof. Dr. Rolf Klein, Dr. Elmar Langetepe, Dipl. Inform. Thomas Kamphans (Betreuer) Vortrag vom 15.11.2000 von Jan Schmitt Thema : Finden eines

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

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

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

Mehr

Approximations-Algorithmen

Approximations-Algorithmen Approximations-Algorithmen Institut für Computergraphik und Algorithmen Abteilung für Algorithmen und Datenstrukturen 186.102 Sommersemester 2004, 2h VU Motivation: Bereits viele einfache Optimierungsprobleme

Mehr

26.01.2009. Gliederung. Nebenläufigkeit und Fairness. 1. Nebenläufigkeit Lokalitätsprinzip. 2. Betrachtungsweisen von Nebenläufigkeit. 3.

26.01.2009. Gliederung. Nebenläufigkeit und Fairness. 1. Nebenläufigkeit Lokalitätsprinzip. 2. Betrachtungsweisen von Nebenläufigkeit. 3. Gliederung Lokalitätsprinzip Nebenläufigkeit und Fairness Seminar Model lchecking WS 08/09 Interleaving Halbordnung. Fairness Jan Engelsberg engelsbe@informatik.hu berlin.de Was ist Nebenläufigkeit? In

Mehr

Grundlagen der Programmierung 2. Bäume

Grundlagen der Programmierung 2. Bäume Grundlagen der Programmierung 2 Bäume Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 24. Mai 2006 Graphen Graph: Menge von Knoten undzugehörige (gerichtete oder ungerichtete)

Mehr

Eine Logikschaltung zur Addition zweier Zahlen

Eine Logikschaltung zur Addition zweier Zahlen Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung

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

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

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

Fit in Mathe. Juni 2014 Klassenstufe 9. Lineare Funktionen

Fit in Mathe. Juni 2014 Klassenstufe 9. Lineare Funktionen Thema Musterlösungen Juni 0 Klassenstufe 9 Lineare Funktionen a) Vervollständige die Tabelle mit den Funktionswerten: x 6 8 0 6 0 x 5 6 7 8 9 0 b) Gib die Funktionsgleichung an x 6 8 0 6 0 8 x,5,75,5 0,5-0,5

Mehr

Teil II. Nichtlineare Optimierung

Teil II. Nichtlineare Optimierung Teil II Nichtlineare Optimierung 60 Kapitel 1 Einleitung In diesem Abschnitt wird die Optimierung von Funktionen min {f(x)} x Ω betrachtet, wobei Ω R n eine abgeschlossene Menge und f : Ω R eine gegebene

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

Anleitung So klappt der Downloadschnitt

Anleitung So klappt der Downloadschnitt Anleitung So klappt der Downloadschnitt Liebe Kundin, lieber Kunde, bitte nehmen Sie sich einen Augenblick Zeit um diese Anleitung zu lesen. Sie enthält nützliche Tipps und Tricks zum Thema Downloadschnitte

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr