TW2020 Optimalisering

Vergelijkbare documenten
TW2020 Optimalisering

Optimalisering. Hoorcollege 4. Leo van Iersel. Technische Universiteit Delft. 28 september 2016

Optimalisering. Hoorcollege 4. Leo van Iersel. Technische Universiteit Delft. 23 september 2015

Optimalisering. Hoorcollege 4. Leo van Iersel. Technische Universiteit Delft. 28 september 2016

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

Samenvatting college 1-12

TW2020 Optimalisering

TU/e 2DD50: Wiskunde 2

l e x e voor alle e E

Hoofdstuk 13: Integer Lineair Programmeren

TW2020 Optimalisering

Optimalisering en Complexiteit, College 11. Complementaire speling; duale Simplex methode. Han Hoogeveen, Utrecht University

TW2020 Optimalisering

l e x e voor alle e E

Branch-and-Bound en Cutting Planes

TW2020 Optimalisering

TW2020 Optimalisering

TW2020 Optimalisering

TU/e 2DD50: Wiskunde 2 (1)

TU/e 2DD50: Wiskunde 2

Tentamen: Operationele Research 1D (4016)

TW2020 Optimalisering

Sommige praktische IP problemen kunnen worden geformuleerd als optimalisering op een netwerk.

2WO12: Optimalisering in Netwerken

TU/e 2DD50: Wiskunde 2 (1)

Stelsels lineaire vergelijkingen

Inwendig product, lengte en orthogonaliteit

Universiteit Utrecht Departement Informatica

Hertentamen Optimalisering (Delft) en Besliskunde 1 (Leiden) 15 april 2014, uur

Optimalisering/Besliskunde 1. College 1 3 september, 2014

Optimalisering en Complexiteit, College 1. Han Hoogeveen, Utrecht University

Lineaire programmering

Transport-, Routing- en Schedulingproblemen. Wi4062TU / Wi487TU / a86g. Uitwerkingen

Lineaire Optimilizatie Extra sessie. 19 augustus 2010

Lineaire Algebra voor ST

Universiteit Utrecht Departement Informatica. Examen Optimalisering op dinsdag 29 januari 2019, uur.

CTB1002 deel 1 - Lineaire algebra 1

Transport-, Routing- en Schedulingproblemen. Wi4062TU / Wi487TU / a86g. Uitwerkingen

Netwerkstroming. Algoritmiek

Basiskennis lineaire algebra

2WO12: Optimalisering in Netwerken

Lineaire Algebra voor ST

Optimalisering/Besliskunde 1. College 1 6 september, 2012

Inwendig product, lengte en orthogonaliteit in R n

BESLISKUNDE 2 L.C.M. KALLENBERG UNIVERSITEIT LEIDEN

Optimalisering en Complexiteit, College 10. Begrensde variabelen. Han Hoogeveen, Utrecht University

Tie breaking in de simplex methode

Vector-en matrixvergelijkingen. Figuur: Vectoren, optellen

Toewijzingsprobleem Bachelorscriptie

Faculteit der Economie en Bedrijfskunde

Uitwerking Tweede Quiz Speltheorie,

Universiteit Utrecht Faculteit Wiskunde en Informatica. Examen Optimalisering op maandag 18 april 2005, uur.

Lineaire Algebra voor ST

Hoofdstuk 3 : Determinanten

Overzicht. Inleiding. Modellering. Duaal probleem. αβ-algoritme. Maximale stroom probleem. Voorbeeld. Transportprobleem 1

Tie breaking in de simplex methode

CTB1002 deel 1 - Lineaire algebra 1

Er zijn 4 opgaven, daarna volgen blanco bladzijden die u kan gebruiken om te antwoorden.

1 In deze opgave wordt vijftien maal telkens drie beweringen gedaan waarvan er één juist is. Kruis de juiste bewering aan. (2pt. per juist antwoord).

Begrenzing van het aantal iteraties in het max-flow algoritme

Discrete Wiskunde, College 12. Han Hoogeveen, Utrecht University

Operationeel Onderzoek Opgave 5: oplossing

