LP. Leksjon 1. Kapittel 1 og 2: eksempel og simpleksmetoden

Like dokumenter
Kapittel 1 og 2: eksempel og simpleksmetoden

LP. Leksjon 2. Kapittel 2: simpleksmetoden, forts. initialisering to faser ubegrenset løsning geometri

LP. Leksjon 6: Kap. 6: simpleksmetoden i matriseform, og Seksjon 7.1: følsomhetsanalyse

Kapittel 2: simpleksmetoden, forts.

LP. Leksjon 3. Kapittel 3: degenerasjon.

LP. Leksjon 5. Kapittel 5: dualitetsteori. motivasjon det duale problemet svak og sterk dualitet det duale til LP problemer på andre former

Kapittel 5: dualitetsteori

Kapittel 3: degenerasjon.

Moderne optimering mer enn å derivere!!

LP. Leksjon 9: Kapittel 13: Nettverk strøm problemer, forts.2

UNIVERSITETET I OSLO

LP. Leksjon 4. Kapittel 4: effektivitet av simpleksmetoden

η = 2x 1 + x 2 + x 3 x 1 + x 2 + x 3 + 2x 4 3 x x 3 4 2x 1 + x 3 + 5x 4 1 w 1 =3 x 1 x 2 x 3 2x 4 w 2 =4 x 1 x 3 w 3 =1 2x 1 x 3 5x 4

LP. Leksjon 8: Kapittel 13: Nettverk strøm problemer, forts.1

LP. Leksjon 7. Kapittel 13: Nettverk strøm problemer

Kapittel 4: effektivitet av simpleksmetoden

UNIVERSITETET I OSLO

Lineære likningssystemer og matriser

UNIVERSITETET I OSLO

LP. Kap. 17: indrepunktsmetoder

3.9 Teori og praksis for Minste kvadraters metode.

MAT1120 Repetisjon Kap. 1

Lineære ligningssystemer og gausseliminasjon

Lineære likningssett.

Lineære ligningssystemer. Forelesning, TMA4110 Torsdag 17/9. Lineære ligningssystemer (forts.) Eksempler

Lineærtransformasjoner

4.4 Koordinatsystemer

