LP. Leksjon 4. Kapittel 4: effektivitet av simpleksmetoden

Like dokumenter
Kapittel 4: effektivitet av simpleksmetoden

LP. Leksjon 3. Kapittel 3: degenerasjon.

Kapittel 3: degenerasjon.

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

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

UNIVERSITETET I OSLO

Kapittel 2: simpleksmetoden, forts.

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

Kapittel 5: dualitetsteori

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

Kapittel 1 og 2: eksempel og 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

UNIVERSITETET I OSLO

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

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

UNIVERSITETET I OSLO

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

LP. Kap. 17: indrepunktsmetoder

Lineære likningssystemer og matriser

6.5 Minste kvadraters problemer

Lineære ligningssystemer og gausseliminasjon

Lineære ligningssystemer og gausseliminasjon

Moderne optimering mer enn å derivere!!

MAT1030 Forelesning 17

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

4 Matriser TMA4110 høsten 2018

Korteste vei problemet (seksjon 15.3)

MAT1120 Repetisjon Kap. 1

Rekurrens. MAT1030 Diskret matematikk. Rekurrens. Rekurrens. Eksempel. Forelesning 16: Rekurrenslikninger. Dag Normann

Hvorfor er lineær algebra viktig? Linear

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

Lineære likningssystemer

12 Projeksjon TMA4110 høsten 2018

Representasjon av tall på datamaskin Kort innføring for MAT-INF1100L

3.9 Teori og praksis for Minste kvadraters metode.

MAT1030 Diskret Matematikk

Forelesning 29: Kompleksitetsteori

ingen Fase I nødvendig konvergerer dersom LP er begrenset og konsistent skifter mellom primal og dual pivotering MoD233 - Geir Hasle - Leksjon 8 2

4.4 Koordinatsystemer

Arbeidshefte Multiplikasjon og divisjon

MA1102 Grunnkurs i analyse II Vår 2014

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Matriser. Kapittel 4. Definisjoner og notasjon

Løsningsforslag øving 7

Lineær optimering. Innhold. Lineær optimering S1

12 Lineære transformasjoner

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

Kap. 7 Symmetriske matriser og kvadratiske former

Egenverdier og egenvektorer

Husk at minustegn foran et tall eller en variabel er å tenke på som tallet multiplisert med det som kommer etter:

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

6.4 Gram-Schmidt prosessen

LP. Leksjon Spillteori

7.1 forts. Schur triangularisering og spektralteoremet

MAT1120 Notat 1 Tillegg til avsnitt 4.4

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

Til enhver m n matrise A kan vi knytte et tall, rangen til A, som gir viktig informasjon.

Diofantiske likninger Peer Andersen

Løsningsforslag Eksamen S2, høsten 2015 Laget av Tommy O. Sist oppdatert: 25. mai 2017

Kapittel 2. Algebra. Kapittel 2. Algebra Side 29

MAT 1110: Bruk av redusert trappeform

4.4 Koordinatsystemer

MAT1120 Notat 1 Tillegg til avsnitt 4.4

Til enhver m n matrise A kan vi knytte et tall, rangen til A, som gir viktig informasjon.

Kompleksitetsanalyse Helge Hafting Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder

UNIVERSITETET I OSLO

Repetisjon: om avsn og kap. 3 i Lay

Matematikk Øvingsoppgaver i numerikk leksjon 7 Løsningsforslag

MAT1030 Diskret Matematikk

Konkurranse 1. Tommy Odland 22. desember 2015 ENT3R UiB

Verdens beste håndball-lag?

Spesialisering i økonomistyring og investeringsanalyse DST 9530

Lineære ligningssystem og matriser

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

Forelening 1, kapittel 4 Stokastiske variable

(a) R n defineres som mengden av kolonnevektorer. a 1 a 2. a n. (b) R n defineres som mengden av radvektorer

A 2 = PDP 1 PDP 1 = PD 2 P 1. og ved induksjon får vi. A k = PD k P 1. Kommentarer:

være en rasjonal funksjon med grad p < grad q. La oss skrive p(x) (x a)q(x) = A

4.2 Nullrom, kolonnerom og lineære transformasjoner

Lineære ligningssystem; Gauss-eliminasjon, Redusert echelonmatrise

Avanserte flytalgoritmer

Elementære eliminasjonsmatriser

Løsningsforslag til utvalgte oppgaver i kapittel 10

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

