1 LP-problem på standardform och Simplexmetoden

Relevanta dokument
Lösningar till 5B1762 Optimeringslära för T, 24/5-07

Lösningar till SF1852 Optimeringslära för E, 16/1 08

Föreläsning 2: Simplexmetoden. 1. Repetition av geometriska simplexmetoden. 2. Linjärprogrammeringsproblem på standardform.

Lösningar till SF1861/SF1851 Optimeringslära, 24/5 2013

1 Duala problem vid linjär optimering

Lösningar till SF1861 Optimeringslära, 28 maj 2012

1 Minkostnadsflödesproblem i nätverk

Lösningar till tentan i SF1861 Optimeringslära, 3 Juni, 2016

Lösningar till tentan i SF1861 Optimeringslära, 1 juni 2017

LP-problem. Vårt första exempel. Baslösningar representerar extrempunkter. Baslösningar representerar extrempunkter

Föreläsning 6: Nätverksoptimering

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Torsdag 28 maj 2010 kl

1 De fyra fundamentala underrummen till en matris

Lösningar till tentan i 5B1760 Linjär och kvadratisk optimering, 17 december 2003.

1 Konvexa optimeringsproblem grundläggande egenskaper

1 Kvadratisk optimering under linjära likhetsbivillkor

1 Ickelinjär optimering under bivillkor

1 Grundläggande kalkyler med vektorer och matriser

Lösningar till tentan i SF1861/51 Optimeringslära, 3 juni, 2015

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Onsdag 25 augusti 2010 kl

De optimeringsproblem som kommer att behandlas i denna kurs kan alla (i princip) skrivas. 1 2 xt Hx + c T x. minimera

Linjärprogrammering (Kap 3,4 och 5)

1 Positivt definita och positivt semidefinita matriser

Ett linjärprogrammeringsproblem på allmän form ser ut som

SKRIVNING I VEKTORGEOMETRI

TNK049 Optimeringslära

November 17, 2015 (1) en enda lsg. Obs det A = 1 0. (2) k-parameter lsg. Obs det A = 0. k-kolonner efter sista ledande ettan

SKRIVNING I VEKTORGEOMETRI

Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem.

Laboration 1 - Simplexmetoden och Modellformulering

Stora bilden av Linjära algebran. Vektorrum, linjära transformationer, matriser (sammanfattning av begrepp)

Vektorgeometri för gymnasister

Algebraiska egenskaper hos R n i)u + v = v + U

5B1817 Tillämpad ickelinjär optimering. Optimalitetsvillkor för problem med linjära bivillkor.

Minsta kvadratmetoden

5B1817 Tillämpad ickelinjär optimering. Kvadratisk programmering med olikhetsbivillkor Active-set metoder

Lösningsförslag till övningsuppgifter, del V

Vektorgeometri för gymnasister

1 Linjära ekvationssystem. 2 Vektorer

Optimalitetsvillkor. Optimum? Matematisk notation. Optimum? Definition. Definition

VEKTORRUMMET R n. 1. Introduktion

6.4. Linjära ekvationssytem och matriser

SKRIVNING I VEKTORGEOMETRI

5B1817 Tillämpad ickelinjär optimering. Metoder för problem utan bivillkor, forts.

Föreläsningsanteckningar Linjär Algebra II Lärarlyftet

SKRIVNING I VEKTORGEOMETRI Delkurs

2 = 3 = 1. ekvationssystem är beskriven som de vektorer X =

Vektorgeometri för gymnasister

Tentamensinstruktioner

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna

Vinsten (exklusive kostnaden för inköp av kemikalier) vid försäljning av 1 liter fönsterputs är 2 kr för F1 och 3 kr för F3.

Vektorgeometri för gymnasister

LINJÄR ALGEBRA II LEKTION 3

Vektorrum. EX. Plan och linjer i rummet genom origo. Allmänt; mängden av lösningar till AX = 0.

Linjär Algebra M/TD Läsvecka 1

