Unimodulare lineare Programme
|
|
- Marie Stieber
- vor 7 Jahren
- Abrufe
Transkript
1 KAPITEL 5 Unimodulare lineare Programme Wir betrachten hier eine Klasse von linearen Programmen mit der schönen Eigenschaft, dass Basislösungen automatisch ganzzahlige Komponenten haben. 1. Unimodulare und total unimodulare Matrizen 1.1. Unimodulare Matrizen. Wir nennen eine (ganzahlige) Matrix B Z k k unimodular, wenn gilt detb = 1 d.h. det B = +1 oder detb = 1. Die Grundbeobachtung ist diese: LEMMA 5.1. Sei B unimodular undb Z k beliebig. Dann hat der Vektor b = B 1 b ausschliesslich ganzzahlige Komponenten b j. Beweis. b ist die eindeutige Lösung der linearen Gleichung Bx = b. Nach der Cramerschen Regel erhalten wir für diej-te Komponente: b j = det ˆB j det B = det ˆB j. ˆB j ist die Matrix, die man aus B erhält, wenn man diej-te Spalte durch b ersetzt. Wegen ˆB j Z k k ist die Determinante ganzzahlig Total unimodulare Matrizen. Eine Matrix A = [a ij ] R m n heisst total unimodular, wenn für jede quadratische Untermatrix B von A gilt: det B { 1,0,+1}. Da die Matrixkoeffizientena ij (1 1)-Untermatrizen darstellen, muss also insbesondere gelten: a ij (= det a ij ) { 1,0+1}. Diese Bedingung ist allerdings für totale Unimodularität i.a. nicht hinreichend. 89
2 90 5. UNIMODULARE LINEARE PROGRAMME BEISPIEL 5.1. Man betrachte die Matrizen [ ] [ A 1 =, A = 1 1 ], A 3 = [ ] A 1 ist unimodular aber nicht total unimodular.a 2 ist nicht unimodular.a 3 ist total unimodular. Aus der Definition folgt sofort: Jede Untermatrix einer total unimodularen Matrix ist total unimodular. A ist total unimodular A T ist total unimodular. A ist total unimodular A ist total unimodular. Wichtige Beispiele total unimodularer Matrizen kann man so konstruieren: SATZ 5.1. SeiA = [a ij ] { 1,0+1} m n eine Matrix mit der Eigenschaft: (i) Jede SpalteA j enthält höchstens zwei Koeffizientena ij 0. (ii) Für jede Spaltensumme gilt m 1 a ij +1. Dann istatotal unimodular. i=1 Beweis. Sei B eine quadratische Untermatrix von A. Enthält B keinen Einheitsvektor (oder sein Negatives) als Spalte, so sind die Spaltensummen 0. D.h. B hat nicht vollen Rang und somit det B = 0. Sei also obda ein Einheitsvektor e ein Spalte von B. Entwickeln wir detb nach dieser Spalte, so ergibt sich det B = ±1 det B, wobeib die entsprechende Teilmatrix vonb ist.b ist kleiner alsb. Also schliessen wir per Induktion : det B { 1,0,+1} und folglich det B { 1,0,+1}. Auf die gleiche Weise macht man sich leicht klar: Erweitert man eine total unimodulare Matrix A mit einem Einheitsvektoreoder e als neue Spalte, so ist die resultierende Matrix[A,±e] auch total unimodular. Erweitert man eine total unimodulare Matrix mit einem Einheitsvektore T oder e T als neuer Zeile, so erhält man wieder eine total unimodulare Matrix.
3 1. UNIMODULARE UND TOTAL UNIMODULARE MATRIZEN Inzidenzmatrizen. Ein Graph G besteht aus einer (hier: endlichen) MengeV von Knoten und einer (hier: endlichen) MengeE von Kanten und einer Inzidenzrelation so, dass für allee E gilt: Γ V E (G) 1 Γ(e) 2, wobeiγ(e) := {v V (v,e) Γ}. Im Fall Γ(e) = 1 ist e eine sog. Schlinge von G. Im Fall Γ(e) = {v,w} sindv und w die sog. Endpunkte der Kantee. BEMERKUNG. Für v V definiert man Γ(v) := {e E (v,e) Γ} als die Menge der mit dem Knoten v inzidenten Kanten. Abhängig von G kann Γ(v) beliebig gross werden. Im Fall Γ(v) = heisst der Knoten v isoliert. Wir können G orientieren, indem wir bei einer Kante e mit Γ(e) = {v,w} einen der der Endpunkte als positiv und den anderen als negativ auszeichen. Das heisst, wir ordnen der Kantee(willkürlich) Inzidenzkoeffizienten a v,e,a w,e { 1,0,+1} zu derart, dass (60) a v,e +a w,e = 0 für allee E. BEMERKUNG. im Falla w,e +1 und a v,e = 1 kann man sich (wenn man will)e als Pfeil vorstellen, der von v nach w gerichtet ist: v e w. Für die resultierende Inzidenzmatrix A = [a v,e ] R V E gilt dann offensichtlich (nach Satz 5.1: Die Inzidenzmatrix A des (orientierten) Graphen G ist total unimodular. Natürlich kann man auch eine (oder mehrere) der Kanten e umorientieren: (a v,e,a w,e ) (a v,e,a w,e ) = (a w,e,a v,e ). Die resultierende Inzidenzmatrix A entsteht A dadurch, dass die Spalten der umorientierten Kanten mit( 1) multipliziert werden. Wichtig ist dabei die Beobachtung: Bei einer Umorientierung änder sich die lineare Abhängigkeitsstruktur der Inzidenzmatrix nicht! Folglich können wir unproblematisch den Rang des Graphen G als den Rank (irgendeiner) seiner InzidenzmatrizenAdefinieren: (61) rg(g) := rg(a).
4 92 5. UNIMODULARE LINEARE PROGRAMME 1.4. Wege und Wälder. Ein Weg (oder Pfad) im GraphenG = (V,E) ist eine Folge von Knoten und Kanten P = v 0 e 1 v 1 e 2 v 2...v k 1 e k v k mit Γ(e i ) = {v i 1,v i } für alle i = 1,...,k. Im Fall v k = v 0 ist der Weg P geschlossen Eine Kantenteilmenge T E, die keinen geschlossenen Weg enthält ist ein sog. Wald. Ein Wald, der alle nichtisolierten Knoten von G berührt, heisst aufspannend. SATZ 5.2. Eine TeilmengeT E ist ein Wald vong, genau dann, wenn die T entsprechenden Spalten der InzidenzmatrixAlinear unabhängig sind. Beweis. Man macht sich leicht klar, dass die Spaltensumme der Kanten eines geschlossenen Wegs den Nullvektor ergibt (Beweis?). Folglich kann eine linear unabhängige Spaltenmenge keine Teilmenge umfassen, die zu einem geschlossenen Weg gehört. Sei umgekehrt T eine Menge von Spalten derart, dass entsprechende Spaltenteilmatrix A T der Inzidenzmatrix linear abhängig ist. Wir wählen T so klein wie möglich (unter der linearen Abhängigkeitsbedingung) und bezeichnen mit V(T) die Menge der Endknoten von T. Wir wollen zeigen, dass G T = (V(T),T) einen geschlossenen Weg enthält. Sei e 1 T und {v 0,v 1 } = G(e 1 ). v 1 muss Endpunkt einer Kante e 2 T sein, da sonst die Kante e 1 von T \{e 1 } in der Inzidenzmatrix linear unabhängig wäre! (Das würde der Minimalität von T widersprechen.) So durchschreitet man der Reihe nach einen Weg v 0 e 1 v 1 e 2 v 3... Da es nur endlich viele Knoten gibt, erreicht man nach endlichen vielen Schritten einen Knoten, den man schon vorher besucht hatte. Damit ist der behauptete geschlossene Weg nachgewiesen. KOROLLAR 5.1. Ein Wald T des Graphen G ist genau dann aufspannend, wenn gilt T = rg(g). Beweis. Gäbe es einen nichtisolierten Knoten v, der mit keiner Kante in T inzidiert, dann auch eine Kante e E mit v Γ(e), die von T linear unabhängig ist. Also ist T {e} in der Inzidenzmatrix A linear unabhängig und folglich T +1 rg(g). Sei umgekehrt T aufspannend. Es gäbe aber eine von T linear unabhängige Kante e. Wir wollen daraus einen Widerspruch ableiten.
5 2. TOTAL UNIMODULARE LINEARE PROGRAMME 93 Dazu teilen wir V in die maximalen Blöcke V 1,...,V k von Knoten auf, die paarweise durch Wege verbunden sind. e kann also nicht zwischen zwei verschiedenen Blöcken verlaufen. Andererseits kann aber e auch nicht zwei Knoten innerhalb eines Blockes verbinden (da sonst T {e} einen geschlossenen Weg enthielte). Also kann es eine solche Kante e nicht geben. Wir betrachten das LP 2. Total unimodulare lineare Programme (62) min x 0 ct x s.d. Ax = b und nehmen an, dass die MatrixA R m n total unimodular ist. Ist b ganzzahlig, dass folgern wir (wieder aus der Cramerschen Regel), dass jede Basislösung des linearen Programms ganzzahlige Komponenten hat. Das dazu duale LP ist (63) maxb T y s.d. A T y c. Da auch A T total unimodular ist, folgern wir auf die gleiche Weise, dass jede Basislösung des LP (63) ganzzahlige Komponenten hat sofern der Parametervektorcganzzahlig ist. Denn das Problem ist äquivalent zu maxb T y s.d. A T y A T w+is = c und y,w 0,s 0. Die Koeffizientenmatrix[A T, A T,I] des letzteren LP ist nämlich total unimodular. Das Ganzzahligkeitsmodell kann noch weiter verallgemeinert werden, indem wir zustzlich Untergrenzen l und Obergrenzen u für die Variablen gestatten. Wir betrachten dann z.b. ein LP der Art maxc T x s.d. Ax b und l x u. Die Basislösungen auch dieses LP sind ganzzahlig, sofern b,l und u ganzzahlige Parametervektoren sind. Denn wir können die Restriktionen mit einer einer total unimodularen Koeffizientenmatrix so ausdrücken: A I x I b u. l
6 94 5. UNIMODULARE LINEARE PROGRAMME 2.1. Zuordnungsprobleme. Seien S und T zwei disjunkte (endliche) Mengen. Jedem s S steht eine Quantität b s zur Verfügung. Jedes t T soll eine vorgeschriebene Quantität d t erhalten. Wir nehmen an, dass der Transport vonx st 0 Einheiten vonsnachtdie Kostenc st x st verursacht. Wir modellieren die Suche nach einem kostenminimalen Transportmodus mit dem Graphen G = (S T,E = S T), dessen Kanten (s,t), wir als von s nach t orientiert interpretieren. Dann ergibt sich das lineare Programm min x st 0 c st x st s.d. (s,t) x st b s t T s S x st d t t T. mit einer total unimodularen Koeffizientenmatrix. Also finden wir: s S Sind die b s und d t ganze Zahlen, dann ist jede Basislösung des Transportproblems ganzzahlig. Ein Spezialfall ergibt sich aus dem sog. (bipartiten) Matchingproblem: Wir suchen eine Menge M von paarweise disjunkten Kanten (s,t) S T derart, dass der Wert w(m) = w(s, t) (s,t) M möglichst gross ist. Dabei ist w : S T R eine vorgegebene Bewertungsfunktion der Kanten. Dazu betrachten wir das lineare Programm w st x st s.d. x st 1 s S max x st 0 (s,t) t T x st 1 t T. s S Eine optimale Basislösung x ist ganzzahlig und hat deshalb alle Komponenten x st {0,1}. Man macht sich leicht klar, dass eine Basislösung einem Matching entspricht (und umgekehrt!) Kürzeste Wege. Sei G = (V, E) ein gerichteter (d.h. orientierter) Graph mit InzidenzmatrixA. Der Weg P = v 0 e 1 v 1 e 2 v 3...v k 1 e k v k heisst gerichtet, wenn jede der Kanten e i P vom Endknoten v i 1 zum Endknoten v i orientiert ist. Ausserdem sei mit d : E R + eine Distanzfunktion gegeben, welche die Länge einer Kante angibt. Wir definieren
7 die Länge von P 2. TOTAL UNIMODULARE LINEARE PROGRAMME 95 d(p) := d(e 1 )+d(e 2 )+...+d(e k ). Seien s, t V vorgegeben. Wir suchen einen gerichteten Weg kürzester Länge von s nach t. Dazu betrachten wir das lineare Programm (64) min d e x e s.d Ax = b, x 0 e E wobeib R V der Vektor ist mit den Komponenten 1 fürv = s b v = 1 fürv = t 0 sonst. Jeder gerichtete Weg P = se 1 v 1 e 2 v 3...v k 1 e k t ergibt eine zulässige Lösungx (P) des linearen Programms mit den Komponenten { 1 füre P x (P) e = 0 sonst. LEMMA 5.2. Sei x 0 eine Basislösung des linearen Programms (64), dann enthält die Menge einen gerichteten Weg vonsnacht. tr(x) = {e E x e > 0} Beweis. Den behaupteten Weg kann man leicht konstruieren. Wegen a se x e = b s = 1 e gibt es eine Kante e 1 tr(x) mit Γ(e 1 ) = {s,v 1 }. Im Fall v 1 = t, ist der Weg gefunden. Ansonsten gibt es wegen x e1 + e e 1 a v1 ex e = e a v1 ex e = b v1 = 0 eine Kante e 2 tr(x) mit Γ(e 2 ) = {v 1,v 2 }. Im Fall v 2 = t ist der Weg gefunden. Ansonsten folgt man einer Kante e 3 tr(x) mitγ(e 3 ) = {v 2,v 3 } usw. Nach endlich vielen Schritten muss man t erreicht haben, da tr(x) keine geschlossenen Wege enthält. BEMERKUNG. Man kann sich leicht davon überzeugen, dass bei einer zulässigen Basislösung x der Träger tr(x) schon den Weg s nach t darstellt.
8 96 5. UNIMODULARE LINEARE PROGRAMME Dijkstras Algorithmus. In der Praxis wird man einen kürzesten Weg nicht mit allgemeiner LP-Software als Lösung von (64) berechnen, sondern ein auf das Problem speziell zugeschnittenes Verfahren benutzen. Es gibt viele solcher Verfahren. Eines der effizientesten ist der folgende Algorithmus von Dijkstra. OBdA gehen wir davon aus, dass es von einem Knoten v zu einem Knoten w höchstens eine Kanteegibt, die wir somit als das Knotenpaar(v,w) eindeutig darstellen können. Wenn von v nach w keine Kante existiert, setzen wir d vw =. Dijkstras Algorithmus berechnet die kürzesten Wege von s zu allen übrigen Knoten. Man stoppt natürlich, sobald manterreicht hat. (D0) Setzey s 0,S {s} und y v d sv für allev V \S. (D1) Solanget / S gilt, wähle einv V \S mit minimalemy v, setze S S {v} und datiere auf: y w min{y w,y v +d vw } für allew V \S. Man sieht leicht per Induktion (über S ): LEMMA 5.3. In jedem Stadium des Algorithmus von Dijkstra gilt: Die Wertey v der Knoten v S geben genau die minimale Entfernung von s nach v an. Aus der Dijkstra-Lösung y lässt sich leicht ein kürzester Weg von s nach t durch Zurückrechnen gewinnen: Man beginnt bei t und sucht einv 1 S \{t} mit y t = y v1 +d v1,t. Nun sucht man einv 2 S \{t,v 1 } mit usw., bis man bei s angelangt ist. y v1 = y v2 +d v2,v 1
9 3. ZIRKULATIONEN UND DAS MAX-FLOW-MIN-CUT-THEOREM Zirkulationen und das MAX-Flow-MIN-Cut-Theorem Der einfacheren Notation halber nehmen wir hier an, dass die Kanten des gerichteten Graphen G = (V, E) genau den Knotenpaaren entsprechen. D.h. E = V V. Ein Fluss auf G ist ein Vektor x R E. Der (Netto-)Durchfluss von x im Knotenv ist δ v (x) = w V x vw u V x uv = e Ea v,e x e, wobei A = [a v,e ] die Inzidenzmatrix von G ist. Der Vektor aller Knotendurchflüsse ist somit in Matrixnotation δ(x) = Ax. Sind alle Nettodurchflüsse0, so istxeine sog. Zirkulation aufg. D.h. x ist Zirkulation x ker A. Sei nun f = (t, s) E eine festgewählte Kante und x eine Zirkulation auf G = (V,E). Stellen wir uns vor, dass die Kantef ingblockiert wird. Dann stellen die übrigen Kantenflusswertex e (e f) einen Fluss auf G f = (V,E \{f}) dar, wo in s ein Nettoabfluss und bei t ein Nettozufluss in Höhe von x f stattfindet. Mit anderen Worten: Die Einschränkung vonxaufg f beschreibt den Transport eines Gutes der Quantitätx f von der Quelleszur Senketentlang den Kanten von G f, wobei bei keinem Knoten v V \ {s,t} etwas verloren geht oder hinzugewonnen wird. Unter der Annahme, dass jede Kante e E\{f} einer Kapazitätsschranke c e 0 unterliegt, sucht man im Ford-Fulkerson-Problem nach einer nichtnegativen Zirkulationx, die den Transportwertx f maximiert: (65) max x f s.d. δ v (x) = 0 für allev V 0 x e c e für allee E \{f} Das zugehörige duale lineare Programm ist:
10 98 5. UNIMODULARE LINEARE PROGRAMME (66) min c e z e e E s.d. y w y v + z e 0 für allee = (v,w) f y s y t + z f 1 z e Augmentierende Wege und Schnitte. Sei x 0 eine zulässige Lösung von (65). Wie könnte man diese verbessern? Dazu betrachten wir einen (nicht notwendig gerichteten) Weg P = v 0 e 1 v 1 e 2...v k 1 e k v k von v 0 = s nach v k = t. Im Fall e i = (v i 1,v i ) ist e i eine sog. Vorwärtskante und im Fall e i = (v i,v i 1 ) eine Rückwärtskante von P. P + und P seien die Menge aller Vorwärts- bzw. Rückwärtskanten von P. Wir setzen ε := min{ε +,ε }, wobei ε + := min{x vw c vw (v,w) P + } ε := min{x ur (u,r) P }, und nennen P einen x augmentierenden Weg, wenn ε > 0 erfüllt ist. Ist P augmentierend, dann können wir leicht eine bessere Zirkulation konstruieren: Wir erhören x e umεauf der Kantee P + und erniedrigenx e um ε auf jeder Kantee P. (Die übrigen Kanten bleiben unberührt.) Man sieht leicht: Es resultiert eine zulässige Zirkulationx mit Wert x f = x f +ε. Suche nach augementierenden Wegen. Um einen x augmentierenden Weg (sofern er existiert) gezielt zu suchen, betrachten wir den Hilfgraphen G(x) auf den KnotenmengeV mit der Kantenmenge E(x) = {(v,w) V V x vw < c vw oderx wv > 0}. Man macht sich leicht klar: Die gerichteten Wege von s nach t in G(x) entsprechen genau den x augmentierenden Wegen. Ob t in G(x) von s erreichbar ist (d.h. ob ein augmentierender Weg existiert), kann man folglich mit dem Algorithmus von Dijkstra feststellen z.b. mit der Distanzfunktion d vw = 1 für alle Kanten (vw) E(x).
11 3. ZIRKULATIONEN UND DAS MAX-FLOW-MIN-CUT-THEOREM 99 Schnitte. Sei allgemein S V eine Knotenmenge mit s S. Dann bestimmts einen sog.s-schnitt der Kapazität [S] = {(v,w) E v S,w / S} c[s] = e [S]c e. LEMMA 5.4 (Schnittlemma). Sei x eine zulässige Zirkulation auf G und S V mits S und t / S. Dann gilt Dann gilt x f c[s] Beweis. Wir setzen y v = 1 für alle v S und y v = 0 für v / S. Ausserdem wählen wirz e = 1 für e [S] und z e = 0 sonst. Dann erhalten wir eine zulässige Lösung des dualen Problems (66) mit Zielfunktionswert c e z e = c[s]. e E Die schwache Dualität der linearen Programmierung impliziert damit die behauptete Ungleichung. Sei wie vorherx 0 eine zulässige Zirkulation unds die Menge aller von s in G(x) erreichbaren Knoten. Im Fall t / S ergibt sich nach Definition von G(x) und der Knotenmenge S für eine Kante e = (v, w) E \{f}: { ce wennv S undw V \S x e = 0 wenn v V \S undw S. Also schliessen wir, dass x optimal ist. Denn x f = e [S]x e = c[s] (Beweis?). SATZ 5.3 (Ford-Fulkerson). Eine zulässige Zirkulation x ist optimal für (65) genau denn, wenn es im Hilfsgraphen G(x) keinen augmentierenden Weg von s nachtgibt. Das lineare Programm (65) hat auf jeden Fall x = 0 als zulässige Lösung. Also erhalten wir unter den obigen Voraussetzungen eine kombinatorische (graphentheoretische) Form der LP-Dualität:
12 UNIMODULARE LINEARE PROGRAMME KOROLLAR 5.2 (MAX-Flow-MIN-Cut). max{x f x zulässig für (65)} = min{c[s] s S V \{t}} Der Algorithmus von Ford-Fulkerson. Die vorangegangene Analyse des Ford-Fulkerson-Problems (65) legt folgenden Algorithmus nahe: (FF0) Beginne mit x = 0 als Startlösung und suche (über den HilfsgraphenG(x)) einen augmentierenden WegP vonsnach t. (FF1) STOP, wenn P nicht existiert: x ist optimal. (FF2) Wenn P existiert, modifiziere x entlang P zu dem verbesserten zulässigen Flussx mitx f = x f+ε und iteriere nun mitx anstelle vonx. SATZ 5.4. Wenn man die augmentierenden Wege im FF-Algorithm mit dem Dijkstra-Algorithmus berechnet, benötigt man insgesamt weniger als V 3 Augementierungsschritte. Beweis. Wir betrachten eine momentane Zirkulation x und nehmen an, dass der kürzeste augmentierende Weg in G(x) k Kanten hat. Sei F(x) die Vereinigung aller Kanten in kürzesten augmentierenden Wegen. P sei ein konkreter kürzester augmentierender Weg. Nach der Augmentierung entlang P erhält man eine Zirkulation x so, dass F(x ) mindestens eine der Kanten aus F(x) nicht mehr enthält. Neue Kanten können natürlich bei E(x ) auftreten. Diese neuen Kanten sind aber entweder parallel oder antiparallel zu Kanten in P. Man kann sich nun überlegen, dass mit diesen Kanten keine neuen augmentierenden Wege mit k Kanten möglich werden (s. Lemma 5.5). Also fallen die Kardinalitäten F(x) jeweils um mindestens eins bis E(x) keinen augmentierenden Weg der Länge k mehr gestattet. Da ein kürzester augementierender Weg V Kanten durchläuft, gibt es insgesamt weniger als Iterationen. V E = V 3 LEMMA 5.5. Sei G = (V,E) ein gerichteter Graph und P ein gerichteter Weg vonsnachtmit einer minimalen Anzahlk von Kanten. Wenn man nun zu E Kanten hinzufügt, die zu Kanten von P antiparallel sind, entsteht kein neuer gerichteter Weg vonsnachtmit k Kanten. Beweis. Sei A die Inzidenzmatrix von G. Wir betrachten das LP, das Weglänge minimiert, min x 0 1T x s.d. Ax = b,
13 4. KOMBINATORISCHE OPTIMIERUNG 101 mit der Optimallösung x (P) sowie das zugehörige duale LP maxy T b (= y t y s ) s.d. y T A 1 T. Ist nun (v,w) eine Kante von P, dann hat (wegen x (P) vw = 1 > 0 eine duale Optimallösung y nach den Bedingungen des komplementären Schlupfes die Eigenschaft y w y v = 1. Wird nun die Kante (w,v) hinzugefügt, so ergibt sich bei dieser Kante (67) yv y w = y v 1 y v = 1 < 1. Das heisst: y ist auch im erweiteren dualen Problem eine zulässige Lösung und auch (wegen yt y s = k) weitherhin optimal. Argumentieren wir nun mit dem komplementären Schlupf in die umgekehrte Richtung, so finden wir, dass (w, v) in keiner primalen Optimallösung nichttrivial vertreten sein kann. 4. Kombinatorische Optimierung Die Techniken der vorangehenden Abschnitte können oft ausgebaut werden, um diskrete Optimierungsprobleme zu lösen und deren kombinatorische Struktur zu analysieren. Wir geben hier nur zwei kleine Beispiele Minimale aufspannende Wälder. Sei G = (V, E) ein (ungerichteter) Graph und c : E R eine Kantengewichtsfunktion. Für jede TeilmengeK E setzen wir c(k) := e Kc e. Wir suchen einen aufspannenden Wald T E mit möglichst kleinem Gesamtgewicht c(t). OBdA dürfen wir dabei annehmen, dass G zusammenhängend ist, d.h. dass je zwei Knoten in G über einen Weg verbunden sind. (Sonst lösen wir das Problem separat auf jeder der Zusammenhangskomponenten.) Im Algorithmus benutzen wir die Notation δ(u) := {e E U Γ(e) (V \U) Γ(e)}. PRIMS ALGORITHMUS: (P0) Wähle ein s V und setzes := {s},t :=. (P1) Istδ(S) =, stopp. (P2) Wähle ein e δ(u) mit minimalem Gewicht c e und datiere auf: T [T {e}] und U [U Γ(e)]. (P3) Gehe zu (P1).
14 UNIMODULARE LINEARE PROGRAMME SATZ 5.5. Der Algorithmus von Prim produziert einen minimalen aufspannenden WaldT. Beweis. Es ist klar, dass die Konstruktion von T an keiner Stelle einen geschlossenen Weg gestattet. Der Algorithmus gibt also am Ende einen aufspanndenden Wald aus. Wir zeigen nun induktiv, dass in jeder Iteration die konstruierte Menge T in einem optimalen aufspannenden Wald enthalten ist. (Folglich muss T am Ende selber optimal sein.) SeiT also optimal mitt T unde δ(s) die vom Algorithmus gewählte neue Kante. Wenn e T gilt, hat man natürlich T {e} T. Sei alsoe / T. Dann enthältt {e} einen geschlossenen WegP mite P. Der Weg P = P \{e} verbindet einen Knoten v S mit einem Knoten w V \S. Also muss P eine Kante f δ(s) enthalten. Da e δ(s) gewichtsminimal gewählt war, haben wirc f c e. Folglich ist T = (T \f) e auch ein gewichtsminimaler aufspannender Wald und es gilt: T (T e). BEMERKUNG. Man beachte die formale Ähnlichkeit der Algorithmen von Prim und Dijkstra! 4.2. Der Satz von König-Egervary. Wir betrachten das Matchingproblem bzgl. der disjunkten Mengen S und T bzgl. der Gewichtsfunktion w(s,t) {,+1}. w(s,t) = kann man so interpretieren, dass(s,t) für ein Matching nicht zur Verfügung steht. Wir wollen also ein Matching mit möglichst vielen zulässigen Kanten der Menge E = {(s,t) S T w(s,t) = 1}. BEMERKUNG. G = (S T,E) ist ein sog. bipartiter Graph. Die Aufgabe, ein maximales Matching zu berechnen, erweist sich als ein Spezialfall des FF-Problems. Dazu betrachten wir den Graphen G = (V, E), mit zwei neuen Knoten s 0, t 0, d.h. V = (S T {s 0,t 0 },E, und Kantenmenge E = E {(s 0,s) s S} {(t,t 0 ) t T} {(t 0,s 0 }
15 4. KOMBINATORISCHE OPTIMIERUNG 103 Beschränken wir nun die Kapazität der Kanten vom Typ (s 0,s) und (t,t 0 ) auf 1 (und + sonst), so berechnet der FF-Algorithmus einen Vektor x {0,1} E mit maximalem Flusswert x (t0,s 0 ) = e Ex e. Folglich istm = {e E x e = 1} ein maximales Matching in G. Unter einer (Kanten-)Überdeckung von G = (S T, E) versteht man eine Menge von Knoten(!)C S T mit der Eigenschaft (v,w) E = v C oderw C. C muss mindestens die Mächtigkeit eines beliebigen Matchings M haben, denn jede Kante aus M muss ja durch C abgedeckt sein: C M. Sei andererseits M ein maximales Matching, das nach dem FF-Algorithmus konstruiert wurde undc die Menge aller Knoten die vons 0 noch erreichbar sind. Wegen c[c] = M <, kann es kein e E geben, das vons C nach T \C verläuft. Also ist C = (S \C) (T C) eine Überdeckung und hat Mächtigkeit C = S \C + T C = c[c] = M. SATZ 5.6 (König/Egervary). Sei G = (S T, E) bipartit. Dann gilt max{ M M Matching} = min{ C C Überdeckung.} BEMERKUNG. Das Matching- und Überdeckungsproblem kann sinnvoll auch im Fall T = S (d.h. E S S) formuliert werden. Während das Matchingproblem (mit etwas mehr Aufwand) noch effizient lösbar bleibt, ist in dieser Allgemeinheit kein effizienter Algorithmus für das analoge Überdeckungsproblem bekannt. Insbesondere gilt der Satz von König/Egervary in diesem Rahmen nicht mehr. BEMERKUNG. Der Satz von König/Egervary ist die Grundlage vieler Minimax-Sätze in der Kombinatorik.
Operations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung.
Operations Research Rainer Schrader Flüsse in Netzwerken Zentrum für Angewandte Informatik Köln 2. Juli 2007 1 / 53 2 / 53 Flüsse in Netzwerken Unimodularität Gliederung Netzwerke und Flüsse bipartite
MehrOptimierung auf Netzwerken
KAPITEL 4 Optimierung auf Netzwerken Wir untersuchen hier spezielle lineare Programme, die eine zusätzliche kombinatorische (graphentheoretische) Struktur tragen. Nutzt man diese kombinatorische Struktur
MehrGanzzahlige lineare Programme
KAPITEL 5 Ganzzahlige lineare Programme Wir betrachten nun Optimierungsprobleme vom Typ (42) min c T x s.d. Ax = b, x 0, x ganzzahlig, wobei die Matrix A R m n und die Vektoren c R n, b R m gegeben seien.
MehrEcken des Zuordnungsproblems
Total unimodulare Matrizen Ecken des Zuordnungsproblems Definition.6 Ein Zuordnungsproblem mit den Vorzeichenbedingungen 0 apple x ij apple für i, j =,...,n statt x ij 2{0, } heißt relaxiertes Zuordnungproblem.
MehrOperations Research. Ganzzahlige lineare Programme. ganzzahlige lineare Programme. Ganzzahlige lineare Programme. Rainer Schrader. 25.
Operations Research Rainer Schrader Ganzzahlige lineare Programme Zentrum für Angewandte Informatik Köln 25. Juni 2007 1 / 49 2 / 49 Ganzzahlige lineare Programme Gliederung ganzzahlige lineare Programme
MehrOptimierung. Vorlesung 08
Optimierung Vorlesung 08 Heute Dualität Ganzzahligkeit Optimierung der Vorlesung durch Evaluierung 2 Das duale LP Das primale LP Maximiere c T x unter Ax b, x R d 0. wird zu dem dualen LP Minimiere b T
MehrVorlesung Lineare Optimierung (Sommersemester 2007)
1 Vorlesung Lineare Optimierung (Sommersemester 007) Kapitel 9: Ganzzahlige Polyeder und Kombinatorische Dualität Volker Kaibel Otto-von-Guericke Universität Magdeburg Montag, 9. Juli 007 Gliederung Ganzzahlige
MehrAlgorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme
10 Matching-Probleme 10.1 Definition von Matching-Probleme Definition 21 [2-dimensionales Matching] Sei G = (V, E) ein ungerichteter Graph und E E. E ist ein Matching, wenn für alle Kantenpaare e 1, e
MehrSchnittebenenverfahren und Heuristiken
KAPITEL 6 Schnittebenenverfahren und Heuristiken Wir betrachten nun Optimierungsprobleme vom Typ (68) minc T x s.d. Ax b,x 0,x ganzzahlig, wobei die Matrix A R m n und die Vektoren c R n,b R m gegeben
MehrGraphentheorie. Maximale Flüsse. Maximale Flüsse. Maximale Flüsse. Rainer Schrader. 31. Oktober Gliederung. sei G = (V, A) ein gerichteter Graph
Graphentheorie Rainer Schrader Zentrum ür Angewandte Inormatik Köln 31. Oktober 2007 1 / 30 2 / 30 Gliederung maximale Flüsse Schnitte Edmonds-Karp-Variante sei G = (V, A) ein gerichteter Graph sei c eine
MehrEffiziente Algorithmen I 11. Übungsblatt, Wintersemester 2015/16 Abgabetermin:
11 11. Übungsblatt, Wintersemester 2015/16 Abgabetermin: 19.01.2016 Aufgabe 29 Bestimmen Sie mit der Stepping-Stone-ethode einen Transportplan mit minimalen Kosten für das klassische Transportproblem mit
MehrTrennender Schnitt. Wie groß kann der Fluss in dem folgenden Flussnetzwerk höchstens sein?
6. Flüsse und Zuordnungen max-flow min-cut Trennender Schnitt Wie groß kann der Fluss in dem folgenden Flussnetzwerk höchstens sein? a e s c d t b f Der Fluss kann nicht größer als die Kapazität der der
MehrSatz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,...
Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,..., k, so dass gilt M = k c i P i i=1 k c i = r. i=1 Diskrete Strukturen 7.1 Matchings
MehrDas Matching Polytop
Das Matching Polytop Manuel Schneider Institut für Mathematik, TU Berlin Seminar: Algorithmische Diskrete Mathematik 27. Mai 2008 Überblick 1 Beschreibungen durch Ungleichungen Das Perfekte Matching Polytop
MehrGraphentheorie. Kardinalitätsmatchings. Kardinalitätsmatchings. Kardinalitätsmatchings. Rainer Schrader. 11. Dezember 2007
Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 11. Dezember 2007 1 / 47 2 / 47 wir wenden uns jetzt einem weiteren Optimierungsproblem zu Gliederung Matchings in bipartiten Graphen
MehrWiederholung zu Flüssen
Universität Konstanz Methoden der Netzwerkanalyse Fachbereich Informatik & Informationswissenschaft SS 2008 Prof. Dr. Ulrik Brandes / Melanie Badent Wiederholung zu Flüssen Wir untersuchen Flüsse in Netzwerken:
MehrD-MAVT Lineare Algebra I HS 2017 Prof. Dr. N. Hungerbühler. Lösungen Serie 10
D-MAVT Lineare Algebra I HS 2017 Prof. Dr. N. Hungerbühler Lösungen Serie 10 1. Für a 1 : 1 1 0, a 2 : 1 1, a 3 : 1 1 1, b : 2 2 2 1 und A : (a 1, a 2, a 3 ) gelten welche der folgenden Aussagen? (a) det(a)
MehrWir betrachten einen einfachen Algorithmus, der den Zusammenhang eines Graphen testen soll.
Kapitel 2 Zusammenhang 2.1 Zusammenhängende Graphen Wir betrachten einen einfachen Algorithmus, der den Zusammenhang eines Graphen testen soll. (1) Setze E = E, F =. (2) Wähle e E und setze F = F {e},
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Graphenalgorithmen Maximaler Fluss Einleitung Flussnetzwerke Ford-Fulkerson Fulkerson Methode Maximales bipartites Matching
MehrBipartite Graphen. Beispiele
Bipartite Graphen Ein Graph G = (V, E) heiÿt bipartit (oder paar), wenn die Knotenmenge in zwei disjunkte Teilmengen zerfällt (V = S T mit S T = ), sodass jede Kante einen Knoten aus S mit einem Knoten
MehrFlüsse und Zuordnungen. Kapitel 6. Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/ / 296
Kapitel 6 Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/19 227 / 296 Inhalt Inhalt 6 Flussnetzwerke Berechnung maximaler Flüsse Max-Flow-Min-Cut Matchings Peter Becker (H-BRS) Graphentheorie
MehrKAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN
KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN F. VALLENTIN, A. GUNDERT 1. Definitionen Notation 1.1. Ähnlich wie im vorangegangenen Kapitel zunächst etwas Notation. Wir beschäftigen uns jetzt mit ungerichteten
MehrEffiziente Algorithmen I
9. Präsenzaufgabenblatt, WiSe 2013/14 Übungstunden am 13.01. & 15.01.2014 Aufgabe Q Gegeben sei ein Fluss-Netzwerk mit Digraph D = (V, A), Knotenkapazitäten c(u, v) 0, Quelle s und Senke t. Kann sich der
MehrWir gewichten die Kanten von G wie folgt: Kante e 1 e 2 e 3 e 4 e 5 e 6 e 7 e 8 d(e i )
Prof. Dr. U. Faigle J. Voss SS 2011 12. Übung zur Einführung in die Mathematik des Operations Research Dieses Übungsblatt wird nicht mehr gewertet. Aufgabe 1: Sei G = (V, E) ein gerichteter Graph und x
MehrEinführung in die Mathematik des Operations Research
Universität zu Köln Mathematisches Institut Prof. Dr. F. Vallentin Einführung in die Mathematik des Operations Research Sommersemester 3 en zur Klausur (7. Oktober 3) Aufgabe ( + 3 + 5 = Punkte). Es sei
MehrDiskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)
WS 2015/16 Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15
MehrGraphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007
Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 25. Oktober 2007 1 / 20 2 / 20 Wir werden Optimierungsprobleme vom folgenden Typ betrachten: gegeben eine Menge X und eine Funktion
MehrOptimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung
Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung Dr. Nico Düvelmeyer Freitag, 24. Juni 2011 1: 1 [1,1] Inhaltsübersicht für heute 1 Dualität Motivation Duales LP Dualitätssätze
MehrDie duale Simplexmethode
Kapitel 0 Die duale Simplexmethode Bei der dualen Simplexmethode ist eine Startlösung oftmals leichter angebbar als bei der Simplexmethode für das ursprüngliche lineare Programm, da man keine Nichtnegativitätsanforderungen
Mehr6. Flüsse und Zuordnungen
6. Flüsse und Zuordnungen Flußnetzwerke 6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über diese Kante pro Zeiteinheit transportiert
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung 1. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken
Mehr= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2
1 Graphen Definition: Ein Graph G = (V,E) setzt sich aus einer Knotenmenge V und einer (Multi)Menge E V V, die als Kantenmenge bezeichnet wird, zusammen. Falls E symmetrisch ist, d.h.( u,v V)[(u,v) E (v,u)
MehrUniv.-Prof. Dr. Goulnara ARZHANTSEVA
Diskrete Mathematik Univ.-Prof. Dr. Goulnara ARZHANTSEVA SS 2018 c Univ.-Prof. Dr. Goulnara Arzhantseva Kapitel 08: Menger, König und Hall / Planare Graphen 1 / 30 Der Satz von Menger: s t trennende Kantenmenge
MehrKlausur zum Modul Einführung in die Diskrete Mathematik
Klausur zum Modul Einführung in die Diskrete Mathematik 11.2.2014 Aufgabe 1 [10 Punkte] Sei G ein ungerichteter Graph, k N und x, y, z V (G). Zeigen Sie: Gibt es k paarweise kantendisjunkte x-y-wege und
Mehr1 Matroide. 1.1 Definitionen und Beispiele. Seminar zur ganzzahligen Optimierung Thema: Durchschnitt von Matroiden - Satz von Edmonds von Dany Sattler
Seminar zur ganzzahligen Optimierung Thema: Durchschnitt von Matroiden - Satz von Edmonds von Dany Sattler 1 Matroide 1.1 Definitionen und Beispiele 1. Definition (Unabhängigkeitssystem): Ein Mengensystem
MehrLaufzeit. Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode.
Effiziente Algorithmen Flußprobleme 81 Laufzeit Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode. Der Fluß ist höchstens f = min{ V 1, V 2 }.
MehrFreie Bäume und Wälder
(Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese
MehrAufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1
Lösungen zu den Übungsaufgaben im Kapitel 4 des Lehrbuches Operations Research Deterministische Modelle und Methoden von Stephan Dempe und Heiner Schreier Aufgabe 1: Berechnen Sie für den in Abbildung
MehrMatchings in Graphen. Praktikum Diskrete Optimierung (Teil 5)
Praktikum Diskrete Optimierung (Teil 5) 6.05.009 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen
MehrÜbung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist:
Svenja Hüning, Michael Kerber, Hannah Schreiber WS 2016/2017 Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist: Hinweise: Dieses Blatt präsentiert Beispiellösungen zu
MehrAlgorithmische Graphentheorie
Algorithmische Graphentheorie Vorlesung 13: Flüsse und Zuordnungen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 9. Juni 2017 DURCHSATZ D(e) ist die maximale Flussmenge,
Mehr3.6 Branch-and-Bound-Verfahren
36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von
MehrSeien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren.
Beweis: 1. 2. Seien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren. Widerspruchsannahme: Es gibt zwei verschiedene Pfade zwischen u und v. Dann gibt es einen
Mehr7. Der Entwurf von Algorithmen (Fortsetzung)
Prof. Dr. Norbert Blum M.Sc. Adrian Schmitz Informatik V BA-INF 041 - Algorithmen und Berechnungskomplexität II SS 2015 Mögliche Klausuraufgaben Stand 1. Juli 2015 Bitte beachten Sie, dass die tatsächlichen
MehrBemerkung: Es gibt Algorithmen für minimale Spannbäume der Komplexität O(m + n log n) und, für dünnbesetzte Graphen, der Komplexität O(m log n), wobei
Bemerkung: Es gibt Algorithmen für minimale Spannbäume der Komplexität O(m + n log n) und, für dünnbesetzte Graphen, der Komplexität O(m log n), wobei { log x = min n N n: log (log ( log(x) )) } {{ } n
MehrKAPITEL 4 FLÜSSE IN NETZWERKEN
KAPITEL 4 FLÜSSE IN NETZWERKEN F. VALLENTIN, A. GUNDERT 1. Das Max-Flow-Min-Cut Theorem Es sei D = (V, A) ein gerichteter Graph, s, t V zwei Knoten. Wir nennen s Quelle und t Senke. Definition 1.1. Eine
MehrDatenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 14. Mai
MehrGraphentheorie. Zusammenhang. Zusammenhang. Zusammenhang. Rainer Schrader. 13. November 2007
Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 13. November 2007 1 / 84 2 / 84 Gliederung stest und Schnittkanten älder und Bäume minimal aufspannende Bäume Der Satz von Menger 2-zusammenhängende
MehrKAPITEL 6 GANZZAHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULARE MATRIZEN
KPITEL 6 GNZZHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULRE MTRIZEN F. VLLENTIN,. GUNDERT. Ganzzahlige lineare Programme Viele Optimierungsprobleme des Operations Research lassen sich als ganzzahlige lineare
MehrRandomisierte Algorithmen
Randomisierte Algorithmen Randomisierte Algorithmen Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2018/2019 1 / 40 Überblick Überblick Grundlegendes zu Markov-Ketten
Mehr4.7 Der Algorithmus von Dinic für maximalen Fluss
4.7 Der Algorithmus von Dinic für maximalen Fluss Wir kennen bereits den Algorithmus von Ford Fulkerson zur Suche nach einem maximalen Fluss in einem Graphen. Wir lernen nun einen Algorithmus für maximalen
Mehr1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme. Duales Problem. a i u i + i=1. j=1
1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme Duales Problem Lemma 1.4. Das zum Transportproblem duale Problem lautet: max unter den Nebenbedingungen m a i u i + i=1
MehrÜberblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching
Kap. 1.4: Minimum Weight Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering, LS11 4. VO 6. November 2006 Überblick kurze Wiederholung: 1.2 Blüten-Schrumpf-Algorithmus für Perfektes Matching
MehrKapitel IV Minimale Spannbäume
Kapitel IV Minimale Spannbäume 1. Grundlagen Ein Graph G = (V, E) besteht aus einer Menge V von Knoten und einer Menge E von Kanten. Wir werden nur endliche Knoten- (und damit auch Kanten-) Mengen betrachten.
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Pfade. Traveling Salesman Problem. Flüsse in Netzwerken
Mehr5. Bäume und Minimalgerüste
5. Bäume und Minimalgerüste Charakterisierung von Minimalgerüsten 5. Bäume und Minimalgerüste Definition 5.1. Es ein G = (V, E) ein zusammenhängender Graph. H = (V,E ) heißt Gerüst von G gdw. wenn H ein
MehrName:... Vorname:... Matr.-Nr.:... Studiengang:...
Technische Universität Braunschweig Sommersemester 2013 IBR - Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Dr. Christiane Schmidt Stephan Friedrichs Klausur Netzwerkalgorithmen 16.07.2013 Name:.....................................
MehrAlgorithmentheorie. 13 - Maximale Flüsse
Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk
MehrUnimodularität. Kapitel 1. Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206
Kapitel 1 Unimodularität Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206 Inhalt 1 Unimodularität Total unimodulare Matrizen Inzidenzmatrix Optimierungsprobleme auf Graphen Peter
MehrDurchschnitt von Matroiden
Durchschnitt von Matroiden Satz von Edmonds Dany Sattler 18. Januar 2007/ Seminar zur ganzzahligen Optimierung / Wallenfels Definition: Unabhängigkeitssystem Definition: Ein Mengensystem (S, J ) nennt
MehrGraphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke
Graphen Graphentheorie Graphentheorie Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke 2 Was ist ein Graph? Ein Graph ist in der Graphentheorie eine abstrakte Struktur,
Mehrlässt sich auch ableiten, dass es einen augmentierenden Pfad der Länge höchstens
Praktikum Algorithmen-Entwurf (Teil 5)..5 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen Endpunkt
MehrVorlesung Kombinatorische Optimierung (Wintersemester 2016/17)
Vorlesung Kombinatorische Optimierung (Wintersemester 06/7) Kapitel : Flüsse und Zirkulationen Volker Kaibel Otto-von-Guericke Universität Magdeburg (Version vom 4. Oktober 06) Definition. Ein Netzwerk
MehrAufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.
Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. a) Es seien W 1 = (V, E 1 ), W 2 = (V, E 2 ) Untergraphen von G, die beide Wälder sind. Weiter gelte E 1 > E 2.
Mehr1 Der Simplex Algorithmus I
1 Nicoletta Andri 1 Der Simplex Algorithmus I 1.1 Einführungsbeispiel In einer Papiermühle wird aus Altpapier und anderen Vorstoffen feines und grobes Papier hergestellt. Der Erlös pro Tonne feines Papier
MehrDie lineare Programmierung. Die Standardform 1 / 56
Die lineare Programmierung Die Standardform 1 / 56 Die Standardform der linearen Programmierung - Für n reellwertige, nichtnegative Variablen x 1 0,..., x n 0 erfülle die m linearen Gleichungen n a ij
MehrDualitätssätze der linearen Optimierung
Kapitel 9 Dualitätssätze der linearen Optimierung Sei z = c T x min! Ax = b 9.1 x 0 mit c, x R n, b R m, A R m n ein lineares Programm. Definition 9.1 Duales lineares Programm. Das lineare Programm z =
Mehr1.Aufgabe: Minimal aufspannender Baum
1.Aufgabe: Minimal aufspannender Baum 11+4+8 Punkte v 1 v 2 1 3 4 9 v 3 v 4 v 5 v 7 7 4 3 5 8 1 4 v 7 v 8 v 9 3 2 7 v 10 Abbildung 1: Der Graph G mit Kantengewichten (a) Bestimme mit Hilfe des Algorithmus
MehrDiskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008
Technische Universität München Fakultät für Informatik Lehrstuhl für Informatik 15 Computergraphik & Visualisierung Prof. Dr. Rüdiger Westermann Dr. Werner Meixner Wintersemester 2007/08 Lösungsblatt 9
Mehr4. Dualität Dualität 4.1 Dualität von LPs und der Dualitätssatz. Die duale Form eines LP in allgemeiner Form. Herleitung der dualen Form
2... 22 4.2 Die Bedingungen vom komplementären Schlupf... 23 4.3 Das Kürzeste-Wege-Problem und zugehörige duale Problem... 24 4.4 Das Farkas Lemma... 25 4.5 Duale Information im Tableau... 26 4.6 Der duale
MehrMatching. Organisatorisches. VL-18: Matching. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger. Tanzabend
Organisatorisches VL-18: Matching (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Sprechstunde: Mittwoch 11:15 12:00 Übungen: Tim Hartmann,
MehrBetriebliche Optimierung
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 / 21 1 Approximationsalgorithmen auf
MehrDieser Graph hat 3 Zusammenhangskomponenten
Vl 2, Informatik B, 19. 04. 02 1.1.3 Definitionen und wichtige Graphen Sei im folgenden G =(V;E) ein schlichter ungerichteter Graph. Definition: Der Grad eines Knoten v in einem ungerichteten Graphen ist
MehrInhalt. 1. Flußprobleme. 2. Matching. 3. Lineares Programmieren. 4. Ganzzahliges Programmieren. 5. NP-Vollständigkeit. 6. Approximationsalgorithmen
Effiziente Algorithmen Einführung 1 Inhalt 1. Flußprobleme 2. Matching. Lineares Programmieren 4. Ganzzahliges Programmieren 5. NP-Vollständigkeit 6. Approximationsalgorithmen 7. Backtracking und Branch-and-Bound
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
Mehr2 Die Dimension eines Vektorraums
2 Die Dimension eines Vektorraums Sei V ein K Vektorraum und v 1,..., v r V. Definition: v V heißt Linearkombination der Vektoren v 1,..., v r falls es Elemente λ 1,..., λ r K gibt, so dass v = λ 1 v 1
Mehr6 Flüsse und Matchings
6. Flüsse in Netzwerken Flußnetzwerke 6 Flüsse und Matchings In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über diese Kante pro Zeiteinheit transportiert werden
MehrEffiziente Algorithmen II
10. Präsenzaufgabenblatt, WiSe 2014/15 Übungstunde am 19.01.2015 Aufgabe Q Betrachten Sie das Knapsackpolytop P = conv(v ) mit V = {x n i=1 a ix i α} {0, 1} n für gegebenes α und a i 0 (insbesondere ist
MehrBetriebswirtschaftliche Optimierung
Institut für Statistik und OR Uni Graz 1 Approximationsalgorithmen auf metrischen Instanzen Minimum Spanning Tree Definition (Spannbaum) Ein Spannbaum in einem Graphen G = (V,E) ist ein kreisfreier Teilgraph
MehrGraphen KAPITEL 3. Dieses Problem wird durch folgenden Graph modelliert:
KAPITEL 3 Graphen Man kann als Ursprung der Graphentheorie ein Problem sehen, welches Euler 1736 von Studenten aus Königsberg gestellt bekam. Der Fluss Pregel wird von 7 Brücken überquert, und die Frage
MehrÜbung zur Vorlesung Diskrete Strukturen I
Technische Universität München WS 00/0 Institut für Informatik Aufgabenblatt Prof. Dr. J. Csirik. November 00 Brandt & Stein Übung zur Vorlesung Diskrete Strukturen I Abgabetermin: Tutorübungen am. und.
MehrDiskrete Mathematik Graphentheorie (Übersicht)
Diskrete Mathematik Graphentheorie (Übersicht) Dr. C. Löh 2. Februar 2010 0 Graphentheorie Grundlagen Definition (Graph, gerichteter Graph). Ein Graph ist ein Paar G = (V, E), wobei V eine Menge ist (die
MehrEDM, Algorithmen und Graphenspeicherung
EDM, Algorithmen und Graphenspeicherung 1 Graphenspeicherung Gespeichert werden soll ein Graph G = (V, E) bzw. Digraph D = (V, A). Man beachte: E ( ) V 2 bzw. E V 2 1.1 Adjazenzmatrix Graph G: A = (a vw
MehrFlüsse in Netzwerken
Skript zum Seminar Flüsse in Netzwerken WS 2008/09 David Meier Inhaltsverzeichnis 1 Einführende Definitionen und Beispiele 3 2 Schnitte in Flussnetzwerken 12 2.1 Maximaler s t Fluss..........................
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen 2 Teil 7 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 2. Mai 2018 [Letzte Aktualisierung: 2/05/2018,
MehrKAPITEL 3. Konvexe Funktionen
KAPITEL 3 Konvexe Funktionen Sei F R n ein Definitionsbereich und f : F R eine Funktion. Unter dem Epigraphen von f versteht man die Menge epif = {(x, z) R n+1 x F, z R, z f(x)}. Man nennt f konvex, wenn
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 07..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
Mehr6. Flüsse und Zuordnungen
6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über solch eine Kante pro Zeiteinheit transportiert werden können. Wir können uns einen
Mehr\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.
Das Komplement Ḡ = (V, ( V ) \ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E. Ein Graph H = (V, E )
MehrOperations Research. Die Simplexmethode. LP-Dualität. Die Simplexmethode. Rainer Schrader. 18. Juni Zur Erinnerung: Gliederung
Operations Research Rainer Schrader Die Simplexmethode Zentrum für Angewandte Informatik Köln 18 Juni 00 1 / 1 / 1 Gliederung LP-Dualität ein lineares Produktionsmodell der Simplexalgorithmus Phase I Endlichkeit
MehrAusarbeitung über den Satz von Menger und den Satz von König
Ausarbeitung über den Satz von Menger und den Satz von König Myriam Ezzedine, 0326943 Anton Ksernofontov, 0327064 Jürgen Platzer, 0025360 Nataliya Sokolovska, 0326991 1. Beweis des Satzes von Menger Bevor
MehrZugeordneter bipartiter Graph
Zugeordneter bipartiter Graph Für ein Transportproblem sei A = {A 1,...,A m } die Menge der Fabriken und B = {B 1,...,B n } sei die Menge der Warenhäuser. Wir ordnen nun einem Transportproblem einen bipartiten
Mehr4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1
Allgemeines. Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition.. (a) Ein Graph G =(V, E) heißt kreisfrei, wenn er keinen Kreis besitzt. Beispiel: Ein kreisfreier Graph: FG KTuEA, TU Ilmenau
MehrEffiziente Algorithmen Lineares Programmieren 216. Schwache Dualität
Effiziente Algorithmen Lineares Programmieren 216 Schwache Dualität Sei wieder z = max{ c T x Ax b, x 0 } (P ) und w = min{ b T u A T u c, u 0 }. (D) x ist primal zulässig, wenn x { x Ax b, x 0 }. u ist
Mehr5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt.
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 05/06 ITI Wagner 5. Musterlösung Problem : Vitale Kanten * In einem Netzwerk (D = (V, E); s, t; c) mit Maximalfluß f heißen Kanten e
MehrMaximale s t-flüsse in Planaren Graphen
Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen 6. Juni 2017 Guido Brückner INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg
MehrSteiner Bäume. Dipl.-Math. Maria Kandyba Lehrstuhl für Algorithm Engineering, LS VO 15. Januar 2007
Steiner Bäume Dipl.-Math. Maria Kandyba Lehrstuhl für Algorithm Engineering, LS11 12 VO 15. Januar 2007 Überblick Einführung Definition und Motivation Komplexität Approximationsalgorithmen Distanznetzwerk
Mehr