• Keine Ergebnisse gefunden

Vorlesung Einf¨uhrung in die Mathematische Optimierung (Wintersemester 2019/20)

N/A
N/A
Protected

Academic year: 2022

Aktie "Vorlesung Einf¨uhrung in die Mathematische Optimierung (Wintersemester 2019/20)"

Copied!
44
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Vorlesung Einf¨ uhrung

in die

Mathematische Optimierung (Wintersemester 2019/20)

Kapitel 8: Diskrete Optimierung

Volker Kaibel

Otto-von-Guericke Universit¨at Magdeburg

31. Januar 2020

(2)

Gliederung

Modellierungsbeispiele Einordnung

Ganzzahlige H¨ullen von Polyedern Ganzzahlige Polyeder

Total unimodulare Matrizen

Inzidenzmatrizen ungerichteter Graphen Inzidenzmatrizen gerichteter Graphen

(3)

Graphenf¨arbung

Definition 8.1

Einek-Knotenf¨arbung eine Graphen G = (V,E) ist eine Abbildungf :V →[k] mitf(v)∕=f(w) f¨ur alle Kanten

{v,w}∈E. Die chromatische Zahlχ(G) vonG ist die kleinste Zahlk ∈N, f¨ur die es eine k-Knotenf¨arbung vonG gibt.

(4)

Das Graphenf¨arbungsproblem

Problem 8.2 (Graphenf¨arbungsproblem) Instanz: GraphG = (V,E)

Aufgabe: k-Knotenf¨arbung vonG mit m¨oglichst kleinemk

◮ Ansatz: Modelliere f :V →[n] (n=|V|) mit 0/1-wertigen Variablen xv,i f¨ur alle v∈V und i ∈[n]mit der Bedeutung

xv,i =

!1 falls f(v) =i

0 sonst .

◮ Bedingung: F¨ur alle i ∈[n]und {v,w}∈E:xv,i+xw,i ≤1

◮ Zus¨atzlich: 0/1-wertige Variablenyi (i ∈[n]) mit

yi =

!1 fallsf1({i})∕=∅ 0 sonst

(5)

Ein Modell

◮ Ganzzahliges Lineares Optimierungsproblem:

(COL) min

"n i=1

yi

"n i=1

xv,i = 1 f¨ur alle v∈V xv,i +xw,i ≤ 1 f¨ur alle {v,w}∈E,i ∈[n]

xv,i ≤ yi f¨ur alle v∈V,i ∈[n]

xv,i,yi ≥ 0 f¨ur alle v∈V,i ∈[n]

xv,i,yi ∈ Z f¨ur alle v∈V,i ∈[n]

◮ Ganzzahligkeitsbedingung ist wesentlich: xv,i =yi = 12 f¨ur i ∈{1,2},xv,i =yi = 0 f¨uri ∈[n]\ {1,2} (f¨ur allev ∈V) ist sonst zul¨assig mit Wert 1

(6)

Fraktionale F¨arbung

(7)

Sudoku

(8)

Matching

Definition 8.3

EinMatchingin einem Graph G = (V,E) ist eine Teilmenge M ⊆E der Kanten mit e∩e =∅f¨ur alle e,e ∈M mit e ∕=e; ein Matching mit 12|V|Kanten ist einperfektes Matching.

(9)

Das Matching-Problem

Problem 8.4 (Matchingproblem)

Instanz: GraphG = (V,E), Kantengewichte c ∈QE Aufgabe: Matching M ⊆E in G mit m¨oglichst großem

Gewichtc(M) =#

eMce

(Fallsc = E:ungewichtetes Matching-Problem)

◮ ModelliereM ⊆E mit 0/1-wertigen Variablen xe mitxe = 1 genau dann, wenn e∈M (charakteristischer Vektor).

◮ Ganzzahliges Lineares Optimierungsproblem:

max "

e∈E

cexe

"

wV mit{v,w}∈E

x{v,w} ≤ 1 f¨ur alle v ∈V xe ≥ 0 f¨ur alle e ∈E xe ∈ Z f¨ur alle e ∈E

(10)

Das Knapsack-Problem

