Lösungsvorschläge zu den Aufgaben

Größe: px
Ab Seite anzeigen:

Download "Lösungsvorschläge zu den Aufgaben"

Transkript

1 Lösungsvorschläge zu den Aufgaben Version: Hinweis: Diese Lösungen sind nicht als Musterlösungen gedacht, die zeigen sollen, wie man seine Lösungen aufschreiben soll. Sie sollen nur kurz und knapp eine jeweils mögliche Lösung skizzieren. Auch gilt wieder: Für die Rückmeldung gefundener Fehler bin ich immer dankbar. Aufgabe 1: a) Aussage ist korrekt. Argument: Nach Vizing kann man die Kanten mit + 1 Farben färben. Nach dem Schubfachprinzip gibt es also eine Farbe, die an mindestens e/( + 1) vielen Kanten benutzt wird. Damit gibt es ein Matching M, das mindestens e/( + 1) viele Kanten enthält. Also braucht jeder Vertex Cover mindestens M e/( + 1) viele Knoten. Anderes Argument: Jeder Knoten kann höchstens Kanten abdecken. Da e Kanten abzudecken sind, hat jeder Vertex Cover mindestens e/ e/( + 1) viele Knoten. b) Diese Aussage ist falsch, wie man an folgendem Beispiel sieht: Ein Graph aus 6 Knoten, mit vier Kanten und Maximalgrad zwei. Er habe Kanten {1, 2}, {3, 4}, {5, 6}, {1, 3}. Da der Graph ein Matching aus drei Kanten enthält, braucht jeder Vertex Cover mindestens drei Knoten. Die Schranke aus b) besagt aber, dass ein Vertex Cover aus höchstens 2 4/(3) = 8/3 < 3 Knoten existiert, was nicht wahr ist. c) Die Aussage ist wahr. Nummeriere o.b.d.a. die Kanten des betrachteten inklusionsmaximalen Matchings durch als {1, 2}, {3, 4},..., {m 1, m}. Es hat also m/2 Kanten. Da es inklusionsmaximal ist, hat jede Kante des Graphen mindestens einen Knoten mit einer dieser Kanten gemeinsam. Damit kann jedes Matching M maximal m Kanten enthalten: Wären es mehr, so gäbe es nach dem Schubfachprinzip einen Knoten in der Menge {1,..., m}, der Endpunkt von mindestens zwei Kanten in M wäre, das somit kein Matching sein könnte. d) Gegenbeispiel: Sei n 4. Der Stern, also der Graph mit den Kanten {1, 2}, {1, 3},..., {1, n} ist ein Gegenbeispiel: Die Menge {2,..., n} ist ein inklusionsminimaler Vertex Cover. {1} ist der minimale Vertex Cover. Quotient beider Kardinalitäten ist n 1 3.

2 Aufgabe 2: a) Jeder ungerichtete Baum hat mindestens einen Knoten v vom Grad 1. Sei die einzige Kante an ihm die Kante e = {v, w}. Man entfernt ihn sowie e und färbt den Restbaum rekursiv. Da zu w nun höchstens 1 Kanten inzident sind, ist eine Farbe übrig, mit der man die entfernte Kante färbt. Die Implementierung geht in Linearzeit O(n). Man muss nur dafür sorgen, dass man effizient jeweils an einen Knoten vom Grad 1 herankommt. Dies kann mit einer Queue geschehen, auf der man Knoten vom Grad 1 hält. Wenn eine Kante entfernt wird und dabei ein Knoten Grad 1 bekommt, muss er auf die Queue gelegt werden. Andere Lösung: DFS-Aufruf, DFS-Baum aufbauen. (Es gibt keine Back-Kanten!) Die Kanten des Wurzelknotens des DFS-Baums können mit maximal Farben gefärbt werden. Dann geht man schichtweise im DFS-Baum von oben nach unten vor. Jeder Knoten außer der Wurzel im DFS-Baum wird von oben über genau eine Kante erreicht. Wenn diese die Farbe c hat, kann man die Kanten zu seinen Kindern (davon gibt es maximal 1 viele) mit den Farben aus der Menge {1,..., } \ {c} färben. b) In weiser Voraussicht entwirft man einen Algorithmus, der für Wälder und nicht nur für Bäume funktioniert. Zunächst entfernt man Knoten mit Grad 0, da diese in keinem minimalen Vertex Cover vorkommen. Es bleibt ein Wald ohne Knoten mit Grad 0 übrig, also gibt es, wenn dieser nicht der leere Wald ist, mindestens einen Knoten v vom Grad exakt 1 (jeder Baum hat einen solchen). Wenn ein Knoten v Grad 1 hat (Kante {v, w}), dann muss jeder Vertex Cover v oder w enthalten. Jeder Vertex Cover C, der v enthält, kann dadurch, dass man v aus C entfernt und w hinzufügt, zu einem Vertex Cover C umgebaut werden mit C C, der v nicht enthält. Also kann man bei Bäumen so verfahren: Knoten v vom Grad 1 finden, seinen Nachbarknoten w zum Vertex Cover hinzunehmen, w und seine Nachbarn entfernen. Es entsteht wieder ein Wald. Iterieren. Wie unter a) kann man das in Linearzeit implementieren. Aufgabe 3: Man färbt die Kanten der Reihe nach mit Farben aus der Menge {1,..., }. Seien also nun alle Kanten bis auf eine Kante e = {v, w} gefärbt. Wenn es eine Farbe gibt, die sowohl an v als auch an w fehlt, dann sind wir fertig, weil wir e mit dieser Farbe färben können. Also nehmen wir an, dass jede Farbe, die an v fehlt, an w vorkommt und umgekehrt. An v fehle eine Farbe α und an w fehle eine Farbe β. Wir betrachten nun den Teilgraphen H von G, der nur aus Kanten besteht, die mit

3 α oder β gefärbt sind. Wir behaupten, dass v in diesem Teilgraph nicht von w aus erreichbar ist und zeigen dies nun: Beobachtung 1: Da G bipartit ist und v und w auf verschiedenen Seiten der Bipartition liegen, haben alle Wege von w nach v (auch in Teilgraphen) ungerade Länge. Beobachtung 2: Da an w die Farbe α vorkommt, starten Wege in H von w aus mit einer Kante der Farbe α und anschließend haben die Kanten jeweils abwechselnd die Farben β und α. Damit enden ungerade Wege immer mit einer Kante der Farbe α. Aus beiden Beobachtungen folgt, dass es in H keinen Weg von w zu v gibt, da an v die Farbe α fehlt. Wir können somit in der Zusammenhangskomponenten von H, die w enthält, die Farben α und β vertauschen, ohne dass die Farben an v beeinflusst werden. Wir erhalten eine Färbung, bei der an w nun die Farbe α fehlt und können die Kante e mit α färben. Aufgabe 4: Eine Kante e verbindet nie zwei Blätter miteinander. Das gilt sowohl, wenn e eine Backkante ist, als auch, wenn e eine Treekante ist. Daher ist V tatsächlich ein Vertex Cover. Bleibt zu zeigen, dass jeder Vertex Cover mindestens V /2 viele Knoten enthält. Zu diesem Zwecke zeigen wir, dass es ein Matching gibt, das alle Knoten aus V enthält. Wir markieren nun Kanten: Jedes Nichtblatt sucht sich von seinen Kindern genau eines aus und markiert die Kante zu diesem Kind. Wenn wir nun die markierten Kanten betrachten, so erhalten wir eine Reihe von knotendisjunkten Pfaden, die jeweils in einem Blatt enden. Wenn man von diesen Pfaden jeweils die erste, dritte, fünfte etc. Kante nimmt, dann erhält man ein Matching M (denn die Pfade sind knotendisjunkt), in dem höchstens der letzte Knoten nicht vorkommt (der ein Blatt ist). M enthält also alle Knoten aus V und enthält somit mindestens V /2 viele Kanten. Jeder Vertex Cover muss alle Kanten eines Matchings abdecken und enthält somit mindestens V /2 Knoten.

4 Aufgabe 5: Wir berechnen einen Vertex Cover C, der höchstens doppelt so groß ist wie der minimale Vertex Cover. Das geht mit dem Algorithmus, der Approximationsgüte 2 hat. Dann geben wir V := V \ C aus. Dass V eine unabhängige Menge ist, folgt daraus, dass C ein Vertex Cover ist. Da der Eingabegraph G eine unabhängige Menge aus 3n/4 Knoten besitzt, hat er ein Vertex Cover aus höchstens n/4 Knoten. Der Approximationsalgorithmus mit Güte 2 berechnet also ein Vertex Cover C aus höchstens n/2 Knoten. Die Menge V hat also mindestens n/2 Knoten. Aufgabe 6: a) Als Beispiel nehmen wir einen Graph, der aus drei Zusammenhangskomponenten besteht. Die erste ist nur ein einziger isolierter Knoten. Die zweite ist eine Clique auf vier Knoten. Die dritte ist ein Stern mit insgesamt fünf Knoten. Der Durchschnittsgrad aller Knoten ist, da wir 0+6+5=11 Kanten und 10 Knoten zählen, 22/10 = 2.2. Der maximale Grad ist (wegen des Sterns) vier. Nun überlegt man sich relativ leicht, dass der maximale induzierte Durchschnittsgrad wegen der Clique 3 ist. Insgesamt ist die geforderte Ungleichung wegen 2.2 < 3 < 4 erfüllt. b) Für n = 1 gilt die Aussage trivialerweise, da dort δ (G) = 0 ist und man mit einer Farbe auskommt. Nun zum Induktionsschritt. Wir wählen einen Knoten von minimalem Grad. In jedem Graph G gibt es einen Knoten, der Grad höchstens δ (G) hat, denn ansonsten hätte der auf V induzierte Teilgraph einen Durchschnittsgrad größer als δ (G). Also entfernen wir einen Knoten mit Grad höchstens δ (G). Für den Restgraph G gilt nach Definition von δ, dass δ (G ) δ (G) ist. Der Grund: Alle bei der Berechnung von δ (G ) betrachteten induzierten Teilgraphen wurden auch bei δ (G) schon betrachtet. Wir färben die Knoten des Restgraphs nach Induktionsvoraussetzung mit δ (G) + 1 vielen Farben. Der entfernte Knoten ist mit höchstens δ (G) vielen Farben verbunden, daher ist für ihn noch eine Farbe frei, mit der wir ihn färben. Der Beweis funktioniert mit d nicht, da nach Entfernen eines Knotens mit minimalem Grad der Durchschnittsgrad des restlichen Graphen höher sein kann als der Durchschnittsgrad des ursprünglichen Graphen. c) Da alle Knoten einer Farbe eine unabhängige Menge bilden, gilt folgende Aussage: In einem mit c Farben knotenfärbbaren Graphen gibt es (nach dem Schubfachprinzip)

