Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Optimierungs- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2.

Ähnliche Präsentationen


Präsentation zum Thema: "Optimierungs- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2."—  Präsentation transkript:

1 Optimierungs- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2

2 Überblick Exakte Lösungsmethoden für ILPs Branch-and-Bound Schnittebenenverfahren Branch-and-Cut Kombinatorische vs. Ganzzahlige Optimierung Linear Ordering Acyclic Subgraph TSP

3 Kombinatorische Optimierung vs. 0/1-IP Gegeben ist 0/1-IP: Assoziiertes Kombinatorisches OP:

4 Kombinatorische Optimierung vs. 0/1-IP Gegeben ist kombinatorisches OP: ( E,I,c ) Assoziiertes 0/1-IP: Jedes Polyeder hat Beschreibung durch Ungleichungen Wir können also jedes komb. OP als LP formulieren Probleme: Berechnung der LP-Darstellung nicht in pol.- Zeit möglich i.A. exponentiell viele Ungleichungen Ungleichungen besitzen Koeffizienten exponentieller Größe

5 Lineares Ordnungsproblem (LOP) Gegeben: ein vollständiger gerichteter Graph G=(V,A) mit Kantengewichten c uv für alle Bögen (u,v) in A. Gesucht: eine lineare Ordnung der Knoten, so dass die Summe der Gewichte aller Bögen, die dieser Ordnung entsprechen, maximiert wird Anwendungen: Triangulation von Input-Output Matrizen, Rangbestimmung in Turniersportarten

6 Graphen-Theoretische Formulierung Gegeben: ein vollständiger gerichteter Graph G=(V,A) mit Bogengewichten c uv für alle Bögen (u,v) in A. Gesucht: ein spannendes, azyklisches Turnier in G mit größtem Gewicht 1234 Turnier: T  A: entweder (i,j)  T oder (j,i)  T aber nicht beide

7 Beispiel n=3: x 12 x 13 x 23 Permutation charakt. Vektor (1,1,1) (0,1,1) (0,0,1) (1,1,0) (1,0,0) (0,0,0) x 12 x 13 x 23 x 12 +x 23 -x 13 =0 x 12 +x 23 -x 13 = ILP-Formulierung des LOP Das LOP-Polytop: conv { x | x beschreibt azyklisches Turnier}

8 n<6: Entfernung der Ganzzahligkeitsbedingungen macht keinen Unterschied D.h. die Ecken des relaxierten LOP-Polytops sind alle ganzzahlig n>=6: zusätzliche Ungleichungen notwendig LP-Relaxierung des IPs

9 Beispiel: Moebius-Leiter Ungleichungen: 1 2k-1 2k 2 34 Allgemein: k Kreise, k ungerade Es ist notwendig, mindestens (k+1)/2 Bögen zu entfernen, um G azyklisch zu machen Möbius-Ungleichungen beschreiben Facetten des LOP-Polytops Foschungsgebiet: Polyedrische Kombinatorik

10 Polyedrische Kombinatorik: LOP Konvexe Hülle aller charakteristischer Vektoren, die Permutationen, die l Elemente beschreiben. ln ,472 >488,602,996 For l=60 ist LOP exakt lösbar innerhalb 1 Sekunde mittels Schnittebenenverfahren.

11 Überblick Exakte Lösungsmethoden für ILPs Branch-and-Bound Schnittebenenverfahren Branch-and-Cut Kombinatorische vs. Ganzzahlige Optimierung Linear Ordering Acyclic Subgraph TSP

12 Zielfunktion Lineares Programm LP optimum Zulässigkeitsbereich y x

13 Zielfunktion IP Optimum Ganzzahliges Lineares Program Abrunden der optimalen Lösung der LP-Relaxierung Zulässige Lösungen y x Optimum der LP Relaxierung

14 Branch-and-Bound Betrachte das folgende ILP: Max x + y + 2z Subject to 7x + 2y + 3z  36 5x + 4y + 7z  42 2x + 3y + 5z  28 x, y, z  0, ganzzahlig (IP 0 ) LP-Relaxierung

15 IP 0 IP 2 IP 1 Bester IP- Wert Beste IP- Lösung 10 / Integral IP 4 IP 3 Unzulässig IP 6 IP 5 / 11 Integral IP 8 IP 7 Obj. <= bestem gefundenen Wert Obj. <= bestem gefundenem Wert Branch-and-Bound für ILPs: Beispiel Löse LP- Relaxierung Max x+y+2z

16 Beispiel n=3: x 12 x 13 x 23 Permutation charakt. Vektor (1,1,1) (0,1,1) (0,0,1) (1,1,0) (1,0,0) (0,0,0) x 12 x 13 x 23 x 12 +x 23 -x 13 =0 x 12 +x 23 -x 13 = Schnittebenenverfahren: LOP

17 Zielfunktion Schnittebenenverfahren Zulässige Lösungen y x Addiere Ungleichungen nur bei Bedarf

18 Zielfunktion Separationsproblem Zulässige Lösungen y x Gegeben ist ein Punkt x und OP. Gesucht ist eine Ungleichung, die diesen Punkt --- aber keine zulässige Lösung --- abschneidet......oder Beweis, dass keine solche Un- gleichung existiert.

19 Problem: Finde größten azyklischen Unter- graphen in gewichtetem Digraphen D=(V,A) Beispiel: Acyclic Subgraph Problem: exponentiell viele Ungleichungen Lösung: durch Separierung

20 Idee von Schnittebenenverfahren (1) Starte mit einer Teilmenge der Restriktionen (2) Löse LP, sei x* die gefundene Optimallösung (3.1) Falls NEIN: STOP (Relaxierung gelöst) (3.2) Falls JA: Bestimme solche, füge sie zu lP hinzu und gehe zu (1) (3) Entscheide, ob es weggelassene Restriktionen a T x a 0 ? Separationsproblem

21 Satz von Grötschel, Lovasz, Schrijver (1) Das Optimierungsproblem ist in polynomieller Zeit lösbar genau dann wenn das zugehörige Separationsproblem in polynomieller Zeit lösbar ist. Frage: Können wir Separationsproblem für LOP lösen? Frage: Können wir Separationsproblem für Acylic Subgraph Problem lösen? durch Aufzählen und Ausprobieren aller Ungleichungen durch Kürzestes Wegeproblem

22 Beispiel: Acyclic Subgraph Für alle Kanten f  A tue: Fixiere diese Kante f = (u,v) Berechne kürzesten Weg in D mit Gewichten 1-x e Falls Weglänge W+x uv <1, dann: verletzte Ungleichung gefunden, die nun zum System hinzugenommen wird Sonst: Beweis, dass keine verletzte Ungleichung, die f enthält, existiert.

23 Beispiel: TSP Gegeben: vollständiger Graph G=(V,E) Problem: exponentiell viele Ungleichungen (3) Frage: Können wir Separationsproblem für TSP lösen? Lösung des kleinsten Schnittproblems, s. Fluss-Algorithmen

24 Branch-and-Cut Verfahren Verbindung von Schnittebenenverfahren mit Branch-and-Bound Versuche, jeweils die Teilprobleme (LP-Relaxierungen) Mittels Schnittebenenverfahren zu lösen Falls die Lösung nicht ganzzahlig ist, dann wähle nicht-ganzzahlige Variable und generiere zwei neue Teilprobleme: P1 mit zusätzlichen Restriktionen x e =0 P2 mit zusätzlichen Restriktionen x e =1


Herunterladen ppt "Optimierungs- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2."

Ähnliche Präsentationen


Google-Anzeigen