Tentamensinstruktioner

Linjärprogramming. EG2205 Föreläsning 7, vårterminen 2015 Mikael Amelin

Föreläsning 7: Kvadratisk optimering. 4. Kvadratisk optimering under linjära bivillkor

1. (Dugga 1.1) (a) Bestäm v (3v 2u) om v = . (1p) and u =

Vinsten (exklusive kostnaden för inköp av kemikalier) vid försäljning av 1 liter fönsterputs är 2 kr för F1 och 3 kr för F3.

Linjär Algebra, Föreläsning 8

Enhetsvektorer. Basvektorer i två dimensioner: 1 1 Basvektorer i tre dimensioner: Enhetsvektor i riktningen v: v v

14. Minsta kvadratmetoden

Olinjär optimering med bivillkor: KKT min f (x) då g i (x) 0 för alla i

TMV166/186 Linjär Algebra M/TD 2011/2012 Läsvecka 1. Omfattning. Innehåll Lay, kapitel , Linjära ekvationer i linjär algebra

Vektorgeometri för gymnasister

SF1624 Algebra och geometri

Hemuppgift 1, SF1861 Optimeringslära, VT 2017

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister

Moment 6.1, 6.2 Viktiga exempel Övningsuppgifter T6.1-T6.6

Definition 1 Ett vektorrum M (över R) är en mängd element, vektorer, sådan att det finns en kommutativ operation + på mängden M som uppfyller

LÖSNINGAR TILL LINJÄR ALGEBRA kl 8 13 LUNDS TEKNISKA HÖGSKOLA MATEMATIK. 1. Volymen med tecken ges av determinanten.

Tentamen TMA946/MAN280 tillämpad optimeringslära

Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet

Lösningsförslag till skrivningen i Vektorgeometri (MAA702) måndagen den 30 maj 2005

SF1624 Algebra och geometri

LP-dualitet: Exempel. Vårt första exempel. LP-dualitet: Relationer. LP-dualitet: Generellt

Vektorgeometri för gymnasister

Tentamensinstruktioner. Vid skrivningens slut

Solutions to exam in SF1811 Optimization, June 3, 2014

MULTIPLIKATION AV MATRISER, BASER I RUMMET SAMT FÖRSTA MÖTET MED MATRISINVERSER = = =

SKRIVNING I VEKTORGEOMETRI

Hemuppgift 2, SF1861 Optimeringslära för T, VT-10

Norm och QR-faktorisering

Lösningar till några övningar inför lappskrivning nummer 3 på kursen Linjär algebra för D, vt 15.

TAMS79: Föreläsning 10 Markovkedjor

1(8) x ijt = antal mobiltelefoner av typ i=1,,m, Som produceras på produktionslina 1,, n, Under vecka t=1,,t.

z = min 3x 1 2x 2 + y Fixera y, vilket ger subproblemet

Matematiska Institutionen KTH. Lösning till tentamensskrivning på kursen Linjär algebra II, SF1604, den 9 juni 2011 kl

Tentamensinstruktioner. När Du löser uppgifterna

Optimeringslära Kaj Holmberg

Optimeringslära Kaj Holmberg

Chalmers tekniska högskola Datum: kl Telefonvakt: Linnea Hietala MVE480 Linjär algebra S

Vårt första exempel. LP-dualitet: Exempel. LP-dualitet: Generellt. LP-dualitet: Relationer

linjära ekvationssystem.

Optimeringslära för T (SF1861)

Dagens program. Linjära ekvationssystem och matriser

DEL I. Matematiska Institutionen KTH. Lösning till tentamensskrivning på kursen Linjär algebra II, SF1604 för D, den 5 juni 2010 kl

Transkript:

Krister Svanberg, mars 202 LP-problem på standardform och Simplexmetoden I detta avsnitt utgår vi från LP-formuleringen (2.2) från föreläsning. Denna form är den bäst lämpade för en strömlinjeformad implementering av simplexmetoden. I många böcker är detta den enda behandlade formen på LP-problem, och den brukar kallas standardformen. Vi upprepar att ett LP-problem på standardform ser ut så här: P : minimera c T x då Ax = b, x 0, där x = (x,..., x n ) T IR n är variabelvektorn, c IR n och b IR m är givna vektorer, medan A är en given m n matris. Tillåtna området till problemet P kallar vi för F, F = {x IR n Ax = b och x 0}. (.) Def: x IR n är en tillåten lösning till problemet P om x F. ˆx IR n är en optimal lösning till problemet P om ˆx F och c Tˆx c T x för alla x F. Antag först att A har linjärt beroende rader. Då finns det två fall: Om b R(A) (= bildrummet till A, även kallat kolonnrummet till A) så innehåller systemet Ax = b redundanta ekvationer som kan elimineras utan att det påverkar vare sig ekvationssystemet eller LP-problemet. Om b / R(A) så saknar ekvationssystemet Ax = b lösning och därmed saknar LP-problemet tillåtna lösningar och är därför ointressant (eller felformulerat). Båda dessa fall är lätta att upptäcka och åtgärda innan man börjar lösa LP-problemet, så vi kommer fortsättningsvis att förutsätta att raderna i matrisen A är linjärt oberoende. Att A har linjärt oberoende rader innebär bland annat att kolonnerna i A spänner upp hela IR m, att varje vektor b IR m kan skrivas som en linjärkombination av kolonnerna i A. Detta medför att systemet Ax = b alltid har minst en lösning x, men det är inte säkert att det finns någon lösning som dessutom uppfyller x 0. En annan konsekvens av att A har linjärt oberoende rader är att antalet rader i A inte kan vara fler än antalet kolonner. Vi har alltså att n m. Men om n = m (och raderna i A är linjärt oberoende) så har systemet Ax = b exakt en lösning, som eventuellt uppfyller att x 0, så då finns ingenting kvar att optimera! Vi förutsätter därför genomgående att n > m, att antalet variabler är större än antalet likhetsbivillkor, och att raderna i A är linjärt oberoende. Då finns det oändligt många lösningar till systemet Ax = b. Låt elementen i matrisen A heta a ij och låt a j beteckna den j:te kolonnen i matrisen A, a a n a j A =.. = [ a a n ], där a j =.. a m a mn a mj

Ekvationssystemet Ax = b kan då ekvivalent skrivas på formen n a j x j = b, j= vilket kan tolkas som att högerledsvektorn b ska skrivas som en linjärkombination av kolonnerna a j, med vikterna x j. Kravet att x 0 betyder då förstås att dessa vikter inte får vara negativa. Problemet P kan alltså tolkas som att man ska framställa högerledsvektorn b som en så billig icke-negativ linjärkombination av vektorerna a j som möjligt, då kostnaderna per enhet av de givna vektorerna a j ges av konstanterna c j.. Baslösningar och tillåtna baslösningar Antag att man väljer ut m stycken linjärt oberoende kolonner a β,..., a βm bland de n stycken kolonnerna i A. Då utgör dessa utvalda kolonner en bas i IR m. Låt β = (β,..., β m ), låt A β vara en m m matris bildad av just dessa utvalda kolonner, samt låt x β IR m vara en vektor bestående av de variabler som svarar mot de utvalda kolonnerna, det vill säga: A β = [ a β a βm ] och x β = (x β,..., x βm ) T. β kallas basindexvektorn, A β kallas basmatrisen och x β kallas basvariabelvektorn svarande mot den valda basen. Komponenterna x βi i basvariabelvektorn kallas basvariabler. De l = n m stycken kolonner i matrisen A som inte ingår i basmatrisen A β samlar vi i en egen matris A ν, och de l = n m stycken komponenter i variabelvektorn x som inte ingår i basvariabelvektorn x β samlar vi i en egen vektor x ν, enligt följande: A ν = [ a ν a νl ] och x ν = (x ν,..., x νl ) T. Vektorn ν = (ν,..., ν l ) kallas icke-basindexvektorn svarande mot den valda basen. Komponenterna x νi i vektorn x ν kallas icke-basvariabler. 3 2 Exempel: Låt A = 2 3 ( 3 Då kan systemet Ax = b skrivas 2 ( och b = ) x + ). ( ) 2 x 2 + ( ) x 3 3 + ( ) x 4 = Antag att man väljer a 3 och a 2 (som är linjärt oberoende) till baskolonner. ( ) 2 x3 Då blir β = 3, β 2 = 2, β = (3, 2), A β = och x 3 β =. x 2 ( ) 3 x Vidare blir ν =, ν 2 = 4, ν = (, 4), A ν = och x 2 ν =. x 4 ( ). 2