5 eine unabhängige Menge aus mindestens n/c Knoten. d) Ein planarer Graph hat maximal 3n 6 Kanten. Induzierte Teilgraphen von planaren Graphen sind auch wieder planar. Damit ist δ (G) (6n 12)/n = 6 (12/n) < 6. Nach b) kann also jeder planare Graph auf n Knoten mit höchstens 7 (12/n), also höchstens 6 Farben gefärbt werden. Aufgabe 7: Jedem Knoten v aus I opt ordnen wir einen Knoten f(v) aus I zu, und zwar wie folgt: Wenn v I ist, dann sei f(v) = v. Ansonsten gibt es einen Knoten w aus I, mit dem v über eine Kante verbunden ist. Wäre das nicht so, könnte man v zu I hinzufügen und hätte eine echte Obermenge von I gefunden, die immer noch unabhängige Menge ist, im Widerspruch zur Inklusionsmaximalität von I. Da I opt eine unabhängige Menge ist, ist w sogar aus I \ I opt. Wir setzen f(v) := w für irgendeinen solchen Knoten w. Da jeder Knoten des Graphen einen Grad höchstens hat, gibt es für jedes w aus I höchstens Knoten v aus I opt mit f(v ) = w. (Liegt w in I I opt, so gibt es sogar nur maximal einen solchen.) Damit ist die Kardinalität von I opt höchstens mal so groß wie die von I. Für das Argument reicht 1 aus. Ein anderes Argument: Man durchläuft der Reihe nach die Knoten v 1,..., v r der Menge I und entfernt den aktuellen Knoten v i sowie seine Nachbarn. Man erhält eine Partition von V = V 1 V r, wenn V i die in Runde i entfernten Knoten enthält. Jedes V i enthält genau einen Knoten aus I, aber höchstens Knoten aus I opt : Wären es + 1 Knoten, dann würde I opt einen Knoten v i sowie alle seine Nachbarn enthalten und wäre somit (bei 1) keine unabhängige Menge. Also folgt I opt / I. Aufgabe 8: In der ersten Phase des Algorithmus (Auswahl von I) erhält man eine Knotenmenge I mit Kantenmenge E. Nach Entfernen aller Knoten des Vertex Covers (das aus höchstens E Knoten besteht), hat man mindestens I E Knoten übrig, die (als Komplement eines Vertex Covers) eine unabhängige Menge bilden. Der Erwartungswert von I ist p n, der Erwartungswert von E ist p 2 E, da jede Kante mit Wahrscheinlichkeit p 2 überlebt. Man erhält wegen der Linearität des Erwartungswerts also eine unabhängige Menge, die im Erwartungswert p n p 2 E Knoten enthält. Durch Ableiten stellt man fest, dass dies maximal wird, wenn man p = n/(2 E ) wählt, also p = 1/d setzt. Dies ist zulässig,

6 da d 1 angenommen wird. Für diesen Wert von p ergibt sich eine erwartete Anzahl von n/d n/(2d) = n/(2d) Knoten in der unabhängigen Menge.

7 Aufgabe 9: Man benutzt den Greedy-Algorithmus für das Set-Cover-Problem, wobei die Kosten jeder Menge gleich 1 gesetzt werden. Man stoppt allerdings, nachdem k Mengen gewählt worden sind. Um die Kardinalität der überdeckten Menge mit der optimalen Lösung zu vergleichen, nehmen wir an, dass die optimale Lösung k Mengen auswählt, die zusammen genau N Elemente überdecken. Sei N i die Anzahl der vom Greedy-Algorithmus nach i Runden überdeckten Elemente und D i die Differenz zwischen N und N i, also D i := N N i. Wir zeigen, dass D i N (1 1/k) i gilt: Für i = 0 gilt dies wegen N 0 = 0, also D 0 = N. Wenn wir in Runde i des Greedy-Algorithmus sind, dann gibt es eine Menge M, deren relative Kosten kleiner gleich k/d i 1 sind. (Man kann mit höchstens k Mengen die D i 1 Elemente überdecken und nach dem Schubfachprinzip muss eine der Mengen relative Kosten kleiner gleich k/d i 1 haben.) Da die Menge M Kosten 1 hat, überdeckt sie also mindestens D i 1 /k Elemente neu. Also ist N i N i 1 +D i 1 /k bzw. D i D i 1 D i 1 /k = D i 1 (1 1/k). Im Induktionsschritt folgt also D i N (1 1/k) i. Nach i = k Schritten ist also D k N (1 1/k) k N/e und somit überdeckt der Greedy- Algorithmus nach k Runden mindestens N N/e = N (1 1/e) viele Elemente. (P.S.: Wir haben hier die bekannte Abschätzung 1 + x e x für x = ( 1/k) verwendet: 1 (1/k) e 1/k und somit (1 (1/k)) k 1/e. Aufgabe 10: Sei zur Schreibvereinfachung G := (1/Z ε) die angenommene Güte des Approximationsalgorithmus für das Maxcover-Problem. Sei 1 r m die kleinste Anzahl an Mengen, mit denen man die Menge {1,..., n} überdecken kann. r ist also die optimale Lösung des Set-Cover-Problems. Wir nehmen für einen Moment an, dass wir die Zahl r kennen. Nun wendet man den Approximationsalgorithmus für das Maxcover-Problem mit dem Parameter k := r an. Man erhält eine Auswahl aus r Mengen, die zusammen wegen der Approximationsgüte mindestens n/g viele Elemente überdecken. Es bleibt noch eine Restmenge aus n n n/g = n (1 1/G) vielen Elementen zu überdecken. Diese kann logischerweise wieder mit höchstens r Mengen überdeckt werden. Wenn wir also wieder den Approximationsalgorithmus für das Maxcover-Problem

8 anwenden, erhalten wir eine Auswahl aus r Mengen, die zusammen mindestens n /G Elemente überdecken. Nun wiederholt sich das Ganze. Die Anzahl der noch zu überdeckenden Elemente ist nach i solchen Durchgängen auf höchstens n (1 1/G) i abgesunken. Man wählt ein i 0 so, dass i 0 > ln n ln(1 1/G) = ln n ln = 1 1 1/G ln n ln(1 + 1 G 1 ) ist, denn dann hat man nach i 0 Durchgängen spätestens alle Elemente überdeckt. Wir wählen also ln n i 0 := ln(1 + 1 ) + 1 G 1 viele Durchgänge, insgesamt also höchstens i 0 r Mengen. Die Zahl r war das Optimum, also erhalten wir eine Approximationsgüte von höchstens i 0. Wenn G = 1/Z ist, dann ist ln(1 + 1 G 1 ) = ln G G 1 = ln 1/Z 1/Z 1 = ln 1 1 Z = ln 1 1/e = 1 und wir haben eine Approximationsgüte von ln n + 1 nachgewiesen. Wir beobachten nun, dass der Nenner als Funktion in G streng monoton fallend in G 1 ist. Für G = 1/Z ε ergibt sich also für eine Konstante c > 1: ln(1 + 1 G 1 ) = c. Wir erhalten eine Approximationsgüte von höchstens (1/c) ln n + 1. Nun kennt man aber die Zahl r nicht. Daher führt man den Algorithmus für alle in Frage kommenden r = 1,..., m durch und wählt die beste bei diesen Versuchen gewählte Mengenauswahl. Nach dem in der Vorlesung zitierten negativen Resultat für die Approximierbarkeit des Set-Cover-Problems kann man also annehmen, dass das Maxcover-Problem in Polynomialzeit nicht besser als mit relativer Güte 1/Z approximiert werden kann. Aufgabe 11: Wir betrachten nur die ungewichtete Variante des Problems. Wenn alle Mengen Kardinalität zwei haben, dann kann man das 2-Set-Cover-Problem als Graph-

9 problem darstellen: n Knoten für jedes Element und für jede zweielementige Menge eine Kante e. Die Aufgabe lautet in die Graphensichtweise umformuliert nun: Finde eine Auswahl der Kanten derart, dass jeder Knoten zu mindestens einer Kante inzident ist. Zu minimieren ist die Anzahl der ausgewählten Kanten. Natürlich kann man dabei davon ausgehen, dass jeder Knoten im Graphen G einen Grad mindestens 1 hat, da das Problem ansonsten keine Lösung hätte. Wir behaupten folgendes: Sei M ein maximales Matching. Dann besteht die optimale Lösung des 2-Set-Cover-Problems aus n M vielen Kanten. Beweis: Es gibt eine Kantenauswahl aus sovielen Kanten mit den geforderten Eigenschaften: Wähle ein maximales Matching M und für jeden Knoten, der nicht in M vorkommt, wähle eine der zu ihm inzidenten Kanten. Man erhält so genau M +(n 2 M ) = n M viele Kanten, die zusammen alle Knoten abdecken. Umgekehrt: Gegeben sei eine minimale Kantenauswahl E, die alle Knoten abdeckt. Wir durchlaufen die Kanten der Reihe nach. Jede Kante deckt mindestens einen neuen Knoten ab, da die Kantenauswahl sonst nicht minimal gewesen wäre. Wenn wir t 1 Kanten haben, die genau einen neuen Knoten abdecken und t 2 Kanten, die genau zwei neue Knoten abdecken, dann gilt t 1 + t 2 = E und t 1 + 2t 2 = n (da alle Knoten abgedeckt sind.) Durch Subtraktion der ersten von der zweiten Gleichung erhält man t 2 = n E. Da jede der t 2 Kanten zwei neue Knoten abdeckt, haben wir ein Matching der Größe mindestens t 2 = n E gefunden. Aus beiden Transformationen zusammen folgt die behauptete Aussage. Aufgabe 12: a) Diesen Teil haben wir schon in Aufgabe 9 mitbewiesen. b) Wenn r = 1 ist, zeigt a), dass der Greedy-Algorithmus die optimale Lösung berechnet. Sei also im Folgenden r 2. Wir rechnen (in weiser Voraussicht) für eine Zahl T aus, wie groß man i wählen muss, damit noch weniger als T Elemente zu überdecken bleiben. Man analysiert also die Ungleichung n (1 1/r) i < T. Also: ln n + i ln(1 1/r) < ln T i > ln T ln n ln(1 1/r)

