Knapsack & Bin Packing Sebastian Stober

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen für das Erfüllbarkeitsproblem SAT
Advertisements

Christian Scheideler SS 2009
Methoden des Algorithmenentwurfs Kapitel 1.4:Approximations-schemata
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,
Zerlegung von Graphen.
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
3. Kapitel: Komplexität und Komplexitätsklassen
2. Kapitel: Komplexität und Komplexitätsklassen
Die 1-Baum-Relaxation des TSP mit der Subgradientenmethode
Einige entscheidbare bzw. rekursiv aufzählbare Sprachen
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Verifizieren versus Berechnen
Algorithmen und Komplexität
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Approximationsalgorithmen …liefern in polynomieller.
Klaus Volbert 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Sommersemester 2004.
Algorithmentheorie 04 –Hashing
1WS 06/07 Organisatorisches 1.Vorlesung am Montag, : 9-11 Uhr in Gebäude 106, Raum Podcasts: Probleme mit der Videoqualität sind behoben.
Prof. Dr. S. Albers Prof. Dr. Th. Ottmann
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Algorithmentheorie 7 – Bin Packing
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
Algorithmen des Internets 2005 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität 1 Materialien zu Übung 9 Bälle in Körbe Ranged.
Minimum Spanning Tree: MST
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1.
Christian Scheideler Institut für Informatik Universität Paderborn
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Chromatische Zahl.
Effiziente Algorithmen
Computational Thinking Online Algorithmen [Was ist es wert, die Zukunft zu kennen?] Kurt Mehlhorn Konstantinos Panagiotou.
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
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
Black Box 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/ /23.1.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation
Information und Kommunikation
Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Christian Scheideler Institut für Informatik Universität Paderborn
1 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Dynamische Programmierung.
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.
Algorithmen für das Erfüllbarkeitsproblem SAT
Analyse der Laufzeit von Algorithmen
Anwendung der Ellipsoidmethode in der Kombinatorischen Optimierung
Gliederung der Vorlesung
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Algorithmen und Datenstrukturen
Wiederholung TexPoint fonts used in EMF.
Algorithmen und Datenstrukturen
 Präsentation transkript:

Knapsack & Bin Packing Sebastian Stober Arbeitsgruppe 5: Wie genau ist ungefähr? Sommerakademie Görlitz 2007

Sebastian Stober - Knapsack & Bin Packing 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Knapsack a.k.a. Rucksack – Problem (genauer: 0/1-Knapsack) Gegeben: Menge S={a1,…,an} von Objekten Größen bzw. Gewichte size(ai)Z+ Nutzen profit(ai)Z+ Kapazität BZ+ des Knapsacks Gesucht: Teilmenge von S mit Größe beschränkt durch B Maximalem Wert 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Knapsack – Komplexität / Greedy Knapsack ist NP-vollständig Greedy Heuristik: Sortiere Objekte nach fallendem relativem Nutzen bzgl. Ihrer Größe. (also Nutzen/Größe) Wähle Objekte in dieser Reihenfolge, bis keines mehr hinein passt. Kann beliebig schlecht werden. (Bsp.) 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Knapsack – Optimalitätsprinzip Wenn Knapsack der Größe B optimal mit einer Auswahl I  S gepackt ist, so gilt für jedes Objekt oI, dass ein (B - size(o))-großer Knapsack optimal mit I/{o} gepackt ist. Rekursionsvorschrift für optimalen Wert v(i,b) beim Packen eines Knapsacks der Kapazität b ≤ B mit Objekten aus {a1,…,ai} mit i ≤ n: Optimale Auswahl ergibt sich daraus, welcher Fall bei v(n,B) aufgetreten ist. [ignorieren] [----------- hineinlegen ----------] 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Knapsack – Dyn. Programmierung Iterative Berechnung der v(i,b) und Speicherung in einer Tabellenstruktur (Dynamische Programmierung) Komplexität: pseudo-polynomiell 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Sebastian Stober - Knapsack & Bin Packing Knapsack – FPTAS Idee: Verwende nur eine feste Anzahl von Bits (abhängig von ) und ignoriere die unwichtigsten, so dass der gerundete Nutzen polynomiell in n und 1/ ist. Algorithmus: Für geg.  > 0 definiere K=P/n Für jedes Objekt ai, definiere Nutzen Finde optimale Menge S‘ unter Verwendung der gerundeten Werte 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Sebastian Stober - Knapsack & Bin Packing Knapsack – FPTAS Relative Approximationsgüte: (1+) Beweis: Sei S* die optimale Menge Für alle aS unterscheiden sich profit(a) und Kprofit‘(a) maximal um K, daher: profit(S*) – Kprofit‘(S*) ≤ nK S‘ muss mindestens so gut sein wie S* unter den modifizierten Profits, da Alg. optimal. Daher profit(S‘) ≥ Kprofit‘(S*) ≥ profit(S*)-nK = OPT-P und da OPT ≥ P folgt: profit(S‘) ≥ (1- )OPT Komplexität: 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Alg. nach Neuhausen & Ullmann Siehe Tafel… 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Alg. nach Neuhausen & Ullmann 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