För en given vald bas, definierad av indexvektorerna β och ν, kan ekvationsystemet Ax = b ekvivalent skrivas på formen A β x β + A ν x ν = b, (.2) ty A β x β + A ν x ν = m a βi x βi + i= l a νi x νi = i= n a j x j = Ax. Antag att man väljer att sätta alla icke-basvariabler till 0, sätter x ν = 0. Då ges enligt (.2) basvariablernas värden entydigt av lösningen till systemet A β x β = b. Detta är en tillåten lösning till problemet P om och endast om x β 0. Def: Baslösningen svarande mot en given basindexvektor β definieras av att A β x β = b och x ν = 0. Detta är en tillåten baslösning, förkortat TBL, om x β 0. Om x β 0 och minst en komponent i vektorn x β är = 0 så är det en degenererad TBL. Om x β > 0 så är det en icke-degenererad TBL. Exempel: Låt A = [ 3 2 ] 2 3 j= och b = ( ), som i exemplet ovan. Om β = (3, 2) så ges motsvarande baslösning av att x = x 4 = 0, samt att 2 x3 x3 =, x 3 β = =, så att x = (0, 2,, 0) 2 T. x 2 x 2 Detta är tydligen en icke-degenererad TBL eftersom båda basvariablerna är > 0. Om β = (2, 4) så ges motsvarande baslösning av att x = x 3 = 0, samt att 2 x2 x2 0 =, x β = =, så att x = (0, 0, 0, ) T. x 4 x 4 Detta är tydligen en degenererad TBL eftersom basvariabeln x 2 är = 0. Om β = (, 2) så ges motsvarande baslösning av att x 3 = x 4 = 0, samt att 3 2 x x =, x 2 x 2 β = =, så att x = (,, 0, 0) x 2 T. Detta är tydligen inte en TBL eftersom basvariabeln x 2 är < 0. Att tillåtna baslösningar är intressanta beror främst på följande viktiga resultat (som inte bevisas här). Sats: Om det finns minst en optimal lösning till P så finns det minst en TBL som är en optimal lösning till P. 3