10 i > ln n ln T ln(1 + 1/(r 1)). Setzt man T = 1, so erhält man, dass i 0 = Die Güte ergibt sich also als ln n ln(1+1/(r 1)) + 1 Runden ausreichen. i 0 /r ln n r ln(1 + 1/(r 1)) + 1 Wenn man nun berücksichtigt, dass r ln(1 + 1 ) 1 ist für alle r 2, erhalten wir r 1 eine Güte von höchstens ln n + 1. c) Bei T noch zu überdeckenden Elementen bleiben noch höchstens weitere T Runden, weil in jeder Runde mindestens ein neues Element überdeckt wird. Für alle 1 T n ln n ln T gilt also, dass der Greedy-Algorithmus mit T ausgewählten Mengen ln(1+1/(r 1)) auskommt. d) Nun zur Skizze, wie das zu einer besseren Analyse führen kann: Wir setzen T = r, da die obige Schranke für alle T gilt. Der Greedy-Algorithmus kommt also mit r + ln n ln r + 1 vielen Mengen aus. Die Güte ist also für eine Konstante c > 0 durch ln(1+1/(r 1)) ln n ln r r ln(1+1/(r 1)) + c beschränkt. Mit ein wenig Analysis kann man nun zeigen, dass dies kleiner gleich ln n ln ln n + c für eine Konstante c > 0 ist. (Reine Rechenarbeit.)

11 Aufgabe 13: Die Eigenschaft eines Teilgraphen, dass jeder Empfänger über einen Weg mit mindestens einem Sender verbunden ist, möge Eigenschaft (*) heißen. Es gibt stets eine optimale Lösung des Problems (also einen Teilgraphen von G), der keine Kreise enthält. Dies liegt daran, dass man eine Kreiskante entfernen kann, ohne dadurch die Zusammenhangseigenschaften zu verändern. Da Kantenkosten nicht negativ sind, werden die Kosten dadurch höchstens kleiner. Dies kann man wiederholen, bis es keine Kreise mehr gibt. a) Wie schon in der Aufgabe angedeutet, so fügt man einen Extraknoten r hinzu, der über Kanten mit Kosten 0 zu allen Sendern verbunden ist. Diese Kanten nennen wir Extrakanten. Es entstehe der Graph G. Wenn G nicht zusammenhängend ist, dann gibt es keine Lösung des ursprünglichen Problems: Gibt es nämlich für jeden Empfänger einen Weg zu einem Sender, so wäre G zusammenhängend, weil man dann von jedem Empfänger über einen Weg den Extraknoten r erreichen kann und von dort alle Sender. Wenn G zusammenhängend ist, dann berechnet man einen minimalen Spannbaum auf G. Behauptung: Der minimale Spannbaum auf G ist eine optimale Lösung des Problems. (Man entfernt den Extraknoten und die Extrakanten aus der Lösung natürlich wieder). Erstens: In dem Spannbaum gibt es von jedem Empfänger einen Weg zum Extraknoten. Dieser führt zwangsweise über einen Senderknoten, da es keine Kanten von den Empfängerknoten zum Extraknoten gibt. Wenn man den Extraknoten und die Extrakanten entfernt, bleibt also ein Teilgraph übrig, in dem jeder Empfänger einen Weg zu einem Sender besitzt. So erhalten wir einen Teilgraph, der die gleichen Kosten hat wie der minimale Spannbaum und der die Eigenschaft (*) hat. Zweitens: Nun zeigen wir, wie man aus einem Teilgraph von G, der die Eigenschaft (*) hat, einen höchstens billigeren Spannbaum auf G erhalten kann. Wie oben schon erwähnt, können wir davon ausgehen, dass der Teilgraph keinen Kreis enthält. Wir fügen den Extraknoten hinzu und durchlaufen die Extrakanten der Reihe nach. Würde die aktuell betrachtete Extrakante einen Kreis schließen, fügen wir sie nicht hinzu. Ansonsten fügen wir sie ein. Es entsteht ein zusammenhängender Graph, da offensichtlich nach Wahl der Kanten der Extraknoten zu jedem Sender einen Weg hat und die Empfänger jeweils zu mindestens einem Sender einen Weg haben. Die Kosten dieses Spannbaums sind genauso groß wie die Kosten des Teilgraphen, da die hinzugefügten Kanten Kosten 0 haben. b) Wir benutzen das Steinerbaumproblem und wählen als Required-Menge die Knotenmenge, die aus dem Extraknoten und den Empfängern besteht. Wie unter a) kann man

12 aus dem minimalen Steinerbaum einen Teilgraphen konstruieren, der jeden Empfänger mit einem Sender verbindet, indem man die Extrakanten und den Extraknoten entfernt. Die Kosten sind genauso groß wie die Kosten des Steinerbaums. Analog dazu kann man aus dem Teilgraphen, in dem jeder Empfänger mit einem Sender über einen Weg verbunden ist, einen Spannbaum konstruieren, der alle Required-Knoten enthält, indem man wie dort die Extrakanten der Reihe nach hinzufügt oder auch nicht. Das Steinerbaumproblem ist mit relativer Güte 2 in Polynomialzeit zu approximieren. Aufgabe 14: Für jede Menge S i des Set-Cover-Problems verwenden wir einen Knoten v i, für jedes Element einen Knoten w j. Für jeden Mengenknoten v i fügen wir eine gerichtete Kante zu allen w j ein, für die j S i gilt. (Jeder Mengenknoten zeigt also auf alle Elemente seiner zugehörigen Menge.) Die Kosten dieser Kanten seien Null. Vom Knoten r aus zeigen Kanten zu allen Mengenknoten v i, wobei die Kosten der Kante zum Knoten v i gleich den Kosten der Menge S i sein sollen. Als Required-Knoten werden der Knoten r sowie alle Elementknoten w j gewählt. Wir zeigen nun: Aus einem Steinerbaum mit Kosten c kann man (in Polynomialzeit) ein Set Cover mit Kosten c ablesen: Da es ein gerichteter Steinerbaum ist, gibt es für jeden Elementknoten w j einen Weg von r zu w j, sagen wir, über v i. Dann ist j S i. Wenn man also alle Mengen S i wählt, für die der Steinerbaum eine Kante von r zu v i hat, dann erhält man ein Set Cover. Die Kosten dieses Set Covers sind gleich den Kosten des Steinerbaums (da die Kosten zwischen den v-knoten und den w-knoten gleich 0 sind.) Umgekehrt kann man aus einem Set Cover mit Kosten c einen Spannbaum mit Kosten c berechnen, der alle Elementknoten und den Knoten r enthält: man wählt von r ausgehend alle Kanten zu denjenigen v i -Knoten, deren zugehörige Mengen im kostenminimalen Set Cover gewählt werden. Für jedes Element j gibt es nun eine Menge S i(j) im Set Cover, die j enthält. Wir fügen die Kante von v i(j) zu w j hinzu. Wir erhalten so einen Spannbaum, der alle Elementknoten und r enthält und Kosten c hat. Da sich Kosten c der Lösung des einen Problems in Kosten c der Lösung des anderen Problems übersetzen, ist dies offensichtlich eine approximationserhaltende Reduktion. Zur Approximierbarkeit habe ich folgende Antwort erwartet und hätte auch volle Punktzahl gegeben: Für die Approximierbarkeit des gerichteten Steinerbaumproblems heißt das, dass unter den entsprechenden komplexitätstheoretischen Annahmen folgt, dass man es nicht mit einer Güte von c ln n mit c < 1 approximieren kann. Es gibt allerdings ein kleines Problem: Wenn die Eingabe des Set-Cover-Problems exponentiell viele Mengen enthält, dann ist der Parameter für das Set-Cover-Problem, in