Lineaire Algebra (2DD12)

Opgave 2: Simplex-algoritme - oplossing

Tentamen lineaire algebra voor BWI maandag 15 december 2008, uur.

Kies voor i een willekeurige index tussen 1 en r. Neem het inproduct van v i met de relatie. We krijgen

Optimalisering/Besliskunde 1. College 1 2 september, 2015

Bijlage A Simplex-methode

Ruimtewiskunde. college. Stelsels lineaire vergelijkingen. Vandaag UNIVERSITEIT TWENTE. Stelsels lineaire vergelijkingen.

Matrixalgebra (het rekenen met matrices)

Lineaire Algebra TW1205TI. I.A.M. Goddijn, Faculteit EWI 12 februari 2014

Optimaliseren in Netwerken

Technische Universiteit Eindhoven Faculteit Wiskunde & Informatica

Coördinatiseringen. Definitie 1. Stel dat B = {b 1,..., b n } een basis is van een vectorruimte V en dat v V. iedere vector v V :

Transshipment problemen Simplex methode en netwerk optimalisatie algoritmes. Luuk van de Sande Begeleider: Judith Keijsper 20 januari 2013

Modellen en Simulatie Lineare Programmering

Lineaire Algebra voor ST

Dimensie van een deelruimte en rang van een matrix

2DD50: Tentamen. Tentamen: 26 januari 2016 Hertentamen: 5 april 2016

Lineair programmeren met de TI-84 CE-T

Lineaire Algebra voor ST

Bekijk nog een keer het stelsel van twee vergelijkingen met twee onbekenden x en y: { De tweede vergelijking van de eerste aftrekken geeft:

Vectorruimten met inproduct

Lineaire Algebra en Vectorcalculus 2DN60 College 5.a Basis en dimensie

a) Bepaal punten a l en b m zó dat de lijn door a en b parallel is met n.

Discrete Wiskunde 2WC15, Lente Jan Draisma

Het oplossen van stelsels lineaire vergelijkingen Wiskunde 2, 2DM60 College 2b

Hebzucht loont niet altijd

WI1808TH1/CiTG - Lineaire algebra deel 1

Modellen en Simulatie Speltheorie

Lineaire Algebra voor ST

Overzicht. 1. Definities. 2. Basisalgoritme. 3. Label setting methoden. 4. Label correcting methoden. 5. Ondergrenzen. 6.

Transcriptie:

TW2020 Optimalisering Hoorcollege 5 Leo van Iersel Technische Universiteit Delft 12 oktober 2016 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 1 / 31

Dualiteit Dualiteit: Elk LP probleem heeft een bijbehorend duaal probleem. Primaal probleem min max n variabelen m restricties Duaal probleem max min n restricties m variabelen Dualiteit wordt gebruikt om ondergrenzen op de optimale doelfunctiewaarde te berekenen (voor minimaliseringsproblemen) en optimaliteit te verifiëren. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 2 / 31

Dieet probleem Een aantal soorten voedsel bevatten elk een bepaalde hoeveelheid van verschillende voedingsstoffen. We willen van elke voedingsstof genoeg binnenkrijgen. Voor zo min mogelijk geld. Hoeveel kun je het beste eten van elke soort voedsel? Voorbeeld chips muesli bitterballen benodigd (ADH) kosten 3 3 4 koolhydraten 2 1 0 3 eiwitten 0 1 4 2 vetten 4 0 8 9 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 3 / 31

Dieet probleem Een aantal soorten voedsel bevatten elk een bepaalde hoeveelheid van verschillende voedingsstoffen. We willen van elke voedingsstof genoeg binnenkrijgen. Voor zo min mogelijk geld. Hoeveel kun je het beste eten van elke soort voedsel? Het primale probleem: min 3 x 1 +3 x 2 +4 x 3 o.d.v. 2 x 1 + x 2 3 x 2 +4 x 3 2 4 x 1 +8 x 3 9 x 1, x 2, x 3 0 Het duale probleem: max 3 π 1 + 2 π 2 +9 π 3 o.d.v. 2 π 1 +4 π 3 3 π 1 + π 2 3 4 π 2 +8 π 3 4 π 1, π 2, π 3 0 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 4 / 31