Problem 8.5 (Knapsack-Problem)

Instanz: nTypen von Gegenst¨anden mit Gewichtengi >0und Werten wi >0(i ∈[n]), Gewichtsschranke G ∈Q+

Aufgabe: Vielfachheiten xi ∈N(i ∈N), so dass#n

i=1xiwi

unter der Nebenbedingung#n

i=1xigi ≤G m¨oglichst groß ist

◮ Mathematisches Optimierungsproblem:

max{〈w,x〉 : 〈g,x〉 ≤G,x ≥O,x∈Zn}

◮ Ohne Ganzzahligkeitsbedingung:

max{〈w,x〉 : 〈g,x〉 ≤G,x≥O,x∈Rn}= max{wgiGi : i ∈[n]} (“So viel wie m¨oglich von Gegenstand mit maximalem wgii”)

(11)

Problemdefinition

Problem 8.6 (Ganzzahlige Lineare Optimierung (ILP)) Instanz: A∈Qm×n,b ∈Qm und c ∈Qn

Aufgabe: max{〈c,x〉 : Ax ≤b,x ∈Zn}

◮ Integer Linear Program (ILP)

◮ Spezialfall0/1-ILP:x∈{0,1}n stattx ∈Zn

◮ Zul¨assigkeitsbereich nicht konvex, sogar unzusammenh¨angend

◮ Auch:min stattmax, Gleichungen,≥-Ungleichungen

◮ Jedes ILP mit rationalen A,b,c, das nicht unzul¨assig oder unbeschr¨ankt ist, nimmt sein Optimum an (sp¨ater).

Problem 8.7 (ILP-Zul¨assigkeit) Instanz: A∈Qm×n,b ∈Qm

Frage: Gibt esx ∈Zn mit Ax ≤b?

(12)

SAT als ILP-Zul¨assigkeits-Problem

Problem 8.8 (Erf¨ullbarkeitsproblem (SAT))

Instanz: Disjunktive Klauseln C1, . . . ,Cm in Booleschen Variablen v1, . . . ,vn

Frage: Gibt es eine Belegung vonv1, . . . ,vn, dieC1, . . . ,Cm

simultan erf¨ullt?

◮ Modellierung als 0/1-Zul¨assigkeitsproblem, wobei

J+(i),J(i)⊆[n]die Mengen der Indizes der nicht-negierten bzw. der negierten Variablen in Ci sind:

"

jJ+(i)

xj + "

jJ(i)

(1−xj) ≥ 1 f¨ur allei ∈[m]

x ∈ {0,1}n

Beobachtung 8.9

ILP-Zul¨assigkeit und ILP sind NP-schwere Probleme.

(13)

Gleichungssysteme

◮ Mittels Skalierung (Hauptnenner) A,b ganzzahlig

◮ Jedes ILP-Zul¨assigkeitsproblem kann in ein Gleichungsformat gebracht werden (ganzzahlige Schlupfvariablen):

{x∈Zn : Ax =b,x ≥On}∕=∅?

⇝ NP-schwer

◮ Aber: F¨ur A∈Qm×n undb ∈Qm sind folgende Entscheidungsprobleme polynomial l¨osbar:

L¨osbarkeit linearer Gleichungssysteme (LGS):

{x Rn : Ax=b}=?

Nichtnegative L¨osbarkeit von LGS:

{xRn : Ax =b,x On}=?

Ganzzahlige L¨osbarkeit von LGS:

{xZn : Ax =b}=?

(Lineare diphantische GleichungssystemeVL SoSem 21)

(14)

Dualit¨at ?

◮ F¨ur A∈Qm×n,b ∈Qm,c ∈Qn gilt:

max{〈c,x〉 : Ax ≤b,x ∈Zn} (1)

≤ max{〈c,x〉 : Ax ≤b,x∈Rn} (2)

= min{〈b,y〉 : ATy =c,y ≥Om,y ∈Rm} (3)

≤ min{〈b,y〉 : ATy =c,y ≥Om,y∈Zm} (4)

◮ Aber z.B. f¨urA= (2),b = (1),c = (1) sind die Werte:

(1): 0 (2): 12 (3): 12 (4): ∞

◮ LP-Dualit¨at liefert also keine starke ILP-Dualit¨at.

◮ Nicht ¨uberrraschend: Sonst w¨are NP = coNP.

Z.B.: “Ist die F¨arbungzahlχ(G)vonG h¨ochstensk?” ist ein NP-vollst¨andiges Entscheidungsproblem.

Starke Dualit¨at (min{. . .}= max{. . .}) w¨urde ein polynomiales Zertifikat f¨ur die Nein-Antwort garantieren.

(15)

Definition

Definition 8.10 F¨urX ⊆Rn heißt convX := $ #r

i=1λix(i) : r ∈N,x(i)∈X (i ∈[r]), λi ≥0 (i ∈[r]),#r

i=1λi = 1% diekonvexe H¨ullevon X.

Definition 8.11

F¨ur ein PolyederP ⊆Rn heißt

PI= conv (P ∩Zn) dieganzzahlige H¨ulle vonP.

Bemerkung 8.12

F¨urP ⊆Rn und c ∈Rn gilt:

sup{〈c,x〉 : x ∈P ∩Zn}= sup{〈c,x〉 : x ∈PI}

(16)

Beispiel

(17)

Ganzzahlige H¨ullen rationaler Polyeder

Satz 8.13

F¨ur ein rationales PolyederP = P(A,b)(mit A∈Zm×n,b ∈Zm) gelten folgende Aussagen:

1. PIist ein rationales Polyeder.

2. Falls PI∕=∅:char(PI) = char(P)

3. Istϕ(A,b)die maximale Kodierungsl¨ange eines Eintrags in A oder b, so gibt esX,Y ⊆Zn mit|X|,|Y|<∞und

PI = convX + cconeY ,

so dass jede Komponente eines Vektors in X ∪Y h¨ochstens Kodierungsl¨ange 2n2ϕ(A,b) +n hat.

Bemerkung 8.14

F¨ur nicht-rationale PolyederP istPIi.a. kein Polyeder.

Beweise: Vorlesung SoSem 21

(18)

Konsequenzen f¨ur ILPs

Korollar 8.15

IstP(A,b)∩Zn∕=∅(f¨ur A∈Qm×n,b ∈Qm), so gib es ein x∈P(A,b)∩Zn mit in〈A,b〉 polynomial beschr¨ankter Kodierungsl¨ange.

Insbesondere: Das ILP-Zul¨assigkeitsproblem ist inNP, also NP-vollst¨andig.

◮ Erinnerung: F¨ur endliches X ⊆Rn wird

max{〈c,x〉 : x∈convX} in einemx! ∈X angenommen.

Korollar 8.16

Ist das Problemmax{〈c,x〉 : Ax ≤b,x ∈Zn} (A∈Qm×n, b∈Qm) weder unzul¨assig noch unbeschr¨ankt, so nimmt es sein Optimum in einem Punktx∈Zn mit polynomial in〈A,b〉 beschr¨ankter Kodierungsl¨ange an.

(19)

Eine L¨osungsstrategie f¨ur ILPs

◮ Problem: max{〈c,x〉 : Ax ≤b,x ∈Zn} (mit A∈Qm×n,b ∈Qm)

◮ Berechne γ = max{〈c,x〉 : x∈P(A,b)I} (LP)

◮ Finde ein x ∈F ∩Zn, wobei F ={x ∈PI : 〈c,x〉=γ} die optimale Seite von PI ist (F ∩Zn∕=∅wegen Kor. 8.16).

◮ Falls P(A,b) nicht spitz: L¨osen eines linearen diophantischen Gleichungssystems (⇝ VL SoSem 21)

◮ P(A,b)I rationales Polyeder (Satz 8.13), also gibt es C ∈Qp×n,d ∈Qp mit

P(A,b)I= P(C,d).

◮ Also: (LP) ist ein lineares Optimierungsproblem.

◮ Bemerkungen zu C und d:

I.a “viel komplizierter alsAundb”.

In wichtigen Spezialf¨allen bekannt (z.B. Matching-Problem).

