linjärprogramming · 2015. 2. 9. · formulera lp problem på standardform • alice ska köpa...

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

Upload: others

Post on 29-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

LinjärprogrammingEG2205 Föreläsning 7, vårterminen 2015

Mikael Amelin

1

Page 2: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Kursmål

Formulera korttidsplaneringsproblem för vatten- och värme-kraftsystem.

2

Page 3: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Tillämpad matematisk programming

• Korttidsplanering av vatten- och värmekraftsystem är en tillämpning av matematisk programmering (optime-ringslära).

• I den här kursen lär vi ut hur man formulerar optimerings-problem, men inte hur man löser dem.

Lösningsmetoder lärs ut av Matematikinstitutionen, t.ex.

- SF1811 Optimeringslära, 6 hp

- SF2812 Tillämpad linjär optimering, 7,5 hp

- SF2822 Tillämpad ickelinjär optimering, 7,5 hp

• För att formulera optimeringsproblem behöver man vara bekant med grundläggande koncept inom matematisk programmering.

3

Page 4: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Optimering

• Optimeringslära (kallas också matematisk programmering) är en gren av tillämpad matematik.

• Generellt exempel:

minimera f(x)

då x X,

där

x = vektor av optimeringsvariabler,

X = mängd av tillåtna lösningar.

4

Page 5: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Tillåtna lösningar

Mängden av tillåtna lösningar definieras med olika matema-tiska uttryck.

• Bivillkor (definierar samband mellan optimeringsvariabler)

Exempel: g(x) b.

• Variabelgränser

Exempel:

x heltal.

x x x,

5

Page 6: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Minimering eller maximering

Observera att man alltid kan växla mellan minimerings- och maximeringsproblem, eftersom

minimera f(x) maximera –f(x)

Exempel:

minimera x maximera –x

då 0 x 10. då 0 x 10.

6

Page 7: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Linjärprogrammering (LP)

• Klass av optimeringsproblem med linjär målfunktion och linjära bivillkor.

• Standardform:

minimera cTx

då Ax = b,

0 x.

• Man kan relativt snabbt lösa även stora LP problem med fler än 100 000 variabler!

• Kommersiell programvara finns tillgänglig

- GAMS, Matlab, Excel…

7

Page 8: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.1

Formulera LP problem på standardform

• Alice ska köpa något till hennes mammas fest.

• 2 liter frukt behövs för att fylla fruktskålen.

• Alices mamma vill att var och en av de fem gästerna ska få minst två var av det som Alice köper, d.v.s. Alice behöver köpa minst 10 saker.

• Alice får 100 kr och kan behålla växeln.

• Ett päron kostar 3 kr, varje päron har en volym på 1/6 liter.

• Ett äpple kostar 5 kr, varje päron har en volym på 0,3 liter.

8

Page 9: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.1

LP-formulering

• Inför

x1 = antal päron,

x2 = antal äpplen.

• Formulera optimeringsproblemet:

maximera 100 – 3x1 – 5x2 {vinst}

då {volymbivillkor}

x1 + x2 10, {kvantitetsbivillkor}

x1 0, x2 0. {variabelgränser}

16---x1 0,3x2 2,+

9

Page 10: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.1

Minimering

• Ett LP-problem på standardform formuleras som ett minimeringsproblem.

• Maximera vinst Minimera kostnad

maximera 100 – 3x1 – 5x2 {vinst}

minimera 3x1 + 5x2 {kostnad}

• Observera att den konstanta termen i målfunktionen inte har någon inverkan på lösningen, eftersom den inte påverkas av vilka värden vi väljer på optimeringsvariablerna!

• Inför

z = målfunktion.

10

Page 11: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.1

Slackvariabler

• Ett LP-problem på standardform formuleras med likhetsbi-villkor.

• Inför slackvariabler:

x3 = extra volym,

x4 = extra kvantitet.

• Formulera om bivillkoren:

{volymbivillkor}

x1 + x2– x4 = 10, {kvantitetsbivillkor}

• Lägg till variabelgränser:

x1 0, x2 0, x3 0, x4 0. {variabelgränser}

16---x1 0.3x2 x3–+ 2,=

11

Page 12: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.1

LP-formulering på standardsform