13 dem die Approximierbarkeit gemessen wird, immer noch n. Bei der Reduktion entsteht jedoch ein Steinerbaumproblem mit exponentiell vielen Knoten. Ich überlasse es nun dem Leser und der Leserin, sich zu überlegen, ob damit die obige Aussage immer noch korrekt ist. (Eine solche Schwierigkeit in der Argumentation war in der Aufgabenstellung allerdings nicht beabsichtigt.) Aufgabe 15: Ein 2-Matching ist ein Graph, der aus lauter (knotendisjunkten) Kreisen der Länge mindestens drei besteht. Da eine TSP-Tour ebenfalls ein 2-Matching ist, sind die Kosten des optimalen 2-Matchings nicht größer als die Kosten der optimalen TSP- Tour. Wir nummerieren die Kreise C 1,..., C r durch. Dabei ist r n/3, da jeder Kreis Länge mindestens drei hat. Wir erzeugen eine TSP-Tour wie folgt: Wir entfernen für jedes i aus Kreis C i eine Kante (v i, w i ). Anschließend fügen wir Kanten ein, und zwar jeweils von w i zu v i+1. (Wenn i + 1 = r + 1 ist, dann zu v 1 stattdessen.) Dass wir nun eine TSP-Tour vorliegen haben, ist offensichtlich. Wie haben sich die Kosten verändert? Das 2-Matching hatte Kosten mindestens n, da n Kanten vorliegen, bei denen jede mindestens Kosten 1 hat. Wir haben r Kanten entfernt, die jeweils Kosten mindestens 1 haben. Und r Kanten hinzugefügt, die Kosten höchstens 2 haben. Also haben die Kosten um höchstens r n/3 zugenommen. Wenn OP T n die Kosten einer optimalen TSP-Tour bezeichnet, so haben wir nun eine Tour berechnet, die Kosten höchstens OP T + r hat. Als Güte OP T +r erhalten wir = 1 + r 1 + n/3 = 4/3. OP T OP T n Aufgabe 16: a) Sei T ein unter dem üblichen Kostenmaß c minimaler Spannbaum. Sei T ein unter dem Kostenmaß c minimaler Spannbaum. Wenn c (T ) = c (T ) ist, dann ist nichts zu zeigen, da dann auch T unter c minimaler Spannbaum ist. Ebenso ist nichts zu zeigen, wenn n = 2 ist, da es dann nur einen Spannbaum gibt. Sei also c (T ) < c(t ) und n 3. T enthält also eine Kante f, die teurer als alle Kanten in T ist. Wenn wir f aus T entfernen, entstehen zwei Zusammenhangskomponenten V 1 und V 2, von denen mindestens eine zwei oder mehr Knoten enthält, da n 3 ist. Da T zusammenhängend ist, aber f nicht enthält, muss es in T eine Kante e geben, die zwischen V 1 und V 2 verläuft. Fügen wir die Kante e zu den beiden Zusammenhangskomponenten hinzu, so entsteht wieder ein Spannbaum. Dieser ist nun unter dem Kostenmaß c billiger als T, weil wir f entfernt und eine billigere Kante eingefügt haben. Dies ist ein Widerspruch zur Minimalität des Baums T unter dem Kostenmaß c, also ist T auch minimal unter dem Kostenmaß c.

14 b) Okay, beachten wir. c) Induktion über n. Wenn n = 2 ist, dann ist der Spannbaum T eine Kante. Von jedem der beiden Knoten gibt es einen Hamiltonpfad zum anderen (aus der Kante bestehend). Seine Kosten sind sogar c (H) = c (T ). Für den Induktionsschritt stellen wir uns den Spannbaum als an v gewurzelt vor, seine T -Nachbarn liegen eine Ebene darunter. Die Kinder mögen v 1,..., v t heißen, an denen die Teilbäume T 1,... T t hängen. Falls T i mindestens zwei Knoten enthält, dann gibt es nach Induktionsvoraussetzung von v i zu einem T -Kind von v i einen Hamiltonpfad (im Teilbaum). Den nennen wir H i. Seine c -Kosten sind höchstens drei Mal so groß wie die c -Kosten von T. Falls T i nur den Knoten v i enthält, dann sei H i der leere Weg von v i nach v i. Wir setzen nun alle Hamiltonpfade zusammen: Wir starten in v 1, durchlaufen H 1. Von dem letzten Knoten gehen wir zu v 2, durchlaufen H 2. Von dem letzten Knoten gehen wir zu v 3, durchlaufen H 3. Etc. Schließlich, nachdem H t durchlaufen wurde, gehen wir zu v. Dies kann als Hamiltonpfad von v zu v 1 gesehen werden (rückwärts). Welche Kanten verwenden wir, die noch nicht in T vorkommen? Wir springen von einem Kind von v i zu v i+1. Dies ist in T ein Weg der Länge drei, also haben wir eine Kante benutzt, die höchstens drei Mal so teuer ist wie die teuerste Kante aus T (siehe b). Oder wir sind von v i zu v i+1 gelaufen (wenn H i leer war). Dies ist in T ein Weg der Länge zwei. Den Approximationsalgorithmus erhält man nun wie folgt: Wir berechnen mit Kruskal einen minimalen Spannbaum. Dieser ist auch (siehe a) unter Kostenmaß c minimal. Mit dem Resultat aus c) erhalten wir einen Hamiltonpfad von v zu einem seiner Kinder. Wir ergänzen die Kante von v zu diesem Kind (die schon in T vorhanden ist, also ändert sich der c -Wert nicht) und erhalten eine Tour, die höchstens dreimal so teuer ist wie die optimale Tour (bzgl. Kostenmaß c.).

15 Aufgabe 17: Sei E ein minimaler k-cut. Nach Entfernen von E aus dem Graphen liegen k Zusammenhangskomponenten vor. Seien v 1,..., v k Knoten mit der Eigenschaft, dass v i ein Knoten in der i-ten Zusammenhangskomponente ist. Dann gilt offensichtlich, dass E auch ein minimaler Multiway Cut für S 1 = v 1,..., S k = v k ist. Wenn wir den Algorithmus für das Multiway-Cut-Problem als Unterroutine verwenden wollen, dann ist das Problem nur, dass wir nicht wissen, welche Knoten in der optimalen k-cut-lösung in den Zusammenhangskomponenten liegen. Wir probieren daher alle Möglichkeiten durch, also ( n k) viele Auswahlen v1,..., v k, und berechnen jeweils einen minimalen Multiway Cut für diese k Knoten. (Jeder solche ist auch ein k-cut). Von allen diesen geben wir den mit der geringsten Kantenzahl (bzw. dem geringsten Kantengewicht) aus. Da eine der Möglichkeiten die richtige ist, erhalten wir eine Lösung mit relativer Güte 2 (2/k), da auch der Algorithmus für das Multiway-Cut-Problem eine solche berechnet. Aufgabe 18: a) Einen minimalen M 1, M 2 -Trenner kann man wie folgt berechnen: Man kontrahiert alle Knoten aus M 1 zu einem Knoten v 1 sowie alle Knoten aus M 2 zu einem Knoten aus v 2. Ein minimaler v 1 v 2 -Schnitt, den man in Polynomialzeit berechnen kann, liefert nun einen minimalen M 1, M 2 -Trenner. (Dies ist relativ offensichtlich; entsprechende Verschmelzungen haben wir ja schon in der Vorlesung verwendet.) b) Wir müssen zunächst zeigen, dass die berechnete Kantenmenge ein Multiway Cut ist. Zu diesem Zweck betrachten wir o.b.d.a. die beiden Knoten 1 und 2 und zeigen, dass zwischen ihnen kein Weg mehr existiert: In nur einem der drei berechneten Trenner können nach Entfernung der Kanten des Trenners Wege zwischen Knoten 1 und 2 noch existieren. Da man die Vereinigung von zwei Trennern ausgibt, werden in mindestens einem dieser beiden alle Wege zwischen 1 und 2 zerstört. Nun zur Güte: Angenommen, A ist ein minimaler Multiway Cut. Wenn man A aus G entfernt, dann erhält man 4 Zusammenhangskomponenten Z 1,..., Z 4. Sei nun A ij die Menge der Kanten aus A, die zwischen Zusammenhangskomponente Z i und Z j verlaufen. A 13 A 14 A 23 A 24 ist ein {1, 2}, {3, 4}-Trenner, nennen wir ihn E 2. A 12 A 14 A 23 A 34 ist ein {1, 3}, {2, 4}-Trenner, nennen wir ihn E 3. A 12 A 13 A 24 A 34 ist ein {1, 4}, {2, 3}-Trenner, nennen wir ihn E 4. Es gilt für die Kosten c: c(e 2 ) + c(e 3 ) + c(e 4 ) = 2 c(a), da jede Kante in genau zweien der Kantenmengen E 2, E 3, E 4 vorkommt.

16 Andererseits gilt für die berechneten Trenner, nennen wir sie C 12, C 13 und C 14 : c(c 12 ) c(e 2 ), c(c 13 ) c(e 3 ), c(c 14 ) c(e 4 ), Also ist S := c(c 12 ) + c(c 13 ) + c(c 14 ) c(e 2 ) + c(e 3 ) + c(e 4 ) = 2 c(a). Der teuerste der drei Trenner hat Kosten mindestens S (1/3), also sind die Gesamtkosten der beiden ausgegebenen Trenner durch S (2/3) (2/3) 2 c(a) beschränkt. Wir erhalten eine relative Güte von 4/3. Aufgabe 19: Das Gewicht einer Kante e im Graphen H aus der Aufgabenstellung sei mit w(e) bezeichnet. Wir betrachten einen minimalen Multiway Cut A für die Knoten S 1,..., S k und definieren die Kantenmengen A 1,..., A k so, dass A i alle Kanten aus A enthält, die einen Endknoten in A i haben. Natürlich gilt wieder c(a 1 ) + + c(a k ) = 2 c(a), da jede Kante aus A in genau zwei Mengen A j vorkommt. Jedes A i ist ein isolierender S i -Schnitt und somit für alle j ein S i S j -Schnitt. Es ist also c(a i ) w(i, j). Wir betrachten den Kreis k 1 im Graphen H und entfernen die teuerste Kante auf diesem Kreis, erhalten so einen Spannbaum. Die Kosten des Kreises sind beschränkt durch w(1, 2) + w(2, 3) + + w(k, 1) c(a 1 ) + c(a 2 ) + + c(a k ) = 2 c(a). Da die teuerste Kante Kosten mindestens (1/k) (w(1, 2) + w(2, 3) + + w(k, 1)) hat, hat der Spannbaum, den wir berechnet haben, Kosten höchstens (1 (1/k)) (w(1, 2) + w(2, 3) + + w(k, 1)) (2 (2/k)) c(a). Der minimale Spannbaum ist natürlich höchstens noch billiger. Aufgabe 20: Wir durchlaufen die Kanten des Matchings M. Wir verwalten Mengen V 1,..., V k, die zu Beginn leer sind. Die aktuelle Kante sei {v, w}. Wir überprüfen folgende k Fälle: v zu V 1 hinzufügen und w zu V 2 hinzufügen. v zu V 2 hinzufügen und w zu V 3 hinzufügen.... v zu V k 1 hinzufügen und w zu V k hinzufügen. v zu V k hinzufügen und w zu V 1 hinzufügen.