Dualiteit voor algemene LP problemen Het primale probleem (P): min c T x o.d.v. a i x = b i i M a i x b i i M x j 0 j N x j R j N Het duale probleem (D): max b T π o.d.v. π i R i M π i 0 i M π T A j c j j N π T A j = c j j N De duale van het duale probleem is het primale probleem. Zwakke dualiteitsstelling: elke toegelaten oplossing van (D) geeft een ondergrens op de optimale waarde van (P). Sterke dualiteitsstelling: als (P) een optimale oplossing heeft, dan heeft (D) een optimale oplossing met dezelfde waarde. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 5 / 31

Vandaag Complementary slackness Karakterisatie van optimaliteit Farkas lemma Karakterisatie van toelaatbaarheid (is er een toegelaten oplossing) Duale Simplex methode Begin met een duaal-toegelaten basisoplossing ( c 0) en zoek naar een oplossing die ook primaal toegelaten is (b 0). Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 6 / 31

Complementary Slackness Het primale probleem (P): min c T x o.d.v. a i x = b i i M a i x b i i M x j 0 j N x j R j N Het duale probleem (D): max b T π o.d.v. π i R i M π i 0 i M π T A j c j j N π T A j = c j j N Stelling (Complementary Slackness) Laat x een toegelaten oplossing van (P) zijn en π een toegelaten oplossing van (D). Dan zijn x en π beiden optimaal dan en slechts dan als: π i (a i x b i ) = 0 i = 1,..., m (1) x j (c j π T A j ) = 0 j = 1,..., n (2) Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 7 / 31

Complementary slackness (CS) voorwaarden zijn noodzakelijke en voldoende voorwaarden voor optimaliteit. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 8 / 31

Complementary slackness (CS) voorwaarden zijn noodzakelijke en voldoende voorwaarden voor optimaliteit. Gegeven een optimale oplossing van (P), kunnen we de CS voorwaarden gebruiken om een optimale oplossing van (D) te vinden, en vice versa. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 8 / 31

Complementary slackness (CS) voorwaarden zijn noodzakelijke en voldoende voorwaarden voor optimaliteit. Gegeven een optimale oplossing van (P), kunnen we de CS voorwaarden gebruiken om een optimale oplossing van (D) te vinden, en vice versa. π i (a i x b i ) = 0 betekent: als π i 0 dan a i x = b i (aan de i-de voorwaarde van (P) wordt voldaan met gelijkheid). Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 8 / 31

Complementary slackness (CS) voorwaarden zijn noodzakelijke en voldoende voorwaarden voor optimaliteit. Gegeven een optimale oplossing van (P), kunnen we de CS voorwaarden gebruiken om een optimale oplossing van (D) te vinden, en vice versa. π i (a i x b i ) = 0 betekent: als π i 0 dan a i x = b i (aan de i-de voorwaarde van (P) wordt voldaan met gelijkheid). x j (c j π T A j ) = 0 betekent: als x j 0 dan π T A j = c j (aan de j-de voorwaarde van (D) wordt voldaan met gelijkheid). Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 8 / 31

Voorbeeld (1. Dieet Probleem) Het primale probleem: min 3 x 1 +3 x 2 +4 x 3 o.d.v. 2 x 1 + x 2 3 x 2 +4 x 3 2 4 x 1 +8 x 3 9 x 1, x 2, x 3 0 Het duale probleem: max 3 π 1 + 2 π 2 +9 π 3 o.d.v. 2 π 1 +4 π 3 3 π 1 + π 2 3 4 π 2 +8 π 3 4 π 1, π 2, π 3 0 Gegeven is een optimale oplossing van het duale probleem: 1 1 2 π = 1 met waarde 6 1 2. 0 Vind een optimale oplossing van het primale probleem m.b.v. de complementary slackness voorwaarden. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 9 / 31