.2 Förberedelser till simplexmetoden Här följer några beteckningar svarande mot en given bas, definierad av indexvektorn β. Vektorn b IR m definieras av att A β b = b. Vektorerna ā j IR m definieras av att A β ā j = a j, för j =,..., n. Vektorn y IR m definieras av att y T A β = c T β, AT β y = c β. Vektorn r IR n definieras av att r = c A T y, r T = c T y T A, speciellt är r T β = ct β yt A β = 0 T och r T ν = c T ν y T A ν. Talet z IR definieras av att z = c T β b = y T A β b = y T b. Vi inför nu en extra variabel z som håller reda på målfunktionens värde, z = c T x. Med hjälp av ovanstående beteckningar, samt (.2), kan vi uttrycka z som funktion av icke-basvariabelvektorn x ν, under kravet att Ax = b : z = c T x = c T β x β + c T ν x ν = = y T A β x β + c T ν x ν = y T (b A ν x ν ) + c T ν x ν = y T b + (c T ν y T A ν )x ν = z + r T ν x ν. Vi har alltså att z = c T x = z + r T ν x ν = z + l r νi x νi. (.3) Komponenterna r νi i vektorn r ν kallas för reducerade kostnaderna för icke-basvariablerna. I den aktuella baslösningen är x ν = 0, vilket ger att x β = b och z = z. i= Sats: Antag att b 0 och att r ν 0. Då är den aktuella baslösningen, definierad av att x β = b och x ν = 0, en optimal lösning till det betraktade LP-problemet (.). Bevis: LP-problemet (.) kan med hjälp av (.2) och (.3) ekvivalent skrivas på formen minimera z + r T ν x ν då A β x β + A ν x ν = b, x β 0 och x ν 0. (.4) Låt x β = x β, x ν = x ν, vara en godtycklig tillåten lösning till detta problem. Då gäller bland annat att x ν 0, vilket tillsammans med olikheten r ν 0 medför att målfunktionsvärdet för denna lösning uppfyller z + r T ν x ν z. Men baslösningen x β = b, x ν = 0, är en tillåten lösning till (.4) med målfunktionsvärdet z. Därmed är denna baslösningen en optimal lösning till problemet, eftersom den dels är en tillåten lösning, dels har minst lika lågt målfunktionsvärde som varje annan tillåten lösning. 4

Om det för den aktuella TBL:en däremot gäller att r νq < 0 för något q så kan man (normalt) hitta en bättre TBL genom att låta x νq bli ny basvariabel. Det går till på följande vis: Låt x νq = t, där t ökar från 0, medan övriga icke-basvariabler ligger kvar vid 0, x νi = 0 för alla i q. Då ger (.3) att målfunktionen z påverkas enligt följande: medan (.2) ger att z = z + r νq t, (.) A β x β + a νq t = b. (.6) För att få enklare beteckningar kallar vi nu det givna indexet ν q för k. Då är alltså A β x β + a k t = b, vilket ekvivalent kan skrivas A β (x β + ā k t b) = 0, vilket i sin tur är ekvivalent med att x β + ā k t b = 0, eftersom A β är ickesingulär. Därmed har vi följande uttryck för hur basvariablerna beror av t : x β = b ā k t, x βi = b i ā ik t för i =,..., m. (.7) Antag först att vektorn ā k uppfyller att ā k 0. Då kan tydligen t öka obegränsat utan att man bryter mot kravet att x β 0. Vi har då hittat en stråle, definierad av x νq (t) = t, x νi (t) = 0 för i q och x βi (t) = b i ā ik t för i =,.., m, x ν (t) = e q t och x β (t) = b ā k t. För varje t 0 utgör detta en tillåten lösning till problemet, och när t växer från 0 så minskar målfunktionsvärdet monotont, eftersom z(t) = z + r k t med r k < 0. Speciellt kan vi låta t +, varvid z(t). Det betyder att det betraktade LP-problemet saknar ändlig optimallösning om ā k 0. Antag fortsättningsvis att vektorn ā k har minst en strikt positiv komponent. För varje i med ā ik > 0 gäller då att storleken på t begränsas av talet b i /ā ik. Om nämligen t > b i /ā ik så blir x βi = b i ā ik t < 0, vilket är otillåtet. För varje i med ā ik > 0 så har vi alltså kravet att t b i /ā ik. Detta medför att t kan öka till som mest t max = min i { } bi ā ik > 0, (.8) ā ik ty om t > t max så blir minst en basvariabel x βi < 0, vilket är otillåtet. Antag att p är ett minimerande index i (.8), så att t max = b p /ā pk med ā pk > 0. Då blir x βp = 0 när t ( x νq ) har ökat till t max, och då har vi hittat en ny TBL, där x νq har blivit ny basvariabel medan x βp har blivit ny icke-basvariabel (med värdet 0). Vi uppdaterar då indexvektorerna β och ν genom att låta ν q och β p byta plats med varann, vilket kan åstadkommas genom programkoden γ = ν q, ν q = β p, β p = γ. Om t max > 0 så har denna nya TBL ett strikt lägre målfunktionsvärde än förgående TBL, ty z + r νq t max < z då r νq < 0 och t max > 0. Att t max > 0 är ekvivalent med att samtliga täljare bi i (.8) är > 0, vilket inträffar exempelvis om den tillåtna baslösningen som vi utgick från är icke-degenererad (ty då är b i > 0 för alla i, även de för vilka ā ik 0). Det är inte så svårt att visa (kanske lämplig övningsuppgift) att den nya basmatrisen A β, som erhålls efter att ν q och β p bytt plats med varann enligt ovan, fortfarande har linjärt oberoende kolonner och därmed är ickesingulär. (Beviset bygger på att vi vet att ā pk > 0.)