Auch partielle Ungleichungsbeschreibung kann n¨utzlich sein.

(20)

Beispiel: Graphenf¨arbung

(COL) min

"n i=1

yi

"n i=1

xv,i = 1 f¨ur alle v ∈V xv,i +xw,i ≤ 1 f¨ur alle {v,w}∈E,i ∈[n]

xv,i ≤ yi f¨ur alle v ∈V,i ∈[n]

xv,i,yi ≥ 0 f¨ur alle v ∈V,i ∈[n]

xv,i,yi ∈ Z f¨ur alle v ∈V,i ∈[n]

◮ Das Entscheidungsproblem “Gegeben G und k, ist χ(G)≤k?” ist NP-vollst¨andig.

(21)

Beispiel: Graphenf¨arbung

◮ F¨ur jeden Graph G = (V,E)seien A(G)∈Qm(G)×n(G) und b(G)∈Qm(G) so, dass A(G)z ≤b(G)das System der Ungleichungen und Gleichungen aus (COL) ist (z = (x,y)).

◮ Angenommen,C(G)∈Qp(G)×n(G) und d(G)∈Qp(G) sind so, dass f¨ur alleG gilt:

P(A(G),b(G))I= P(C(G),d(G)) (1)

F¨ur jedesip(G)kann man in in|V|polynomialer Zeit beweisen, dassC(G)i,!,z〉 ≤d(G)i g¨ultig f¨ur

P(A(G),b(G))Zn ist. (2) (Z.B. Beweis der G¨ultigkeit von “xv,i+xw,i 1” f¨ur

e={v,w}E durch ¨Uberpr¨ufen von “eE”.)

Insbesondere hat(C(G),d(G))i,! polynomial in|V| beschr¨ankte Kodierungsl¨ange (f¨ur alleip(G)).

(22)

Beispiel: Graphenf¨arbung

◮ Sei c(G)∈Qn(G) der Zielfunktionsvektor von (COL).

◮ Sei z! optimale Eckenl¨osung von min{〈c(G),z〉 : z ∈P(C(G),d(G))}

◮ Also 〈c(G),z!〉=χ(G) und (nach Kor. 7.6) ist c(G) ∈ ccone{C(G)i,! : i ∈Eq(z!)}.

◮ Satz von Carath´eodory: Es gibt I ⊆Eq(z!) mit |I|≤n(G) und λi ∈Q+ (i ∈I) mit

c(G) = "

iI

λiC(G)I,!.

◮ Wir k¨onnen λi (i ∈I) so w¨ahlen, dass sie polynomial in

|V|+〈c〉 beschr¨ankte Kodierungl¨angen haben (LP-L¨osung).

◮ Also liefern λi (i ∈I) (wieder mit Kor. 7.6) ein polynomial großes Zertifikat f¨ur die Optimalit¨at von z!, also f¨ur k >χ(G) (falls das der Fall ist).

◮ Systeme C(G)z ≤d(G)mit (1) und (2) existieren also nur dann f¨ur alle GraphenG, wenn NP = coNPist.

(23)

Definition und Charakterisierung

Definition 8.17

Ein PolyederP ⊆Rn heißt ganzzahlig, wennPI=P gilt.

Bemerkung 8.18

Rationale polyedrische Kegel sind ganzzahlig.

Satz 8.19

Ein rationales Polyeder ist genau dann ganzzahlig, wenn jede seiner minimalen Seitenfl¨achen einen ganzzahligen Punkt enth¨alt.

Beweise: Vorlesung SoSem 21

(24)

Ganzzahlige Optimierung ¨uber Ganzzahligen Polyedern

◮ Sei P(A,b)(mit A∈Qm×n,b ∈Qm) ganzzahlig.

◮ F¨ur allec ∈Qn gilt:

(ILP) max{〈c,x〉 : Ax ≤b,x∈Zn}

= max{〈c,x〉 : Ax ≤b,x ∈Rn} (LP)

◮ IstP(A,B) spitz, kann man (ILP) l¨osen, indem man eine optimale Eckenl¨osung von (LP) bestimmt (polynomial).