min z = 3x1 + 5x2 {kostnad}

då {volymbivillkor}

x1 + x2– x4 = 10, {kvantitetsbivillkor}

x1 0, x2 0, x3 0, x4 0.

{variabelgränser}

16---x1 0.3x2 x3–+ 2,=

12

Page 13: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.1

Optimal lösning

Optimum:

x1 = 7,5

x2 = 2,5

Optimalt värde på målfunk-tionen:

z = 35

13

Page 14: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Extrempunkter

• Hörnen i det tillåtna området kallas extrempunkter.

• Den optimala lösningen till ett LP-problem kan alltid hittas i en av extrempunkterna.

14

Page 15: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Standardform

• Standardformen är användbar för matematisk analys. Dessutom förutsätter vissa lösare att LP-problemet är formulerat på standardform.

• Inom ingenjörskonsten är det viktigare med en tydlig problemformulering, d.v.s. optimeringsproblem ska formu-leras så att det är lätt att känna igen det bakomliggande ingenjörsproblemet.

- Använd tydligare beteckningar än x1, x2, …

- Välj mellan maximering och minimering utifrån vad som är naturligt för ingenjörsproblemet.

- Välj mellan likhets- och olikhetsbivillkor utifrån vad som är naturligt för ingenjörsproblemet.

15

Page 16: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.2

Ingen tillåten lösning

• Alices pappa säger ”Köp inte mer än 1 kg.”

• Ett päron väger 1/6 kg.

• Ett äpple väger 0,3 kg.

Lösning

Lägg till ytterligare ett bivillkor:

{viktbivillkor}16---x1 0,3x2 1.+

16

Page 17: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.2

Optimal lösning

Det finns inga tillåtna lösningar.

(Eng.:infeasible problem).

17

Page 18: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Inga tillåtna lösningar

• Om ett problem saknar tillåten lösning så finns motstridiga bivillkor som inte kan vara uppfyllda samtidigt.

• Korttidsplaneringsproblem ska under normal omständig-heter ha en tillåten lösning!

• Hur hittar man felet?

- Vissa lösare kan ange vilka bivillkor som inte går att uppfylla.

- Lägg till slackvariabler. I exempel A.2 kan vi t.ex. formulera det nya bivillkoret så här i stället:

{viktbivillkor}

x5 0, x6 0.

16---x1 0.3x2 x5 x6–+ 1.+

18

Page 19: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.3

Icke bindande bivillkor

• Det finns bara 13 päron kvar i affären.

Lösning

Lägg till ytterligare ett bivillkor:

x1 13. {päronbegränsning}

19

Page 20: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.3

Optimal lösning

Optimum:

x1 = 7,5

x2 = 2,5

Optimal-värde:

z = 35

Det nya bivill-koret ändrar inte den optimala lösningen!

20

Page 21: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.4

Problem utan ändlig lösning

• Alices mamma säger: ”Du får 1 kr för varje sak du köper i affären.”

Lösning

Ny målfunktion:

max z = x1 + x2 {inkomst}

21

Page 22: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.4

Optimal lösning

Optimum:

x1 = x2 = Optimal-värde:

z =

22

Page 23: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Problem utan ändlig lösning

• Ett problem utan ändlig lösning innebär att det inte finns tillräckligt med bivillkor.

• Korttidsplaneringsproblem ska inte sakna lösning!

• Hur hittar man felet?

- Det troligaste är att några bivillkor saknas eller är felaktigt formulerade!

- Titta på de optimala värdena på variablerna! Är det någon variabel som ligger utanför det intervall man kan förvänta sig?

- Lägg till tillfälliga bivillkor.

23

Page 24: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.5

Ändring i målfunktionen

• Ett päron kostar 4 kr i stället för 3 kr.

Lösning

Ny målfunktion:

min z = 4x1 + 5x2 {kostnad}

24

Page 25: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.5

Optimal lösning

Optimum:

x1 = 7,5

x2 = 2,5

Optimal-värde:

z = 42,5

Samma lösning, men nytt optimal värde på målfunk-tionen!

25

Page 26: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.6

Degenererad lösning

• Ett päron kostar 5 kr i stället för 3 kr.

Lösning

Ny målfunktion:

min z = 5x1 + 5x2 {kostnad}

26

Page 27: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.7

Optimal lösning

Optimum:

x1 [0, 7,5]

x2 = 10 – x1

Optimal-värde:

z = 50

Många lösningar med samma optimal-värde!

27

Page 28: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Degenererade problem

• Ett degenererat problem har ingen unik optimal lösning.

• Många korttidsplaneringsproblem är degenererade!

• Lösningen till ett degenererat problem kan skilja sig från lösare till lösare och kan t.o.m. bero på i vilken ordning man angett variabler och bivillkor!

• För att kontrollera om två lösningar till ett degenererat problem är likvärdiga måste man studera målfunktions-värdet, inte de optimala värdena på optimeringsvariablerna!

28

Page 29: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.7

Flackt optimum

• Jämför lösningen till följande två fall:

- Ett päron kostar 4,90 kr och ett äpple kostar 5 kr.

- Ett päron kostar 5 kr och ett äpple kostar 4,90 kr.

29

Page 30: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.7

Optimal lösning

Optimum:

x1 = 7.5

x2 = 2.5

eller

x1 = 0

x2 = 10

Optimal-värde:

z = 49.25

eller

z = 49

30

Page 31: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Flackt optimum

• Ett flackt optimum innebär att det finns extrempunkter som inte är optimal, men som resulterar i ett målfunktionsvärde som är väldigt nära det optimala värdet.

• Vissa lösare söker inte alltid efter den exakt optimala lösningen, utan nöjer sig med en lösning som är ”tillräckligt bra”.

31

Page 32: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

LP-dualitet

Alla LP problem (primalt problem) har ett motsvarande dualt problem.

Primalt problem Dualt problem

min cTx max bT

då Ax = b, då AT c.

x 0, ( obegränsad)

där

x = primalvariabler,

= dualvariabler.

32

Page 33: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Stark dualitet

Sats:

Om ett primalt problem har en optimal lösning så har även det duala problemet en optimal lösning och de op-timala målfunktionsvärdena är desamma.

• Beviset överlämnas till lämplig matematikkurs…

• Den praktiska nyttan av LP-dualitet är att dualvariablerna (vars värde ändå beräknas då man löser LP-problemet) kan användas för känslighetsanalyser av den optimala lösningen.

33

Page 34: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Marginalvärden

• Högerledet i det primala problemet återfinns som målfunktion i det duala problemet.

• En liten ändring i målfunktionen till det duala problemet ändrar inte lösningen till det duala problemet (jfr exempel A.5)T lätt att beräkna nytt optimalt värde på målfunktionen.

• Tack vare den starka dualiteten så är det nya optimala målfunktionsvärdet för det primala problemet lika med det nya värdet för det duala problemet.

• Vi kan således använda dualvariablerna för att beräkna hur en liten ändring i högerledet på ett LP-problem påverkar det optimala målfunktionsvärdet.

Dualvariablerna kan tolkas som marginalvärdet för högerledet i ett bivillkor, eftersom de anger hur målfunktionen kommer att ändras för en liten ändring i högerledet: z = Tb.

34

Page 35: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.9

Tillämpning av dualvariabler

• Antag att Alice skulle lura sin mamma och endast köpa 1,9 liter frukt. Hur mycket extra skulle hon kunna tjäna på detta bedrägeri?*

* Föreläsaren önskar betona att syftet med detta exempel absolut inte är att uppmuntra ett sådant beteende!

35

Page 36: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.9

Lösning

• Det duala problemet lyder

max 21 + 102

0,31 + 2 5,

1 0, 2 0.

• Att dualvariablerna måste vara icke-negativa beror på att olikhetsbivillkoren i Alices primala problem då det formu-leras utan slackvariabler.

16---1 2 3,+

36

Page 37: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.9

Optimal lösning

Optimum:

1 = 15

2 = 0.5

Optimal-värde:

z = 35

37

Page 38: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.9

Känslighetsanalys

• Om Alice köper 1,9 liter frukt så ändras högerledet till volym-bivillkoret med –0,1.

• Det optimala målfunktionsvärdet ändras då –0,11 = –1,5.

• Detta innebär att Alice sparar in en kostnad på 1,5 kr.

38