Sekventkalkyle for utsagnslogikk

Generell informasjon om faget er tilgjengelig fra It s learning. 1 En kort oppsummering Adaptiv filtrering 2. 3 Prediksjon 4

Numerisk lineær algebra

Løsningsforslag til obligatorisk oppgave i ECON 2130

Likninger - en introduksjon på 8. trinn Hva er en likning og hva betyr å løse den?

9 Lineærtransformasjoner TMA4110 høsten 2018

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

Lineære likningssett.

Taylor- og Maclaurin-rekker

Lineærtransformasjoner

Mer om likninger og ulikheter

EKSAMEN I EMNET Løsning: Mat Grunnkurs i Matematikk I Mandag 14. desember 2015 Tid: 09:00 14:00

Løsningsforslag øving 6

Transkript:

LP. Leksjon 4 Kapittel 4: effektivitet av simpleksmetoden hvordan måle effektivitet? verste tilfelle analyse, Klee-Minty kuben gjennomsnittsanalyse og i praksis 1 / 18

Status Hvor langt er vi kommet i vår LP-vandring? simpleksmetoden (Fase I og II) problemer: degenerasjon og sirkling løsning: antisirklingsregler, evt. perturbasjoner fundamentalteoremet for LP Neste spørsmål: hvor god er simpleksmetoden? Men: først litt om ekvivalente optimeringsproblemer! 2 / 18

Ekvivalente optimeringsproblemer Ofte er det nyttig å skrive om optimeringsproblemer til en mer hensiktsmessig form. Da er det viktig at man ender opp med et ekvivalent problem. La oss presisere hva dette betyr. La P og Q betegne to optimeringsproblemer, med variabelvektor x IR n i P og y IR k i Q. Her kan n og k være forskjellige. Vi sier at P og Q er ekvivalente dersom 1. P er tillatt hvis og bare hvis Q er tillatt. 2. P er ubegrenset hvis og bare hvis Q er ubegrenset. 3. P har optimal løsning hvis og bare hvis Q har optimal løsning. Videre finnes det da en funksjon f : IR n IR k slik at x er optimal i P hvis og bare hvis f (x) er optimal i Q. 3 / 18

Merk at man kan vise symmetri her: rekkefølgen på P og Q i definisjonen spiller ingen rolle. Som et eksempel, og en oppgave, betrakte problemene P: max{c T x : Ax b} Q: max{c T (x x ) : A(x x ) b, x, x O} Vis at P og Q er ekvivalente! LP problemer kan f.eks. ha noen variable som er ikkenegative (evt. ikkepositive), noen som er frie, og det kan være uliheter ( og ), og likninger. Lær deg hvordan man kan skrive om slike problemer til ekvivalente LP problemer! 4 / 18

Effektivitet To typer mål på effektivitet av en algoritme: verste tilfelle: maksimalt antall regneoperasjoner for problemer av en gitt størrelse gjennomsnitt: gjennomsnitlig eller forventet antall regneoperasjoner for problemer av en gitt størrelse LP: regnetid øker når antall variable eller begrensninger øker. Så regnetid blir en funksjon av problemstørrelse. Hvordan måle problemstørrelse? enkelt: antall tall, dvs m (n + 1). Svakhet: i virkelige problemer (der m og n er store) er mange av tallene null. Dette kan utnyttes i f.eks. simpleksalgoritmen til å speede opp. mer nøyaktig: antall ikkenuller. Svakhet: regneoperasjoner med store tall tar lengre tid enn for små (heller 14 7 enn 832573928 3722984) 5 / 18

enda mer nøyaktig: antall bits som kreves for å lagre alle dataene på en datamaskin Hvordan måle totalarbeid (kompleksitet) for en algoritme? regnetid (CPU) antall iterasjoner antall elementære regneoperasjoner Vårt valg: bruker m og n som mål på problemstørrelse og antall pivoteringer som kompleksitetsmål. Skal se på verste tilfelle analyse av simpleksmetoden. Svaret blir dessverre at metoden, teoretisk sett, ikke er god. I praksis er situasjonen motsatt: simpleksalgoritme fungerer utmerket. Forklaring : de vanskelige LP eksemplene dukker ikke opp i praktiske problemer. 6 / 18