17 Sei c := (k 1)/k. Als Potenzialfunktion verwenden wir φ(e) := w(e) c, falls mindestens ein Knoten der Kante noch keinem V i zugeteilt ist, φ(e) = w(e), falls e zwischen zwei verschiedenen V i verläuft und φ(e) = 0, falls e innerhalb einer Menge V i verläuft. Zu Beginn ist das Potenzial Φ := e E φ(e) gleich c w(e). Der Algorithmus durchläuft die Kanten des Matchings und wählt von den k Fällen oben jeweils denjenigen, der das Potenzial maximiert. Die restlichen Knoten werden dann wieder einer nach dem anderen verteilt (dabei wird der betrachtete Knoten immer so verteilt, dass das Potenzial möglichst groß wird.) Wenn wir eine Kante e des Matchings behandeln, dann erhöht sich ihr Potenzial von c w(e) auf w(e), da sie in allen k Fällen zwischen zwei verschiedenen V -Mengen verläuft. Betrachten wir nun eine Kante e, die genau einen Knoten z mit e gemeinsam hat: Liegt der andere Knoten von e außerhalb der V j -Mengen, so bleibt das Potenzial von e unverändert. Liegt der andere Knoten von e in einer Menge V j, dann ist in genau k 1 der k Fällen das Potenzial der Kante e anschließend w(e ), in einem Fall ist das Potenzial 0. Über alle k Fälle gemittelt ist das Potenzial der Kante also durchschnittlich ((k 1)/k) w(e ) = c w(e ). Nach dem Schubfachprinzip folgt nun wieder, dass in mindestens einem der k Fälle das Gesamtpotenzial mindestens so groß ist wie vorher, plus dem Potenzialgewinn für die Matchingkante e. Nachdem wir alle Matchingkanten behandelt haben, erhalten wir also einen k-maxcut, der Potenzial mindestens c w(e) + w(m) (1/k) hat. Am Ende des Algorithmus gibt das Potenzial das Gewicht der Kanten zwischen verschiedenen V j -Mengen an, das dann also mindestens mindestens c w(e) + w(m) (1/k) ist.

18 Aufgabe 21: Der Einfachheit halber betrachten wir alle möglichen Schnitte und berechnen zunächst ihre Werte: Schnitt Wert {A} 16 {B} 24 {C} 13 {D} 7 {A, B} 16 {A, C} 23 {A, D} 21 Damit ergeben sich die folgenden Werte für die minimalen v, w Schnitte: v/w A B C D A B 13 7 C 7 Der (eindeutige) minimale A, B Schnitt hat A alleine auf einer Seite. Damit muss A im Gomory-Hu-Baum ein Blatt sein, das zu einer Kante des Gewichts 16 inzident ist. Auf analoge Art sieht man, dass D ein Blattknoten ist, der zu einer Kante mit Gewicht 7 inzident ist und dass C ein Blattknoten ist, der zu einer Kante vom Gewicht 13 inzident ist. Damit ist klar, dass nur noch der folgende Gomory-Hu-Baum vorliegen kann: A--16--B--07--D 13 C

19 Aufgabe 22: Die zweite Eigenschaft der schwachen Submodularität besagt, dass für beliebige X, Y V Folgendes gilt: c(x) + c(y ) c(x \ Y ) + c(y \ X). Wir definieren wie gehabt die Mengen V 00,..., V 11. Wir betrachten eine Kante e, die zur rechten Seite etwas beiträgt. Fall 1): Die Kante trägt sowohl zu c(x \ Y ) als auch zu c(y \ X) bei. Dann verläuft die Kante zwischen V 10 und V 01 und trägt somit sowohl zu c(x) als auch zu c(y ) bei. Fall 2): Die Kante trägt zu c(x\y ), aber nichts zu c(y \X) bei. Dann liegt ein Endpunkt in V 10, der andere in V 11 oder V 00. Damit trägt die Kante entweder zu c(y ) oder c(x) bei. Fall 3): Die Kante trägt zu c(y \X), aber nichts zu c(x\y ) bei. Dann liegt ein Endpunkt in V 01, der andere in V 11 oder V 00. Damit trägt die Kante entweder zu c(x) oder zu c(y ) bei. Aufgabe 23: Für einen Knoten v und einen Schnitt X sei E X (v) die Menge der Knoten, die auf der gleichen Seite wie v im Schnitt liegen (v inklusive). Betrachte einen Gomory-Hu-Baum (T, w ) und eine Kante e min = {u, v}, die den kleinsten w -Wert in T hat. Man überlegt sich leicht, dass der von e min induzierte Schnitt X auch ein minimaler Schnitt ist (und nicht nur ein minimaler u, v Schnitt). Sei Y nun ein von X verschiedener minimaler Schnitt. Weil beide Schnitte verschieden sind, so gilt E X (v) E Y (v). Also gilt entweder E X (v) E Y (v) oder E Y (v) E X (v), o.b.d.a. sei E X (v) E Y (v). Also gibt es einen Knoten w E X (v), der nicht in E Y (v) liegt. Der Schnitt Y ist also nicht nur ein minimaler Schnitt, sondern ein minimaler v, w Schnitt. Da v und w im Schnitt X auf der gleichen Seite liegen, führt im Gomory- Hu-Baum der Weg von v zu w nicht über die Kante e min. Da die billigste Kante e auf dem Weg von v nach w das Gewicht des minimalen v, w Schnitts angeben muss, muss sie das Gewicht des minimalen Schnitts haben und somit müssen die Gewichte von e min und e gleich sein. Da die beiden Kanten verschieden sind, gibt es im Gomory-Hu-Baum zwei Kanten mit gleichem Gewicht, was aber nach Voraussetzung nicht sein kann. Aufgabe 24: Aussage a) ist wahr. Wir wählen als Graphen G den Gomory-Hu-Baum

20 selber, mit den gleichen Kantengewichten. Für zwei Knoten v, w im Baum ist klar, dass der minimale v, w-schnitt das gleiche Gewicht hat wie die billigste Kante auf dem Weg von v nach w: In jedem Schnitt muss mindestens eine Kante des Wegs die Seiten wechseln. Andererseits kann man die beiden Zusammenhangskomponenten, die nach Entfernen der billigsten Wegkante entstehen, als beide Seiten des Schnitts wählen, so dass nur die billigste Kante die Seiten wechselt. Aussage b) ist nicht wahr: Betrachte den Beispiel-Gomory-Hu-Baum auf Seite 47 des Skripts: Man bekommt den Graphen H, indem man in Teil (b) des Bildes alle fehlenden Kanten mit dem Wert 8 einträgt. Damit ist der Graph, der aus den Kanten {A, C}, {A, D}, {D, B} besteht, ein minimaler Spannbaum. (Alle seine Kanten haben Gewicht 8, der Algorithmus von Kruskal kann die Kanten so wählen.) Damit kann dieser Baum nicht Gomory-Hu-Baum des Graphen G sein, da ein minimaler A, B Schnitt den Wert 19 hat und nicht 8.

21 Aufgabe 25: Wir bezeichnen mit V 1, V 2 jeweils die beiden Seiten eines Schnitts. a) Die Zerlegung V 1, V 2 hat genau V 1 V 2 viele Kanten im Schnitt. Wenn V 1 = i ist, dann sind das i (n i) Kanten. Es gilt in i 2 > n 1 genau dann, wenn in > n 1+i 2 bzw. (i 1)n > i 2 1 = (i 1) (i+1) bzw. wenn n > i + 1 ist. Dies ist für alle i außer i = 1 und i = n 1 der Fall. Damit ist für jedes Knotenpaar v, w der Schnitt, in dem nur v auf einer Seite ist und derjenige Schnitt, in dem nur w auf einer Seite ist, ein minimaler v-w-schnitt. Ein Gomory-Hu-Baum für den vollständigen Graphen ist daher der folgende: Ein Stern auf den n Knoten, mit einem Knoten Z als Zentrum. Die Kantengewichte sind alle n 1. Man sieht relativ leicht ein, dass dieser Baum genau die minimalen v-w-schnitte für alle Knotenpaare beschreibt und auch die Gewichte passen. c) Jeder Schnitt hat mindestens zwei Kanten, weil ansonsten kein Kreis vorläge. Für jedes Knotenpaar v, w ist daher der Schnitt, der v auf einer Seite und alle anderen auf der anderen Seite hat, ein minimaler v-w-schnitt. (Ebenso der Schnitt, bei dem w alleine auf einer Seite liegt.) Dies liegt daran, dass auch dieser Schnitt zwei Kanten hat. Damit können wir wieder, wie in a), den Stern auf n Knoten als Gomory-Hu-Baum wählen, allerdings müssen nun die Kantengewichte alle auf 2 gesetzt werden. b) Die Bipartitheit kann so interpretiert werden, dass die Knoten mit zwei Farben - rot und weiß - gekennzeichnet sind und es keine Kanten zwischen Knoten der gleichen Farbe gibt. Es gibt n rote und n weiße Knoten. Wir betrachten einen v-w-schnitt. Sei l w die Anzahl der von v und w verschiedenen Knoten auf der linken Seite, die weiß sind und l r entsprechend für die Farbe rot. Betrachten wir zunächst zwei rote Knoten v und w. (Analog dazu ist der Fall mit zwei weißen Knoten.) O.B.d.A. gilt l w n/2 und es liegt v auf der linken Seite. Einen Schnitt, in dem v links und w rechts liegt, betrachten wir nun. Es liegen l w (n 1 l r ) + (l r + 1) (n l w ) = (n 1)l w l r l w + nl r l r l w + (n l w ). Kanten im Schnitt. Für festes l w ist dies gleich C + nl r 2l r l w für eine Konstante C. Dies ist, da l w n/2 ist, gleich C + l r c für eine Konstante c 0. Wenn l w gewählt ist, erhält man also die minimale Kantenzahl bei l r = 0. Setzen wir nun l r = 0, so ist die Kantenzahl (n 1)l w + (n l w ) = n + (n 2)l w. Dies wird wieder minimal für l w = 0 und ergibt den Wert n.