Voorbeeld (2. Dieet Probleem) Het primale probleem: min 3 x 1 +3 x 2 +4 x 3 o.d.v. 2 x 1 + x 2 3 x 2 +4 x 3 2 4 x 1 +8 x 3 9 x 1, x 2, x 3 0 Het duale probleem: max 3 π 1 + 2 π 2 +9 π 3 o.d.v. 2 π 1 +4 π 3 3 π 1 + π 2 3 4 π 2 +8 π 3 4 π 1, π 2, π 3 0 Nu andersom! Gegeven is een optimale oplossing van het primale probleem: x = 1 1 2 0 1 2 met waarde 6 1 2. Vind een optimale oplossing van het duale probleem m.b.v. de complementary slackness voorwaarden. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 10 / 31

Complementary Slackness: Bewijs We gaan voor het gemak uit van een primaal-duaal paar van de volgende vorm: Het primale probleem (P): Het duale probleem (D): min z = c T x o.d.v. Ax b x 0 max w = b T π o.d.v. π T A c T π 0 Stelling (Complementary Slackness) Laat x een toegelaten oplossing van (P) zijn en π een toegelaten oplossing van (D). Dan zijn x en π beiden optimaal dan en slechts dan als: π i (a i x b i ) = 0 i = 1,..., m (1) x j (c j π T A j ) = 0 j = 1,..., n (2) Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 11 / 31

Meetkundige interpretatie complementary slackness max z = c T x o.d.v. Ax b x R n c P x* c T x = z* P = {x R n Ax b} Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 12 / 31

Meetkundige interpretatie complementary slackness max z = c T x o.d.v. Ax b x R n a 1 x = b 1 a 1 c P x* a 2 x = b 2 a 2 c T x = z* P = {x R n Ax b} Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 13 / 31

Meetkundige interpretatie complementary slackness c T x = z is een niet-negatieve lineaire combinatie van a i x = b i, i = 1,..., m Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 14 / 31

Meetkundige interpretatie complementary slackness c T x = z is een niet-negatieve lineaire combinatie van a i x = b i, i = 1,..., m, oftewel: met π i 0 voor alle i. π 1 a 1 +... + π m a m = c T π 1 b 1 +... + π m b m = z Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 14 / 31

Meetkundige interpretatie complementary slackness c T x = z is een niet-negatieve lineaire combinatie van a i x = b i, i = 1,..., m, oftewel: met π i 0 voor alle i. Dit leidt tot het duale probleem: π 1 a 1 +... + π m a m = c T π 1 b 1 +... + π m b m = z max c T x = z = min π T b o.d.v. Ax b o.d.v. π T A = c T x R n π 0 Complementary slackness zegt: als a i x < b i dan π i = 0. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 14 / 31

Meetkundige interpretatie complementary slackness c T x = z is een niet-negatieve lineaire combinatie van a i x = b i, i = 1,..., m, oftewel: met π i 0 voor alle i. Dit leidt tot het duale probleem: π 1 a 1 +... + π m a m = c T π 1 b 1 +... + π m b m = z max c T x = z = min π T b o.d.v. Ax b o.d.v. π T A = c T x R n π 0 Complementary slackness zegt: als a i x < b i dan π i = 0. Oftewel c T x = z is een niet-negatieve lineaire combinatie van de restricties waar met gelijkheid aan wordt voldaan in een optimale oplossing. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 14 / 31

Toepassing van Complementary Slackness Probleem Kortste Pad Gegeven: gerichte graaf D = (V, A) met lengte c j 0 voor elke pijl e j A en twee speciale punten s, t V. Bepaal: een kortste pad van s naar t. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 15 / 31

Toepassing van Complementary Slackness Probleem Kortste Pad Gegeven: gerichte graaf D = (V, A) met lengte c j 0 voor elke pijl e j A en twee speciale punten s, t V. Bepaal: een kortste pad van s naar t. Definieer de node-arc incidence matrix A als volgt: 1 als pijl e j uit punt i vertrekt a ij = 1 als pijl e j in punt i aankomt 0 anders. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 15 / 31