I 1972 fant V.Klee og G.J.Minty en klasse av LP problemer som tar knekken på simpleksmetoden med den vanlige pivoteringsregelen (største koeffisient regel). LP problemet har n variable og det viser seg at antall pivoteringer blir 2 n 1. Så antall pivoteringer vokser eksponentielt i antall variable! Dette er håpløst mange iterasjoner, se f.eks. (ang. regnetid, anta en million pivoteringer pr. sekund): : n : 10 20 50 100 n 2 : 100 400 2500 10000 2 n : 1024 1048576 1.125899e+15 1.267650e+30 tid 0.001 sek 1.0 sek 35 år 4.0e+16 år Skal se på dette LP problemet. Idéen er å deformere kubel [0, 1] n i IR n på en slik måte at simpleksalgoritmen går gjennom alle de 2 n hjørnene! Dette gir 2 n 1 pivoteringer. 7 / 18

Her er Klee-Minty LP problemet: max n j=1 10n j x j f.a. 2 i 1 j=1 10i j x j + x i 100 i 1 for i = 1,..., n x j 0 for j = 1,..., n. Tolkning av begrensningene: i = 1: x 1 1 i = 2: 20x 1 + x 2 100, så x 2 100 20x 1 100 idet 0 x 1 1. i = 3: 200x 1 + 20x 2 + x 3 10000, så x 3 10000 200x 1 20x 2 10000 idet idet 0 x 1 1 og 0 x 2 100.... 8 / 18

Så tilnærmet har vi begrensningene 0 x 1 1 0 x 2 100. 0 x n 100 n 1 slik at mengden P av tillatte løsninger er tilnærmet lik et n-dimensjonalt rektangel (kube). P kalles derfor Klee-Minty kuben. For å lette analysen vil vi forandre litt på problemet. velg tall b i slik at 1 = b 1 b 2... b n. F. eks. velges b 1 så mye mindre enn b 2 at selv om vi multipliserer med visse tall i simpleksalgoritmen vil den nye verdien på b 1 stadig være langt mindre enn den nye verdien på b 2. Tenk på b i ene som uavhengige variable og at man kan finne passende verdier på dem senere. 9 / 18

i Klee-Minty problemet erstatter vi først høyresiden 100 i 1 med b i. Merk at de gamle høyresidene økte med en faktor 100 for hver ny rad, og dette har vi tatt vare på ved valget av b i -ene. erstatter så høyresiden b i med i 1 10 i j b j + b i. j=1 Dette er en mindre endring idet det første leddet en mye mindre enn b i (fordi b 1,..., b i 1 er tilstrekkelige små i forhold til b i.) til slutt endrer vi objektivfunksjonen i LP problemet ved å trekke fra i 1 (1/2) 10 n j b j. j=1 10 / 18

Resultatet er et modifisert Klee-Minty problem: max n j=1 10n j x j (1/2) i 1 j=1 10n j b j f.a. 2 i 1 j=1 10i j x j + x i i 1 j=1 10i j b j + b i for i n x j 0 for j n. Legg merke til at høyresidene er positive så vi trenger ikke Fase I av simpleksmetoden. Resultat: simpleksalgoritmen med største koeffisient pivoteringsregelen bruker 2 n 1 pivoteringer for å løse det modifisert Klee-Minty problemet. Vi lar beviset for dette være øvingsoppgave (Ex. 4.5 og 4.6 i Vanderbei). Vi løser nå det modifiserte Klee-Minty problemet for n = 3. Forhåpentligvis aner vi da et mønster som holder for alle n. 11 / 18

Basisliste 0: η = 100 2 b 1 10 2 b 2 1 2 b 3 + 100x 1 + 10x 2 + x 3 w 1 = b 1 x 1 w 2 = 10b 1 + b 2 20x 1 x 2 w 3 = 100b 1 + 10b 2 + b 3 200x 1 20x 2 x 3 Her skal x 1 inn i basis ved største koeffisient regelen. Siden b 1 er mye mindre enn b 2 og b 3 vil w 1 forlate basis. Gjennomfører pivoteringen (sjekk regningen ut fra x 1 = b 1 w 1 ). Basisliste 1: η = 100 2 b 1 10 2 b 2 1 2 b 3 100w 1 + 10x 2 + x 3 x 1 = b 1 w 1 w 2 = 10b 1 + b 2 + 20w 1 x 2 w 3 = 100b 1 + 10b 2 + b 3 + 200w 1 20x 2 x 3 Fantastisk! Den nye basislisten inneholder de samme tallene bortsett fra noen fortegnsendringer! Endringene er: 12 / 18