22 Damit wissen wir, dass der Schnitt mit v auf der linken Seite und allen anderen Knoten auf der rechten Seite ein minimaler Schnitt mit Wert n ist. Betrachten wir nun einen weißen Knoten v und einen roten Knoten w und einen Schnitt, in dem v links und w rechts liegt. Wir zählen an Kanten: (l w + 1) (n l r ) + (l r ) (n l w 1) = n(l w + 1) 2l r (l w + 1) + n(l r ). Für konstantes l w ist dies gleich C 2l r (l w + 1) + nl r. Fall 1): l w + 1 n/2. Dann wird das Minimum für l r = 0 angenommen, bei l r = 0 haben wir n(l w + 1) Kanten. Dies wird minimal, wenn l w = 0 ist. Wir erhalten den Schnitt, in dem v auf der linken Seite und alle anderen Knoten auf der rechten Seite liegen. Fall 2): l w +1 > n/2. Dann wird das Minimum für l r = (n 1) angenommen. Die Anzahl der Kanten ist n(l w + 1) (2n 2)(l w + 1) + n(n 1) = (l w + 1) (2 n) + n(n 1). Dies wird minimal für l w = (n 1). Es ergibt sich der Schnitt, in dem alle Knoten außer w auf der linken Seite liegen. Wieder haben wir erhalten, dass der Wert des minimalen Schnitts n ist. Wie unter a) erhalten wir einen Gomory-Hu-Baum für K n,n, indem wir den Stern auf n Knoten nehmen. Dieses Mal sind die Kantengewichte alle n. Aufgabe 26: Wir betrachten einfach einen möglichen Ablauf des Gomory-Hu-Algorithmus. Ganz zu Beginn wählt dieser ein Knotenpaar aus und berechnet für dieses einen minimalen Schnitt, der das Knotenpaar trennt. Hier gehen wir davon aus, dass er das Paar v, w wählt und den Schnitt {v}, V \ {v} berechnet. Man erhält nach der ersten Phase einen Baum, in dem es zwei Knoten gibt, und zwar einen Knoten {v} und einen Knoten V \ {v}, die durch eine Kante verbunden sind. Im weiteren Verlauf des Gomory-Hu- Algorithmus wird diese Kante höchstens an einen anderen Knoten gehängt, aber sie bleibt erhalten. Damit bleibt v im Verlauf des Algorithmus stets Blatt und ist damit am Ende auch Blatt im Gomory-Hu-Baum. Aufgabe 27: Die Aussage gilt. Wir präsentieren zwei Beweise. Beweis 1: Sei I eine inklusionsmaximale unabhängige Menge in G. Das Komplement von unabhängigen Mengen ist stets ein Vertex Cover, also ist V \ I ein Vertex Cover. In der Vorlesung hatten wir gezeigt, dass eine inklusionsmaximale unabhängige Menge stets eine dominierende Menge ist. Außerdem hatten wir gezeigt, dass jedes Vertex Cover (wenn jeder Knoten Grad

23 mindestens Eins hat) eine dominierende Menge ist. Also ist hier sowohl I als auch V \ I eine dominierende Menge, eine der beiden hat Kardinalität höchstens n/2. Beweis 2: Man berechne den DFS-Wald des Graphen. In jedem Baum des Walds betrachten wir zwei dominierende Knotenmengen: Die Menge M 1, die aus den Knoten besteht, die einen geraden Abstand zur Wurzel haben (die Wurzel inklusive). Und die Menge M 2, die aus den Knoten besteht, die einen ungeraden Abstand zur Wurzel haben. Dominierend sind sie deswegen, weil jeder Knoten Abstand höchstens 1 zur jeweiligen Menge hat. M 1 M 2 ergibt die Knotenmenge des Baums, daher ist nach dem Schubfachprinzip eine der beiden höchstens halb so groß wie die Menge aller Baumknoten. Nimmt man nun für jeden DFS-Baum die kleinere der beiden Mengen, so erhält man nun eine dominierende Knotenmenge der Größe höchstens n/2. Aufgabe 28: Man verwaltet während des Algorithmus eine Partition der Knotenmenge V in nichtleere Knotenmengen V 1,..., V j. Außerdem ist in jeder Knotenmenge V i ein Knoten ausgezeichnet, nennen wir ihn v i. Wir nennen ihn den Kopf aller Knoten in V i. Zu Beginn ist j = 1, V 1 = V und v 1 ein beliebiger Knoten aus V. Sei nun eine Partition V 1,..., V j gegeben. Man wendet eine Split-Operation an. Diese bewirkt Folgendes: Man wählt denjenigen Knoten w, der den größten Abstand d wz zu seinem Kopf z hat. Nun eröffnet man eine neue Menge V j+1. In diese verschiebt man den Knoten w sowie alle anderen Knoten, die zu w einen kleineren oder genauso großen Abstand haben als/wie zu ihrem aktuellen Kopf. Durch die Splitoperation wird offensichtlich erreicht, dass jeder Nichtkopf in derjenigen Menge liegt, zu deren Kopf er den geringsten Abstand hat. Nach k 1 Split-Operationen liegt eine Partition der Knotenmenge V in k Mengen vor. Wir müssen zeigen, dass der größte Abstand innerhalb der Mengen höchstens doppelt so groß ist wie bei der optimalen Zerlegung. Dazu betrachten die Zerlegung V 1,..., V k und einen Knoten z, dessen Abstand zu seinem Kopf maximal ist, nennen wir diesen Abstand h. Da Knoten nur verschoben werden, wenn sie zum neu kreierten Kopf einen kleineren Abstand haben, gilt somit, dass die ganze Zeit über der Knoten z einen Abstand mindestens h zu seinem jeweiligen Kopf hatte. Da z nie als neuer Kopf gewählt wurde, hat jeder gewählte neue Kopf einen Abstand mindestens h zu allen anderen Köpfen. Nun zur Güte 2: Die von uns berechnete Lösung hat einen Wert von höchstens 2h. Denn wenn in jeder Menge V i der Abstand zum Kopf von V i durch h beschränkt ist, dann ist wegen der Dreiecksungleichung der Abstand zwischen zwei beliebigen Knoten in V i

24 durch 2h beschränkt. Andererseits haben wir eine k+1-clique gefunden, nämlich die Menge C = {v 1,..., v k, z} mit der Eigenschaft, dass für alle Knotenpaare der Clique der Abstand mindestens den Wert h hat. Da auch in einer optimalen Lösung M 1,..., M k eine der Mengen mindestens zwei Knoten aus der Clique enthalten muss (Schubfachprinzip!), hat die optimale Lösung den Wert mindestens h. Wir haben somit die Güte 2 nachgewiesen.

25 Aufgabe 29: a) Man berechnet einen DFS-Wald und entfernt alle Back-Kanten. Dann existiert offensichtlich kein Kreis mehr. Die Anzahl der entfernten Kanten beträgt E ( V κ(g)) = cyc(g). Die Minimalität überlegt man sich nun wie folgt: Da das Entfernen einer Kante die zyklomatische Zahl um maximal 1 erniedrigen kann, muss man auch mindestens cyc(g) viele Kanten entfernen, um einen kreisfreien Graphen (der die zyklomatische Zahl 0 hat) zu bekommen. b) Wir können o.b.d.a. davon ausgehen, dass G zusammenhängend ist, weil man ansonsten den Algorithmus in jeder Zusammenhangskomponente aufrufen kann. Wir berechnen einen maximalen Spannbaum des Graphen. Ein solcher Spannbaum kann mit dem Algorithmus von Kruskal berechnet werden, indem man die Kanten nach absteigendem statt aufsteigendem Gewicht einfügt. Als Kantenmenge E wählt man nun alle Kanten, die nicht in diesem Spannbaum vorkommen. Wir zeigen nun, dass dies die optimale Lösung ist. Sei E opt die optimale Lösung, die also das kleinstmögliche Gewicht hat. Nach Entfernen von E opt besteht der Restgraph aus genau einem Baum, denn bestünde er aus mehr als einer Zusammenhangskomponente, so könnte man mindestens eine Kante aus E opt entfernen (also zum Restgraph eine Kante hinzutun), ohne dass im Restgraph ein Kreis entsteht. E opt wäre nicht gewichtsminimal gewesen. Die Kantenmenge E \ E opt bildet also einen Spannbaum, das Gewicht von E opt ist also gleich dem Gewicht von E minus dem Gewicht des Spannbaums. Also ist das Gewicht von E opt mindestens so groß wie das Gewicht von E minus dem Gewicht eines maximalen Spannbaums. Damit hat die berechnete Lösung E minimales Gewicht. Aufgabe 30: Man wählt eine beliebige Reihenfolge v 1,..., v n der Knoten. Man zerlegt die Kantenmenge E disjunkt in zwei Teilmengen E 1 E 2 : E 1 sei die Menge der Kanten, deren Startknoten eine kleinere Nummer hat als der Zielknoten. (Die Kanten verlaufen von links nach rechts.) E 2 sei die Menge der Kanten, deren Startknoten eine größere Nummer hat als der Zielknoten der Kante. (Die Kanten verlaufen von rechts nach links.) Der Graph, der nur die Kanten aus E 1 enthält, ist azyklisch, da man in einem Kreis nicht nur zu Knoten mit größeren Nummern springen kann. Analoges gilt für E 2. Nach dem Schubfachprinzip hat eine der beiden Kantenmengen Gewicht mindestens w(e)/2. Der Teilgraph auf dieser Kantenmenge wird ausgegeben. Mehr als Gewicht w(e) kann kein Teilgraph von G haben. Wir erhalten eine Lösung mit relativer Güte

