• Keine Ergebnisse gefunden

Modellierung von Optimierungsproblemen als LPs

N/A
N/A
Protected

Academic year: 2022

Aktie "Modellierung von Optimierungsproblemen als LPs"

Copied!
11
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Modellierung von Optimierungsproblemen als LPs

Defintion

Sei G ein gerichteter Graph mit Kapazitäten u : E(G) → R>0 und

seien s und t Knoten von G. Ein zulässiger s-t-Fluss in (G, u) ist eine Abbildung f : E(G) → R≥0 mit

f(e) ≤ u(e) für alle e ∈ E(G) und

f(v) := P

e∈δG+(v)

f(e) − P

e∈δG(v)

f(e) = 0 für alle v ∈ V(G) \ {s, t}.

Der Wert eines s-t-Flusses f ist val(f) = ∆f(s).

1

(2)

Modellierung von Optimierungsproblemen als LPs

MAXIMUM-FLOW-PROBLEM

Eingabe: Ein gerichteter Graph G, Kapazitäten u : E(G) → R>0, Knoten s, t ∈ V(G) mit s 6= t.

Aufgabe: Finde einen s-t-Fluss f : E(G) → R≥0 mit maximalem Wert.

LP-Formulierung:

max P

e∈δG+(s)

xe − P

e∈δG(s)

xe

s.t. xe ≥ 0 für e ∈ E(G)

xe ≤ u(e) für e ∈ E(G) P

e∈δG+(v)

xe − P

e∈δG(v)

xe = 0 für v ∈ V(G) \ {s, t}

(3)

Ganzzahlige Lineare Programmierung

Ganzzahlige LINEARE PROGRAMMIERUNG

Eingabe: Eine Matrix A ∈ Rm×n, Vektoren c ∈ Rn und b ∈ Rm.

Aufgabe: Finde einen Vektor x ∈ Zn mit Ax ≤ b, der ctx maximiert.

Ganzzahlige Lineare Programme bezeichnen wir als ILPs (Integer Lineare Programs).

Oft müssen nur einige Variablen ganzzahlig sein ⇒

GEMISCHT-GANZZAHLIGE PROGRAMMIERUNG (englisch MIXED INTEGER LINEAR PROGRAMMING (MILP))

Wir werden sehen: Ganzzahligkeitsnebenbedingungen machen das Problem (meist) viel schwerer.

3

(4)

Beispiel: V

ERTEX

C

OVER

VERTEX-COVER-PROBLEM

Eingabe: Ein ungerichteter Graph G, Gewichte c : V(G) → R≥0.

Gesucht: Eine Menge X ⊆ V(G) mit {v, w} ∩ X 6= ∅ für alle e = {v, w} ∈ E(G), sodass P

v∈X

c(v) minimiert wird.

Problem ist NP-schwer.

Formulierung als ILP:

min P

v∈V(G)

xvc(v)

s.t. xv + xw ≥ 1 für {v, w} ∈ E(G) xv ∈ {0, 1} für v ∈ V(G)

(1)

Wenn (xv)v∈V(G) Optimallösung von (1) ist, dann ist

X = {v ∈ V(G) | xv = 1} Optimallösung von VERTEX-COVER.

⇒ GANZZAHLIGE LINEARE PROGRAMMIERUNG ist selbst NP-schwer.

(5)

Beispiel: V

ERTEX

C

OVER

min P

v∈V(G)

xvc(v)

s.t. xv + xw ≥ 1 für {v, w} ∈ E(G) xv ∈ {0, 1} für v ∈ V(G)

Idee: Ignoriere Ganzahligkeitbedingungen (xv ∈ {0, 1}):

min P

v∈V(G)

xvc(v)

s.t. xv + xw ≥ 1 für {v, w} ∈ E(G) xv ≥ 0 für v ∈ V(G)

xv ≤ 1 für v ∈ V(G) Dieses LP heißt LP-Relaxierung des ILPs.

Es liefert 2-Approximation für VERTEX COVER: Für jede Lösung x des relaxierten Problems, erhalte ganzzahlige Lösung x˜ durch

v =

1 : xv12 0 : xv < 12

⇒ Ergibt zulässige ILP-Lösung mit P

v∈V(G)

vc(v) ≤ 2 P

v∈V(G)

xvc(v).

5

(6)

Ganzzahlige Lineare Programmierung

Bei Minimierungsproblemen, nennt man den Quotienten aus optimalem Lösungswert von ILP und seiner LP-Relaxierung Ganzahligkeitslücke (Integrality Gap).