2. Bin Packing

Sebastian Stober - Knapsack & Bin Packing Bin Packing – Problem Gegeben: n Objekte Größen a1,…,an (0,1] Gesucht: Aufteilung der Objekte in Behälter (Einheitsgröße 1) mit minimaler Anzahl der Behälter 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Bin Packing – Komplexität Bin Packing ist NP-vollständig. Es gibt kein PTAS mit relativer Güte 3/2- für  > 0 (vorausgesetzt P≠NP). (Beweis durch Reduktion des Problems Partition, siehe 3. Vortrag) 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Sebastian Stober - Knapsack & Bin Packing Bin Packing – First Fit Lege a1 in Behälter B1 Für jedes weitere Objekt ai, 1<i≤n: Lege ai in Bi Relative Güte: 1,7 Modifikation: Decreasing First Fit Sortiere die Objekte nach absteigender Größe Relative Güte: 11/9 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Asymptotisches PTAS (1) Vereinfachtes Problem: Feste minimale Größe  > 0 Feste Anzahl verschiedener Größen KZ+ Kann in P gelöst werden Maximal M=1/ Objekte pro Behälter, daher Typen von Behälter (nach Füllstand) mögliche Verteilungen Polynom in n 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Asymptotisches PTAS (2.1) Vereinfachung: Feste minimale Größe  > 0 PTAS mit relativer Güte (1+) Sortiere Objekte nach steigender Größe Bilde K=1/² Gruppen mit max. Q=n² Objekten Konstruiere J durch Aufrunden: J hat maximal K verschiedene Objektgrößen Wende vorigen Alg. an 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Asymptotisches PTAS (2.2) Warum benötigt J max. (1+)OPT Behälter? Konstruiere J‘ durch Abrunden: J‘ braucht maximal OPT Behälter Verteilung für J‘ funktioniert auf für alle außer die Q größten Objekte aus J, daher OPT(J) ≤ OPT(J‘)+Q ≤ OPT+Q OPT ≥ n (da minimale Objektgröße  nach Vorraussetzung) Daher Q = n² ≤ OPT Und daher: OPT(J) ≤ (1+)OPT 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Asymptotisches PTAS (3) gegeben: Probleminstanz I Entferne Objekte der Größe  modifizierte Probleminstanz I‘ Aufrunden, um konstante Anzahl der Objektgrößen zu erhalten Optimale Verteilung berechnen Verteilung für ursprüngliche Objekte verwenden maximal (1+ )OPT(I‘) Behälter Objekte, die kleiner als  sind, mit First Fit verteilen 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Asymptotisches PTAS (4) Es werden keine weiteren Behälter benötigt.  M sei tatsächliche Anzahle der benötigten Behälter Alle außer der letzte Behälter sind mindestens zu 1- gefüllt (M-1)(1-) ≤ Masse aller Objekte ≤ OPT daher: und mit 0 <  ≤ 1/2 : M ≤ (1+2)OPT+1 10.9.2007 Sebastian Stober - Knapsack & Bin Packing

Bin Packing - Zusammenfassung Bin Packing ist NP-vollständig. Es gibt kein PTAS mit relativer Güte 3/2- für  > 0 (vorausgesetzt P≠NP). First Fit: 1,7 OPT Decreasing First Fit: 11/9 OPT Asymptotisches PTAS für 0 <  ≤ 1/2 mit (1+2)OPT+1 10.9.2007 Sebastian Stober - Knapsack & Bin Packing