lineær optimering - universitetet i bergen · 2007-03-28 · • lineær programmering (lp) –...
TRANSCRIPT
Lineær optimering
27. mars 2007
Endre Bjørndal
27/3-2007 Lineær optimering - Endre Bjørndal 2
Plan for kurset
Løsning av LP-problemer vha Excel Solver
Flere anvendelser (eksempel 4-6)
1245-1400
Dualitet
Spesialtilfeller
Oppsummering
1415-1500
Pause1400-1415
Lunch1200-1245
Grafisk følsomhetsanalyse forts.
Diettproblemet (eksempel 2)
Tilordningsproblemet (eksempel 3)
1115-1200
Pause1100-1115
Introduksjon
Produktmiksproblemet (eksempel 1)
Grafisk løsning og følsomhetsanalyse av LP-problemer
1000-1100
27/3-2007 Lineær optimering - Endre Bjørndal 3
Introduksjon
• Hva er lineær optimering?– Optimeringsproblemer der både
målfunksjonen og sidebetingelsene består av lineære uttrykk
• Lineær programmering (LP)– Verktøy utviklet for planlegging av militære
operasjoner under 2. verdenskrig
– Program = plan for iverksetting av ulike aktiviteter
27/3-2007 Lineær optimering - Endre Bjørndal 4
Eksempler på anvendelser(LP+)
• Bestemmelse av optimal produktmiks• Utforming av kostnadseffektive dietter (oppskrifter)• Planlegging av markedsføring (valg mellom ulike
virkemidler)• Planlegging av raffinerivirksomhet• Optimal distribusjon av varer• Lokalisering av produksjons- og lagerfasiliteter• Optimal allokering av kapital mellom ulike
prosjekter/investeringsalternativer• Skjemaplanlegging av personell/utstyr (f.eks. fly- og
togselskaper)• Planlegging av militære operasjoner• Og mange flere...
27/3-2007 Lineær optimering - Endre Bjørndal 5
Løsningsmetoder
• Simplex-metoden– Leter blant ekstrempunktene i mulighetsområdet– George Dantzig (1947)
• Indrepunktsmetoder– Karmarkar (1984)
• Referanse– http://en.wikipedia.org/wiki/Linear_programming
27/3-2007 Lineær optimering - Endre Bjørndal 6
Programvare
– Excel Solver• www.solver.com
– AMPL• www.ampl.com
– GAMS• www.gams.com
– Og mange flere...• http://www-fp.mcs.anl.gov/otc/Guide/SoftwareGuide/index.html
27/3-2007 Lineær optimering - Endre Bjørndal 7
Litteratur
• Anderson, Sweeney & Williams (2005): An Introduction to Management Science, kap. 2-6
• Hillier & Hillier (2003): Introduction to Management Science, kap. 2-5
• Taylor (2007): Introduction to ManagementScience, kap. 2-4
• Jörnsten, Storøy & Wallace (1999): Operasjonsanalyse, kap. 5
• Ragsdale (2007): Managerial DecisionModeling, kap. 3-4
27/3-2007 Lineær optimering - Endre Bjørndal 8
Matematikk S1
• Omfang– 140 årstimer for hele S1
• Kompetansemål – lineær optimering:– Mål for opplæringen er at eleven skal kunne
• modellere praktiske optimeringsproblemer i økonomi ved hjelp av lineære likninger og ulikheter
• gjøre rede for den geometriske tolkningen av det lineære optimeringsproblemet i to variabler
• løse lineære optimeringsproblemer grafisk, ved regning og med digitale hjelpemidler
Sannsynlighet og statistikkFunksjonerAlgebraMatematikk S 2
Lineær optimering SannsynlighetFunksjonerAlgebraMatematikk S 1
HovedområderProgramfag
27/3-2007 Lineær optimering - Endre Bjørndal 9
Eksempel 1 -produksjonsplanlegging
• Sykkelprodusenten AS produserer to sykkelmodeller:Cross Racer
Salgspris 3500 4500Variable kostnader 2900 4000Dekningsbidrag per stk 600 500
• Produksjonen er begrenset av kapasiteten i to avdelingerTimeforbruk sveiseavdeling 2 t/stk 4 t/stkTimeforbruk lakkeringsavdeling 3 t/stk 2 t/stk
• Kapasiteten per måned er 800 timer i sveiseavdelingen og 600 timer i lakkeringsavdelingen
• Etterspørselsbegrensninger gjør at man maksimalt kan selge 160 crossykler og 180 racersykler per måned
27/3-2007 Lineær optimering - Endre Bjørndal 10
En mulig snarvei (?) til løsningen
• Problemstilling: Hvor mye skal vi produsere av de to produktene for at det totale dekningsbidraget skal bli størst mulig?
• Hva om vi velger det produktet som gir høyest bidrag per enhet knapp ressurs?
Cross RacerDB per time, sveising 300 kr/t 125 kr/tDB per time, lakkering 200 kr/t 250 kr/t
• Framgangsmåten gir mao ikke entydig svar når vi har mer enn én knapp ressurs!
27/3-2007 Lineær optimering - Endre Bjørndal 11
Formulering – verbal form
Gjennomgangseksemplet:• Beslutningsvariabler:
– produksjonskvanta for de to sykkeltypene
• Formulering:
Maksimer totalt dekningsbidraggitt at timeforbruk sveising ≤ 800 timer
timeforbruk lakkering ≤ 600 timerproduksjon av crossykler ≤ 160 stkproduksjon av racersykler ≤ 180 stk
27/3-2007 Lineær optimering - Endre Bjørndal 12
Formulering – matematisk form
• Beslutningsvariabler:
C = antall crossyklerR = antall racersykler
• Formulering:
Maksimer 600C + 500R
gitt at 2C + 4R ≤ 800 (sveising)3C +2R ≤ 600 (lakkering)C ≤ 160 (salg cross)
R ≤ 180 (salg racer)C ≥ 0 R ≥ 0 (ikke-negativitet)
sidebetingelser
målfunksjon
27/3-2007 Lineær optimering - Endre Bjørndal 13
Grafisk løsning - framgangsmåte
1. Tegn isokvanter (kapasitetslinjer) for alle sidebetingelsene
2. Marker mulighetsområdet, dvs de løsninger som oppfyller allesidebetingelsene
3. Finn det beste (hjørne)punktet i mulighetsområdet, det vil si det punktet der isoprofittlinjen tangerer mulighetsområdet
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Isokvantlinje for sveiseavdelingen
C = 0
R = 0
2C + 4R > 800 (ikke tillatte løsninger)
2C + 4R < 800 (tillatte løsninger)
2C + 4R = 800
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Grafisk løsning - eksemplet
S
L
SC
SR
DB = 50000
DB = 175000
DB = ?
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
27/3-2007 Lineær optimering - Endre Bjørndal 16
Excel-rapport(Answer Report)
27/3-2007 Lineær optimering - Endre Bjørndal 17
Excel-rapport(Sensitivity Report)
27/3-2007 Lineær optimering - Endre Bjørndal 18
Tolkning av sensitivitetsrapporten
• Hvor følsom er den optimale løsningen for usikkerhet/unøyaktighet i data?
• Hva skjer med løsningen når vi endrer– målfunksjonskoeffisientene?
• dekningsbidrag per stk for produktene
– høyresidene i sidebetingelsene?• antall tilgjengelige timer (kapasitet) i avdelingene
• etterspørselstallene
• Endrer en parameter av gangen, holder alt annet konstant!
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Følsomhetsanalyse målfunksjonskoeffisienter
DBC = 1500
Helning = -3
DBC = 125
Helning = -1/4
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
(160;60)
Helning = - DBC / DBR = -1,2
-1,5
(100;150)-0,5
(40;180)
Anima-LP
27/3-2007 Lineær optimering - Endre Bjørndal 20
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400 450 500C
R
Følsomhetsanalyse høyresider(øker sveisekapasiteten med 40 timer)
(90;165)
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400 450 500C
R
S
L
SC
SR
(100;150)
27/3-2007 Lineær optimering - Endre Bjørndal 21
Skyggepriser
• Definisjon: skyggepris = endring i målfunksjonsverdien dersom høyresiden (kapasiteten) for en sidebetingelse økes med 1 enhet (1 time)
• Eksempel:
• Anvendelser av skyggepris– Hvor mye kan vi betale for å øke kapasiteten?– Hva koster det å bruke kapasiteten til noe annet enn produksjon
av Cross og Racer?
kr/time timer
135000 kr136500 kr
endringkapasitets
DB i endringsveising Skyggepris
53740
,=−
=
=
27/3-2007 Lineær optimering - Endre Bjørndal 22
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400 450 500C
R
Følsomhetsanalyse høyresider(øker sveisekapasiteten enda mer...)
(80;180)
+200 timer
+80 timer
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400 450 500C
R
S
L
SC
SR
(100;150)
27/3-2007 Lineær optimering - Endre Bjørndal 23
Slakk
• Definisjon: slakk = ubrukt kapasitet for en sidebetingelse i den optimale planen
• Eksempel 1 m/kapasitet = 200 timer– Sveiseavdelingen bruker 880 timer (80 stk * 2
timer + 180 stk * 4 timer)– Har 1000 timer tilgjengelig– Slakk = 1000 timer – 880 timer = 120 timer
• Sidebetingelser med slakk lik null kalles ofte for bindende sidebetingelser
27/3-2007 Lineær optimering - Endre Bjørndal 24
Sammenheng mellom skyggepris og slakk
• I en optimal løsning til et LP-problem kan vi ikke både ha positiv skyggepris og positiv slakk for samme ressurs!– Er ikke villig til å betale for å få mer av en ressurs som
som det ikke er knapphet på (slakk > 0)– Dersom vi er villige til å betale for å få mer av en
ressurs (skyggepris > 0), kan vi ikke samtidig ha slakk av ressursen
• Eksempel 1:Kapasitet sveising 800 t 880 t 1000 tDB kr 135 000 kr 138 000 kr 138 000Skyggepris 37,5 kr/t 37,5 kr/t 0 kr/tSlakk 0 t 0 t 120 t
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400 450 500C
R
Følsomhetsanalyse høyresider(redusert etterspørsel etter crossykler med 30 stk)
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400 450 500C
R
S
L
SC
SR
(100;150)
27/3-2007 Lineær optimering - Endre Bjørndal 26
Sensitivivitetsrapport -beslutningsvariabler
Optimale verdier for beslutningsvariablene
(C og R)
Hvor mye måmålfunksjonskoeffisienten
(DBC, DBR) reduseres for at en ulønnsom
beslutningsvariabel (produkt) skal bli lønnsom?
Verdier for målfunksjons-koeffisientene (DBC, DBR)
Hvor mye kan målfunksjonskoeffisientene (DBC, DBR) endres før vi får en annen optimal løsning? Kan ogsåskrives som 250 ≤ DBC ≤ 750 og 400 ≤ DBR ≤ 1200.
Sensitivitetsrapport -sidebetingelser
Optimale verdier for venstresider i
sidebetingelseneSkyggepriser for sidebetingelser
Verdier for høyresider (kapasiteteter) i
sidebetingelsene
Hvor mye kan høyresidene (kapasitetene) endres før skyggeprisene endres? Angir mao gyldighetsområde for
skyggeprisene!
27/3-2007 Lineær optimering - Endre Bjørndal 28
SolverTable – verktøy for utvidet følsomhetsanalyse
Kap. sveising Tot. DB Cross Racer100 30000 50 0200 60000 100 0300 90000 150 0400 106000 160 20500 118500 160 45600 127500 150 75700 131250 125 112,5800 135000 100 150900 138000 80 1801000 138000 80 180
http://www.kelley.iu.edu/albrightbooks/#Add-Ins
27/3-2007 Lineær optimering - Endre Bjørndal 29
Bruk av skyggepriser
• Lønnsomhetsvurdering av kapasitetsutvidelser– Kan øke kapasiteten i sveiseavdelingen til en kostnad
på kr 20 per time (utover innkalkulert lønnskostnad)
– Lønnsomt å øke med 50 timer? 100 timer?
• Lønnsomhetsvurdering knyttet til alternativ bruk av kapasiteten– Produksjon av alternativ sykkelmodell ”Klassisk”
– Gir kr 700 per stk i dekningsbidrag
– Krever 2 timer sveising og 4 timer lakkering per stk
– Lønnsomt?
27/3-2007 Lineær optimering - Endre Bjørndal 30
Utvidet LP-problem med tre produkter
• Beslutningsvariabler:
C = antall crossyklerR = antall racersyklerK = antall klassiske sykler
• Formulering:
Maksimer 600C + 500R + 700K
gitt at 2C + 4R + 2K ≤ 800 (sveising)3C +2R + 4K ≤ 600 (lakkering)
C ≥ 0 R ≥ 0 K ≥ 0 (ikke-negativitet)
27/3-2007 Lineær optimering - Endre Bjørndal 31
Excel-rapport for utvidet LP-problem Adjustable Cells
Final Reduced Objective Allowable AllowableCell Name Value Cost Coefficient Increase Decrease
$B$5 Produksjon Cross 100 0 600 150 50$C$5 Produksjon Racer 150 0 500 300 100$D$5 Produksjon Klassisk 0 -75 700 75 1E+30
ConstraintsFinal Shadow Constraint Allowable Allowable
Cell Name Value Price R.H. Side Increase Decrease$E$8 Sveising Venstreside 800 37,5 800 400 400$E$9 Lakkering Venstreside 600 175 600 600 200
Dekningsbidraget til ”Klassisk” måøkes med kr 75 for at denne modellen skal bli lønnsom!
Når ”Klassisk” blir lønnsom, vil den optimale produksjonsplanen
endres!
En reduksjon i dekningsbidraget for ”Klassisk” spiller ingen rolle, denne modellen er ulønnsom
uansett!
27/3-2007 Lineær optimering - Endre Bjørndal 32
Excel Solver
=SUMPRODUCT(B2:C2;$B$5:$C$5)
27/3-2007 Lineær optimering - Endre Bjørndal 33
Valg i Solver
Simplex-metoden for LP-problemer er raskere (og
mer pålitelig?) enn de andre metodene som brukes av Solver, så
denne bør krysses av hvis mulig!
Lav verdi gjør at Solverregner mer nøyaktig. Det
kan ta lenger tid!!
Angir hvor mange sekunder / iterasjoner
Solver vil bruke før programmet gir opp å
finne en optimal løsning.
Angir at alle beslutnings-variablene skal være ikke-
negative!
27/3-2007 Lineær optimering - Endre Bjørndal 34
Eksempel 2 – et diettproblem
• En vegetarianer vil dekke sitt vitaminbehov per uke ved å innta en viss mengde av en bestemt grønnsak og en viss mengde av en bestemt type saft
• Innhold og minimumsinntak for noen vitaminer:
• Grønnsaken koster 20 kr per kg, mens saften koster 30 kr per kg
• Hvordan ser en optimal diett ut?
0,1 g
0,1 g
0,2 g
0,15 g
0,05 g
Saft(per 100 g vare)
60 g
10 g
70 g
50 g
40 g
Minimumsinntak per uke
0,06 gVitamin E
0,1 gVitamin D
0,04 gVitamin C
0,2 gVitamin B
0,1 gVitamin A
Grønnsak(per 100 g vare)
27/3-2007 Lineær optimering - Endre Bjørndal 35
0
400
800
1200
1600
2000
0 400 800 1200 1600 2000G
S
Grafisk løsning – eksempel 2
AKostnad = 3000
B CD
E
(143;514)
27/3-2007 Lineær optimering - Endre Bjørndal 36
Eksempel 3 – et tilordningsproblem
• Et antall personer skal utføre et antall arbeidsoppgaver• Hver person skal utføre en oppgave• Tidsforbruk for ulike kombinasjoner av person/oppgave:
• Finn en optimal plan for utføring av alle arbeidsoppgavene!• Problemet er i utgangspunktet vanskelig, siden det finnes 10! =
3.628.800 mulige måter å tilordne personer til jobber på
1 2 3 4 5 6 7 8 9 10Anne 13 21 11 8 5 18 22 9 2 9Berit 4 20 13 11 5 18 9 3 15 13Christian 16 4 14 5 9 9 16 6 8 6Dina 13 21 19 4 12 19 13 9 3 17Erik 6 20 17 4 20 20 11 7 7 19Frank 14 18 22 3 3 11 7 13 20 17Gustav 18 8 11 15 12 6 20 3 17 11Heidi 3 5 3 2 16 4 12 17 11 13Irmelin 11 5 16 3 14 17 2 11 18 16Jon 7 9 22 16 14 17 12 2 13 7
27/3-2007 Lineær optimering - Endre Bjørndal 37
Matematisk formulering
∑ ∑= =J,...,B,Ai ,...,,j
ijij xt1021
Minimer
j,ix
J,...,B,Aix
,...,,jx
ij
,...,,jij
J,...,B,Aiij
alle for
for
forat gitt
0
1
10211
1021
≥
==
==
∑
∑
=
=
27/3-2007 Lineær optimering - Endre Bjørndal 38
Excel-modell
27/3-2007 Lineær optimering - Endre Bjørndal 39
Mulige tilleggskrav i tilordningsproblemet
1) Oppgave 8 og 9 henger nært sammen. Anne og Berit kan ikke samarbeide med hverandre.
2) Dina er allergiker, og kan hverken jobbe med oppgave 3, 4 eller 5.
3) Erik og Frank er spesialister på oppgave 4, 5 og 6, og bør benyttes her.
4) Oppgave 1, 2 og 3 er relatert til hverandre. Dersom Gustav og/eller Heidi blir satt til åutføre en av disse, trenger de veiledning av Irmelin eller Jon, som i tilfelle også må jobbe med en av disse oppgavene.
27/3-2007 Lineær optimering - Endre Bjørndal 40
Eksempel 4 – et transportproblem
• En bryggeribedrift leverer til fem ulike byer (A-E)
• Produksjonen skjer i by A, C og E
Produksjons-By Etterspørsel kapasitet
(1000 stk) (1000 stk)A 10.000 7.000B 1.800C 5.500 7.000D 1.500E 2.200 7.000
Totalt 21.000 21.000
27/3-2007 Lineær optimering - Endre Bjørndal 41
A B C D EA 0,00 1,40 2,35 2,20 1,05B 1,40 0,00 0,95 2,00 2,45C 2,35 0,95 0,00 1,05 1,60D 2,20 2,00 1,05 0,00 1,15E 1,05 2,45 1,60 1,15 0,00
Transportkostnader mellom byene
• Kostnad per transportert enhet
27/3-2007 Lineær optimering - Endre Bjørndal 42
Mulige transportruter
• Hvor mye bør transporteres langs de ulike rutene, gitt at vi ønsker så lav total transportkostnad som mulig?
A
C
E
A
B
C
D
E
Fabrikker
Markeder
7.000
7.000
7.000
10.000
1.800
5.500
1.500
2.200
27/3-2007 Lineær optimering - Endre Bjørndal 43
7000
7000
7000
≤++++
≤++++
≤++++
EEEDECEBEA
CECDCCCBCA
AEADACABAA
xxxxx
xxxxx
xxxxxat gitt produksjons-kapasiteter overholdes
total transportkostnad minimeres
EDECEBEA
CECDCBCA
AEADACAB
x,x,x,x,
x,x,x,x,
x,x,x,x,C
151601452051
601051950352
051202352401
++++
++++
+++= Minimer
Transportproblemet på matematisk form
27/3-2007 Lineær optimering - Endre Bjørndal 44
etterspørsel i samtlige markeder dekkes
2200
1500
5500
1800
10000
≥++
≥++
≥++
≥++
≥++
EECEAE
EDCDAD
ECCCAC
EBCBAB
EACAAA
xxx
xxx
xxx
xxx
xxx
E,D,C,B,AjE,C,Aixij ==≥ og alle for0
Transportproblemet på matematisk form
27/3-2007 Lineær optimering - Endre Bjørndal 45
Excel-modell
=SUMPRODUCT(B2:F6;B11:F15)
27/3-2007 Lineær optimering - Endre Bjørndal 46
Omlastingsterminaler
• Hva om vi installerer en omlastingsterminal?
• Transportkostnader til/fra terminalen:
10,60,40,50,7Kostnad
EDCBATil/fra by:
27/3-2007 Lineær optimering - Endre Bjørndal 47
Nettverk med omlastingsterminal
A
C
E
A
B
C
D
E
Fabrikker
Markeder
7.000
7.000
7.000
10.000
1.800
5.500
1.500
2.200
T
27/3-2007 Lineær optimering - Endre Bjørndal 48
Eksempel 5 – valg av investeringsportefølje
• Ønsker å sette sammen porteføljen slik at total forventet avkastning blir størst mulig
• Tilleggskrav– Industriaksjer og bankaksjer må ikke utgjøre mer enn 40% til sammen– Investeringen i statsobligasjoner må utgjøre minst 50% av den samlede
investeringen i industri- og bankaksjer
30%10%12% p.a.Industriaksjer
100%15%6% p.a.Statsobligasjoner
35%20%8% p.a.Grunnfondsbevis
20%5%10% p.a.Bankaksjer
Maksimums-andel i
portefølje
Minimums-andel i
portefølje
Forventet avkastning
Verdipapir
27/3-2007 Lineær optimering - Endre Bjørndal 49
Matematisk formuleringMaksimer
0,12I + 0,1B +0,08G+ 0,06S
gitt at
I ≥ 0,1 (min. industri)
B ≥ 0,05 (min. bank)
G ≥ 0,2 (min. grunnfond)
S ≥ 0,15 (min. stat)
I ≤ 0,3 (maks. industri)
B ≤ 0,2 (maks. bank)
G ≤ 0,35 (maks. grunnfond)
S ≤ 1 (maks. stat)I + B + G + S = 1 (sum vekter)
I + B ≤ 0,4 (industri og bank)
-0,5I -0,5B + S ≥ 0 (stat, ind. og bank)
I ≥ 0 B ≥ 0 G ≥ 0 S ≥ 0
27/3-2007 Lineær optimering - Endre Bjørndal 50
Excel-modell
27/3-2007 Lineær optimering - Endre Bjørndal 51
Eksempel 6 - vaktliste
• En sykehusavdeling har følgende behov for sykepleiere:
Periode Tidsrom Behov1 0000-0600 252 0600-0800 603 0800-1200 504 1200-1600 455 1600-1800 356 1800-2000 557 2000-2400 40
27/3-2007 Lineær optimering - Endre Bjørndal 52
Eksempel 6 - vaktliste
• Følgende skiftordning skal benyttes:
• Hvordan sette opp en vaktliste som dekker behovet, samtidig som den gir lavest mulig lønnskostnad?
Skift Tidsrom Kostnad1 0200-1000 20002 0600-1400 15003 1000-1800 15004 1400-2200 15005 1800-0200 20006 2200-0600 2000
27/3-2007 Lineær optimering - Endre Bjørndal 53
Matematisk formulering
610
40
55
35
45
50
60
25
200020001500150015002000
654
54
43
432
321
21
651
654321
,..,ix
xxx
xx
xx
xxx
xxx
xx
xxx
xxxxxx
i =≥≥+++≥++≥++≥+++≥++≥+≥++
+++++Minimer
gitt at
61skift på ansatte antall ,...,ixi ==
27/3-2007 Lineær optimering - Endre Bjørndal 54
Excel-modell
27/3-2007 Lineær optimering - Endre Bjørndal 55
Primal- og dualproblemet(eksempel 1)
P) Hvordan finne en optimal produksjonsplan ved fortsatt drift (primalproblemet)?– Maksimerer totalt dekningsbidrag– Må ta hensyn til begrenset tilgang på arbeidstimer i
sveise- og lakkeringsavdelingene (ser for enkelhets skyld bort fra salgsbegrensningene)
D) Hvordan fastsette priser på ressursene ved salg av bedriften (dualproblemet)?– Kjøperen vil minimere total verdi av ressursene– Selgeren ønsker at ressursene skal ha minst like høy
verdi ved salg som ved fortsatt drift
27/3-2007 Lineær optimering - Endre Bjørndal 56
Matematisk formulering av primalproblemet - sykkeleksemplet
• Beslutningsvariabler:
C = antall crossyklerR = antall racersykler
• Formulering:
Maksimer 600C + 500R
gitt at 2C + 4R ≤ 800 (sveising)3C + 2R ≤ 600 (lakkering)
C ≥ 0 R ≥ 0 (ikke-negativitet)
27/3-2007 Lineær optimering - Endre Bjørndal 57
Matematisk formulering av dualproblemet - sykkeleksemplet
• Beslutningsvariabler:
US = pris per time i sveiseavdelingenUL = pris per time i lakkeringsavdelingen
• Formulering:
Minimer 800US + 600UL
gitt at 2US + 3UL ≥ 600 (crossykler)4US + 2UL ≥ 500 (racersykler)
US ≥ 0 UL ≥ 0 (ikke-negativitet)
total verdi av ressursene
verdi ved fortsatt drift (DB/stk)
verdi ved salg
27/3-2007 Lineær optimering - Endre Bjørndal 58
Grafisk løsning av dualproblemet i sykkeleksemplet
0
50
100
150
200
250
300
0 50 100 150 200 250 300US
UL
Cross
Racer
Verdi = 180000
(37,5;175)
Verdi = 135000
Skyggepriser for hhv.
sveising og lakkering!
Samme optimale verdi som i
primal-problemet!
27/3-2007 Lineær optimering - Endre Bjørndal 59
Generelle regler for formulering av dualproblemet
• Beslutningsvariabler og sidebetingelser– Hver beslutningsvariabel (kolonne) i dualen tilsvarer en
sidebetingelse (rekke) i primalen– Hver sidebetingelse (rekke) i dualen tilsvarer en
beslutningsvariabel (kolonne) i primalen
• Målfunksjonskoeffisienter og høyresider– Målfunksjonskoeffisientene i dualen er lik de tilsvarende
høyresidene i primalen– Høyresidene i dualen er lik de tilsvarende
målfunksjonskoeffisientene i primalen
• Når primalen er et maksimeringsproblem, gjelder følgende– For en ikke-negativ beslutningsvariabel i primalproblemet, vil den
tilsvarende sidebetingelsen i dualproblemet være av typen ”≥”– For en sidebetingelsen av typen ”≤” vil den tilsvarende
beslutningsvariabelen i dualproblemet være ikke-negativ
27/3-2007 Lineær optimering - Endre Bjørndal 60
Spesialtilfeller av LP-problemerLP-problem
Problemet har tillatt løsning
Problemet er ubegrenset
Problemet har optimal løsning
Entydigoptimum
Uendelig mange optima
Problemet har ikke tillatt løsning
27/3-2007 Lineær optimering - Endre Bjørndal 61
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Ingen tillatt løsning - eksempel
• Minimumskrav til levering:C ≥ 160R ≥ 180
• Hva blir mulighets-området nå?
S
L
SC
SR
27/3-2007 Lineær optimering - Endre Bjørndal 62
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Ubegrenset løsning - eksempel
• ”Glemmer” å ta med noen side-betingelser
• Mulighets-området blir større enn det skulle vært
S
L
SC
SR
DB = 50000
DB = 175000
27/3-2007 Lineær optimering - Endre Bjørndal 63
Primal og dual – generelle sammenhenger
• Hvis primalen ikke har tillatt løsning, er dualen ubegrenset
• Hvis primalen er ubegrenset, har ikke dualen tillatt løsning
• Altså har dualen en optimal løsning hvis, og bare hvis, primalen har det– I så fall vil målfunksjonsverdiene vil være like!
Maksimer x + y
gitt at x - 2y ≤ 2
-x + y ≤ 3
x, y ≥ 0
Minimer 2u + 3v
gitt at u - v ≥ 1
-2u + v ≥ 1
u, v ≥ 0
27/3-2007 Lineær optimering - Endre Bjørndal 64
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Flere optima - eksempel
Helning =
- DBC / DBR = -1,5
S
L
SC
SR
• Endrer dekningsbidrag:– DBC = 750 (600)– DBR = 500 (500)
27/3-2007 Lineær optimering - Endre Bjørndal 65
Degenererte løsninger og multiple optima
• Vi sier at løsningen til et LP-problem er degenerert når– En eller flere sidebetingelser har både slakk = 0 og skyggepris = 0,
og/eller– En eller flere beslutningsvariabler har både optimal verdi = 0 og
redusert kost = 0• Dersom vi ser at løsningen er degenerert, kan det bety at det
eksisterer multiple optima, men det trenger ikke nødvendigvis være tilfelle
Adjustable CellsFinal Reduced Objective Allowable Allowable
Cell Name Value Cost Coefficient Increase Decrease$B$5 Produksjon Cross 160 0 750 1E+30 0$C$5 Produksjon Racer 60 0 500 0 500
ConstraintsFinal Shadow Constraint Allowable Allowable
Cell Name Value Price R.H. Side Increase Decrease Slakk$D$8 Sveising Venstreside 560 0 800 1E+30 240 240$D$9 Lakkering Venstreside 600 250 600 120 120 0$D$10 Salg av crossykler Venstreside 160 0 160 40 60 0$D$11 Salg av racersykler Venstreside 60 0 180 1E+30 120 120
27/3-2007 Lineær optimering - Endre Bjørndal 66
0
50
100
150
200
250
300
350
400
0 50 100 150 200 250 300 350 400C
R
Degenerert løsning - eksempel
• Endrer salgs-begrens-ningen for Racer:– R ≤ 150
• Problemet har fremdeles et unikt optimum S
L
SC
SR
Helning = - DBC / DBR
27/3-2007 Lineær optimering - Endre Bjørndal 67
SensitivitetsrapportAdjustable Cells
Final Reduced Objective Allowable AllowableCell Name Value Cost Coefficient Increase Decrease
$B$5 Produksjon Cross 100 0 600 150 350$C$5 Produksjon Racer 150 0 500 700 100
ConstraintsFinal Shadow Constraint Allowable Allowable
Cell Name Value Price R.H. Side Increase Decrease Slakk$D$8 Sveising Venstreside 800 37,5 800 0 240 0$D$9 Lakkering Venstreside 600 175 600 120 0 0$D$10 Salg av crossykler Venstreside 100 0 160 1E+30 60 60$D$11 Salg av racersykler Venstreside 150 0 150 1E+30 0 0
• Tillatt reduksjon for DBC er 350 (som før)• Sjekk verdien for tillatt reduksjon ved å ta
utgangspunkt i figuren på forrige side• Hva legger du merke til?
27/3-2007 Lineær optimering - Endre Bjørndal 68
Advarsel!
For et LP-problem med degenerert løsning gjelder følgende:
• Problemet kan ha flere optimale løsninger• Problemet kan ha flere sett med
skyggepriser• Tillatt økning/reduksjon for
målfunksjonskoeffisienter og høyresider kan være (betydelig) større enn det som oppgis i sensitivitetsrapporten