x 1 og w 1 byttet rolle bare endringer i de to kolonnene for x 1 og b 1 og disse to kolonnene er multiplisert med -1, bortsett fra i pivoteringslikningen; der er det ingen fortegnsendring Nå går x 2 inn i basis og w 2 ut. Basisliste 2: η = 100 2 b 1 + 10 2 b 2 1 2 b 3 + 100w 1 10w 2 + x 3 x 1 = b 1 w 1 x 2 = 10b 1 + b 2 + 20w 1 w 2 w 3 = 100b 1 10b 2 + b 3 200w 1 + 20w 2 x 3 Basisliste 3: η = 100 2 b 1 + 10 2 b 2 1 2 b 3 100x 1 10w 2 + x 3 w 1 = b 1 x 1 x 2 = 10b 1 + b 2 20x 1 w 2 w 3 = 100b 1 10b 2 + b 3 + 200x 1 + 20w 2 x 3 13 / 18

Basisliste 4: η = 100 2 b 1 10 2 b 2 + 1 2 b 3 + 100x 1 + 10w 2 w 3 w 1 = b 1 x 1 x 2 = 10b 1 + b 2 20x 1 w 2 x 3 = 100b 1 10b 2 + b 3 + 200x 1 + 20w 2 w 3 Basisliste 5: η = 100 2 b 1 10 2 b 2 + 1 2 b 3 100w 1 + 10w 2 w 3 x 1 = b 1 w 1 x 2 = 10b 1 + b 2 + 20w 1 w 2 x 3 = 100b 1 10b 2 + b 3 200w 1 + 20w 2 w 3 Basisliste 6: η = 100 2 b 1 + 10 2 b 2 + 1 2 b 3 + 100w 1 10x 2 w 3 x 1 = b 1 w 1 w 2 = 10b 1 + b 2 + 20w 1 x 2 x 3 = 100b 1 + 10b 2 + b 3 + 200w 1 20x 2 w 3 14 / 18

Basisliste 7: η = 100 2 b 1 + 10 2 b 2 + 1 2 b 3 100x 1 10x 2 w 3 w 1 = b 1 x 1 w 2 = 10b 1 + b 2 20x 1 x 2 x 3 = 100b 1 + 10b 2 + b 3 200x 1 20x 2 w 3 Optimal! Altså: 7 = 2 3 1 pivoteringer. 15 / 18

Observasjoner: i hver pivotering byttes x j og w j for en viss j bortsett fra fortegnsendringer bevares alle tallene under pivoteringene men hvordan endres fortegnene? Oppgave 4.5 og 4.6! problemet kunne blitt løst med bare én pivotering, hvis vi istedet for x 1 hadde tatt x 3 inn i basis! Men valget ble jo styrt av pivoteringsregelen. 16 / 18

Kommentarer om effektivitet og LP finnes det andre pivoteringsregler for simpleksalgoritmen som ikke kan få 2 n pivoteringer??? Helst ville vi hatt at antall pivoteringer ikke vokser fortere enn f.eks. n 2 eller n 3 (eller et polynom i antall variable n =)! svaret er ukjent! Men for alle forslåtte pivoteringsregler har noen funnet 2 n moteksempler. K.-H. Borgwardt har gitt en statistisk analyse som viser at forventet antall pivoteringer (når LP problemene trekkes tilfeldig ) vokser som n 3 m 1/(n 1) i praksis regner man at antall pivoteringer typisk ligger mellom m og 2m. Dette er meget bra! Og merk at antall variable n spiller mindre rolle for antall pivoteringer (selv om regnetiden øker med n). 17 / 18

Kommentarer om effektivitet og LP i 1979 kom ellipsoidemetoden utviklet av L.Khachian: første polynomtid algoritme for LP. Dette var et teoretisk gjennombrudd. Denne algoritmen er teoretisk god, men håpløs i praksis! N. Karamarkar publiserte i 1984 en ny LP algoritme basert på helt andre idéer: i motsetning til simpleksalgoritmen lages en følge av punkter som ikke er basisløsninger; de ligger i det indre av mengden av tillatte løsninger. i de senere år har et svært aktivt forskningsfelt vært indrepunktsmetoder for LP. Del 3 av Vanderbei s bok omhandler slike metoder. 18 / 18