.3 Simplexmetoden för LP-problem på standardform Vi kan nu ge en principiell beskrivning av simplexmetoden tillämpad på LP-problemet (.). De olika delarna av metoden har redan behandlats ovan, så vi behöver bara sammanställa dem här. Varje varv i metoden, (I) (IV) nedan, kallas för en iteration. (I) Givet är en uppdelning av variablerna, representerad av indexvektorerna β och ν, sådan att motsvarande baslösning är en TBL. Beräkna vektorerna b, y och r ν ur A β b = b, A T β y = c β och r ν = c ν A T ν y. Att x är en TBL innebär att b 0. (II) Om r ν 0 så avbryts algoritmen här med konstaterandet att den aktuella baslösningen, definierad av att x β = b och x ν = 0, är en optimal lösning till det betraktade problemet. Välj annars ett q sådant att r νq < 0, sätt k = ν q och beräkna vektorn ā k ur A β ā k = a k. (III) Om ā k 0 så avbryts algoritmen här med konstaterandet att problemet saknar (ändlig) optimallösning. { } bi Beräkna annars talet t max = min ā ik > 0 = b p, där p är ett minimerande index i. i ā ik ā pk (IV) Uppdatera indexvektorerna β och ν genom att låta ν q och β p byta plats med varann ( γ = ν q, ν q = β p, β p = γ). Gå därefter till (I) igen. Om denna algoritm ska användas för att lösa stora problem, med kanske tusentals bivillkor och ännu fler variabler, är det nödvändigt att tänka på några saker. Bland annat bör man, när man ska lösa ekvationssystem med den nya basmatrisen A β, utnyttja att denna matris endast skiljer sig i en enda kolonn från den föregående basmatrisen. Ett sätt att utnyttja detta är att vid varje basbyte uppdatera LU-faktorerna till basmatrisen. Hur detta går till kan man läsa om i exempelvis Nash and Sofer, avsnitt 7.6., men vi ska inte fördjupa oss i dessa implementeringsaspekter här..4 Hur hittar man en tillåten baslösning att starta från? I steg (I) ovan utgår man tydligen från att man har indexvektorer β och ν sådana att motsvarande baslösning x är en TBL. Om man väl en gång har hittat indexvektorer som uppfyller detta så kommer de nya indexvektorer som genereras i steg (IV) också att uppfylla detta (kan man visa). Kruxet är att man i första iterationen kanske inte vet hur man ska välja sina indexvektorer så att motsvarande baslösning blir en TBL. Vi ska i detta avsnitt beskriva hur man kan bestämma en TBL och motsvarande indexvektorer β och ν som simplexmetoden kan starta från. Vi upprepar att det betraktade LP-problemet P är på formen P : minimera c T x då Ax = b, x 0, (.9) där vi förutsätter att högerledsvektorn uppfyller b 0 (efter att vissa ekvationer vid behov har multiplicerats med ). 6