Page 39: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Blandad heltalsprogrammering (MILP)

• Klass av optimeringsproblem med linjär målfunktion och linjära bivillkor, där några variabler endast kan anta heltals-värden.

minimera cTx

då Ax = b,

x {0, 1, …}

• Snälla MILP-problem kan lösas relativt fort.

• Besvärliga MILP-problem tar betydligt längre tid att lösa en ett LP-problem av samma storlek! Undvik heltalsvariabler om de inte är nödvändiga!

39

Page 40: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.10

Heltalslösning

• Kunderna kan enbart köpa hela frukter.

Lösning

Lägg till variabelgränser:

x1, x2 heltal.

40

Page 41: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.10

Optimal lösning

Optimum:

x1 = 7

x2 = 3

Optimal-värde:

z = 36

41

Page 42: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Styckvis linjära funktioner

• Ibland behöver man approximera en ickelinjär funktion i ett LP-problem.

• I en styckvis linjär funktion delas variabeln in i olika segment. Det lägsta värdet i varje segment är lika med 0, vilket ger oss att

där xj är värdet i det j:e segmentet.

• Observera att vi inte tillåter vilka kombinationer av xj som helst; vi kan inte börja använda ett segment innan det föregående segmentet är fullt utnyttjat, d.v.s. om xj > 0 så är xj = där är det maximala värdet i segment j – 1.

x xj,j=

xj 1– , xj 1–

42

Page 43: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.10

Mängdrabatt

• De första fem päronen kostar 5 kr/st. För ytterligare päron utöver detta får Alice rabatt och betalar bara 3 kr/st.

43

Page 44: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.10

Lösning

Omformulera problemet med en styckvis linjär funktion och introducera en binär variabel:

min 5x1, 1 + 3x1, 2 + 5x2 {kostnad}

då {volymbivillkor}

x1, 1 + x1, 2 + x2 10, {kvantitetsbivillkor}

x1, 1 5s,

x1, 2 M·s,

x1, 1 0, x1, 2 0, x2 0, s {0, 1}.{variabelgränser}

där M är ett godtyckligt, stort tal.

16---x1 1

16---x1 2 0,3x2 2,+ +

44

Page 45: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.10

Den binära variabelns funktion

• Antag M = 100.

• Det är optimalt att undvika att använda x1, 1 och i stället använda x1, 2 så mycket som möjligt, eftersom kostnaden för x1, 2 är lägre!

• För s = 0 erhålls

x1, 1 5s x1, 1 0 x1, 1 0

x1, 2 M·s x1, 2 0 x1, 2 = 0

• För s = 1 erhålls

x1, 1 5s x1, 1 5 x1, 1 5

x1, 2 M·s x1, 2 100 x1, 2 100

45

Page 46: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.11

Begränsat erbjudande

• Affären erbjuder rabatt (3 kr/st) på upp till fem päron. Köper Alice ytterligare päron får hon betala fullt pris, d.v.s. 5 kr/st.

46

Page 47: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Exempel A.10

Lösning

• Omformulera problemet med en styckvis linjär funktion.

min 3x1, 1 + 5x1, 2 +5x2 {kostnad}

då {volymbivillkor}

x1, 1 + x1, 2 + x2 10, {kvantitetsbivillkor}

x1, 1 5,

x1, 1 0, x1, 2 0, x2 0. {variabelgränser}

• I det här fallet är det fördelaktigt att använda x1, 1 i stället för x1, 2 och därför är det tillräckligt att ange en övre gräns för x1, 1 ingen binär variabel behövs!

16---x1 1

16---x1 2 0,3x2 2,+ +

47

Page 48: Linjärprogramming · 2015. 2. 9. · Formulera LP problem på standardform • Alice ska köpa något till hennes mammas fest. • 2 liter frukt behövs för att fylla fruktskålen

Ickelinjär programmering (NLP)

• Klass av optimeringsproblem där åtminstone ett bivillkor eller målfunktionen är ickelinjär.

• Vissa snälla NLP-problem kan lösas relativt snabbt.

• Andra NLP-problem kan ta lång tid att lösa och det är inte säkert att vi hittar ett globalt optimum. Undvik ickelinjära problem om det inte är nödvändigt!

Globalt minimumLokala minimum

48