Betriebliche Optimierung Joachim Schauer Institut für Statistik und OR Uni Graz Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 1 / 22
1 Das Travelling Salesperson Problem 2 Gemischt Ganzzahlige Programme Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 2 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Zentrales Problem der Routenplanung Unzählige wissenschaftliche Artikel theoretischer sowie angewandter Natur Testproblem für neue algorithmische Ideen Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 3 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Zentrales Problem der Routenplanung Unzählige wissenschaftliche Artikel theoretischer sowie angewandter Natur Testproblem für neue algorithmische Ideen Problembeschreibung Gegeben: n verschiedene Orte mit den paarweise Distanzen zwischen allen Orten Gesucht: Kürzeste Tour, die jeden Ort genau einmal besucht Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 3 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Zentrales Problem der Routenplanung Unzählige wissenschaftliche Artikel theoretischer sowie angewandter Natur Testproblem für neue algorithmische Ideen Problembeschreibung Gegeben: n verschiedene Orte mit den paarweise Distanzen zwischen allen Orten Gesucht: Kürzeste Tour, die jeden Ort genau einmal besucht Ziel: Finde einen möglichst effizienten Algorithmus, der TSP löst. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 3 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 4 / 22
Das Travelling Salesperson Problem Komplexität eines Algorithmus Komplexität Komplexität eines Algorithmus beschreibt den benötigten Ressourcenbedarf. Zeitkomplexität: Anzahl der elementaren Rechenschritte die ein Algorithmus bis zur Terminierung benötigt. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 5 / 22
Das Travelling Salesperson Problem Komplexität eines Algorithmus Komplexität Komplexität eines Algorithmus beschreibt den benötigten Ressourcenbedarf. Zeitkomplexität: Anzahl der elementaren Rechenschritte die ein Algorithmus bis zur Terminierung benötigt. Speicherkomplexität: Menge an Speicherplatz die der Algorithmus benötigt. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 5 / 22
Das Travelling Salesperson Problem Komplexität eines Algorithmus Komplexität Komplexität eines Algorithmus beschreibt den benötigten Ressourcenbedarf. Zeitkomplexität: Anzahl der elementaren Rechenschritte die ein Algorithmus bis zur Terminierung benötigt. Speicherkomplexität: Menge an Speicherplatz die der Algorithmus benötigt. Komplexität wird von der Größe der Inputdaten abhängig gemacht! Graph mit n Knoten und m Kanten: Inputgröße von n+m Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 5 / 22
Das Travelling Salesperson Problem Komplexität eines Algorithmus Komplexität Komplexität eines Algorithmus beschreibt den benötigten Ressourcenbedarf. Zeitkomplexität: Anzahl der elementaren Rechenschritte die ein Algorithmus bis zur Terminierung benötigt. Speicherkomplexität: Menge an Speicherplatz die der Algorithmus benötigt. Komplexität wird von der Größe der Inputdaten abhängig gemacht! Graph mit n Knoten und m Kanten: Inputgröße von n+m Ganze Zahl x: Inputgröße von log(x) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 5 / 22
Das Travelling Salesperson Problem Komplexität eines Algorithmus O-Notation (Landau Symbol) Definition: f O(g) c > 0 x 0 : f(x) c g(x) x > x 0 Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 6 / 22
Das Travelling Salesperson Problem Komplexität eines Algorithmus O-Notation (Landau Symbol) Definition: f O(g) c > 0 x 0 : f(x) c g(x) x > x 0 Das bedeutet, dass das Wachstum von f asymptotisch gesehen (x ) nicht schneller verläuft als jenes von g. Problem mit Inputgröße n Polynomieller Algorithmus hat Laufzeit von O(n c ) für Konstante c. Exponentieller Algorithmus hat Laufzeit von O(c n ) für ein beliebiges c > 1. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 6 / 22
Das Travelling Salesperson Problem Hamiltonscher Kreis Hamiltonscher Pfad ist N P-vollständig! Wahrscheinlich existiert kein polynomieller Algorithmus. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 7 / 22
Das Travelling Salesperson Problem Hamiltonscher Kreis Hamiltonscher Pfad ist N P-vollständig! Wahrscheinlich existiert kein polynomieller Algorithmus. Dieser würde nämlich alle N P-vollständigen Probleme in Polynomialzeit lösen. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 7 / 22
Das Travelling Salesperson Problem Hamiltonscher Kreis Hamiltonscher Pfad ist N P-vollständig! Wahrscheinlich existiert kein polynomieller Algorithmus. Dieser würde nämlich alle N P-vollständigen Probleme in Polynomialzeit lösen. Das wichtigste offene Problem der theoretischen Informatik. Clay Mathematics Institute: 7 Millennium Probleme (bei Lösung eines dieser Probleme warten jeweils 1000000 Dollar) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 7 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Definition (Pfad in einem Graphen G = (V,E)) Ein Pfad ist eine Folge von Knoten v 1,v 2,...,v k mit (v i,v i+1 ) E. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 8 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Definition (Pfad in einem Graphen G = (V,E)) Ein Pfad ist eine Folge von Knoten v 1,v 2,...,v k mit (v i,v i+1 ) E. Definition (Geschlossener Pfad) Ein geschlossener Pfad ist ein Pfad mit v 1 = v k Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 8 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Definition (Pfad in einem Graphen G = (V,E)) Ein Pfad ist eine Folge von Knoten v 1,v 2,...,v k mit (v i,v i+1 ) E. Definition (Geschlossener Pfad) Ein geschlossener Pfad ist ein Pfad mit v 1 = v k Definition (Hamiltonscher Kreis) Geschlossener Pfad in einem Graphen, der jeden Knoten genau einmal enthält. Gegeben: Graph G = (V,E) Gesucht: Existenz eines Hamiltonschen Kreises in G Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 8 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem TSP löst Hamiltonschen Pfad Gegeben sei ein Graph G = (V,E) und gesucht ist die Existenz eines Hamiltonschen Pfades in G. Reduziere dieses Problem auf eine TSP Instanz G = (V,E ): G beinhaltet eine Kante für jedes Paar von Knoten aus V (vollständiger Graph). Definiere die Abstände zwischen zwei Knoten (a, b) wie folgt: - falls e = (a,b) E setzte d(e) = 1, - sonst setzte d(e) = M (M >> n) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 9 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Theorem TSP ist N P-schwer. Beweis = Annahme: G besitzt einen Hamiltonschen Kreis K. Daraus folgt die Existenz einer TSP Lösung in G mit Länge n: man nimmt in der TSP Lösung ganz einfach alle Kanten aus K. Dies ist per Definition eine zulässige Lösung mit Gewicht n. = Annahme: G hat TSP Lösung mit Länge n Daraus folgt die Existenz eines Hamiltonschen Kreises in G: die TSP Lösung beinhaltet genau n Kanten von Gewicht 1, welche auch in G existieren (alle neuen Kanten haben ein Gewicht >> n). Somit entspricht diese Lösung per Definition einem Hamiltonschen Kreis in G. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 10 / 22
Das Travelling Salesperson Problem Approximationsalgorithmus O sei optimaler Zielfunktionswert eines Optimierungsproblems P. Definition (Approximationsalgorithmus mit multiplikativer Gütegarantie α) Ein Approximationsalgorithmus mit multiplikativer Gütegarantie α 1 liefert für P eine Lösung mit Zielfunktionswert O sodass: { } O O min O, = α O Konsequenz des Beweises Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 11 / 22
Das Travelling Salesperson Problem Approximationsalgorithmus O sei optimaler Zielfunktionswert eines Optimierungsproblems P. Definition (Approximationsalgorithmus mit multiplikativer Gütegarantie α) Ein Approximationsalgorithmus mit multiplikativer Gütegarantie α 1 liefert für P eine Lösung mit Zielfunktionswert O sodass: { } O O min O, = α O Konsequenz des Beweises Allgemeines TSP ist inapproximierbar! Egal wie schlecht die geforderte Multiplikative Güte auch ist! Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 11 / 22
Das Travelling Salesperson Problem Das Travelling Salesperson Problem Konzentration auf ein Unterproblem mit für die Praxis relevanten Eigenschaften! Definition (Das metrische TSP) Für alle Kanten (a,b) gilt, dass d(a,b) d(a,c)+d(c,b). Metrische Instanzen Euklidsche TSP Graphische TSP 2 3-Approximation von Christofides für metrische TSP. Verbessert auf 2 3 +ǫ von Gharan et.al.[2010]. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 12 / 22
Ganzzahlige Lineare Programme Einleitendes Ganzzahlige lineare Programme (ILP) sind ein guter Kandidat um kombinatorische Optimierungsprobleme zu lösen. Lineare Zielfunktion in n Variablen Maximierung Minimierung Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 13 / 22
Ganzzahlige Lineare Programme Einleitendes Ganzzahlige lineare Programme (ILP) sind ein guter Kandidat um kombinatorische Optimierungsprobleme zu lösen. Lineare Zielfunktion in n Variablen Maximierung Minimierung Lineare Ungleichungen als Nebenbedingungen Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 13 / 22
Ganzzahlige Lineare Programme Einleitendes Ganzzahlige lineare Programme (ILP) sind ein guter Kandidat um kombinatorische Optimierungsprobleme zu lösen. Lineare Zielfunktion in n Variablen Maximierung Minimierung Lineare Ungleichungen als Nebenbedingungen Koeffizienten und Konstante aus Q Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 13 / 22
Ganzzahlige Lineare Programme Einleitendes Ganzzahlige lineare Programme (ILP) sind ein guter Kandidat um kombinatorische Optimierungsprobleme zu lösen. Lineare Zielfunktion in n Variablen Maximierung Minimierung Lineare Ungleichungen als Nebenbedingungen Koeffizienten und Konstante aus Q Bedingungen an Variablen stetig (aus R) diskret (aus N oder Z) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 13 / 22
Ganzzahlige Lineare Programme Einleitendes Zwei Schwerpunkte: 1 Modellierung eines praxisrelevanten Problems als ILP. 2 Lösung eines ILP mittels Computer. Anwendungen Produktionsplanung Logistik Spieltheorie Dienstplanoptimierung... Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 14 / 22
TSP - Standard ILP Formulierung Man bezeichne die n Orte als 1,2...,n und modelliere den Problem mittels gerichteten Graphen: Für jedes Paar von Knoten führe die Kante (i,j) und (j,i) ein. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 15 / 22
TSP - Standard ILP Formulierung Man bezeichne die n Orte als 1,2...,n und modelliere den Problem mittels gerichteten Graphen: Für jedes Paar von Knoten führe die Kante (i,j) und (j,i) ein. Die Distanzen zischen Ort i und Ort j bezeichne man als d(i,j) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 15 / 22
TSP - Standard ILP Formulierung Man bezeichne die n Orte als 1,2...,n und modelliere den Problem mittels gerichteten Graphen: Für jedes Paar von Knoten führe die Kante (i,j) und (j,i) ein. Die Distanzen zischen Ort i und Ort j bezeichne man als d(i,j) x ij ist eine Binärvariable die sagt ob die Tour von i nach j führt. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 15 / 22
TSP - Standard ILP Formulierung n n min d(i,j) x ij (1) i=1 j=1 j i Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 16 / 22
TSP - Standard ILP Formulierung n n min d(i,j) x ij (1) s.t. i=1 j=1 j i n j=1 j i x ij = 1 i (2) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 16 / 22
TSP - Standard ILP Formulierung n n min d(i,j) x ij (1) s.t. s.t. i=1 j=1 j i n j=1 j i n j=1 j i x ij = 1 i (2) x ji = 1 i (3) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 16 / 22
TSP - Standard ILP Formulierung n n min d(i,j) x ij (1) s.t. s.t. i=1 j=1 j i n j=1 j i n j=1 j i i S j S j i x ij = 1 i (2) x ji = 1 i (3) x ij S 1 S V S > 1 (4) x ij {0,1} i,j = 1,...,n j i (5) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 16 / 22
TSP - Standard ILP Formulierung Problem: Exponentiell viele Nebenbedingungen werden durch (4) beschrieben. Idee - Löse das Problem ohne (4). Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 17 / 22
TSP - Standard ILP Formulierung Problem: Exponentiell viele Nebenbedingungen werden durch (4) beschrieben. Idee - Löse das Problem ohne (4). - Verletzt die Lösung Nebenbedingungen von (4): Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 17 / 22
TSP - Standard ILP Formulierung Problem: Exponentiell viele Nebenbedingungen werden durch (4) beschrieben. Idee - Löse das Problem ohne (4). - Verletzt die Lösung Nebenbedingungen von (4): Ja Füge die verletzte Nebenbedingungen hinzu und löse das Ganze iterativ nochmals. Nein Optimum gefunden! Es existieren aber auch Formulierungen mit polynomiell vielen Nebenbedingungen (kleiner Auszug): Miller,Tucker and Zemlin [1960] Gavish and Graves [1978] Finke, Claus and Gunn [1983] Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 17 / 22
TSP - Miller, Tucker and Zemlin [1960] u i (i {2,...,n}) sei eine beliebige reelle Variable mit u i [2,n] n n min d(i,j) x ij (6) s.t. s.t. i=1 j=1 j i n j=1 j i n j=1 j i x ij = 1 i (7) x ji = 1 i (8) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 18 / 22
TSP - Miller, Tucker and Zemlin [1960] u i (i {2,...,n}) sei eine beliebige reelle Variable mit u i [2,n] n n min d(i,j) x ij (6) s.t. s.t. i=1 j=1 j i n j=1 j i n j=1 j i x ij = 1 i (7) x ji = 1 i (8) s.t. u i u j +(n 1)x ij (n 2) 2 i j n (9) x ij {0,1} i,j = 1,...,n j i (10) Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 18 / 22
TSP - Miller, Tucker and Zemlin [1960] Die Nebenbedingungen u i u j +(n 1)x ij (n 2) 2 i j n eliminieren Subtouren! Beweis Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 19 / 22
TSP - Miller, Tucker and Zemlin [1960] Die Nebenbedingungen eliminieren Subtouren! u i u j +(n 1)x ij (n 2) 2 i j n Beweis Annahme wir haben eine Lösung mit Subtour: Somit beinhaltet eine der Subtouren Ort 1 nicht. Summiere über die relevanten MTZ Nebenbedingungen. Annahme wir haben eine zulässige TSP Tour in der Knoten i an der k-ten Position vorkommt: Setzte u i = k. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 19 / 22
TSP - Miller, Tucker and Zemlin [1960] Somit kommen wir mit ca. 2n +(n 1) 2 O(n 2 ) Nebenbedingungen aus. Instanzgrößen Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 20 / 22
TSP - Miller, Tucker and Zemlin [1960] Somit kommen wir mit ca. 2n +(n 1) 2 O(n 2 ) Nebenbedingungen aus. Instanzgrößen Instanzen mit < 1000 Knoten sind ILP-basiert auf Standardhardware lösbar. Mit aufwändigen Verfahren (Concorde,...) sind Instanzen mit mehreren 10000 Knoten in Reichweite. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 20 / 22
Vehicle Routing Problemdefinition 1 Depot, k Fahrzeuge und n Kunden jeder Kunde hat einen Bedarf an Gütern jedes Fahrzeug hat eine Transportkapazität Gesucht: Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 21 / 22
Vehicle Routing Problemdefinition 1 Depot, k Fahrzeuge und n Kunden jeder Kunde hat einen Bedarf an Gütern jedes Fahrzeug hat eine Transportkapazität Gesucht: k Touren mit optimalen Gesamtkosten durch die n Orte Bedarf der Kunden ist erfüllt Fahrzeuge sind nicht überladen Instanzen mit 100 Kunden sind bereits sehr schwer lösbar. Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 21 / 22
ILP - Auffrischung / Einführung MIT-Open Course Ware http://ocw.mit.edu/courses/sloan-school-of-management/15-053- optimization-methods-in-management-science-spring-2013/tutorials/ von Donald E. Knuth Tutorial 1 Tutorial 4 Tutorial 9 Lizenzbestimmungen zu finden unter: http://ocw.mit.edu/terms/ Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 22 / 22