Betrakta nu följande LP-problem i variablerna x IR n och v IR m : P 0 : minimera e T v då Ax + Iv = b, x 0 och v 0, (.0) där I är enhetsmatrisen och e = (,..., ) T. Till detta problem P 0 finns en naturlig TBL, nämligen x = 0 och v = b. Om vi döper om variablerna v i till x n+i (för i =,..., m) så ges indexvektorerna β och ν svarande mot denna TBL av β = (n+,..., n+m) och ν = (,..., n). Antag nu att man med hjälp av simplexmetoden bestämmer en optimal TBL (ˆx, ˆv) till P 0. Då är antingen ˆv = 0 eller e Tˆv > 0. Om ˆv = 0 så är ˆx en tillåten lösning till det ursprungliga problemet P. (Det ser man om man sätter in ˆv = 0 i problemet P 0.) Dessutom är ˆx normalt en TBL till problemet P, ty de artificiella variablerna v i (som alltså har värdet 0) har normalt blivit icke-basvariabler. Motsvarande indexvektorer β och ν, med variablerna v i bortrensade, kan då användas vid starten av simplexmetoden för att lösa det ursprungliga problemet P. (Om några artificiella variabler skulle råka vara kvar i basen trots att de har värdet 0 så har vi en degenererad optimal baslösning till P 0, men då kan man alltid byta ut dessa artificiella basvariabler mot några lämpligt valda x j så att en tillåten baslösning till P erhålls.) Om däremot e Tˆv > 0 så finns det ingen tillåten lösning x till det ursprungliga problemet P, varför det inte är någon mening att försöka lösa detta. 7

. Lösning av ett litet exempel med simplexmetoden Betrakta följande LP-problem. (Observera att det är ett maximeringsproblem). maximera 3x x 2 + 2x 3 då x x 2 + x 3 4, x + x 2 x 3 4, x 0, x 2 0, x 3 0. Vi ska lösa problemet med simplexmetoden. För att problemet ska bli på standardform behöver vi införa slackvariabler x 4 och x, samt byta tecken på målfunktionen. Då får vi problemet där A = [ 0 0 minimera c T x då Ax = b, x 0, ] ( ) 4, b = och c = ( 3,, 2, 0, 0) 4 T. Vi startar med slackvariablerna x 4 och x som startbasvariabler. (.) (.2) Första iterationen. Att x 4 och x är basvariabler svarar mot att β = (4, ) och ν = (, 2, 3). 0 Motsvarande basmatris ges av A β = [a 4 a ] =, medan A ν =. 0 Basvariablernas värden i baslösningen ges av x β = b, där vektorn b beräknas ur systemet 0 b 4 A β b = b, =, med lösningen 0 b2 4 b b 4 = =. b2 4 Detta är en tillåten baslösning eftersom b 0. Simplexmultiplikatorernas värden ges av systemet A T β y = c β, 0 y 0 y 0 =, med lösningen =. 0 0 0 Reducerade kostnaderna[ för icke-basvariablerna ] ges av r T ν = c T ν y T A ν = = ( 3,, 2) (0, 0) = ( 3,, 2). Eftersom r ν = r = 3 är minst, och < 0, låter vi x bli ny basvariabel. Då behöver vi beräkna vektorn ā ur systemet A β ā = a, 0 ā ā =, med lösningen ā = =. 0 ā 2 ā 2 8

