Kapittel 4: effektivitet av simpleksmetoden

Like dokumenter
LP. Leksjon 4. 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

Kapittel 2: simpleksmetoden, forts.

UNIVERSITETET I OSLO

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

Kapittel 1 og 2: eksempel og simpleksmetoden

Kapittel 5: dualitetsteori

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

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

η = 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 9: Kapittel 13: Nettverk strøm problemer, forts.2

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

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

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Moderne optimering mer enn å derivere!!

Lineære likningssystemer og matriser

Lineære ligningssystemer og gausseliminasjon

LP. Kap. 17: indrepunktsmetoder

Lineære ligningssystemer og gausseliminasjon

MAT1030 Forelesning 17

MA1102 Grunnkurs i analyse II Vår 2014

4 Matriser TMA4110 høsten 2018

Matematikk Øvingsoppgaver i numerikk leksjon 7 Løsningsforslag

6.5 Minste kvadraters problemer

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

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

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

MAT1030 Diskret Matematikk

Forelesning 29: Kompleksitetsteori

Arbeidshefte Multiplikasjon og divisjon

Befolkning og velferd ECON 1730, H2016. Regresjonsanalyse

Kort innføring i polynomdivisjon for MAT 1100

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

UNIVERSITETET I OSLO

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

Matriser. Kapittel 4. Definisjoner og notasjon

UNIVERSITETET I OSLO

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

Spesialisering i økonomistyring og investeringsanalyse DST 9530

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

UNIVERSITETET I OSLO

Kapittel 2. Algebra. Kapittel 2. Algebra Side 29

Matematikk Øvingsoppgaver i numerikk leksjon 6 Løsningsforslag

Konkurranse 1. Tommy Odland 22. desember 2015 ENT3R UiB

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

UNIVERSITETET I OSLO

ST0103 Brukerkurs i statistikk Høsten Momentestimatoren og sannsynlighetsmaksimeringsestimatoren

Notat 4 - ST februar 2005

b) Forventet verdi er: Stor: = 26 Middels: = 17 Liten: = 12 Man velger alternativet stor.

UNIVERSITETET I OSLO

ME Vitenskapsteori og kvantitativ metode

Disjunkte mengder ADT

MA1301 Tallteori Høsten 2014 Oversikt over pensumet

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

MA0002 Brukerkurs i matematikk B Vår 2013

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

MA1301 Tallteori Høsten 2014 Oversikt over pensumet for midtsemesterprøven

TDT4105 Informasjonsteknologi, grunnkurs

Hvorfor er lineær algebra viktig? Linear

Løsningsforslag øving 6

Vektorligninger. Kapittel 3. Vektorregning

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

12 Projeksjon TMA4110 høsten 2018

MAT1030 Diskret Matematikk

Egenverdier og egenvektorer

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

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

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

MAT 1110: Bruk av redusert trappeform

9 Lineærtransformasjoner TMA4110 høsten 2018

Mer om likninger og ulikheter

Denne uken: kap : Introduksjon til statistisk inferens. - Konfidensintervall - Hypotesetesting - P-verdier - Statistisk signifikans

Løsnings forslag i java In115, Våren 1996

Lineærtransformasjoner

Reelle tall på datamaskin

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

13 Oppsummering til Ch. 5.1, 5.2 og 8.5

Løsningsforslag. n X. n X 1 i=1 (X i X) 2 og SY 2 = 1 ny S 2 X + S2 Y

Repetisjon: høydepunkter fra første del av MA1301-tallteori.

Løsningsforslag øving 7

Løsningsforslag: Eksamen i MAT111 - Grunnkurs i Matematikk I

System av likninger. Den andre likningen løses og gir x=1, hvis man setter x=1 i første likning får man

Elektrisitetslære TELE1002-A 13H HiST-AFT-EDT

UNIVERSITETET I OSLO

Verdens beste håndball-lag?

Oversikt over bevis at det finnes uendelig mange primtall med bestemte egenskaper

Løsningsforslag for Eksamen i MAT 100, H-03

Taylor- og Maclaurin-rekker

Løsningsforslag til utvalgte oppgaver i kapittel 10

Lineære likningssett.

Steg 1: Bli kjent med spillet

Start et nytt PXT-prosjekt, for eksempel ved å gå til makecode.microbit.org (

3 Største felles faktor og minste felles multiplum

Løsningsforslag, eksamen i MA0002, Brukerkurs i matematikk B

MAT1120 Repetisjon Kap. 1

Velkommen til MAT1030!

Transkript:

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

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? LP. Leksjon 4: #2 of 14

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) enda mer nøyaktig: antall bits som kreves for å lagre alle dataene på en datamaskin LP. Leksjon 4: #3 of 14

Effektivitet 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. LP. Leksjon 4: #4 of 14

Verste tilfelle analyse 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. 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 iir n påenslikmåte at simpleksalgoritmen går gjennom alle de 2 n hjørnene! Dette gir 2 n 1 pivoteringer. LP. Leksjon 4: #5 of 14

Klee Minty problemet Her er Klee-Minty LP problemet: maksimer n j=1 10 n j x j forutsatt at 2 i 1 j=1 10 i j x j + x i 100 i 1 for i = 1,...,n Tolkning av begrensningene: i = 1: x 1 1 x j 0 for j = 1,...,n. 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 1og0 x 2 100.... 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. LP. Leksjon 4: #6 of 14

Klee Minty problemet 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åmyemindreennb 2 at selv om vi multipliserer med visse tall i simpleksalgoritmen vil dennyeverdienpåb 1 stadig være langt mindre enn dennyeverdienpåb 2. Tenk på b i ene som uavhengige variable og at man kan finne passende verdier på dem senere. 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 j=1 10 i j b j + b i. 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 (1/2) i 1 j=1 10 n j b j. LP. Leksjon 4: #7 of 14

Klee Minty problemet Resultatet er et modifisert Klee-Minty problem: maksimer n j=1 10 n j x j (1/2) i 1 j=1 10 n j b j forutsatt at 2 i 1 j=1 10 i j x j + x i i 1 j=1 10 i 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. LP. Leksjon 4: #8 of 14

Klee Minty problemet 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: x 1 og w 1 byttet rolle bare endringer i de to kolonnene for x 1 og w 1 og disse to kolonnene er multiplisert med -1, bortsett fra i pivoteringslikningen; der er det ingen fortegnsendring LP. Leksjon 4: #9 of 14

Klee Minty problemet 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 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 LP. Leksjon 4: #10 of 14

Klee Minty problemet 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 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. LP. Leksjon 4: #11 of 14

Klee Minty problemet 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. LP. Leksjon 4: #12 of 14

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). LP. Leksjon 4: #13 of 14

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. Del3avVanderbei s bok omhandler slike metoder, men det er ikke pensum i dette kurset. LP. Leksjon 4: #14 of 14