◮ Sonst: Bestimmen eines LGS f¨ur eine optimale minimale Seite, L¨osen des diophantischen Gleichungssystems (polynomial, VL SoSem 21)

◮ Wir haben f¨ur ganzzahligeP(A,b) folgende starke Dualit¨at:

max{〈c,x〉 : Ax ≤b,x ∈Zn}

= min{〈b,y〉 : ATy =c,y ≥Om,y ∈Rm} (D)

◮ In (D) kann man i.a. nicht y ∈Zm fordern (z.B. beiA= (2), b = (2),c = (1)).

(25)

Totale Unimodularit¨at und Ganzzahlige Polyeder

Definition 8.20

Eine MatrixA∈Rm×n isttotal unimodular (TU), wenn det(AI,J) ∈ {−1,0,1}

f¨ur alleI ⊆[m],J⊆[n](|I|=|J|) ist (⇝A∈{−1,0,1}m×n).

Satz 8.21

F¨ur alleA∈Qm×n gilt:

1. IstA total unimodular, so ist P(A,b) f¨ur jedes b∈Zm ganzzahlig.

2. IstP(A,b)∩ n+ f¨ur jedes b∈Zm ganzzahlig, so ist Atotal unimodular.

◮ Beweis: VorlesungSoSem 21

◮ Die Ganzzahligkeit von b ist wichtig:

P(A,σb) =σP(A,b) f¨ur alle σ >0

(26)

TU-erhaltende Operationen

Bemerkung 8.22

IstA∈Rm×n TU, so sind auch die folgenden Matrizen TU:

1. −A,(A,−A),(A,Im),(A,−Im),AT 2. AI,J (I ⊆[m],J⊆[n])

3. Matrizen, die ausA durch Zeilen- oder Spalten-Permutationen oder durch Multiplikation einiger Spalten/Zeilen mit −1 entstehen

◮ Aber: F¨ur TU-MatrizenA∈Rm×n,A∈Rm×n ist i.a.

(A,A)nicht TU.

◮ Sonst w¨aren alle Matrizen in {−1,0,1}m×n TU.

◮ Gegenbeispiel:det

&

1 −1

1 1

'

= 2

(27)

Konsequenzen

Korollar 8.23

F¨ur eine total unimodulare MatrixA∈Rm×n sowie ganzzahlige Vektorenl,u ∈Zn und b ∈Zm sind die folgenden Polyeder ganzzahlig:

◮ {x ∈Rn : Ax ≤b,x≥On}

◮ {x ∈Rn : Ax =b,x≥On} =: P=+(A,b)

◮ {x ∈Rn : Ax ≤b,l ≤x ≤u}

◮ {x ∈Rn : Ax =b,l ≤x ≤u} Satz 8.24

IstA∈Rm×n TU, und sindb ∈Zm undc ∈Zn, so gilt max{〈c,x〉 : Ax ≤b,x∈Zn}

= min{〈b,y〉 : ATy =c,y ≥Om,y ∈Zm}, sofernP(A,b)∕=∅und P=+(AT,c)∕=∅ sind.

(28)

Kriterium von Ghouila–Houri

Satz 8.25

Eine MatrixA∈{−1,0,1}m×n ist genau dann total unimodular, wenn man jede TeilmengeJ ⊆[n]der Spaltenindizes so in J=J+∪J (J+∩J=∅) partitionieren kann, dass

"

j∈J+

A!,j − "

jJ

A!,j ∈ {−1,0,1}m

ist. Wegen Bem. 8.22 gilt die analoge Charakterisierung auch f¨ur Zeilenteilmengen.

Korollar 8.26

HatA∈{−1,0,1}m×n in jeder Spalte (oder in jeder Zeile) h¨ochstens einen(+1)-Eintrag und h¨ochstens einen(−1)-Eintrag, so istAtotal unimodular.

Beweise: Vorlesung SoSem 21

(29)

Definition

Definition 8.27

DieInzidenzmatrix eines GraphenG = (V,E) ist die Matrix Inz(G)∈{0,1}V×E, f¨ur die Inz(G)v,e = 1 genau dann gilt, wennv ∈e ist.

1 2

5

3 4

1