26 (höchstens) 2. Aufgabe 31: Wir nennen das beschriebene Problem 3FVS-Problem. Wenn man die Reduktion Revue passieren lässt, die zeigt, dass man das Vertex-Cover-Problem approximationserhaltend auf das FVS-Problem reduzieren kann, dann sieht man, dass für die beiden Graphen G und H, die in der Reduktion vorkommen, Folgendes gilt: a) Ein Vertex Cover der Größe k für den Graphen G zerstört im Graphen H alle Kreise, also insbesondere alle Kreise der Länge 3. b) Eine Knotenmenge M der Kardinalität k, deren Entfernung alle Kreise der Länge 3 in H zerstört, kann in ein Vertex Cover auf G transformiert werden, der höchstens k Knoten enthält. Also kann man das Vertex-Cover-Problem auch approximationserhaltend auf das 3FVS- Problem reduzieren. Dies zeigt, dass es gegenwärtig niemanden gibt, der das 3FVS- Problem in Polynomialzeit mit einer relativen Güte c < 2 approximieren kann, da ansonsten ein entsprechender Algorithmus für das Vertex-Cover-Problem bekannt wäre. Aber für das FVS-Problem kennt man immerhin einen Algorithmus mit Approximationsgüte 2. Beim 3FVS-Problem ist unklar, ob es einen solchen Algorithmus gibt; zumindest kann man den vorgestellten FVS-Algorithmus nicht direkt benutzen. Also gilt: Momentan kann man das FVS-Problem besser approximieren als das 3FVS- Problem. Aber ob prinzipiell das FVS-Problem oder das 3FVS-Problem besser zu approximieren ist, kann man so nicht sagen. Aufgabe 32: Es gilt die Aussage, dass ein Graph genau dann bipartit ist, wenn er keine Kreise ungerader Länge enthält. Dies sieht man wie folgt ein: Wenn ein Graph bipartit ist, dann startet jeder Kreis auf einer Seite und endet auf der gleichen Seite, er wechselt also gerade oft die Seiten. G enthält also keine Kreise ungerader Länge. Umgekehrt: Wenn ein Graph nur Kreise gerader Länge hat, dann betrachten wir den DFS-Baum von G. (O.B.d.A. sei G zusammenhängend.) Wenn wir die Ebenen des Baums mit 0, 1, etc. numerieren, dann verlaufen Back-Kanten nur zwischen Ebenen i und j, wenn i j ungerade ist (da ansonsten Kreise ungerader Länge geschlossen würden.). Also kann man als Bipartition V 1 := {v v liegt auf gerader Ebene} und V 2 := V \ V wählen, Kanten verlaufen dann nicht innerhalb von V 1 oder innerhalb von V 2. Wenn man in einem Graphen durch Entfernen einer Kantenmenge E alle Kreise ungerader Länge zerstört hat, dann bleibt ein bipartiter Graph übrig. Nennen wir die beiden

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

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

Mehr

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 11 Prof. Dr. Helmut Seidl, S. Pott,

Mehr

Minimal spannender Baum

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

Mehr

Wiederholung zu Flüssen

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

Mehr

Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt

Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik Prof. Dr. A. Taraz, Dipl-Math. A. Würfl, Dipl-Math. S. König Weihnachtsblatt Aufgabe W.1 Untersuchen Sie nachstehenden

Mehr

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

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

Mehr

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

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

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

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

Mehr

3. Musterlösung. Problem 1: Boruvka MST

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

Mehr

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

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

Mehr

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

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

Mehr

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

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

Mehr

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

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

Mehr

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

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

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

Mehr

Algorithmen zur Berechnung von Matchings

Algorithmen zur Berechnung von Matchings Algorithmen zur Berechnung von Matchings Berthold Vöcking 1 Einleitung Matchingprobleme sind Zuordnungsprobleme. Es geht darum z.b. Studierenden Plätze in Seminaren zuzuordnen, Bewerber auf freie Stellen

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

Übung zur Vorlesung Algorithmische Geometrie

Übung zur Vorlesung Algorithmische Geometrie Übung zur Vorlesung Algorithmische Geometrie Dipl.-Math. Bastian Rieck Arbeitsgruppe Computergraphik und Visualisierung Interdisziplinäres Zentrum für Wissenschaftliches Rechnen 8. Mai 2012 B. Rieck (CoVis)

Mehr

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung

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

Mehr

Algorithmen II Vorlesung am

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

Mehr

Durchschnitt von Matroiden

Durchschnitt von Matroiden Durchschnitt von Matroiden Satz von Edmonds Dany Sattler 18. Januar 2007/ Seminar zur ganzzahligen Optimierung / Wallenfels Definition: Unabhängigkeitssystem Definition: Ein Mengensystem (S, J ) nennt

Mehr

ADS: Algorithmen und Datenstrukturen 2

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

Mehr

Grundbegriffe der Informatik

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

Mehr

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick

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

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

1. Einleitung wichtige Begriffe

1. Einleitung wichtige Begriffe 1. Einleitung wichtige Begriffe Da sich meine besondere Lernleistung mit dem graziösen Färben (bzw. Nummerieren) von Graphen (speziell von Bäumen), einem Teilgebiet der Graphentheorie, beschäftigt, und

Mehr

Grundbegriffe der Informatik

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

Mehr

Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2006/07 in Trier. Henning Fernau Universität Trier

Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2006/07 in Trier. Henning Fernau Universität Trier Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2006/07 in Trier Henning Fernau Universität Trier fernau@informatik.uni-trier.de 1 Näherungsalgorithmen Gesamtübersicht Organisatorisches Einführung

Mehr

4.7 Der Algorithmus von Dinic für maximalen Fluss

4.7 Der Algorithmus von Dinic für maximalen Fluss 4.7 Der Algorithmus von Dinic für maximalen Fluss Wir kennen bereits den Algorithmus von Ford Fulkerson zur Suche nach einem maximalen Fluss in einem Graphen. Wir lernen nun einen Algorithmus für maximalen

Mehr

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie Referenzen zum Nacharbeiten: Diskrete Mathematik Sebastian Iwanowski FH Wedel Kap. 6: Graphentheorie Lang 6 Beutelspacher 8.1-8.5 Meinel 11 zur Vertiefung: Aigner 6, 7 (7.4: Algorithmus von Dijkstra) Matousek

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

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

Mehr

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

Algorithmen und Datenstrukturen 2

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

Mehr

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

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

Mehr

ADS: Algorithmen und Datenstrukturen 2

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

Mehr

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete).

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Vollständiger Graph Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Mit K n wird der vollständige Graph mit n Knoten bezeichnet. Bemerkung

Mehr

Universität des Saarlandes

Universität des Saarlandes Universität des Saarlandes FR 6.2 Informatik Prof. Dr. Kurt Mehlhorn WiSe 2015/2016 Übungen zu Ideen der Informatik http://www.mpi-inf.mpg.de/departments/algorithms-complexity/teaching/winter15/ideen/

Mehr

2. Optimierungsprobleme 6

2. Optimierungsprobleme 6 6 2. Beispiele... 7... 8 2.3 Konvexe Mengen und Funktionen... 9 2.4 Konvexe Optimierungsprobleme... 0 2. Beispiele 7- Ein (NP-)Optimierungsproblem P 0 ist wie folgt definiert Jede Instanz I P 0 hat einen

Mehr

Einführung in die Graphentheorie. Monika König

Einführung in die Graphentheorie. Monika König Einführung in die Graphentheorie Monika König 8. 11. 2011 1 Vorwort Diese Seminararbeit basiert auf den Unterkapiteln 1.1-1.3 des Buches Algebraic Graph Theory von Chris Godsil und Gordon Royle (siehe

Mehr

Kombinatorische Optimierung

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

Mehr

6. Übung zur Linearen Optimierung SS08

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

Mehr

NP-vollständig - Was nun?

NP-vollständig - Was nun? Kapitel 4 NP-vollständig - Was nun? Wurde von einem Problem gezeigt, dass es NP-vollständig ist, ist das Problem damit nicht gelöst oder aus der Welt geschafft. In der Praxis muss es trotzdem gelöst werden.

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

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

Mehr

2 Tiefen- und Breitensuche

2 Tiefen- und Breitensuche 2 Tiefen- und Breitensuche Übersicht 2.1 SpannendeBäume... 21 2.2 WiefindetmanspannendeBäume?... 24 2.3 AnwendungenvonBFSundDFS... 29 2.4 Aufgaben... 33 2.1 Spannende Bäume Vor nicht allzu langer Zeit

Mehr

Effiziente Algorithmen I

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

Mehr

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

f h c 7 a 1 b 1 g 2 2 d

f h c 7 a 1 b 1 g 2 2 d ) Man bestimme mit Hilfe des Dijkstra-Algorithmus einen kürzesten Weg von a nach h: c 7 a b f 5 h 3 4 5 i e 6 g 2 2 d Beim Dijkstra-Algorithmus wird in jedem Schritt von den noch unmarkierten Knoten jener

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 4: Minimale spannende Bäume Gliederung der Vorlesung

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

