Clas Rydergren, ITN
TNK049 Optimeringslära
Föreläsning 1
Kursintroduktion · Ämnesintroduktion
Terminologi · Tillämpningar
Agenda
• Vilka personer medverkar i kursen?
• Kursupplägg
• Lärobok
• Laborationer
• Återkoppling till föregående år
• Kursmål och översikt över kursinnehåll
• Optimering – introduktion (Kap 1.1–1.3)
• Exempel på problemtyper (Kap 1.4)
• Grundläggande begrepp (Kap 1.4)
2
Lärarpersoner i kursen
3
• Clas Rydergren, ITN, Spetsen, plan 8
Examinator, delat kursansvar, föreläsare
• Zhuangwei Liu, ITN, Spetsen, plan 5 Lektioner, delat kursansvar
• Sara Modarres Razavi, Spetsen, plan 6 Laborationer
Clas Rydergren
• Magisterexamen (MSc) i matematik, 1995
• Doktor (PhD) i Optimeringslära, 2001
• Började på ITN/LiU Norrköping, 2002
• Forskning/undervisning
• Koordinerar KTS-programmet, och är ordförande i gruppen
som programplanerar KTS, SL och FTL för IL-nämnden
• Håller kurser i Optimeringslära och trafikmodellering
• Har kört kurser liknande denna sedan 1996 (för I)
• Körde TNK041 Optimeringslära för KTS/ED 2002-2006
• TNK049 Optimeringslära har tidigare körts av Anders
Peterson
4
Kursupplägg
5
• Föreläsningar: 10 st
• Lektioner: 10 st
• Laborationer, 4 st, uppdelade på:
─ 2 st datorlaborationer
─ 2 st miniprojekt
• Litteratur:
─ Textbok: Lundgren m.fl., ”Optimeringslära” (ca 466 kr)
─ Övningsbok: Henningsson m.fl., ”Optimeringslära: övningsbok” (ca 228 kr)
• Examination:
─ TEN1: Skriftlig tentamen (4,5 hp): minst 10 av 21 poäng för godkänt.
─ LAB1: Laborationer (1,5 hp): grupper om högst två studenter
Laborationer
6
• Laborationsmomentet (totalt ca 40 h) ─ omfattar 1,5 hp, vilket ska motsvara en vecka (40 h).
─ är uppdelat på 2 datorlektioner och 2 miniprojekt.
• Datorlaborationer (ca 10 h) ─ övningar som genomförs i datorsal
─ förväntas ta ca 5 h/styck, varav:
─ 3 h är förväntad tid för förberedelse/efterarbete
─ 2 h är schemalagd tid för genomförandet
─ redovisas muntligen på plats för laborationsledaren (datorlektion 2)
─ (Datorlab 1 har enbart en frivillig redovisning.)
• Miniprojekt (ca 30 h) ─ förväntas ta ca 18 h (miniprojekt 1), respektive ca 12 h (miniprojekt 2).
─ har endast 2 h schemalagd handledningstid (för varje projekt)
─ redovisas med skriftliga rapporter (enligt projektanvisningarna)
Återkoppling till föregående år
• Medelbetyg från studenterna: 4.0
• Föreläsare och lärobok fick då goda omdömen.
• Lektionsledare och laborationsassistenter lite varierande…
• Informationsspridningen fungerade bra.
• Tidigare år kursplatsen/It’s learning, i år istället vanligt ”webbsida”
• Open book-tentamen kan upplevas som stressigt.
• Modellering upplevs som svårt.
7
Tentamensupplägg
8
(Gamla upplagan.)
Textboken får användas på tentamen
• Marginalnoteringar, överstrykningar och
understrykningar är okej.
• Omfattande anteckningar/lösblad är ej tillåtet.
• Övningsboken är ej tillåten.
Informationsspridning
9
• På kurshemsidan kommer att finnas
• allmän kursinformation, inkl. undervisningsplan
• föreläsningsbilder.
• instruktioner för datorlektioner och miniprojekt.
• tentamina från de två senaste åren. (Bortse från
uppgifter om heltal från 2011, typiskt 1–2 sista
uppgifterna.)
Kursmål
10
Allmänna:
• Ytterligare träning i matematisk formalism
• Ytterligare träning i analytiskt tänkande
Ämnesspecifika:
• Kännedom om tillämpningar av optimeringsmetodik
• Känna igen optimeringsfrågeställningar
• Kännedom om principerna för formulering av optimeringsmodeller
• Kännedom om grundläggande optimeringsteori
• Kännedom om några viktiga metodprinciper
• Stifta bekantskap med typisk optimeringsprogramvara
11
Översikt över de 10 föreläsningarna
1. Kurs- och ämnesintroduktion (idag).
2. Modellering av linjära problem (LP).
3. Problemtyper. Konvexitet. Inledning till LP-metoder.
4. Grundläggande LP, med simplexmetoden.
5. Mer om simplexmetoden. Känslighetsanalys.
6. Dualitet.
7. Nätverksoptimering.
8. Min kostnads-flödesproblem (nätverkssimplex).
9. Icke-linjär optimering utan bivillkor.
10. Icke-linjär optimering med bivillkor.
Översikt över laborationsmomentet
12
Datorlaborationerna:
1. Introduktion till AMPL (modelleringsspråk).
2. Simplexmetoden på tablåform (hembyggd Matlab-baserad programvara).
Miniprojekten:
1. Modellering av ett större linjärprogrammeringsproblem (med AMPL).
2. Modellering av ett min kostnads-flödesproblem (hembyggd Java-baserad programvara).
Optimal – bästa möjliga
• Optimeringslära – matematik som syftar till att
analysera och finna bästa möjliga.
• Används till att fatta bästa beslut bland olika
alternativ i tekniska och ekonomiska problem.
• Optimeringslära är en gren av den tillämpade
matematiken.
13
Exempel på användningsområden
• Effektiv varudistribution
• Ruttplanering av timmerlastbilar
• Schemaläggning av arbetsscheman
• Design av lastutrymme i bil
• Design av kretskort
• Frekvenstilldelning vid mobiltelefoni
• Styrning av trafiksignaler
14
Varför läsa optimeringslära?
• Optimeringsfrågeställningar dyker upp inom många skilda områden.
• Tillämpningar handlar ofta om att förbättra ting eller processer (snabbare, billigare, effektivare, resurssnålare etc), vilket blir allt viktigare i många sammanhang.
• Utgör ytterligare ett verktyg för att analysera tekniska problem (liksom t ex reglerteknik och statistik).
• Möjligheterna att använda optimeringsmetodik ökar tack vare IT (bättre data, snabbare beräkningar etc).
• Ger bra träning i att systematiskt och strukturerat analysera problemställningar.
15
Optimeringslära som akademiskt ämne
Vetenskap inom tillämpad matematik,
men förekommer också inom:
• Reglerteknik: styrning
• Datavetenskap: algoritm-utveckling
• Ekonomi: operationsanalys
• Logistik: försörjningskedjor
• Geografi: nätverksproblem (GIS)
• Trafikplanering: matematisk modellering
• …
16
Optimeringsmetodik
17
Verkligt problem
Analys och
modellformulering
Matematisk modell
Lös modellen
Resultat
Tolkning och
rimlighetsbedömning
Användning, uppföljning
och analys
Data
Optimeringslära,
logistik, fysik, ekonomi,
etc.
Kunskap
Kunskap
Kunskap
Välj eller konstruera
lämplig
optimeringsmetod
Ej OK!
Formulering av optimeringsmodeller
18
• Fråga: Vad i problemet kan varieras (påverkas, styras, beslutas etc)? Svaret ger modellens (besluts-) variabler, (decision) variables.
• Fråga: Vad är målsättningen och hur beror den av det som kan varieras? Svaret ger målfunktionen, the objective.
• Fråga: Vilka restriktioner begränsar valfriheten i det som kan varieras? Svaret ger bivillkoren, the constraints.
• Notera: Skilj noga på givna förutsättningar och storheter som kan påverkas/varieras.
Typer av optimeringsmodeller
Vilka värden kan variablerna anta?
• Kontinuerliga värden ger kontinuerligt problem
• Endast förutbestämda värden ger diskret problem
• Båda dessa typer ger ett blandat problem
Finns bivillkor?
• Saknas bivillkor fås ett obegränsat problem (unconstrained)
Är målfunktion och bivillkorsfunktionerna linjära?
• Alla funktioner linjära ger linjärt problem
Har variabler och/eller bivillkor någon speciell struktur?
• Till exempel en nätverksstruktur.
Varför skapa matematisk modell?
• Ett bra sätt att systematiskt strukturera och analysera ett verkligt problem.
• Konstruktionen av modellen leder till ökad kunskap om det verkliga problemet.
• En matematisk analys av modellen kan ge ökad kunskap om det verkliga problemet.
• Med modellen kan vi simulera verkligheten och hypotetiska scenarier, t ex experiment som inte låter sig göras i verkligheten pga. kostnad, tid eller risk.
(Motiven gäller även andra former av modeller!)
Potentiella svårigheter med
användning av optimeringsmetodik
• Avgränsning
Vilka omständigheter måste beaktas vid modelleringen och vilka är irrelevanta eller försumbara?
• Validering
Beskriver modellen tillräckligt väl de relevanta aspekterna i det verkliga problemet (i relation till modellens syfte)?
• Datainsamling
Kan modellens parametrar skattas (med tillräcklig noggrannhet)?
• Lösbarhet
Kan modellen behandlas numeriskt (med tillräcklig noggrannhet
och på rimlig tid)?
Exempel på optimeringsmodell
Ett påhittat företag tillverkar lapptäcken och -kuddar. För varje sålt täcke är
vinsten 20 kr och för varje såld kudde 18 kr.
Tillverkningen sker genom momenten tillklippning och sömnad. Ett täcke tar
10 minuter att klippa till, och 12 minuter att sy, medan en kudde tar
7 minuter att klippa till och 16 minuter att sy.
Företaget har arbetskraft för att klara av 60 timmar tillklippning och 90 timmar
sömnad.
Hur ska företaget tillverka för att maximera
sin vinst?
Definiera:
x1 = antal tillverkade täcken
x2 = antal tillverkade kuddar
-100 0 100 200 300 400 500 600-100
0
100
200
300
400
500
600
Matematisk modell
x1
x2
max f(x) = 20 x1 + 18 x2
då 10 x1 + 7 x2 ≤ 3600
12 x1 + 16 x2 ≤ 5400
x1, x2 ≥ 0
Tillklippning
Sömnad
Matematisk modellering
behandlas på Fö2, Le1, samt
datorlektion 1 och miniprojekt 1.
Linjärt problem (linear problem)
x 1
x 2
max f(x) = 2 x1 + x2
då 2 x1 + 2 x2 ≤ 9
x2 ≤ 2
x1, x2 ≥ 0
Diskret problem (integer problem)
x 1
x 2
max f(x) = 2 x1 + x2
då 2 x1 + 2 x2 ≤ 9
x2 ≤ 2
x1, x2 ≥ 0, heltal
Denna modelltyp behandlas
ej i denna kurs! Återkommer
i TNK047 Optimering och
systemanalys.
Icke-linjärt problem (non-linear problem)
x 1
x 2
max f(x) = sin(2x1) + sin(x2) + x1 + x2
då 2 x1 + 2 x2 ≤ 9
x2 ≤ 2
x1, x2 ≥ 0
Grundläggande begrepp
Optimeringsproblem:
eller
Terminologi:
x = variabler (variables)
X = mängden tillåtna lösningar (set of feasible solutions)
f(·) = målfunktion (objective (function))
f(x) = målfunktionsvärde i x (objective value at x)
x* = optimallösning (optimal solution)
f(x*) = optimalt (minimalt/maximalt) målfunktionsvärde; skrivs ofta f*
(optimal (minimum/maximum) objective value)
x*, f(x*) = ett optimum (minimum/maximum) (an optimum)
I engelsk litteratur
skriver man
subject to,
förkortat s.t.
min f(x)
då x X
max f(x)
då x X
Typer av lösningar
min f(x)
då x X
• Om X = , saknas lösning till problemet (problem is infeasible).
• Om f ∞ på X, har problemet obegränsad lösning
(unbounded solution) och f* = ∞.
• Om det finns x(1), x(2) X, där x(1) ≠ x(2), sådana att f(x(1)) = f(x(2)) =
f*, har problemet alternativa optima (alternative optima).
• Om f(x*) < f(x) för alla x X, sådana att x ≠ x*, har problemet
unikt optimum (unique optimum) (i x*).
Vad händer härnäst i kursen?
Föreläsning 2 handlar om modellering (av LP-problem)
• Många upplever detta som ett svårt (det svåraste?) kursmomentet, samtidigt är det också det ”viktigaste” kursmomentet, det som ligger närmast verkligheten.
• Läs gärna igenom kapitel 3 i förväg.
• Modellering återkommer sedan på Le1, datorlab 1 och miniprojekt 1.
Laborationsmomentet (datorlab och miniprojekt)
• Anmälningslistor för laborationsmomentet.
• Instruktionerna för datorlektion 1 finns på kurshemsidan. Det går bra att börja direkt efter föreläsning 2. Programvaran är lätt att ladda ner och installera på den egna datorn.
Kurshemsida: http://www.itn.liu.se/~clryd/KURSER/TNK049/
29
www.liu.se