2 3

4 5

6 7

8

( )) ))

*

1 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 0 0 1 1 0 0 1 1 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 0

+ ,, ,, -

(30)

Bipartite Graphen

Definition 8.28

Ein GraphG = (V,E) ist bipartit, wenn es eine Zerlegung V =X ∪Y (X∩Y =∅) gibt mite ∕⊆X und e ∕⊆Y f¨ur alle e∈E.

1 a 2 b

5 e 6 f

3 d 4

c

7 h 8

g

1 a

2 b

5 e

6 f

3

d 4

c

7

h 8

g

Satz 8.29

Die Inzidenzmatrix eines GraphenG ist genau dann total unimodular, wennG bipartit ist.

(31)

Matching-Polytope

Definition 8.30

F¨ur einen GraphenG = (V,E) heißen

Pmatch(G) := conv{χ(M) : M ⊆E Matching} ⊆ [0,1]E Pperfmatch(G) := conv{χ(M) : M ⊆E perf. Matching} ⊆ [0,1]E (χ(M)∈{0,1}E mitχ(M)e= 1⇔e ∈M f¨ur alle e ∈E ist der charakteristische VektorvonM) das Matching-Polytopbzw.

dasPerfect-Matching PolytopvonG. Definition 8.31

Ein PolytopconvX mitX ⊆{0,1}n ist ein0/1-Polytop.

Beobachtung 8.32

Die Eckenmenge eines 0/1-PolytopsP ⊆Rn ist P∩Zn=P ∩{0,1}n.

(32)

Matching-Polytope und Optimierung

◮ F¨ur w ∈QE: Eine optimale Eckenl¨osung von max{〈w,x〉 : x ∈Pmatch(G)}

ist der charakteristische Vektor eines w-maximalen Matchings (analog f¨ur Pperfmatch(G)).

Beobachtung 8.33

F¨ur alle GraphenG gelten:

Pmatch(G) = {x ∈[0,1]E : Inz(G)x ≤ V}I Pperfmatch(G) = {x ∈[0,1]E : Inz(G)x = V}I

Satz 8.34

F¨ur bipartite GraphenG gelten:

Pmatch(G) = {x ∈[0,1]E : Inz(G)x ≤ V} Pperfmatch(G) = {x ∈[0,1]E : Inz(G)x = V}

(33)

Der vollst¨andige bipartite Graph

Definition 8.35

Einvollst¨andiger bipartiter Graph Kn,nhat eine Knotenmenge Vn,n=X ∪Y (X ∩Y =∅) mit |X|=|Y|=n und die

KantenmengeEn,n=$

{x,y} : x ∈X,y ∈Y% .

Beobachtung 8.36

Die perfekten Matchings inKn,n stehen in Bijektion zu den n×n-Permutationsmatrizen.

1 a

2 b

5 e

3

d 4

c

( )) ))

*

0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0

+ ,, ,, -

(34)

Das Birkhoff-Polytop

Definition 8.37

DasBirkhoff-Polytopist Pbirk(n) := Pperfmatch(Kn,n)(also die konvexe H¨ulle allern×n-Permutationsmatrizen).

Korollar 8.38

Es gilt:Pbirk(n) = {x∈[0,1]En,n : Inz(Kn,n)x= V}.

Definition 8.39

Eine MatrixM ∈ n+×n istdoppelt-stochastisch, wenn

nTM = nT und M n= ngelten.

Korollar 8.40

Eine Matrix ist genau dann doppelt-stochastisch, wenn sie Konvexkombination von Permutationsmatrizen ist.

(35)

Matchings und Knoten¨uberdeckungen

◮ F¨ur bipartite Graphen G gilt (weilInz(G) TU):

max{〈 E,x〉 : Inz(G)x ≤ V,x ∈{0,1}E}

= max{〈 E,x〉 : Inz(G)x≤ V,x ∈ E+}

= min{〈 V,y〉 : Inz(G)Ty ≥ E,y ∈ V+}

= min{〈 V,y〉 : Inz(G)Ty ≥ E,y ∈{0,1}V}

Definition 8.41

