1WS 06/07 Organisatorisches 1.Vorlesung am Montag, 04.12.2006: 9-11 Uhr in Gebäude 106, Raum 00-007 2.Podcasts: Probleme mit der Videoqualität sind behoben.

Slides:



Advertisements
Ähnliche Präsentationen
Christian Scheideler SS 2009
Advertisements

Christian Scheideler SS 2009
Methoden des Algorithmenentwurfs Kapitel 1.4:Approximations-schemata
Knapsack & Bin Packing Sebastian Stober
Motivation Bisher: Codes mit möglichst kurzer Codelänge.
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Eine dynamische Menge, die diese Operationen unterstützt,
WS Prof. Dr. Th. Ottmann Algorithmentheorie 09 - Suche in Texten KMP, BM.
5. Sortier-Algorithmen Vorbemerkungen:
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Verifizieren versus Berechnen
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Approximationsalgorithmen …liefern in polynomieller.
Algorithmentheorie 04 –Hashing
Algorithmentheorie 6 – Greedy-Verfahren
WS Algorithmentheorie 13 - Kürzeste (billigste) Wege Prof. Dr. Th. Ottmann.
Prof.Dr.S. Albers Prof. Dr. Th. Ottmann
1 Bewegungsplanung Computational Geometry Prof. Dr. Th. Ottmann Bewegungsplanung bei unvollständiger Information Ausweg aus einem Labyrinth Finden eines.
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
Prof. Dr. S. Albers Prof. Dr. Th. Ottmann
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen Organisatorisches zu den Übungen Tobias Lauer.
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
WS Algorithmentheorie 08 – Dynamische Programmierung (3) Konstruktion optimaler Suchbäume Prof. Dr. Th. Ottmann.
Online Competitive Algorithms
WS 06/07 Algorithmentheorie 01 - Einleitung Prof. Dr. Th. Ottmann Tobias Lauer.
Algorithmentheorie 7 – Bin Packing
Union-Find-Strukturen
WS Algorithmentheorie 15 – Fibonacci-Heaps Tobias Lauer.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Algorithmen und Komplexität
Christian Schindelhauer
Christian Schindelhauer
Wir suchen ‘ mit m = m    ‘ c  ‘ mod 26
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Effiziente Algorithmen
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Effiziente Algorithmen
Chromatische Zahl.
Computational Thinking Online Algorithmen [Was ist es wert, die Zukunft zu kennen?] Kurt Mehlhorn Konstantinos Panagiotou.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation
Hartmut Klauck Universität Frankfurt WS 06/
Polynome und schnelle Fourier-Transformation
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Jamshid Azizi: Folie Isomorphietest Jamshid Azizi
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Informatik III Christian Schindelhauer Wintersemester 2006/07
Arne Vater Wintersemester 2006/ Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Analyse der Laufzeit von Algorithmen
Kapitel 5 Cutting & Packing. Inhalt 5.1 Einleitung/Beispiele 5.2 Typologie & Begriffe 5.3 Eindimensionale Probleme 5.4 Zweidimensionale Probleme 5.5 Dreidimensionale.
 Präsentation transkript:

1WS 06/07 Organisatorisches 1.Vorlesung am Montag, : 9-11 Uhr in Gebäude 106, Raum Podcasts: Probleme mit der Videoqualität sind behoben Alte Files wurden durch neue ersetzt diese müssen neu heruntergeladen werden

WS 06/07 Tobias Lauer Algorithmentheorie 7 – Bin Packing

3WS 06/07 Problembeschreibung Gegeben: n Objekte der Größen s 1,..., s n mit 0 < s i 1, für 1 i n. Gesucht: Die kleinstmögliche Anzahl von Kisten (Bins) der Größe 1, mit der alle Objekte verpackt werden können. Beispiel: 7 Objekte mit Größen 0.2, 0.5, 0.4, 0.7, 0.1, 0.3, 0.8

4WS 06/07 Problembeschreibung Online Bin-Packing: Jedes (ankommende) Objekt muss verpackt sein, bevor das nächste Objekt betrachtet wird. Ein Objekt verbleibt in derjenigen Kiste, in die es zuerst gepackt wird. Offline Bin-Packing: Zunächst wird die Anzahl n und alle n Objekte vorgegeben. Dann beginnt die Verpackung.

5WS 06/07 Beobachtung Bin-Packing ist beweisbar schwer. (Offline Version ist NP-hart. Entscheidungsproblem ist NP-vollständig.) Kein Online Bin-Packing Verfahren kann stets eine optimale Lösung liefern.

6WS 06/07 Online Verfahren Satz 1 Es gibt Eingaben, die jeden Online Bin-Packing-Algorithmus zwingen, wenigstens 4/3 OPT Bins zu verwenden, wobei OPT die minimal mögliche Binzahl ist. Beweis: Annahme: Es gibt einen Online Bin-Packing-Algorithmus A, der stets weniger als 4/3 OPT Bins benötigt. 1/ m m + 1 m + 2 2m Zeit 1

