Optimierungs- Algorithmen AK5: Ausgewählte Algorithmen Ak der Algorithmik 5 Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen
Kombinatorische Optimierungsprobleme Definition Kombinatorisches Optimierungsproblem Gegeben sind: endliche Menge E (Grundmenge) Teilmenge I der Potenzmenge 2E von E (zul. Mengen) Kostenfunktion c: EK
Beispiele Kombinatorische Optimierungsprobleme Handlungsreisendenproblem (TSP) Minimaler Spannender Baum (MST) Minimum der Funktion: f(x)=3x2+2, xR
Lineare Optimierungsprobleme Definition Lineares Optimierungsproblem Das Problem, einen Vektor zu finden, der unter allen Vektoren, die die Bedingungen Ax<=b erfüllen, derjenige ist, mit größtem (kleinstem) Zielfunktionswert.
Beispiel Ölraffinerie 2 Crackverfahren für Rohöl mit folgender Ausbeute und Kosten: Crackprozeß 1: 2S, 2M, 1L, Kosten 3 EUR Crackprozeß 2: 1S, 2M, 4L, Kosten 5 EUR Ziele: mindestens 3S, 5M, 4L herstellen (Lieferbedingungen) möglichst billig herstellen
Beispiel Ölraffinerie Zielfunktion subject to Restriktionen definieren den Lösungsraum Matrixschreibweise: (Tafel)
Geometrische Interpretation LP Beispiel: Ölraffinerie
Objective = 0.9 x + 0.73 y = 40 million (0,6) (1,0) Constraint 1 A Graphical Solution Objective = 0.9 x + 0.73 y = 40 million Objective = 30 million Objective = 0.9 * 0.882 + 0.73 * 0.706 = 13.1 million Maximize 0.90 x + 0.73 y (OBJECTIVE) Subject To Constraint 1: 0.42 x + 0.07 y <= 4200000 Constraint 2: 0.13 x + 0.39 y <= 3900000 Constraint 3: 0.35 x + 0.44 y <= 7000000 x >= 0 y >= 0 (0,1.5) (2,0) Constraint 3 (0,1) (3,0) Constraint 2 (0.882,0.706) Feasible Solutions x (0,0)
Lineare Optimierungsprobleme Lineare Optimierungsprobleme tauchen in verschiedenen Formulierungen auf und können alle ineinander übergeführt werden: max oder min cTx: Ax≤b min cTx: Ax≤b und x≥0 min cTx: Ax=b und x≥0 Beispiele und Tricks!
Lineare Optimierungsprobleme LP in seiner allgemeinsten Form:
Ganzzahlige Lineare Optimierungsprobleme Lineare Optimierungsprobleme mit Ganzzahligkeits-forderungen: GLP (ILP, IP) Lineare Optimierungsprobleme mit teilweise Ganzzahligkeitsforderungen: GGLP (MIP) Lineare Optimierungsprobleme mit 0/1-Bedingungen: 0/1-Programm, Binäres LP, BLP
Zusammenhang zu Kombinatorischer Optimierung Jedes kom. OP kann als BLP formuliert werden und umgekehrt: Ist E eine endliche Menge und FE, dann ist der charakteris-tische Vektor FRE für F definiert als Beispiel: MST Beispiel: LOP Wir assoziieren zu jedem Element eE eine Komponente des Vektors F. Umgekehrt, ist jeder 0/1-Vektor x{0,1}E charakteristischer Vektor einer Teilmenge Fx von E, und zwar gilt: Fx={eE | xe=1}.
Lineares Ordnungsproblem (LOP) Gegeben: ein vollständiger gerichteter Graph G=(V,A) mit Kantengewichten cuv für alle Bögen (u,v) in A. 1 2 3 4 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
Graphen-Theoretische Formulierung Gegeben: ein vollständiger gerichteter Graph G=(V,A) mit Bogengewichten cuv für alle Bögen (u,v) in A. 1 2 3 4 Gesucht: ein spannendes, azyklisches Turnier in G mit größtem Gewicht Turnier: TA: entweder (i,j)T oder (j,i)T aber nicht beide
Spannendes Azyklisches Turnier Verbotene Strukturen in T: u v v v u w u w
ILP für LOP Ausschluss der 3-er Kreise genügt Gleichungen Triviale Ungleichungen 3-Kreis Ungleichungen Ausschluss der 3-er Kreise genügt
Spannendes Azyklisches Turnier Verbotene Strukturen in T: u v v v u w u w
ILP für LOP Projektion: xvu=1-xuv Triviale Ungl. 3-Kreis Ungl.
Geometrische Interpretation LOP
Geometrische Interpretation LOP Beispiel n=3: x12 x13 x23 x12 x13 <2,1,3> <1,2,3> Permutation <1,2,3> <2,1,3> <2,3,1> <1,3,2> <3,1,2> <3,2,1> charakt. Vektor (1,1,1) (0,1,1) (0,0,1) (1,1,0) (1,0,0) (0,0,0) x23 <1,3,2> 1 3 2 x12+x23-x13=0 1 3 2 x12+x23-x13=1 <2,3,1> <3,1,2> <3,2,1>
n>=6: zusätzliche Ungleichungen notwendig n<6: Entfernung der Ganzzahligkeitsbedingungen macht keinen Unterschied n>=6: zusätzliche Ungleichungen notwendig Beispiel: Moebius-Leiter Ungleichungen: k Kreise (k ungerade), hier: k=7: Es ist notwendig, mindestens (k+1)/2 Bögen zu entfernen, um G azyklisch zu machen.
Polyedrische Kombinatorik: LOP Konvexe Hülle aller charakteristischer Vektoren, die Permutations, die l Elemente beschreiben. l n 3 4 5 6 7 8 20 40 910 87,472 >488,602,996 For l=60 ist LOP exakt lösbar innerhalb 1 Sekunde mittels Schnittebenenverfahren.
Vielen Dank