EineKnoten¨uberdeckung eines GraphenG = (V,E) ist eine TeilmengeS ⊆V mit e∩S ∕=∅f¨ur alle e ∈E.

Satz 8.42

In bipartiten Graphen stimmen die gr¨oßte Kardinalit¨at eines Matchings und die kleinste Kardinalit¨at einer Knoten¨uberdeckung

¨uberein.

(36)

Definition und totale Unimodularit¨at

Definition 8.43

DieInzidenzmatrix eines (einfachen) gerichteten

GraphenD = (V,A) ist die MatrixInz(D)∈{−1,0,1}V×E mit Inz(D)v,a =

./ 0 /1

−1 falls a= (v,w) f¨ur ein w ∈V +1 falls a= (w,v) f¨ur ein w ∈V 0 sonst

f¨ur allev ∈V und a∈A

1 2

5

3 4

1 2 3

4 5

6 7

8 10 9

( )) )*

1 0 0 · · · 0 0 1

+1 1 0 · · · +1 +1 0

0 0 1 · · · 1 0 +1

0 +1 +1 · · · 0 1 0

0 0 0 · · · 0 0 0

+ ,, ,-

Satz 8.44

Inzidenzmatrizen gerichteter Graphen sind total unimodular.

(37)

Zirkulationen

Definition 8.45

F¨ur einen gerichten GraphenD = (V,A) und Kapazit¨atsschranken l,u ∈RA heißen die Punkte in

Circ(D,l,u) := {x ∈QA : Inz(D)x =OV,l ≤x ≤u} Zirkulationen(zu den Kapazit¨atsschranken l undu) in D.

Definition 8.46

F¨urD = (V,A) und v ∈V definiere:

δaus(v) := {a∈A : a= (v,w) f¨ur ein w ∈V} δein(v) := {a∈A : a= (u,v) f¨ur ein u∈V}

◮ F¨ur x ∈RA mitl ≤x ≤u ist also genau dann x ∈Circ(D,l,u), wenn #

a∈δaus(v)xa=#

a∈δein(v)xa f¨ur alle v ∈V gilt (Kirchhoffs Gesetz).

(38)

Kostenminimale Zirkulationen

◮ F¨ur l,u∈ZA undc ∈RA gilt (weilInz(D) TU ist):

min{〈c,x〉 : x ∈Circ(D,l,u)}

= min{〈c,x〉 : x ∈Circ(D,l,u)∩ZA} Satz 8.47

In einem NetzwerkD = (V,A) mit durch ganzzahlige Vektoren l,u ∈ZA definierten Kapazit¨atsintervallen, f¨ur die es ¨uberhaupt Zirkulationen gibt (d.h. es istCirc(D,l,u)∕=∅), gibt es f¨ur jeden Kostenvektor unter den kosteng¨unstigsten Zirkulationen auch eine mit ganzzahligen Flussmengen auf allen B¨ogen.

Korollar 8.48

(Ganzzahlige) kostenminimale Zirkulationen k¨onnen mit linearer Optimierung in polynomialer Zeit berechnet werden.

◮ Besser: Kombinatorische Algorithmen (VL WiSem 20/21)

(39)

K¨urzeste Wege

Definition 8.49

SeiD = (V,A) ein gerichteter Graph. Eine Sequenz (v0,v1, . . . ,vl) von paarweise verschiedenen Knotenvi ∈V mit(vi−1,vi)∈A f¨ur allei ∈[l]definiert den v0–vl-Weg

{(v0,v1),(v1,v2), . . . ,(vl1,vl)} ⊆ A. Istl ≥1 und(vl,v0)∈A, so ist

{(v0,v1),(v1,v2), . . . ,(vl1,vl),(vl,v0)} ⊆ A

einKreis in D. F¨ur Bogenl¨angenc ∈QA und einen Weg oder Kreis B⊂Ain D ist

c(B) := "

aB

ca

diec-L¨ange vonB. Diec-L¨ange eines bez¨uglichc k¨urzesten s–t-Weges ist die c-Distanzzwischens und t

(40)

Beispiele

s t

(41)

Wege und Zirkulationen