Det största värde som den nya basvariabeln x kan ökas till ges av { } { } { } bi b x max b2 4 = min ā i > 0 = min, = min i ā i ā, 4 = 4. ā 2 Minimerande index är både i = och i = 2, varför antingen x β = x 4 eller x β2 = x ska ut ur basen. Man kan till exempel använda lottning för att bestämma vilken av de båda som inte längre får vara kvar som basvariabel. Antag att man väljer att låta x 4 gå ut ur basen, medan x får bli kvar i basen (tillsammans med den nya basvariabeln x ). Andra iterationen. Nu är alltså β = (, ) och ν = (2, 3, 4). 0 Motsvarande basmatris ges av A β = [a a ] =, medan A ν =. 0 Basvariablernas värden i baslösningen ges av x β = b, där vektorn b beräknas ur systemet 0 b 4 A β b = b, =, med lösningen b2 4 b b 4 = =. b2 0 Detta är som väntat en tillåten baslösning, men en degenererad sådan eftersom b 2 = 0. Simplexmultiplikatorernas värden ges av systemet A T β y = c β, y 3 y 3 =, med lösningen =. 0 0 0 Reducerade kostnaderna[ för icke-basvariablerna ] ges av r T ν = c T ν y T A ν = = (, 2, 0) ( 3, 0) = ( 2,, 3). 0 Eftersom r ν = r 2 = 2 är minst, och < 0, låter vi x 2 bli ny basvariabel. Då behöver vi beräkna vektorn ā 2 ur systemet A β ā 2 = a 2, 0 ā2 =, med lösningen ā 2 = ā 22 ( ā2 Det största värde som den nya basvariabeln x 2 kan ökas till ges av { } { } { } bi b2 0 x max 2 = min ā i2 > 0 = = = 0. i ā i2 2 Minimerande index är i = 2, varför x β2 = x ska ut ur basen. Tredje iterationen. ā 22 ā 22 ) ( ) =. 2 Nu är β = (, 2) och ν = (3, 4, ). 0 Motsvarande basmatris ges av A β = [a a 2 ] =, medan A ν =. 0 9

Basvariablernas värden i baslösningen ges av x β = b, där vektorn b beräknas ur systemet b 4 A β b = b, =, med lösningen b2 4 b b 4 = =. b2 0 Detta är ånyo en tillåten men degenererad baslösning. Simplexmultiplikatorernas värden ges av systemet A T β y = c β, y 3 y 2 =, med lösningen =. Reducerade kostnaderna för [ icke-basvariablerna ] ges av r T ν = c T ν y T A ν = 0 = ( 2, 0, 0) ( 2, ) = (, 2, ). 0 Eftersom r ν = r 3 = är minst, och < 0, låter vi x 3 bli ny basvariabel. Då behöver vi beräkna vektorn ā 3 ur systemet A β ā 3 = a 3, ā3 =, med lösningen ā 3 = ā 23 ( ā3 ā 23 ) ( ) 0 =. Eftersom ā 3 0 så kan x 3 öka obegränsat, varvid målfunktionsvärdet (för minimeringsproblemet) går mot. Därmed saknar problemet ändligt optimalvärde och algoritmen avbryts. Vi ska nu tolka de erhållna resultaten i det ursprungliga problemet (.), uttryckt i de ursprungliga tre variablerna x, x 2 och x 3. I startbaslösningen är x = x 2 = x 3 = 0, ty alla tre är icke-basvariabler. Här låter man x bli ny basvariabel (och få öka från 0). I nästa tillåtna baslösning är x 2 och x 3 icke-basvariabler, med värdet 0, medan x = 4. Här låter man x 2 bli ny basvariabel, men man kan inte öka x 2 från 0. I nästa tillåtna baslösning är x 3 icke-basvariabel med värdet 0, medan x = 4 och x 2 = 0. Här låter man x 3 bli ny basvariabel (och få öka från 0). När x 3 ökar från 0 så påverkades basvariablernas värden enligt x β = b ā 3 x 3, ( ) x 4 0 = x 0 3, medan x 4 och x ligger kvar vid 0. x 2 Om vi här sätter x 3 = t, där t ökar från 0, så betyder det att de ursprungliga variablerna beror av t enligt x 3 = t, x = 4 och x 2 = t, som kan skrivas x(t) = (x (t), x 2 (t), x 3 (t)) T = (4, 0, 0) T + t (0,, ) T. Om vi sätter in detta x(t) i det ursprungliga problemet (.) ser vi att x(t) är en tillåten lösning för alla t 0, och för målfunktionen gäller att 3x (t) x 2 (t) + 2x 3 (t) = 2 + t + då t +. 0