Beslissingsvariabelen: { 1 als het pad pijl e j gebruikt f j = 0 anders LP formulering (primale): min c j f j e j A o.d.v. Af = f 0 als s het eerste en t het laatste punt is. 1 0. 0 1 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 16 / 31

Beslissingsvariabelen: { 1 als het pad pijl e j gebruikt f j = 0 anders LP formulering (primale): min c j f j e j A o.d.v. Af = f 0 als s het eerste en t het laatste punt is. 1 0. 0 1 Observatie Tenminste één optimale oplossing van dit LP probleem is geheeltallig. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 16 / 31

LP formulering (primale): min c j f j e j A o.d.v. Af = f 0 als s het eerste en t het laatste punt is. 1 0. 0 1 Observatie Één van de gelijkheidsrestricties is overbodig. We kunnen bijvoorbeeld de laatste restrictie, die voor punt t, weglaten. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 17 / 31

Primale: min c j f j e j A o.d.v. Af = f 0 1 0. 0 1 Duale: max π s π t o.d.v. π T A c π R m Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 18 / 31

Primale: min c j f j e j A o.d.v. Af = f 0 1 0. 0 1 Duale: Oftewel: max π s π t o.d.v. π T A c π R m max π s π t o.d.v. π k π l c [k,l] π R m Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 18 / 31

Primale: min c j f j e j A o.d.v. Af = f 0 1 0. 0 1 Duale: Oftewel: max π s π t o.d.v. π T A c π R m max π s π t o.d.v. π k π l c [k,l] π R m Complementary Slackness: f [k,l] > 0 π k π l = c [k,l] π k π l < c [k,l] f [k,l] = 0 Met notatie: als e j = [k, l] dan f [k,l] = f j en c [k,l] = c j. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 18 / 31

Complementary Slackness condities: f [k,l] > 0 π k π l = c [k,l] π k π l < c [k,l] f [k,l] = 0 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 19 / 31

Complementary Slackness condities: f [k,l] > 0 π k π l = c [k,l] π k π l < c [k,l] f [k,l] = 0 Interpretatie van CS voor het kortste pad probleem: een s-t pad is optimaal als er waardes π i voor elk punt i gekozen kunnen worden zodanig dat π k π l c [k,l] π k π l = c [k,l] voor elke pijl [k, l] (duale restricties) voor elke pijl [k, l] op het pad (CS). Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 19 / 31

Complementary Slackness condities: f [k,l] > 0 π k π l = c [k,l] π k π l < c [k,l] f [k,l] = 0 Interpretatie van CS voor het kortste pad probleem: een s-t pad is optimaal als er waardes π i voor elk punt i gekozen kunnen worden zodanig dat π k π l c [k,l] π k π l = c [k,l] voor elke pijl [k, l] (duale restricties) voor elke pijl [k, l] op het pad (CS). Dit wordt gebruikt bij het algoritme van Dijkstra dat volgende week behandeld wordt. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 19 / 31

Farkas Lemma Complementary slackness karakteriseert optimaliteit. Farkas lemma karakteriseert toelaatbaarheid. Stelling (Farkas Lemma) Voor elke m n matrix A en vector b R m is precies één van de volgende twee beweringen waar: x R n zodanig dat Ax = b, x 0 y R m zodanig dat y T A 0, y T b < 0 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 20 / 31

De cone(x ) is de verzameling van alle niet-negatieve lineaire combinaties van de vectoren in X. Definitie cone(x ) = {λ 1 x 1 +... + λ t x t x 1,..., x t X ; λ 1,..., λ t 0} a 1 cone{a 1,...,a 5 } a 3 a 4 a 2 a 5 Dit leidt tot een meetkundige interpretatie van Farkas lemma. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 21 / 31

Stelling (Farkas Lemma) Precies één van de volgende twee beweringen is waar: x R n zodanig dat Ax = b, x 0 y R m zodanig dat y T A 0, y T b < 0 a 1 cone{a 1,...,a 5 } a 3 a 4 a 2 a 5 met a 1,..., a n de kolommen van A. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 22 / 31

Stelling (Farkas Lemma) Precies één van de volgende twee beweringen is waar: b cone(a 1,..., a n ) er is een vector y die een scherpe hoek maakt met alle a i en een stompe hoek met b. a 1 cone{a 1,...,a 5 } a 4 a 3 y a 2 a 5 b Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 23 / 31

Duale Simplex Methode (Primale) Simplex methode (voor een minimaliseringsprobleem) Ga van (primaal-)toegelaten basisoplossing (bfs) naar een volgende (niet-slechtere) bfs. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 24 / 31

Duale Simplex Methode (Primale) Simplex methode (voor een minimaliseringsprobleem) Ga van (primaal-)toegelaten basisoplossing (bfs) naar een volgende (niet-slechtere) bfs. Stop wanneer cj 0 voor alle j, oftewel totdat een oplossing gevonden is die ook duaal toegelaten is. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 24 / 31

Duale Simplex Methode (Primale) Simplex methode (voor een minimaliseringsprobleem) Ga van (primaal-)toegelaten basisoplossing (bfs) naar een volgende (niet-slechtere) bfs. Stop wanneer cj 0 voor alle j, oftewel totdat een oplossing gevonden is die ook duaal toegelaten is. Duale Simplex methode Ga van duaal-toegelaten basisoplossing naar een volgende (niet-slechtere) duaal-toegelaten basisoplossing. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 24 / 31

Duale Simplex Methode (Primale) Simplex methode (voor een minimaliseringsprobleem) Ga van (primaal-)toegelaten basisoplossing (bfs) naar een volgende (niet-slechtere) bfs. Stop wanneer cj 0 voor alle j, oftewel totdat een oplossing gevonden is die ook duaal toegelaten is. Duale Simplex methode Ga van duaal-toegelaten basisoplossing naar een volgende (niet-slechtere) duaal-toegelaten basisoplossing. Stop wanneer bi 0 voor alle i, oftewel totdat een oplossing gevonden is die ook primaal toegelaten is. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 24 / 31

Duale Simplex Algoritme voor minimaliseringsprobleem: Gegeven is een (primale) basisoplossing, niet noodzakelijk toegelaten, met c j 0 voor alle j. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 25 / 31

Duale Simplex Algoritme voor minimaliseringsprobleem: Gegeven is een (primale) basisoplossing, niet noodzakelijk toegelaten, met c j 0 voor alle j. 1 Als b i 0 voor alle i dan is de huidige basisoplossing toegelaten en optimaal. Stop! Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 25 / 31

Duale Simplex Algoritme voor minimaliseringsprobleem: Gegeven is een (primale) basisoplossing, niet noodzakelijk toegelaten, met c j 0 voor alle j. 1 Als b i 0 voor alle i dan is de huidige basisoplossing toegelaten en optimaal. Stop! 2 Kies uittredende basisvariabele behorende bij rij i met b i < 0. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 25 / 31

Duale Simplex Algoritme voor minimaliseringsprobleem: Gegeven is een (primale) basisoplossing, niet noodzakelijk toegelaten, met c j 0 voor alle j. 1 Als b i 0 voor alle i dan is de huidige basisoplossing toegelaten en optimaal. Stop! 2 Kies uittredende basisvariabele behorende bij rij i met b i < 0. 3 Als ā i j 0 voor alle j dan heeft het probleem geen toegelaten oplossing. Stop! Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 25 / 31

Duale Simplex Algoritme voor minimaliseringsprobleem: Gegeven is een (primale) basisoplossing, niet noodzakelijk toegelaten, met c j 0 voor alle j. 1 Als b i 0 voor alle i dan is de huidige basisoplossing toegelaten en optimaal. Stop! 2 Kies uittredende basisvariabele behorende bij rij i met b i < 0. 3 Als ā i j 0 voor alle j dan heeft het probleem geen toegelaten oplossing. Stop! 4 Kies intredende variabele x j waarvoor { } c j cj = max ā i j j < 0. ā i j ā i j Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 25 / 31

Duale Simplex Algoritme voor minimaliseringsprobleem: Gegeven is een (primale) basisoplossing, niet noodzakelijk toegelaten, met c j 0 voor alle j. 1 Als b i 0 voor alle i dan is de huidige basisoplossing toegelaten en optimaal. Stop! 2 Kies uittredende basisvariabele behorende bij rij i met b i < 0. 3 Als ā i j 0 voor alle j dan heeft het probleem geen toegelaten oplossing. Stop! 4 Kies intredende variabele x j waarvoor { } c j cj = max ā i j j < 0. ā i j ā i j 5 Pas elementaire rijoperaties toe zodanig dat kolom j een 1 krijgt in rij i en verder alleen 0 en. Ga naar (2). Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 25 / 31

Uitleg Duale Simplex Methode c = c cb T B 1 A en de duale variabelen zijn π T = cb T B 1 dus c 0 c cb T B 1 A 0 cb T B 1 A c π T A c duaal toegelaten Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 26 / 31

Uitleg Duale Simplex Methode c = c cb T B 1 A en de duale variabelen zijn π T = cb T B 1 dus c 0 c cb T B 1 A 0 cb T B 1 A c π T A c duaal toegelaten de keuze voor de intredende variabele x j c j ā i j { cj = max j ā i j zorgt er voor dat c j 0 blijft na de pivot. met } ā i j < 0 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 26 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v t min z = 2 f 1 + 2 f 2 + 2 f 3 + 3 f 4 + f 5 o.d.v. f 1 + f 2 = 1 (s) f 1 + f 3 + f 4 = 0 (u) f 2 f 3 + f 5 = 0 (v) f 1, f 2, f 3, f 4, f 5 0 Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 27 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v t basis b f 1 f 2 f 3 f 4 f 5 1 1 1 0 0 0 0-1 0 1 1 0 0 0-1 -1 0 1 z 0 1 2 2 3 1 Stel we proberen als basis {f 2, f 3, f 4 }. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 28 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v t basis b f 1 f 2 f 3 f 4 f 5 f 2 1 1 1 0 0 0 f 3-1 -1 0 1 0-1 f 4 1 0 0 0 1 1 z -3 1 0 0 0 0 Deze basisoplossing is niet toegelaten maar wel duaal toegelaten. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 29 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v t basis b f 1 f 2 f 3 f 4 f 5 f 2 1 1 1 0 0 0 f 3-1 -1 0 1 0-1 f 4 1 0 0 0 1 1 z -3 1 0 0 0 0 Dus kunnen we de duale simplex methode toepassen. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 30 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v t basis b f 1 f 2 f 3 f 4 f 5 f 2 1 1 1 0 0 0 f 3-1 -1 0 1 0-1 f 4 1 0 0 0 1 1 z -3 1 0 0 0 0 Dus kunnen we de duale simplex methode toepassen. Haal f 3 uit de basis. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 30 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v t basis b f 1 f 2 f 3 f 4 f 5 f 2 1 1 1 0 0 0 f 3-1 -1 0 1 0-1 f 4 1 0 0 0 1 1 z -3 1 0 0 0 0 Dus kunnen we de duale simplex methode toepassen. Haal f 3 uit de basis. Dan komt f 5 in de basis. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 30 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v basis b f 1 f 2 f 3 f 4 f 5 f 2 1 1 1 0 0 0 f 5 1 1 0-1 0 1 f 4 0-1 0 1 1 0 z -3 1 0 0 0 0 t De nieuwe oplossing is primaal toegelaten en (natuurlijk) nog steeds duaal toegelaten. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 31 / 31

Toepassing op het Kortste Pad Probleem u s e 1 e 4 1 3 2 e 3 2 1 e 2 e 5 v basis b f 1 f 2 f 3 f 4 f 5 f 2 1 1 1 0 0 0 f 5 1 1 0-1 0 1 f 4 0-1 0 1 1 0 z -3 1 0 0 0 0 t De nieuwe oplossing is primaal toegelaten en (natuurlijk) nog steeds duaal toegelaten. Deze oplossing is dus optimaal. Leo van Iersel (TUD) TW2020 Optimalisering 12 oktober 2016 31 / 31