◮ Sei P ⊂Aeins–t-Weg inD.

◮ Dann: K :=P∪{(t,s)} Kreis in D

◮ Charakteristischer Vektor χ(K)∈{0,1}A: ganzzahlige Zirkulation in Circ(D, (t,s), A)∩ZA

s t

(42)

Zirkulationen und Wege

◮ F¨ur x ∈Circ(D, (t,s), A)∩ZA gilt: x=χ(B) f¨ur eine diskunkte Vereinigung B ⊆Avon Kreisen in D mit(t,s)∈B.

s t

◮ Istc ∈QA mit c(t,s)= 0 so, dass kein Kreis inD negative c-L¨ange hat, so modelliert

min{〈c,x〉 : x ∈Circ(D, (t,s), A)∩ZA}

das Problem, einen c-k¨urzestens–t-Weg inD zu bestimmen.

(43)

LP-Dualit¨at

min{〈c,x〉 : x ∈Circ(D, (t,s), A)∩ZA}

= min{〈c,x〉 : x ∈Circ(D, (t,s), A)}

= min{〈c,x〉 : Inz(D)x =OV, (t,s)≤x≤ A}

= max{−z(t,s)+〈 A,z〉: Inz(D)Ty−z+z =c,z,z ∈ A,y∈RV}

= max{z(t,s) : Inz(D)Ty+z =c,z ∈ A+,y ∈QV}

= max{yt−ys : yw −yv ≤c(v,w) ((v,w)∈A\ {(t,s)}),y ∈RV}

Definition 8.50

Einc-Potenzialvon D= (V,A) (c ∈RA) ist ein Vektorπ ∈RV mit

πw ≤ πv+c(v,w) f¨ur alle (v,w)∈A; seines–t-Potenzialdifferenzistπt−πs (f¨ur s,t ∈V).

(44)

Kombinatorische Dualit¨at

Satz 8.51

Sinds,t∈V zwei Knoten in einem NetzwerkD = (V,A) (das wenigstens einens–t-Weg enth¨alt) mit Bogenl¨angen c ∈QA, bez¨uglich derer kein Kreis inD negative L¨ange hat, so ist die c-Distanz zwischen s und t die maximale s–t-Potenzialdifferenz allerc-Potenziale von D.

s t

2 1

2 1

0

2

3

3

3

6 6

3 2 5

0

2

3 2

0

1 3

5

8

3 2 3 4

0 5 3

2 0 1

2 5

0

5

Referenzen

ÄHNLICHE DOKUMENTE

Es ist m¨ oglich die Abgabe digital im PDF-Dateiformat (z.B: als Scan der hand- schriftlichen L¨ osungen) oder “physisch” auf Papier abzugeben. Die digitale Abgabe kann per Mail

Im Simplex-Algorithmus mit der Bland-Regel f¨ uhrt jeder Basiswechsel zu einer echten Verbesserung des Zielfunktionswerts der jeweils aktuellen Basisl¨ osung.. Die folgenden

Noch nicht einmal f¨ur LPs ¨uber einfachen Polytopen ist eine Regel bekannt, die polynomiale Laufzeit garantiert. Es gibt polynomiale Average-Case Garantien (f¨ur

Optimierungsproblemen nur (starke) Separationsorakel f¨ur die Polyeder der zul¨assigen L¨osungen, so kann man die LPs trotzdem in polynomialer Laufzeit l¨osen, sofern

Das duale Problem soll in ¨ ahnlichem Stil formuliert sein wie das

In beiden F¨ allen sollen f¨ ur das entsprechende LP nicht einfach Symbole f¨ ur Matri- zen/Vektoren, sondern einzelne (Un-)Gleichungen (quantifiziert mit “f¨

• Jeder Schlitten wird entweder von einem Weihnachtsmann oder von einem Postbe- amten besetzt (da wir reell rechnen sind auch Konvexkombinationen erlaubt).. • Jeder Schlitten wird

(1) Eine Variable, die gerade in die Basis (Gleichungsformat!) eingetreten ist, kann die Basis beim n¨ achsten Schritt wieder verlassen. (2) Falls keine Basisl¨ osung degeneriert