• Keine Ergebnisse gefunden

Übung zur Vorlesung Effiziente Algorithmen

N/A
N/A
Protected

Academic year: 2022

Aktie "Übung zur Vorlesung Effiziente Algorithmen"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Lehrstuhl für Informatik 1 SS 2012

PD Dr. Walter Unger 26.06.2012

Sascha Geulen Benjamin Ries

Übung zur Vorlesung Effiziente Algorithmen

Blatt 10

Aufgabe 10.1 (4 Bonuspunkte)

Welche der folgenden Aussagen sind richtig, welche falsch? Gib jeweils einen Beweis oder ein Gegenbeispiel an.

(a) Wenn alle Kanten eines Netzwerks paarweise verschiedene Kapazitäten haben, so gibt es einen eindeutig bestimmten minimalen Schnitt.

(b) Im Restnetzwerk Gf gilt rest(u, v) +rest(v, u) = c(u, v)für jede Kante (u, v)∈E.

(c) Wenn alle Kantenkapazitäten mit einer beliebigen positiven Zahl multipliziert wer- den, ändert sich der minimale Schnitt nicht.

(d) Wenn zu allen Kantenkapazitäten eine beliebige positive Zahl addiert wird, ändert sich der minimale Schnitt nicht.

Aufgabe 10.2 (4 Bonuspunkte)

Ein Briefträger soll die Briefe in seinen Bezirk zustellen. Dafür muss er jede Straße in seinem Bezirk mindestens einmal entlanggehen. Wenn er eine Straße das erste Mal durchläuft, trägt er auf beiden Straßenseiten gleichzeitig die Briefe aus. Der Einfachheit halber nehmen wir an, dass die Zustellung eines Briefes keine Zeit benötigt und damit nur die Länge der Straße für die Zeit des Entlanggehens relevant ist. Wie kann der Briefträger die Briefe auf dem kürzesten Weg austragen?

Formal ist das Briefträgerproblem das folgende Optimierungsproblem:

Briefträgerproblem

Eingabe: Ein ungerichteter GraphG= (V, E)mit Kantengewichten c: E →N. zulässige Lösung: Ein Wegv1, . . . , vk mitv1 =vk, so dass für allee ∈E mindestens

ein i∈ {1, . . . , k−1}existiert mit e ={vi, vi+1}.

Zielfunktion: MinimierePk−1

i=1 c({vi, vi+1}).

Gib einen Algorithmus zur Berechnung eines optimalen Weges an, der eine polynomiel- le Laufzeit besitzt. Beweise auch die polynomielle Laufzeit und die Korrektheit deines Algorithmus.

Tipp: Mache den Eingabegraphen eulersch, indem du ein geeignetes Min-Cost-Matching berechnest.

— bitte wenden —

(2)

Aufgabe 10.3 (4 Bonuspunkte) Sei G = (V, E) ein k−uniformer Hypergraph, also ein Graph in dem jede Kante eine k−elementige Teilmenge der Knoten ist. Ein maximales Matching in einemk−uniformen Hypergraph ist eine maximale Teilmenge der Kanten, so dass kein Knoten in mehr als einer Kante vorkommt. Im folgenden verallgemeinern wir den in der Vorlesung vorge- stellten Algorithmus zur 2-Approximation eines Vertex-Covers auf k−uniforme Hyper- graphen. Zur Erinnerung geben wir diesen noch einmal an.

• Berechne ein inklusions-maximales MatchingM ⊆E.

• Gib V(M), die Menge aller Knoten der Kanten in M, aus.

Dieser Algorithmus läßt sich auch nutzen, um ein optimales Vertex-Cover aufk−uniformen Hypergraphen zu approximieren.

(a) Begründe, warum wir so ein gültiges Vertex-Cover erhalten.

(b) Welcher Approximationsfaktor wird so erreicht? Beweise deine Aussage.

Aufgabe 10.4 (4 Bonuspunkte)

In der Vorlesung haben wir bisher das File-Allocation-Problem (FAP) nur auf einem einfachen Graphen mit 2 Knoten betrachtet. Wir wollen die Problemstellung nun auf Bäume (kreisfreie, ungerichtete Graphen) erweitern. Zu einem Zeitpunkt t ≥0bezeich- nen wir als Residenzmenge Rt ⊆ V, Rt 6= ∅ die Menge der Knoten, die eine Kopie der Dateixhaben. Zum Zeitpunkt0giltR0 ={v}für einen beliebigen Knotenv. Wir setzen voraus, dass jeder Knoten zu jedem Zeitpunkt t die Menge Rt kennt. Die Servicekosten werden wie folgt definiert.

• Falls σt = r(v), entsprechen die Servicekosten der Distanz von v zum nächsten Knoten in Rt−1.

• Falls σt = w(v), entsprechen die Servicekosten den Kosten des minimalen Stei- nerbaumes, der von v und Rt−1 aufgespannt wird; also der minimalen Summe der Kantenlängen, die benötigt wird, umv durch einen Baum mit allen Knoten in Rt−1

zu verbinden.

Wenn eine Kopie der Datei entlang eines Pfades der Längel verschoben wird, so entste- hen Migrationskosten von l. Wir betrachten nun folgenden Online-Algorithmus.

• Falls σt=r(v), dann setze Rt :=Rt−1∪Pt−1(v).

• Falls σt=w(v), dann setze Rt:=Pt−1(v).

Dabei sei Pt−1 die Menge der Knoten auf dem kürzesten Pfad von v nach Rt−1. Falls v ∈Pt−1, so gibt es nach einer Schreibanfrage nur noch eine Kopie auf v.

Zeige, dass der obige Online-Algorithmus für FAP auf Bäumen 3-competitive ist.

Abgabe bis Dienstag, den 03.07.2012 um 12.00 Uhr

im Sammelkasten am Lehrstuhl.

Referenzen

ÄHNLICHE DOKUMENTE

Angenommen wir haben einen Kartenstapel mit n verschiedenen verdeckten Karten. Bei jedem Spielzug decken wir eine Karte auf und wollen vorher jeweils erraten welche es ist. Wie

(Die Kosten einer optimalen Offline-Strategie entspre- chen offensichtlich der Entfernung d zur Weide, denn wenn die Kuh weiß, ob sich die Weide links oder rechts von ihrer

Aufgabe 9.3 (4 Punkte) Betrachte den folgenden Algorithmus für das Makespan-Scheduling-Problem auf m iden- tischen Maschinen:.. (1) Wähle die m größten Jobs und weise jeder

Wenn nein, wird eine verletzte Nebenbedingung bestimmt, diese parallel in den Mittelpunkt verschoben und entlang dieser Nebenbedingung das kleinste Rechteck berechnet, das

Ziel ist es, die Jobs derart auf die Maschinen zu verteilen, dass die Summe der Fertigstellungszeitpunkte aller Jobs gegeben durch P n.. j=1 c j

(a) Wenn alle Kanten eines Netzwerks paarweise verschiedene Kapazitäten haben, so gibt es einen eindeutig bestimmten minimalen Schnitt.. (b) Die Laufzeit der Ford-Fulkerson-Methode

Wie unterscheiden sich beide Algorithmen bezüglich ihrer Laufzeit. — bitte

(b) Wir wissen, dass für das Flussproblem immer eine ganzzahlige optimale Lösung existiert, wenn die Kapazitäten ganzzahlig sind. Finde Gegenbeispiele für die oben denierten