Mehr

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

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

Mehr

Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten

Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten Graphentheorie Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten gerichteter Graph (DiGraph (directed graph) E: Teilmenge E

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

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

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

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

Analysis II (FS 2015): ZUSAMMENHÄNGENDE METRISCHE RÄUME

Analysis II (FS 2015): ZUSAMMENHÄNGENDE METRISCHE RÄUME Analysis II (FS 2015): ZUSAMMENHÄNGENDE METRISCHE RÄUME Dietmar A. Salamon ETH-Zürich 23. Februar 2015 1 Topologische Grundbegriffe Sei (X, d) ein metrischer Raum, d.h. X ist eine Menge und d : X X R ist

Mehr

Minimal spannende Bäume

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

Mehr

Vollständige Induktion

Vollständige Induktion Schweizer Mathematik-Olympiade smo osm Vollständige Induktion Aktualisiert: 1 Dezember 01 vers 100 Eine der wichtigsten Beweistechniken der Mathematik überhaupt ist die (vollständige) Induktion Wir nehmen

Mehr

Mathematische Grundlagen der Ökonomie Übungsblatt 8

Mathematische Grundlagen der Ökonomie Übungsblatt 8 Mathematische Grundlagen der Ökonomie Übungsblatt 8 Abgabe Donnerstag 7. Dezember, 0:5 in H 5+7+8 = 20 Punkte Mit Lösungshinweisen zu einigen Aufgaben 29. Das Bisektionsverfahren sucht eine Nullstelle

Mehr

2 Die Dimension eines Vektorraums

2 Die Dimension eines Vektorraums 2 Die Dimension eines Vektorraums Sei V ein K Vektorraum und v 1,..., v r V. Definition: v V heißt Linearkombination der Vektoren v 1,..., v r falls es Elemente λ 1,..., λ r K gibt, so dass v = λ 1 v 1

Mehr

Wie beweise ich etwas? 9. Juli 2012

Wie beweise ich etwas? 9. Juli 2012 Schülerzirkel Mathematik Fakultät für Mathematik. Universität Regensburg Wie beweise ich etwas? 9. Juli 2012 1 Was ist ein Beweis? 1.1 Ein Beispiel Nimm einen Stift und ein Blatt Papier und zeichne fünf

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14

Datenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 2. April

Mehr

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Donnerstag den x > 1 3x > 3 3x + 3 > 6 6x + 3 > 3x + 6.

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Donnerstag den x > 1 3x > 3 3x + 3 > 6 6x + 3 > 3x + 6. Fachbereich Mathematik Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Donnerstag den 7.9.01 Vorkurs Mathematik WS 01/13 Die mit * gekennzeichneten Aufgaben sind etwas schwerer. Dort braucht

Mehr

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) Berlin, 21. Februar 2013 Name:... Matr.-Nr.:... Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) 1 2 3 4 5 6 7 8 9 Σ Bearbeitungszeit: 90 min. max. Punktezahl:

Mehr

Felix Brandt, Jan Johannsen. Vorlesung im Wintersemester 2008/09

Felix Brandt, Jan Johannsen. Vorlesung im Wintersemester 2008/09 Felix Brandt, Jan Johannsen Vorlesung im Wintersemester 2008/09 Übersicht Übersicht Definition Ein Matching in G = (V, E) ist eine Menge M E mit e 1 e 2 = für e 1, e 2 M, e 1 e 2 Ein Matching M ist perfekt,

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

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

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

Mehr

Vervollständigung Lateinischer Quadrate

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

Mehr

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

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

Mehr

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

2. Symmetrische Gruppen

2. Symmetrische Gruppen 14 Andreas Gathmann 2 Symmetrische Gruppen Im letzten Kapitel haben wir Gruppen eingeführt und ihre elementaren Eigenschaften untersucht Wir wollen nun eine neue wichtige Klasse von Beispielen von Gruppen

Mehr

Kapitel 5 KONVERGENZ

Kapitel 5 KONVERGENZ Kapitel 5 KONVERGENZ Fassung vom 21. April 2002 Claude Portenier ANALYSIS 75 5.1 Metrische Räume 5.1 Metrische Räume DEFINITION 1 Sei X eine Menge. Eine Abbildung d : X X! R + heißt Metrik oder Distanz

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

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

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung

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

Mehr

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

11. Übungsblatt zu Algorithmen I im SS 2010

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

Mehr

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Mittwoch den

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Mittwoch den Fachbereich Mathematik Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Mittwoch den 8.9.011 Vorkurs Mathematik WS 011/1 Die mit * gekennzeichneten Aufgaben sind etwas schwerer. Dort braucht

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

(x, x + y 2, x y 2 + z 3. = e x sin y. sin y. Nach dem Umkehrsatz besitzt f dann genau auf der Menge

(x, x + y 2, x y 2 + z 3. = e x sin y. sin y. Nach dem Umkehrsatz besitzt f dann genau auf der Menge ÜBUNGSBLATT 0 LÖSUNGEN MAT/MAT3 ANALYSIS II FRÜHJAHRSSEMESTER 0 PROF DR CAMILLO DE LELLIS Aufgabe Finden Sie für folgende Funktionen jene Punkte im Bildraum, in welchen sie sich lokal umkehren lassen,

Mehr

Kapitel 3: Untere Schranken für algorithmische Probleme Gliederung

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

Mehr

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

Graphen. Leonhard Euler ( )

Graphen. Leonhard Euler ( ) Graphen Leonhard Euler (1707-1783) 2 Graph Ein Graph besteht aus Knoten (nodes, vertices) die durch Kanten (edges) miteinander verbunden sind. 3 Nachbarschaftsbeziehungen Zwei Knoten heissen adjazent (adjacent),

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

3 Vom Zählen zur Induktion

3 Vom Zählen zur Induktion 7 3 Vom Zählen zur Induktion 3.1 Natürliche Zahlen und Induktions-Prinzip Seit unserer Kindheit kennen wir die Zahlen 1,, 3, 4, usw. Diese Zahlen gebrauchen wir zum Zählen, und sie sind uns so vertraut,

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

Studientag zur Algorithmischen Mathematik

Studientag zur Algorithmischen Mathematik Studientag zur Algorithmischen Mathematik Eulertouren, 2-Zusammenhang, Bäume und Baumisomorphismen Winfried Hochstättler Diskrete Mathematik und Optimierung FernUniversität in Hagen 22. Mai 2011 Outline

Mehr

Tag der Mathematik 2016

Tag der Mathematik 2016 Tag der Mathematik 016 Mathematischer Wettbewerb, Klassenstufe 9 10 30. April 016, 9.00 1.00 Uhr Aufgabe 1 Der Mittelwert von 016 (nicht unbedingt verschiedenen) natürlichen Zahlen zwischen 1 und 0 16

Mehr

Amortisierte Analysen

Amortisierte Analysen Amortisierte Analysen 26. Mai 2016 1 Einleitung Es gibt viele Datenstrukturen, bei deren Komplexitätsanalyse das Problem auftaucht, dass die Ausführung mancher Operationen Einfluss auf die Komplexität

Mehr

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

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

Mehr

Elementare Beweismethoden

Elementare Beweismethoden Elementare Beweismethoden Christian Hensel 404015 Inhaltsverzeichnis Vortrag zum Thema Elementare Beweismethoden im Rahmen des Proseminars Mathematisches Problemlösen 1 Einführung und wichtige Begriffe

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

Vorlesung. Vollständige Induktion 1

Vorlesung. Vollständige Induktion 1 WS 015/16 Vorlesung Vollständige Induktion 1 1 Einführung Bei der vollständigen Induktion handelt es sich um ein wichtiges mathematisches Beweisverfahren, mit dem man Aussagen, die für alle natürlichen

Mehr

Technische Universität München Zentrum Mathematik. Übungsblatt 5

Technische Universität München Zentrum Mathematik. Übungsblatt 5 Technische Universität München Zentrum Mathematik Mathematik Elektrotechnik) Prof. Dr. Anusch Taraz Dr. Michael Ritter Übungsblatt 5 Hausaufgaben Aufgabe 5. Bestimmen Sie folgende Grenzwerte. Benutzen

Mehr

6 Reelle und komplexe Zahlenfolgen

6 Reelle und komplexe Zahlenfolgen $Id: folgen.tex,v.7 200//29 :58:57 hk Exp hk $ 6 Reelle und komplexe Zahlenfolgen 6. Folgenkonvergenz In der letzten Sitzung hatten wir den Begriff der Konvergenz einer reellen oder komplexen Folge gegen

Mehr

Minimal spannende Bäume

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

Mehr

TECHNISCHE UNIVERSITÄT MÜNCHEN

TECHNISCHE UNIVERSITÄT MÜNCHEN TECHNISCHE UNIVERSITÄT MÜNCHEN Zentrum Mathematik PROF. DR.DR. JÜRGEN RICHTER-GEBERT, VANESSA KRUMMECK, MICHAEL PRÄHOFER Aufgabe 45. Polynome sind stets stetig. Höhere Mathematik für Informatiker II (Sommersemester

Mehr

5 Graphen und Polyeder

5 Graphen und Polyeder 5 Graphen und Polyeder 5.1 Graphen und Eulersche Polyederformel Ein Graph besteht aus einer Knotenmenge V (engl. vertex) und einer Kantenmenge E (engl. edge). Anschaulich verbindet eine Kante zwei Knoten,

Mehr