Bei VERTEX COVER ist er also (höchstens) 2.

Es gibt ILPs mit beliebig großer Ganzzahligkeitslücke.

(7)

Beispiel: S

TABLE

S

ET

STABLE-SET-PROBLEM

Eingabe: Ein ungerichteter Graph G, Gewichte c : V(G) → R≥0.

Gesucht: Eine Menge X ⊆ V(G) mit |{v, w} ∩ X| ≤ 1 für alle e = {v, w} ∈ E(G), sodass P

v∈X c(v) maximiert wird.

ILP-Formulierung:

max P

v∈V(G)

xvc(v)

s.t. xv + xw ≤ 1 für {v, w} ∈ E(G) xv ∈ {0, 1} für v ∈ V(G)

LP-Relaxierung:

max P

v∈V(G)

xvc(v)

s.t. xv + xw ≤ 1 für {v, w} ∈ E(G) xv ≥ 0 für v ∈ V(G)

xv ≤ 1 für v ∈ V(G)

7

(8)

Beispiel: S

TABLE

S

ET

ILP-Formulierung:

max P

v∈V(G) xvc(v)

s.t. xv + xw ≤ 1 für {v, w} ∈ E(G) xv ∈ {0, 1} für v ∈ V(G)

LP-Relaxierung:

max P

v∈V(G) xvc(v)

s.t. xv + xw ≤ 1 für {v, w} ∈ E(G) xv ≥ 0 für v ∈ V(G)

xv ≤ 1 für v ∈ V(G)

Wenn G vollständiger Graph ist und c(v) = 1 für alle v ∈ V(G) gilt, dann ergibt xv = 12 (für alle v ∈ V(G)) eine LP-Lösung mit Wert n2. Optimaler ganzzahliger Lösungswert ist 1.

⇒ Ganzzahligkeitslücke ist (mindestens) n2.

(9)

Dualität

9

(10)

Dualität: Beispiel

(P) max 12x1 + 10x2

s.d. 4x1 + 2x2 ≤ 5 8x1 + 12x2 ≤ 7 2x1 − 3x2 ≤ 1

Ziel: Finde eine obere Schranke für den Wert einer Optimallösung.

(11)

Dualität: Beispiel

(P) max 12x1 + 10x2

s.d. 4x1 + 2x2 ≤ 5 8x1 + 12x2 ≤ 7 2x1 − 3x2 ≤ 1

Allgemeiner Ansatz: Finde Zahlen u1, u2, u3 ∈ R≥0, sodass

12x1 + 10x2 = u1 · (4x1 + 2x2) + u2 · (8x1 + 12x2) + u3 · (2x1 − 3x2).

⇒ 5u1 + 7u2 + u3 ist eine obere Schranke für den Wert von jeder Lösung von (P).

⇒ Wähle u1, u2, u3 so, dass 5u1 + 7u2 + u3 minimiert wird.

11

Referenzen

ÄHNLICHE DOKUMENTE

F¨ ur Netzwerke bis zu einer Gr¨ oße von 100 Knoten kann f¨ ur alle Testf¨ alle mit Konfiguration G innerhalb von 1000 Sekunden eine L¨ osung generiert werden, die nicht mehr als 25%

Beispiel: Anzahl ungesplitteter Lerngruppen, die eingeteilt wurden, ist kleiner-gleich der Anzahl Lerngruppen, die sich angemeldet haben...

Das Problem der lokalen Optimierung von Punktanordnungen wurde bereits Anfang des 19ten Jahrhunderts von Launhardt (1882) und Weber (1909) untersucht. Jahr- hunderts schritt

Manchmal wollen wir aber nicht nur eine Abbildung konstruieren, sondern eine Familie solcher, die stetig durch einen weiteren Z parametrisiert werden sollen, also eine Abbildung aus Y

Fachbereich Mathematik und Informatik Wintersemester 2008/09 Universitat

Zwei charakteristische Eigenschaften von III-V Solarzellen sind verantwortlich für den Entwicklungsbedarf der Simulationswerkzeuge, die aufgrund der Silicium dominierten

Da eine optimale Lösung eines LP-Modells an einer Ecke zu finden ist, spielt die „Schärfe“ der LP-Relaxierung eine wichtige Rolle. Im Idealfall ist der zulässige Bereich die

We study integrality over rings (all commutative in this paper) and over ideal semifiltrations (a generalization of integrality over ideals).. We begin by reproving classical