MAT Onsdag 7. april Lineær uavhengighet (forts. 1.8 Underrom av R n, nullrom, basis MAT Våren UiO. 7.

Lineære ligningssystemer og gausseliminasjon

Gauss-Jordan eliminasjon; redusert echelonform. Forelesning, TMA4110 Fredag 18/9. Reduserte echelonmatriser. Reduserte echelonmatriser (forts.

Egenverdier for 2 2 matriser

Egenverdier og egenvektorer

Kap. 6 Ortogonalitet og minste kvadrater

TMA4110 Matematikk 3 Eksamen høsten 2018 Løsning Side 1 av 9. Løsningsforslag. Vi setter opp totalmatrisen og gausseliminerer:

6.8 Anvendelser av indreprodukter

Innhold og forelesningsplan Eksempler på LP Begreper Løsning av enkelt eksempel Praktisk relevans Leksjon 2: Simpleksmetoden for løsning av LP

7 Egenverdier og egenvektorer TMA4110 høsten 2018

TMA4122/TMA4130 Matematikk 4M/4N Høsten 2010

MAT1120 Repetisjon Kap. 1, 2 og 3

Lineære ligningssystem og matriser

Hvorfor er lineær algebra viktig? Linear

Løsningsforslag øving 7

4.9 Anvendelser: Markovkjeder

6.5 Minste kvadraters problemer

Lineære ligningssystem; Gauss-eliminasjon, Redusert echelonmatrise

Eksamen i ELE Matematikk valgfag Torsdag 18. mai Oppgave 1

10 Radrommet, kolonnerommet og nullrommet

Forelesning i Matte 3

6.4 Gram-Schmidt prosessen

Lineære likningssystemer

LØSNINGSFORSLAG EKSAMEN HØST 2012 I TIØ4120 OPERASJONSANALYSE, GRUNNKURS

8 Vektorrom TMA4110 høsten 2018

Lineære likningssystemer

12 Projeksjon TMA4110 høsten 2018

LP. Leksjon Spillteori

Emne 10 Litt mer om matriser, noen anvendelser

EKSAMEN I NUMERISK LINEÆR ALGEBRA (TMA4205)

12 Lineære transformasjoner

4.4 Koordinatsystemer

4 Matriser TMA4110 høsten 2018

Repetisjon: Om avsn og kap. 3 i Lay

Elementær Matriseteori

Gauss-eliminasjon og matrisemultiplikasjon

Inverse matriser. E.Malinnikova, NTNU, Institutt for matematiske fag. September, 2009

Emne 9. Egenverdier og egenvektorer

Obligatorisk oppgavesett 1 MAT1120 H16

Rang og Vektorrom. Magnus B. Botnan NTNU. 4. august, 2015

Side 1 av 13. Svar til. EKSAMEN I EMNE TIØ4120 OPERASJONSANALYSE, GK Torsdag 2. desember 2010 Tid: kl Bokmål

Øving 3 Determinanter

4.2 Nullrom, kolonnerom og lineære transformasjoner

9 Lineærtransformasjoner TMA4110 høsten 2018

EKSAMEN I EMNE TIØ4120 OPERASJONSANALYSE, GK. Torsdag 2. desember 2010 Tid: kl

Kap. 5 Egenverdier og egenvektorer

Eksamensoppgave i MA1201 Lineær algebra og geometri

7.1 forts. Schur triangularisering og spektralteoremet

Forelesning 10 Cramers regel med anvendelser

Vektorligninger. Kapittel 3. Vektorregning

x 1 x 2 x = x n b 1 b 2 b = b m Det kan være vanskelig (beregningsmessig) og bearbeide utrykk som inneholder

Forelesning 29: Kompleksitetsteori

MAT1030 Diskret Matematikk

Emne 7. Vektorrom (Del 1)

UNIVERSITETET I OSLO

Svar til. EKSAMEN I EMNE TIØ4120 OPERASJONSANALYSE, GK Onsdag 10. august 2011 Tid: kl Bokmål

MAT1120. Obligatorisk oppgave 1 av 2. Torsdag 20. september 2018, klokken 14:30 i Devilry (devilry.ifi.uio.no).

Det matematisk-naturvitenskapelige fakultet

Ikke lineære likninger

Ma Linær Algebra og Geometri Øving 1

EKSAMEN. 1 Om eksamen. EMNE: MA2610 FAGLÆRER: Svein Olav Nyberg, Trond Stølen Gustavsen. Klasser: (div) Dato: 24. mai 2004 Eksamenstid:

MAT-1004 Vårsemester 2017 Obligatorisk øving 2

MAT 1110: Bruk av redusert trappeform

5.8 Iterative estimater på egenverdier

MAT1120 Notat 1 Tillegg til avsnitt 4.4

TMA4110 Eksamen høsten 2018 EKSEMPEL 1 Løsning Side 1 av 8. Løsningsforslag. Vi setter opp totalmatrisen og gausseliminerer: x 1 7x 4 = 0

ELE Matematikk valgfag

Repetisjon: om avsn og kap. 3 i Lay

6 Determinanter TMA4110 høsten 2018

EKSAMEN I NUMERISK LINEÆR ALGEBRA (TMA4205)

Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag Side 1 av 7 L SNINGSFORSLAG TIL EKSAMEN I SIF5009 MATEMATIKK 3 Bokmål Man

Vektorrom. Kapittel 7. Hva kan vi gjøre med vektorer?

7.4 Singulærverdi dekomposisjonen

Transkript:

LP. Leksjon 1. Kapittel 1 og 2: eksempel og simpleksmetoden Dette emnet gir en innføring i lineær optimering og tilgrensende felt. hva er LP (lin.opt.=lin.programmering) mer generelt: matematisk optimering teori, metoder, anvendelser notatene er basert på R. Vanderbei, Linear programming: foundations and extensions, Third edition, Springer (2008). (You may also use Second Ed., Kluwer (2001)). et praktisk eksempel: produksjonsplanlegging simpleksalgoritmen, noen begreper algoritmen 1 / 24

Hva er lineær optimering? Lineær optimering er å maksimere en lineær funksjon i flere variable med begrensinger som er lineære likninger og lineære ulikheter. 2 / 24

Eksempel: produksjonsplanlegging Produkter: glassdør vindu Produksjonsanlegg: Anlegg 1: alum. ramme produksjon Anlegg 2: treramme produksjon Anlegg 3: glassproduksjon og montering Produksjon (av hvert produkt) foregår i serier på 200 stk. Data: Timer/serie Timer disp. dør vindu Anlegg 1 1 0 4 Anlegg 2 0 2 12 Anlegg 3 3 2 18 Fortjeneste/serie 3000 5000 3 / 24

Problem: Hvor mye bør vi produsere av hvert produkt for å maksimere fortjenesten? Produksjonsplan som LP problem: maksimer 3x 1 + 5x 2 forutsatt at x 1 4 2x 2 12 3x 1 + 2x 2 18 x 1 0, x 2 0. Vi vil finne en optimal løsning, dvs. en vektor (x 1, x 2 ) som oppfyller alle begrensningene og som har maksimal verdi på funksjonen 3x 1 + 5x 2. En vektor som oppfyller alle begrensningene kalles en tillatt løsning. Funksjonen vil ønsker å maksimere kalles objektivfunksjonen. 4 / 24

Senere skal vi jobbe med LP problemer på matriseform; da ser det slik ut max f.a. c T x Ax b x O Her er c og x kolonnevektorer med n komponenter, A er en m n matrise og b er en kolonnevektor med m komponenter. O betgner nullvektoren (av passende lengde). Ulikheten Ax b er en vektorulikhet og betyr at holder komponentvis (for hver komponent). Analyse av problemet, og metoder for å løse LP problemer, bygger på lineær algebra. 5 / 24

LP er nært knyttet til teori/metoder for å løse systemer av lineære ulikheter. Slike systemer er på formen Hx f der H er en m n matrise og f er en kolonnevektor (lengde m). Eksempel. Sentrale spørsmål: eksistens av løsning 3x 1 + x 2 4 x 1 2x 2 17 x 1 0 hvordan finne én løsning, evt. alle løsninger Slike problemer kan skrives som LP problemer: la objektivfunksjonen ha alle koefissienter lik 0. Mer om lineære ulikheter senere. 6 / 24

Simpleksmetoden Simpleksmetoden er en generell metode for å løse alle LP problemer. Skal etterhvert skille mellom simpleksmetoden og simpleksalgoritmen, men behøver ikke tenke på dette nå. Metoden ble utviklet av George B. Dantzig rundt 1947 i forbindelse med transportproblemer i U.S. Air Force. Arbeidet ble publisert i 1951. En interessant artikkel (nekrolog) fra Washington Post i 2005 ligger på nettsiden; Dantzig døde i 2005. 7 / 24

Simpleksalgoritmen, eksempel Andre tidlige bidragsytere var T.J.Koopmans og L.V.Kantorovich, og disse to fikk Nobel prisen i økonomi for dette arbeidet i 1975. Eksempel: Vil løse maksimer 5x 1 + 4x 2 + 3x 3 forutsatt at (i) 2x 1 + 3x 2 + x 3 5 (ii) 4x 1 + x 2 + 2x 3 11 (iii) 3x 1 + 4x 2 + 2x 3 8 x 1, x 2, x 3 0. Konverterer til likninger ved å innføre slakkvariable for hver -ulikhet: f.eks. erstattes (i) av w 1 = 5 2x 1 3x 2 x 3 og w 1 0. 8 / 24

Får da problemet på basislisteform (dictionary): maksimer η = 5x 1 + 4x 2 + 3x 3 forutsatt at (i) w 1 = 5 2x 1 3x 2 x 3 (ii) w 2 = 11 4x 1 x 2 2x 3 (iii) w 3 = 8 3x 1 4x 2 2x 3 x 1, x 2, x 3, w 1, w 2, w 3 0. Venstre side: avhengige variable = basisvariable. Høyre side: uavhengige variable = ikkebasisvariable. Startløsning: Lar x 1 = x 2 = x 3 = 0 og dermed får vi w 1 = 5, w 2 = 11, w 3 = 8. Vi lar alltid ikkebasisvariable være 0. Basisvariablene blir bestemt entydig, nemlig lik konstantene på høyre side. 9 / 24

Har vi optimal løsning? Nei!! Vi kan f.eks. øke x 1 mens vi fortsatt lar x 2 = x 3 = 0. Da vil η øke vi får nye verdier på basisvariablene som blir bestemt fra x 1 jo mer vi øker x 1 jo mer øker η! men pass på: w j -ene nærmer seg null! Maksimal økning av x 1 : vil unngå at basisvariable blir negative. Fra w 1 = 5 2x 1, w 2 = 11 4x 1 og w 3 = 8 3x 1 får vi at x 1 5/2, x 1 11/4, x 1 8/3 så vi kan øke x 1 til den minste verdien, nemlig 5/2. Dette gir den nye løsningen x 1 = 5/2, x 2 = x 3 = 0 og dermed w 1 = 0, w 2 = 1, w 3 = 1/2. Og nå er η = 25/2. Altså: en mye bedre løsning!! 10 / 24

Hvordan komme videre? Basislisteform er fin for å teste optimalitet, så vi vil komme over i neste basisliste! Vi ønsker at x 1 og w 1 skal bytte side. Altså: x 1 skal gå inn i basis, mens w 1 går ut av basis. Dette kan gjøres ved å bruke w 1 -likningen til å eliminere x 1 fra alle andre likninger. Ekvivalent: bruker elementære radoperasjoner på systemet for å eliminere x 1 : (i) løser for x 1 : x 1 = 5/2 (1/2)w 1 (3/2)x 2 (1/2)x 3, og (ii) adderer passende multippel av denne likningen til de andre slik at x 1 forsvinner og erstattes av ledd med w 1. Husk: elementære radoperasjoner endrer ikke løsningsmengden. 11 / 24

Resultat: η = 12.5 2.5w 1 3.5x 2 + 0.5x 3 x 1 = 2.5 0.5w 1 1.5x 2 0.5x 3 w 2 = 1 + 2w 1 + 5x 2 w 3 = 0.5 + 1.5w 1 + 0.5x 2 0.5x 3 Vi har nå gjennomført en pivotering: bruk av elem. radoperasjoner for å bytte to variable (en inn og en ut av basis). 12 / 24

Gjentar prosessen! Optimal? Nei: kan øke η ved å øke x 3 fra null! Kan øke til x 3 = 1 for da blir w 3 = 0 (mens de andre basisvariablene er ikkenegative). Gjennomfører en ny pivotering: x 3 inn i basis, og w 3 ut av basis. Får den nye basislisten: η = 13 w 1 3x 2 w 3 x 1 = 2 2w 1 2x 2 + w 3 w 2 = 1 + 2w 1 + 5x 2 x 3 = 1 + 3w 1 + x 2 2w 3 Her ser vi at alle koeffisientene foran ikkebasisvariable er ikkepositive (faktisk negative) i likningen for η. Da vil enhver økning av en eller flere ikkebasisvariable gi en løsning med η 13. 13 / 24

Men enhver tillatt løsning kan finnes ved passende verdier på ikkebasisvariablene! Hvorfor? Konklusjon: vi har funnet en optimal løsning! Den er w 1 = x 2 = w 3 = 0 og x 1 = 2, w 2 = 1, x 3 = 1. Verdien på η er da 13, og dette kalles optimal verdi. 14 / 24

Simpleksmetoden, generelt Betrakt et generelt LP problem maksimer forutsatt at n j=1 c jx j n j=1 a ijx j b i for i = 1,..., m der vi antar at b i 0 for alle i m. x j 0 for j = 1,..., n. 15 / 24

Innfører slakkvariable: η = n j=1 c jx j w i = b i n j=1 a ijx j for i = 1,..., m Behøver ikke skille slakkvariable og opprinnelige variable og får basislisten: η = n j=1 c jx j x n+i = b i n j=1 a ijx j for i = 1,..., m der vi har erstattet w i med x n+i. Så x IR n+m. 16 / 24

Algoritmen starter med basislisten foran der x n+1,..., x n+m er basisvariable og x 1,..., x n er ikkebasisvariable. La B være indeksmengden til basisvariablene N være indeksmengden til ikkebasisvariablene. Så, i starten er B = {n + 1,..., n + m}, N = {1,..., n}. Initiell tillatt løsning er x j = 0 for j = 1,..., n x n+i = b i for i = 1,..., m og tilhørende verdi er η = 0. En slik løsning kalles en basisløsning. 17 / 24

Hver iterasjon er en pivotering (eller basisskifte) der en indeks k flyttes fra N til B (x k er inngående variabel; ny basisvariabel fordi den øker η), en annen indeks l flyttes fra B til N (x l er utgående variabel; variabel går ut av basis fordi den blir 0) og vi finner en ny basisliste fra den gamle vha. radoperasjoner til den nye basislisten hører en ny tillatt basisløsning. Ved starten av hver pivotering har vi basislisten (med b i 0): η = η + j N c jx j x i = b i j N āijx j for i B. 18 / 24

Valg av inngående variabel: velg en k N med c k > 0. Hvis ingen slik fins, er nåværende løsning optimal og vi stopper. Ofte er mange c j er positive. Da finnes flere prinsipper for valg, men et enkelt, mye brukt prinsipp er å velge k = j med c j størst mulig. Hvorfor? Valg av utgående variabel: Også her kan vi ha valgmuligheter. Må først bestemme maksimal økning av inngående variabel x k. Fra x i = b i ā ik x k for i B ser vi at hvis ā ik 0, vil x i øke når x k økes. Slike basisvariable vil altså ikke kunne bli null (vi antar foreløpig at b i > 0) hvis derimot ā ik > 0, vil x i avta og blir null når x k = b i /ā ik. 19 / 24

Valg av utgående variabel, forts. Altså: vi kan øke x k til verdien θ := min{b i /ā ik : ā ik > 0}. Hva skjer når x k = θ? Jo, alle variable er stadig ikkenegative. Bra! Og minst en basisvariabel er blitt 0, faktisk blir x i = 0 for alle i B som oppfyller b i /ā ik = θ. Konklusjon: Utgående variabel x l velges slik at b l /ā l,k = min{b i /ā ik : ā ik > 0}. Pivotregel: en regel som sier hvilken inngående variabel og hvilken utgående variabel som skal velges når det fins valgmuligheter. Dette gir en lang rekke varianter av simpleksmetoden. 20 / 24

Pivoteringen avsluttes med radoperasjonene: anta at x k er inngående og x l er utgående variabel. Da er altså x l på venstre side i likning nr. l : x l = b l j N ā l,j x j For hver likning i l adderer vi ā ik /ā lk ganger likning l til likning i. Videre brukes likning l til å uttrykke x k som funksjon av de andre variablene. Resultat: et ekvivalent likningssystem (samme løsninger) med koeffisient 0 foran x k i hver likning i l. Videre er nye basisbariable på venstre side! Dette er den nye basislisten. 21 / 24

Kommentarer Noen spørsmål som gjenstår: hvordan finne en tillatt startløsning hvis det finnes negative b i er? i en basisliste: hva skjer hvis noen b i er 0? Ødelegger dette for pivoteringen? er det sikkert at algoritmen terminerer? og, hvis ikke, hvordan kan vi eventuelt reparere dette? Skal se på dette i Leksjon 2! Til slutt ser vi på en viktig anvendelse av LP: lineær l 1 -approksimasjon. 22 / 24

Anvendelse: lineær approksimasjon La A IR m n og b IR m, og la a i være i te rad i A oppfattet som kolonnevektor. Minner om at l 1 -normen til en vektor y IR n er y 1 = n i=1 y i. Det lineære approksimasjonsproblemet min{ Ax b 1 : x IR n } kan løses som følgende LP problem min f.a. m i=1 z i a T i x b i z i (i m) (a T i x b i ) z i (i m) 23 / 24

Bevis: Fordi enhver optimal løsning i dette problemet vil oppfylle z i = a T i x b i for hver i m. Dette betyr at man har en alternativ metode til tradisjonell minste kvadraters metode (min{ Ax b 2 : x IR n }) og slike problemer dukker opp i en lang rekke anvendelser. En tilsvarende LP basert metode kan brukes på det lineære approksimasjonsproblemet min{ Ax b : x IR n } i l -normen gitt ved z = max i z i. 24 / 24