7WS 06/07 Online Verfahren Next-Fit (NF), First-Fit (FF), Best-Fit (BF) Next-Fit: Verpacke das nächste Objekt in dieselbe Kiste wie das vorherige, wenn es dort noch hineinpasst, sonst öffne eine neue Kiste und verpacke es dort. Satz 2 (a) Für alle Inputfolgen I gilt: NF(I) 2 OPT(I). (b) Es gibt Inputfolgen I mit: NF(I) 2 OPT(I) – 2.

8WS 06/07 Next Fit Beweis: (a) Betrachte zwei Kisten B 2k-1, B 2k, 2 k NF ( I ). 0 1 B 1 B 2 B 2k-1 B 2k

9WS 06/07 Next Fit Beweis: (b) Betrachte Inputfolge I mit Länge n n 0 (mod 4): 0.5, 2/ n, 0.5, 2/ n, 0.5,..., 0.5, 2/ n Optimale Packung: 0 1 B 1 B 2 B n/4 B n/ /n

10WS 06/07 Next Fit Next Fit liefert: NF ( I ) = OPT ( I ) = 0 1 B 1 B 2 B n/ /n 0.5 2/n 0.5

11WS 06/07 First Fit First Fit: Packe nächstes Objekt in die erste Kiste, in die es noch hineinpasst, wenn es eine solche Kiste gibt, sonst in eine neue Kiste. Beobachtung: Zu jedem Zeitpunkt kann es höchstens eine Kiste geben, die nicht mehr als halb voll ist. FF( I ) 2 OPT( I )

12WS 06/07 First Fit Satz 3 (a) Für alle Inputfolgen I gilt: FF ( I ) 17/10 OPT ( I ) (b) Es gibt Inputfolgen I mit: FF ( I ) 17/10 ( OPT ( I ) – 1) (b´) Es gibt Inputfolgen I mit: FF ( I ) = 10/6 OPT ( I )

13WS 06/07 First Fit Beweis (b`): Inputfolge der Länge 3 6 m

14WS 06/07 First Fit First-Fit liefert:

15WS 06/07 First Fit

16WS 06/07 Best Fit Best Fit: Verpacke das nächste Objekt in diejenige Kiste, in die es am besten passt (d.h. den geringsten Platz ungenutzt lässt). Verhalten von Best Fit ähnlich zu First Fit Laufzeit für Inputfolgen der Länge n Next Fit:O( n ) First Fit:O( n 2 ) BestFit:O( n 2 )

17WS 06/07 Offline Verfahren n und s 1,..., s n sind gegeben, bevor die Verpackung beginnt Optimale Packung kann durch erschöpfende Suche bestimmt werden. Idee für offline Approximationsalgorithmus: Sortiere die Objekte zunächst nach abnehmender Größe und verpacke größere Objekte zuerst! First Fit Decreasing (FFD) bzw. FFNI Best Fit Decreasing (BFD)

18WS 06/07 First Fit Decreasing Lemma 1 Sei I eine Folge von n Objekten mit Größen s 1 s s n und sei m = OPT(I). Dann haben alle von FFD in den Bins B m+1,B m+2,..., B FFD(I) verpackten Objekte eine Größe von jeweils höchstens 1/3.

19WS 06/07 First Fit Decreasing Lemma 2 Sei I eine Folge von n Objekten mit Größen s 1 s s n und sei m = OPT ( I ). Dann ist die Anzahl der Objekte, die FFD in die Kisten B m+1, B m+2,..., B FFD(I) verpackt, höchstens m – 1.

20WS 06/07 First Fit Decreasing Beweis: Annahme: Es gibt mehr als m – 1 Objekte x 1,...., x m in I, die FFD in extra Kisten verpackt. W1W1 W2W2 WmWm B 1 B 2 B m B m+1

21WS 06/07 Anzahl der Bins von FFD Lemma 2: FFD muss m-1 Objekte in Extra-Bins verpacken Lemma 1: jedes dieser Objekte hat eine Größe 1/3 FFD( I ) =

22WS 06/07 First Fit Decreasing Satz Für alle Inputfolgen I gilt: FFD ( I ) 4/3 OPT ( I ) + 1/3 Satz a. Für alle Inputfolgen I gilt: FFD ( I ) 11/9 OPT ( I ) + 4. b. Es gibt Inputfolgen I mit: FFD ( I ) = 11/9 OPT ( I ).

23WS 06/07 First Fit Decreasing Beweis (b): Inputfolge der Länge 3 6 m + 12 m Optimale Packung: 1/2 + 1/ /4 + 1/2 + 1/ / / / / /4 + 2

24WS 06/07 First Fit Decreasing 1/2 + 1/ / / First Fit Decreasing liefert: OPT(I) = 9m FFD(I) = 11m