Något om Linjärprogrammering och Mathematica

Storlek: px
Starta visningen från sidan:

Download "Något om Linjärprogrammering och Mathematica"

Transkript

1 HH/ITE/BN Linjärprogrammering och Mathematica Något om Linjärprogrammering och Mathematica Bertil Nilsson max får 7kor får g får g får kor g då får kor g kor 7 g får 0 g kor 0 g 7 kor får.0. x y x y z x y z y z 0 x y 0 0 z 0 z

2 Linjärprogrammering och Mathematica HH/ITE/BN Förord På följande sidor presenteras en elementär "streetwise guide" till Linjärprogrammering (LP) med flitig användning av Mathematica. Framställningen är fåordig, fri från pedanteri men i någon mening fullständig. Det man väsentligen behöver veta om begrepp, terminologi, beteckningar och teori för att modellera och lösa problem i framtida kurser och yrkesliv som ingenjör, naturvetare eller lärare klarläggs och typiska exempel ges. Inledning och terminologi Dagens samhälle ställer höga krav på effektivitet. Inom näringsliv och industri blir detta speciellt tydligt. Frågor som ''hur utnyttjar vi vår maskinpark mest effektivt?'', ''hur planerar vi våra transporter så att restider och bränsleförbrukning minimeras?'' och ''var bör vi lokalisera nya lagerlokaler?'' är där vanligt förekommande. Modern matematik ger förutsättningar att besvara dessa frågor. Effektiva datorprogram har utvecklats med matematik som bas och tillsammans med allt snabbare och billigare datorer ges idag ovärderligt stöd åt strategi och beslutsfattande. Denna typ av planeringsarbete där man tar hjälp från matematiken benämns operationsanalys. Eftersom det nästan alltid ligger ekonomiska intressen bakom den här typen av verksamhet är det av största vikt att frågeställningarna kan utredas snabbt och effektivt. Det centrala inom operationsanalysen är att någon form av optimeringsberäkning utförs (latin "optimus" - att göra något så bra som möjligt), det vill säga man hittar den handlingsplan som minimerar eller maximerar en storhet (t.ex. kostnad eller tidsåtgång) givet att de villkor som beskriver processen är uppfyllda. Med handlingsplan menas här t.ex. hur många artiklar av en viss vara som ska produceras eller hur man ska schemalägga flygplan. En annan benämning som används är matematisk programmering (eng. mathematical programming). Gränsdragningen mellan begreppen operationsanalys och matematisk programmering är oskarp. En av många använd skiljelinje är att matematisk programmering innefattar optimering rent allmänt, medan operationsanalys innefattar just olika typer av planeringsarbeten. Innan beräkningsarbetet kan utföras måste den aktuella frågeställningen formuleras i matematiska termer, det vill säga man måste bygga en matematisk modell av den verkliga processen. Ansvaret för detta har ingenjören eller operationsanalytikern. Vilka förenklingar av verkligheten som bör göras i modellen måste bedömas genom att väga önskad noggrannhet i det slutliga resultatet mot beräkningstider för den algoritm som ska användas. Många gånger är det omöjligt att göra en exakt modell, verkligheten är helt enkelt för komplex för att den ska gå att beskriva på ett överskådligt sätt. Man får då ofta nöja sig med en linjär modell, det vill säga en modell där alla förhållanden mellan de ingående storheterna både i det man vill optimera och i de villkor man måste beakta beskrivs med linjära samband. Man har därmed formulerat sin frågeställning som ett linjärprogrammeringsproblem. I många fall är detta fullt tillfredsställande, det vill säga man har formulerat ett problem som både ger tillräcklig noggrannhet och ger rimliga beräkningstider. Men vi börjar med några exempel från vardagslivet. Exempel: Lille Bo fick sin önskeroman i julklapp. När han lagt sig på kvällen beslutar han sig för att läsa i precis timmar. Romanen läser han ut på timmar och så finns ju den fina tegelstenen Analys i en variabel som räcker länge och faktiskt ger 0 högre läsupplevelse jämfört med romanen. Hur skall han fördela timmarna mellan böckerna för att maximera sin läsupplevelse? Lösningsförslag: Antag att han läser t r timmar i romanen och t a timmar i analysboken så har vi från problemtexten att. Maximal tillgänglig lästid är timmar t r t a.. Romanen räcker i timmar t r.,. Negativ lästid befattar han sig inte med t r 0, t a 0. Nu vill Bo maximera sin läsupplevelse. Eftersom denna är proportionell mot lästiderna och Analysboken ger 0% högre läsupplevelse har han att maximera den sammanlagda läsupplevelsen t r.t a. Vi har alltså ett optimeringsproblem. Funktionen f t r, t a t r.t a som skall maximeras kallas mål- eller objektfunktion (eng. objective function). Tiderna t r och t a kallas designvariabler (eng. design variables). Nu kan inte tiderna väljas hur som helst utan begränsas av villkoren - ovan. Dessa kallas då för bivillkor (eng. constraints). De naturliga bivillkoren och är så kallade positivitetskrav (eller egentligen icke-negativitetskrav) som av historiska skäl inte alltid brukar räknas in bland bivillkoren utan anses självklara. Vi ansluter oss inte till detta. Det typiska för vårt optimeringsproblem är att både objektfunktion och alla bivillkor är linjära. Man talar då om Linjärprogrammering (LP) (eng. linear programming) eller att man har ett LP-problem. Egentligen borde det heta Linjäroptimering men traditioner är inte lätta att bryta.

3 HH/ITE/BN Linjärprogrammering och Mathematica Vi sammanfattar problemet på standardform max t r.t a t r t a t r då t r 0 t a 0 Eftersom bivillkoren är linjära kommer de var och en att dela upp vår värld i två halvor, så kallade halvrymder, en otillåten och en tillåten att vistas i. Snitttet eller skärningen mellan de tillåtna halvorna, det vill säga den mängd som tillhör alla bivillkor, blir ett konvext polygonområde och kallas tillåtet område eller simplex (eng. feasible region). (I en konvex mängd ska alla punkter på sammanbindningslinjen mellan två godtyckliga punkter i mängden också tillhöra mängden. Polygon är en månghörning med räta kanter. Alltså är triangel och rektangel exempel på konvexa polygonområden.) Det är i detta område vi kan och ska söka lösningen! Nu är det bara två (design)variabler i detta exempel så vi kan enkelt återge varje bivillkor grafiskt. Vi ser att världen delas in i en icke tillåten del och en grön tillåten. Den röda gränslinjen får man genom att rita den räta linje som erhålles då olikheten byts mot likhet. t a t a t a t a t r t r 0 t a 0 t a t r t r t r t r t r Genom att så till slut ta snittet av dem alla får vi det tillåtna området där vi ska söka lösningen! t a t r Vi ser att det tillåtna området är begränsat (eng. bounded), det vill säga det omsluts av bivillkorslinjerna. Skärningspunkterna mellan bivillkorslinjerna kallas hörnpunkter (eng. corner points) till det tillåtna området. I samma figur kan vi också rita in objektfunktionen för konstanta värden, så kallade nivåkurvor (eng. level curves). Jämför isobarer på en väderkarta, längs dessa är trycket konstant. Även nivåkurvorna blir på grund av lineariteten räta linjer och parallella med varann. Vi fullbordar så den grafiska betraktelsen av ett LP-problem genom att rita in nivåkurvorna t r.t a, t r.t a, t r.t a,, t r.t a 7. Beteckningen g i är lite av tradition i branchen liksom h i för likhetsbivillkor. max t r.t a t r t a t r då t r 0 t a 0 g g g g t a t r Vi återkommer till hur man löser optimeringsproblemet i nästa avsnitt.

4 Linjärprogrammering och Mathematica HH/ITE/BN Exempel: En cykeltillverkare kan tillverka två olika cykelmodeller, Standard och deluxe. Han lever dessutom i den lyckliga världen att alla cyklar han tillverkar säljs. Standard ger en nettovinst på 00 kr medan den lyxiga deluxe ger hela 700 kr. För att överleva måste han åtminstone tillverka en Standard om dagen. Men fler än st orkar han dock inte med. Av samma skäl kan han inte heller tillverka mer än st av den lite mer pyntade modellen deluxe. Hur som helst så orkar han inte göra fler än 8 cyklar om dagen. Av marknadspolitiska skäl vill han inte heller tillverka fler lyxiga deluxe än Standard. Hjälp nu honom att planera sin tillverkning så att vinsten maximeras. Standard DeLuxe Lösningsförslag: Antag att han tillverkar x st cyklar av modell Standard och x st av modell deluxe om dagen. Vi har då direkt handlarens vinst som objektfunktion f x, x 00x 700x. Bivillkoren hittar vi genom att översätta mening för mening i problemtexten.. Minst en Standard om dagen x.. Maximalt Standard om dagen x.. Maximalt deluxe om dagen x.. Maximalt 8 cyklar om dagen x x 8.. Inte fler deluxe än Standard x x., 7. Negativt antal cyklar befattar vi oss inte med, det vill säga positivitetskrav x 0, x 0. Därmed kan vi formulera LP-problemet på standardform, en objektfunktion och 7 bivillkor. Bara linjära samband som sig bör. Läsaren uppmanas på det bestämdaste att verifiera bivillkorslinjer, det tillåtna området och nivåkurvor i figuren till höger! max 00x 700x x g x g x g då x x 8 g x x g x 0 g x 0 g 7 x x Vi återkommer till hur man löser optimeringsproblemet i nästa avsnitt. Exempel: Stina älskar fåglar. Hon har sju exemplar av Rupicola rupicola guldtupp i sitt vardagsrum. Hon föder upp dem på två sorters fröblandningar BasFrö och BusFrö vilka kostar 8 respektive kr hg. Stina vet att speciellt tre typer av vitaminer V, V och V är viktiga för fåglarna och BasFrö BusFrö V V V att varje fågel behöver dagligen, respektive enheter av dessa. Fröblandningarnas innehåll av de tre vitaminerna i enheter per hg framgår av tabellen. Formulera det LP problem som bestämmer hur många hg av varje fröblandning Stina ska köpa in dagligen så alla fåglarna får sitt vitaminbehov tillgodosett och inköpskostnaden minimeras. Gör en grafisk representation med bivillkor och det tillåtna området. Lösningsförslag: Antag att hon behöver köpa in BasFrö hg av BasFrö-blandningen och BusFrö hg av BusFrö-blandningen. Vi har då direkt Stinas kostnad som objektfunktion f BasFrö, BusFrö 8BasFrö Busfrö. Totalt har Stina sju hungriga näbbar att mätta, så bivillkoren möblerar vi genom att kombinera vitamintabellen med fåglarnas dagsbehov angivna i problemtexten. Läsaren uppmanas på det bestämdaste att verifiera formuleringen samt bivillkorslinjer, det tillåtna området och nivåkurvor i figuren till höger!

5 HH/ITE/BN Linjärprogrammering och Mathematica min 8 BasFrö BusFrö BasFrö BusFrö 7 g BasFrö BusFrö 7 g då BasFrö BusFrö 7 g BasFrö 0 g BusFrö 0 g BusFrö BasFrö Observera att vi här har ett minimeringsproblem och att det tillåtna området är obegränsat (eng. unbounded). Vi återkommer till hur man löser optimeringsproblemet i nästa avsnitt. Lite teori och lösningsmetoder Vi ser att exemplen i föregående avsnitt är specialfall av en standardiserad LP-formulering (eng. standard LP-form) med n designvariabler och m bivillkor. min f x, x,, x n c x c x c n x n då a x a x a n x n b a x a x a n x n b min f då a m x a m x a mn x n b m där f är objektfunktionen och bivillkoren. Man brukar kalla för objektfunktionskoefficienterna (eng. vector of objective coefficients), för bivillkorsmatrisen (eng. constraint matrix) och för högerledet (eng. right-hand side of constraints). Formuleringen rymmer även maximering, ty max f min f. På samma sätt kan -olikhet införas genom att motsvarande rad multipliceras med på båda sidor om med resultat att olikheten då byter riktning. Slutligen kan likhetsbivillkor behandlas genom att denna rad införes två gånger, en gång med och en med. I seriösa datorprogram för LP-lösare ska man naturligtvis inte behöva hålla på med sådant manipulerande. En punkt som uppfyller bivillkoren kallas tillåten lösning (eng. feasible solution), eftersom den ligger i det tillåtna området, och söker nu den optimala lösningen (eng. optimal solution). Vi har tidigare sett att det tillåtna området kan vara begränsat, obegränsat eller rent av tomt (eng. empty) om bivillkoren är helt motstridiga så att snittet är tomt. Då saknar naturligtvis LP-problemet lösning. Om det har en lösning så är den alltid optimal i en hörnpunkt som då kallas optimal punkt (eng. optimal point or extreme point) och objektfunktionen antar där optimalt värde (eng. optimal value). De bivillkor som utgör randen till det tillåtna området delas in i aktiva (eng. active constraints) om de möts i optimala punkten, och inaktiva (eng. in-active constraints). Ett bivillkor som inte medverkar till att bygga upp det tillåtna området kallas överflödigt eller redundant (eng. redundant constraint). Vi ska argumentera i D för att optimal lösning alltid är i en hörnpunkt. För ändamålet riggar vi upp ett begränsat område och några nivåkurvor. Mot bakgrund av all linearitet förstår vi att när vi minskar eller ökar objektfunktionens värde så kommer den "sista" nivåkurvan i det tillåtna området att lämna detta i en hörnpunkt. Dessa två fall är indikerade i figuren nedan till vänster med en blå och en röd boll och motsvarar alltså optimal punkt vid minimering respektive maximering av objektfunktionen. Enda gången detta inte gäller är då ett aktivt bivillkor är parallellt med nivåkurvorna, se figur nedan till höger. Då har vi två hörn som kandidater till optimal punkt! Dessa är indikerade med röda bollar. Eftersom innebörden av en nivåkurva är att objektfunktionens värde är konstant längs en sådan kan vi som optimal punkt då välja vilken som helst av de två hörnpunkterna eller någon godtycklig punkt på det mellanliggande aktiva bivillkoret, markerad fet mörkgrön. Så grundregeln håller, optimal punkt hittar man alltid i en hörnpunkt! x x x x

6 Linjärprogrammering och Mathematica HH/ITE/BN En mera rigorös övertygelse kan formuleras så här: Antag att det finns en punkt som är inre punkt eller randpunkt till det tillåtna området och som minimerar, det vill säga i, i,, q för alla q hörnpunkter. Eftersom det tillåtna området är konvext kan skrivas som en linjärkombination av hörnpunkterna q q i i i, där i i. Då får vi q i vilket är en motsägelse. Det finns alltså inget bättre än hörnpunkter! q q i i i i i i i q i i I figurerna ovan har vi även ritat in gradienten till objekfunktionen. Detta är en vektor som är vinkelrät mot nivåkurvorna och pekar ut i vilken riktning nivåkurvorna ökar. Lägg märke till att det inte är självklart att objektfunktionen ökar med ökande värde på designvariablerna, den kan lika gärna öka när man närmar sig origo, t.ex. f x, x x x. Gradienten brukar skrivas på två sätt och definieras av den andra likheten med hjälp av partiella derivator def f grad f f f, x f x,, f x n c, c,, c n På grund av lineariteten kan den alltså enkelt avläsas som koefficienterna i objektfunktionen. Exempel: Bestäm några gradienter f x, x x x f f f x, f x, x x x f f f x, f t r, t a t r.t a f f f t r, f x, x 00x 700x f f f x, f x, f x, f t a,. f x 00, 700 Exemplet ovan med lille Bo Exemplet ovan med cykeltillverkaren Mot bakgrund av lineariteten hos såväl objektfunktion som bivillkor kan vi sammanfatta. Om det tillåtna området till ett LP-problem är icke-tomt och begränsat så antar objektfunktionen både ett maximum och ett minimum och detta antas i hörn i det tillåtna området. Ett sådant hörn kallas optimal punkt och objektfunktionen antar optimalt värde där. Om däremot det tillåtna området är obegränsat finns fortfarande möjlighhet att objektfunktionen antar ett maximum eller ett minimum, om så görs detta också i ett hörn, optimal punkt. Avslutningsvis saknar LP-problemet lösning om det tillåtna området är tomt. Detta ger oss en enkel strategi för att lösa ett LP-problem! Inspektera alla hörnpunkter till det tillåtna området och beräkna objektfunktionens värde där, sedan är det bara att bland dessa välja den optimala lösningen. Vi provar på två av de LP-problem vi redan stiftat bekantskap med. Exempel: Lille Bo igen. Lös LP-problemet! Lösningsförslag: Vi tar vid där vi slutade. max t r.t a t r t a t r då t r 0 t a 0 g g g g t a t r Vi går moturs runt det tillåtna området och besöker hörnpunkterna. Bestäm designvariablernas värde där genom att lösa ett ekvationssystem som erhålles genom att ersätta olikhet med likhet i de bivillkor som möts i hörnpunkten. Slutligen beräknas objektfunktionens värde i hörnet. Uppdatera och bokför under resans gång den hörnpunkt som maximerar objektfunktionen.

7 HH/ITE/BN Linjärprogrammering och Mathematica 7 t r t a g Skärning mellan g och g t r g t r t a g Skärning mellan g och g t r 0 g t r 0 g Skärning mellan g och g t a 0 g t r g Skärning mellan g och g t a 0 g t r, t a, f,.. t r, t a 0, f 0, Max t r, t a 0, 0 f 0, t r, t a, 0 f, 0. 0 Färdig! Vi har hittat optimal punkt t r, t a 0,! Lille Bo ska med andra ord ägna all tillgänglig lästid åt Analysboken Detta kunde vi enkelt insett genom att inspektera den grafiska representationen ovan. Om man har många bivillkor kan man hålla nere handarbetet väsentligt genom att först göra ett visuellt studium av nivåkurvor och bivillkor i den grafiska representation. Då brukar det bli få hörnpunkter att besöka. Men hur som helst Vid två designvariabler och handräkning måste man alltid börja med att göra en grafisk representation! Detta ger nödvändig överblick för att kunna genomföra lösningen! Exempel: Stinas guldtuppar igen. Lös LP-problemet! Lösningsförslag: Vi tar vid där vi slutade. min 8 BasFrö BusFrö BasFrö BusFrö 7 g BasFrö BusFrö 7 g då BasFrö BusFrö 7 g BasFrö 0 g BusFrö 0 g BusFrö BasFrö Vis av erfarenheterna från föregående exempel börjar vi med att studera den grafiska representationen. Eftersom vi söker minimum av objektfunktionen räcker det att besöka hörnet som är skärningspunkt mellan bivillkoren g och g. BasFrö BusFrö 7 g BasFrö BusFrö 7 g BasFrö, BusFrö, f, 8 Min Färdig! Vi har hittat optimal punkt BasFrö, BusFrö,! Nu vet Stina hur många hg av varje fröblandning som ska inhandlas för att minimera kostnaden. Vi kan i figuren också notera att g inte finns med som aktivt bivillkor vid optimal punkt med följd att vitamin V serveras i överflöd. Lägg märke till att vi har ett obegränsat tillåtet området, objektfunktionen har inget maximum utan inköpen kan bli hur dyra som helst! Till slut kommer då både Stina och hennes guldtuppar att drunkna i frö! Då antalet designvariabler och bivillkor ökar är handräkning utesluten. Vi får koncentrera oss på LP-formuleringen, vilket kan vara nog så besvärligt, och överlämna själva lösandet till ett datorprogram. Det finns flera sådana och de används mycket flitigt i diverse tillämpningar i industrin. Att lösa LP-problem sköt fart under andra världskriget tillsammans med att den första datorn såg dagens ljus, och den metod som är vanligast idag och härstammar från den tiden är Simplexmetoden. Men det finns också andra moderna metoder som är snabbare på framför allt riktigt stora problem, se vidare under Lite historik i ett senare avsnitt. Vi ska inte alls fördjupa oss i hur Simplexmetoden arbetar, det faller utanför ramen för denna kurs. Det enda man behöver känna till är att den är robust och utnyttjar den egenskap vi nämnt, nämligen att optimal punkt infaller i ett hörn. Simplexmetoden väljer på ett fiffigt sätt ut vilket nytt hörn den ska hoppa till så att objektfunktionen hela tiden minskar/ökar, den besöker alltså långt ifrån alla hörn i det tillåtna området. I Mathematica finns de generella optimeringsfunktionerna Maximize[objektfkn,bivillkor,designvars], NMaximize[], Minimize[]och NMinimize[], där de utan N på sig ger analytiska lösningar. Dessa funktioner klarar av att hitta globalt optimum för godtycklig objektfunktion under godtyckliga bivillkor. De har inga förutfattade meningar om värdet på designvariablerna, så till exempel tradionella positivitetskrav måste anges explicit i bivillkoren där olika typer av olikheter, och = kan blandas friskt. Speciellt känner de igen och löser LP-problem effektivt. I numeriska sammanhang skiljer man vanligtvis inte på om

8 8 Linjärprogrammering och Mathematica HH/ITE/BN man använder stränga olikheter eller ej, så istället för de lite mer "omständiga" och från palette ( <= och >= direkt på tangentbordet) kan man tryggt använda de lite mer direktåtkomliga < och > på tangentbordet. Naturligtvis klarar funktionerna även av att hantera det ofta mycket viktiga kravet på enbart heltalslösningar för några eller alla designvariabler. Detta läggs enkelt till bland bivillkoren som {designvariabler} Integers. Att ha krav på heltalslösningar är naturligt eftersom LP-formuleringar ofta handlar om frågeställningar kring kostnad och resurstilldelning, då är exempelvis antal personer, maskiner eller bilar vanliga designvariabler. Att vid stora LP-problem helt enkelt avrunda designvariabler till heltal är en mycket riskabel operation, vanligtvis brukar man då hamna i konflikt med ett eller flera bivillkor. Om vi har standard LP-formulering, det vill säga objektfunktionen är given som en vektor och bivillkoren på matrisform, finns även den lite mer ortodoxa LinearProgramming[c,A,b]. Men, huvudalternativet blir nästan alltid de fyra tidigare nämnda, eftersom olika typer av olikheter, och = kan blandas friskt och att man direkt kan mata in sin LP-formulering från modelleringen utan riskabla omlastningar av termer för att möblera och så att det passar LinearProgramming. Att använda de i Mathematica inbyggda LP-lösarna är mycket enkelt. Strängt taget gäller det bara att skriva av sin formulering rätt. Som vanligt tillåts även en sekvens av olikheter, t.ex. x 0 x kan skrivas 0 x. Vi börjar med lille Bo och ser att svaret kommer ut på självdokumenterande form, {objektfkn,designvariabler} i optimal punkt, precis som vi är vana vid från FindMaximum och FindMinimum. Se tidigare bilder över situationerna. Maximize t r. t a, t r t a, t r, t r 0, t a 0, t r,t a., t r 0., t a. Sedan Stina och hennes sju guldtuppar. AntalGuldtuppar 7; Minimize 8 BasFrö BusFrö, BasFrö BusFrö AntalGuldtuppar, BasFrö BusFrö AntalGuldtuppar, BasFrö BusFrö AntalGuldtuppar, BasFrö 0, BasFrö 0, BasFrö, BusFrö, BasFrö, BusFrö Så nu äntligen över till cykeltillverkaren som väntar otåligt Maximize 00 x 700 x, x, x, x, x x,x x 8, x 0, x 0, x,x 000, x, x Han ska alltså tillverka cyklar av varje modell. Vinsten blir då 000 kr om dagen! Här fick vi heltalslösning som vi önskade, men om vi ändrar lite på villkoret x x 8 till x x 7 får vi inte detta längre. x x Maximize 00 x 700 x, x, x, x, x x,x x 7, x 0, x 0, x,x 00, x 7, x 7

9 HH/ITE/BN Linjärprogrammering och Mathematica 9 I allmänhet är det inte så enkelt som att "avrunda". Problemet med halva cyklar avhjälps istället genom att införa heltalskrav bland bivillkoren. Vi tvingas nu röra oss i det begränsade rummet av heltal istället för reella tal. I figuren nedan är de möjliga heltalslösningarna markerade med mörkgröna prickar. Vi ser att optimal punkt inte sammanfaller med ett hörn. Naturligtvis hittar Mathematica den optimala heltalslösningen. x x Maximize 00 x 700 x, x, x, x, x x,x x 7, x 0, x 0, x,x Integers, x,x 00, x, x Avslutningsvis kan nämnas att i en fortsatt analys är det bland annat av intresse att utreda frågeställningar av typen Vad händer med lösningen då objektfunktionens koefficienter varieras? Vad händer med lösningen då bivillkorsmatrisens koefficienter varieras? Vad händer med lösningen då högerledets koefficienter varieras? Vad händer med lösningen då man lägger till eller tar bort bivillkor? Vad händer med lösningen då designvariabler läggs till eller tas bort? Detta brukar kallas störningsanalys eller känslighetsanalys och är mycket viktigt. För att till exempel öka vinsten utan att höja priserna måste de aktiva bivillkoren modifieras vilket oftast är behäftat med kostnader. En studie av gradienter i optimala punkten ger en indikation på om det är möjligt och hur man då ska agera för att göra den mest ekonomiskt gynsamma förändringen av produktionsapparaten. Det finns en omfattande teori kring detta och i en mer omfattande framställning introduceras begrepp som duala problemet och skuggpriser. Eftersom LP-lösarna i Mathematica är så lättanvända kan en enkel och kanske praktiskt tillräcklig känslighetsanalys helt enkelt bestå av att man "leker" lite med koefficienterna och kör igen. Som exempel på detta låter vi i följande sekvens studera vad som händer i ursprungssituationen om priset på deluxe sänks. Först dagens förutsättningar och prissättning i repris. x x Maximize 00 x 700 x, x, x, x, x x,x x 8, x 0, x 0, x,x Integers, x,x 000, x, x Om priset på deluxe sänks till 00 kr kommer naturligtvis vinsten att minska och objektfunktionens nivåkurvor att ändra lutning för att bli parallella med bivillkoret x x 8. Vi kan då som optimal punkt välja vilken som helst av de två aktuella hörnpunkterna, och,.

10 0 Linjärprogrammering och Mathematica HH/ITE/BN x x Maximize 00 x 00 x, x, x, x, x x,x x 8, x 0, x 0, x,x Integers, x,x 00, x, x Om så priset på deluxe sänks ytterligare ner till 00 kr kommer optimal produktion att ändras från, till, och vinsten till 00 kr. x x Maximize 00 x 00 x, x, x, x, x x,x x 8, x 0, x 0, x,x Integers, x,x 00, x, x En liten enkel grafisk LP-lösare i D Vi ska här meka ihop en enkel funktion som klarar av att göra en minimalistisk grafisk representation och lösning. Som testexempel vid framtagningen tar vi följande enkla LP-problem max x x x x 0 x x 0 då x 0 x 0 g g g g x x obj x x; bv x x 0, x x 0, x 0, x 0 ; lc Range 0 ; xr x, 0., 0. ; yr x, 0., 0. ; Nu över till den grafiska representationen som även får bli vår lilla LP-lösare. Vi börjar med det tillåtna området.

11 HH/ITE/BN Linjärprogrammering och Mathematica RegionPlot And bv, Evaluate xr, Evaluate yr, PlotStyle Opacity, Green, Frame False, Axes True Sedan bivillkorslinjerna ContourPlot Evaluate. Head Equal & bv, Evaluate xr, Evaluate yr, ContourStyle Thickness 0.0, Red, Frame False, Axes True 0 8 Slutligen nivåkurvorna. 8 0 ContourPlot Evaluate objfkn & lc, Evaluate xr, Evaluate yr, ContourStyle Blue Nu är det bara att paketera det hela som en grafisk presentation jämte en tabell med hörnpunkter sorterade efter fallande värde på objektfunktionen. Varje rad innehåller de inblandade aktiva bivillkoren, hörnpunktens koordinater (designparametrarna) samt objektfunktionens värde. Att sätta etiketter på de röda och blå linjerna samt gröna nummer på hörnpunkterna kräver lite extra Mathematicapornografi utöver det vanliga och överlämnas till den intresserade läsaren att fördjupa sig i. Allt finns samlat i en funktion LPSolve som kan laddas ned från hemsidan. Vi provar på vårt modellproblem. LPSolve obj, bv, lc, xr, yr x x nr biv punkt objfkn, 8,, 0, 0 0, 0, 0 0, 0, 0 0 Vi ser i tabellen att hörn nr är optimal hörnpunkt. Aktiva bivillkor är,, koordinaterna (designparametrarna) är 8, och objektfunktionens värde är. Lille Bo vill också vara med.

12 Linjärprogrammering och Mathematica HH/ITE/BN LPSolve t r. t a, t r t a, t r, t r 0, t a 0, 0. Range 0, 0, t r, 0.,., t a, 0., t a nr biv punkt objfkn, 0,.,,.,, 0., 0, t r Blandade exempel för resten Exempel: En skräddare kan tillverka kostymer och klänningar. Varje kostym fordrar m bomullstyg och m ylletyg och till varje klänning åtgår m av varje tygslag. Skräddaren har tillgång till 80 m bomullstyg och 0 m ylletyg. Hur många kostymer och klänningar skall han sy om varje kostym och klänning kan säljas för 00 kr och han vill maximera inkomsten? Lösningsförslag: Om vi låter skräddaren sy x m kostymer och x g klänningar så får vi efter översättning av problemtexten följande LP-problem och tillhörande lösning. Formuleringen görs enkelt läsbar samtidigt som vi anropar vår egen LP-snutt. Det är lämpligt att räkna vinsten i 000-tals kronor. LPSolve x m x g, x m x g 80, x m x g 0, x m 0, x g 0, Range 0, x m, 0., 0, x g, 0., 0 x g x m nr biv punkt objfkn, 0, 0, 0, 0, 0, 0, 0, 0 0 Efter att tittat i figuren och tabellen förstår vi att optimal punkt är nr och g och g är aktiva bivillkor vid optimalt hörn 0, 0. Vinsten är 000 kr. Mathematica håller med Maximize x m x g, x m x g 80, x m x g 0, x m 0, x g 0, x m,x g, x m 0, x g 0 Exempel: Fredrik har 0 kkr över att investera i aktier. Han inbillar sig att bankens analytiker har koll på aktieutveckling över tid och gör därför ett besök. Rådet blir att investera i två aktier, en riskfylld A med 0 avkastning årligen och en lugnare B med 7 avkastning årligen. Men analytikern nöjer sig inte med detta utan tycker att fördelningen ska vara högst kkr i A, minst kkr i B och absolut minst lika mycket i aktie A som B. Hur ska han handla för att maximera avkastningen? Lösningsförslag: Om vi låter Fredrik köpa aktier A för a kkr och aktier B för b kkr får vi efter översättning av problemtexten följande LP-problem och lösning.

13 HH/ITE/BN Linjärprogrammering och Mathematica LPSolve 0. a 0.07 b, a b 0, a, b, a b, a 0, b 0, 0. Range 0, a, 0., 7, b, 0., b nr biv punkt objfkn,, 0.88,, 0.8,, 0.7,, a Efter att tittat i figuren och tabellen förstår vi att optimal punkt är nr och g och g är aktiva bivillkor vid optimalt hörn,. Mathematica håller med Maximize 0. a 0.07 b, a b 0, a, b, a b, a 0, b 0, a, b 0.88, a., b. Exempel: Hos en handelsträdgård kan man köpa konstgödsel av två slag, A och B. I tabellen anges deras pris kr kg och det procentuella innehållet av kväve N, fosfor P och kalium K samt de mängder i kg av de tre ämnena som, enligt jordanalys, minst behöver tillföras din golfbana. Formulera och lös inköps problemet så att kostnaden minimeras. N P K Pris A B.0 Behov Lösningsförslag: Låt x A och x B vara mängderna i kg av A respektive B som ska inhandlas. Ur tabell med procent, priser och behov får vi följande LP-formulering och dess lösning. LPSolve.7 x A.0 x B, 9 00 x A 00 x B 70, 7 00 x A 00 x B 0, 00 x A 00 x B 00, x A 0, x B 0, 000 Range 0, x A, 000, 000, x B, 000, 000 x B nr biv punkt objfkn, 0, , 000, , 0 000, x A Efter att tittat i figuren och tabellen förstår vi att optimal punkt är nr och g och g är aktiva bivillkor. Mathematica håller med om inköp och kostnad Minimize.7 x A.0 x B, 9 00 x A 00 x B 70, 7 00 x A 00 x B 0, 00 x A 00 x B 00, x A 0, x B 0, x A,x B 79., x A 7.9, x B 9. En sann miljövän noterar att g är redundant så det kommer att ske en övergödning av kväve. Avslutningsvis, om vi inte får bryta förpackningar utan måste köpa hela kg.

14 Linjärprogrammering och Mathematica HH/ITE/BN Minimize 7 00 x A 0 x B, 9 00 x A 00 x B 70, 7 00 x A 00 x B 0, 00 x A 00 x B 00, x A 0, x B 0, x A,x B Integers, x A,x B 99, x A 7, x B 98 Exempel: BagarBertas konditori har koncentrerat sig på två goda kakor; bondkakor och vaniljhorn. De helt dominerande ingredienserna är mjöl, socker och smör. Till 0 bondkakor åtgår 0 g mjöl, 0 g socker och 00 g smör. Motsvarande mängder för 7 vaniljhorn är 00 g, 0 g respektive g. Formulera och lös LP problemet som maximerar Bertas vinst under förutsättning att hon har tillgång till 0 kg mjöl, kg socker och kg smör samt att hon säljer allt hon bakar med nettovinsten kr för en bondkaka och kr för ett vaniljhorn. Vilken ingrediens finns i överflöd? Lösningsförslag: Om vi låter Berta baka x b st bondkakor och x v st vaniljhorn får vi efter överssättning av problemtexten följande LP-problem och dess lösning. Kan vara lämpligt att räkna vinsten i 000-tals kronor. LPSolve x b x v, x b 00 7 x v 0 000, 0 0 x b 0 7 x v 000, 00 0 x b 7 x v 000, x b 0, x v 0, Range 0, x b,, 000, x v,, 000 x v nr biv punkt objfkn, 800, x b Vi ser att optimal punkt är nr och g och g är aktiva bivillkor. Bivillkor g är redundant och indikerar att smör finns i överflöd Men Berta vill ju inte sälja "söndriga" kakor x b, x 9 v eller x 9 b 80.9, x v 89., så lite skarpare med heltalskrav har vi slutligen lösningen på hennes funderingar kring produktionen. Maximize x b x v, 0 0 x b 00 7 x v 0 000, 0 0 x b 0 7 x v 000, 00 0 x b 7 x v 000, x b 0, x v 0, x b,x v Integers, x b,x v 90, x b 89, x v 9 Exempel: Widget & Son tillverkar dekalerna Sad Smiley och Happy Smiley. Vinsten per låda är respektive 7 P engar. För att personalen inte skall bli för glad måste den åtminstone tillverka en låda med Sad Smiley om dagen, men inte fler än sex för att undvika depression. Av samma skäl krävs att det tillverkas fler lådor Happy Smiley än Sad Smiley. För att begränsa glädjespridningen har man även satt ett tak på sju lådor Happy Smiley om dagen. Hur som helst orkar man bara tillverka tolv lådor med dekaler om dagen. Hjälp Widget & Son med produktionsplaneringen så att vinsten maximeras under förutsättning att personalen håller sig frisk. Vad blir då vinsten?

15 HH/ITE/BN Linjärprogrammering och Mathematica Lösningsförslag: Låt x s vara antalet lådor med Sad Smiley och x h antalet lådor med Happy Smiley. Å så här blir dé LPSolve x s 7x h, x s, x s, x s x h,x s x h, x h 7, x s 0, x h 0, 0 Range 0, x s, 0., 0, x h, 0., x h x s nr biv punkt objfkn,, 7,, 0,, 0,, 0,, 7,, 0 Slutligen låter vi Mathematica få sista ordet Maximize x s 7x h, x s, x s, x s x h,x s x h, x h 7, x s 0, x h 0, x s,x h, x s, x h 7 Exempel: En fiskare förfogar över 0 nät, 0 ryssjor och långrevar. Han känner till fångstplatser, nämligen ålhålan, gäddviken, gösrännan och aborrgrundet med plats för, 8, 8 respektive redskap. Erfaren som han är har han naturligtvis samlat statistik över hur effektiva de olika redskapen är på respektive fångstplats. Tabellen anger effektivitetstalen, där innebär bäst fiske och sämst. Hur ska redskapen placeras för att fångsten ska bli så stor som möjligt med avseende på de angivna effektivitetstalen? nät ryssja långrev ålhålan gäddviken gösrännan abborrgrundet Lösningsförslag: Låt x ij x i, j vara antalet redskap av typ j som ska placeras på fångstplats i och effektivitetsmatrisen X Array x,, ; ; Det är designvariabler x ij så grafisk lösning är utesluten. Låt nu r j, j,, vara antal tillgängliga redskap av de tre typerna och f i, i,, vara det utrymme som finns på de fyra olika fångstplatserna. Givetvis används bara hela(!) redskap. Vi får då LPformuleringen och sedan direkt till Mathematica. max i j ij x ij då i x ij r j, j g j x ij f i, i g i j x ij 0 x ij g X 0 g objfkn Total X, x, x, x, x, x, x, x, x, x, x, x, x, biv Thread X.,,, 8, 8,, g j Thread X.,,, 0, 0,, g i Thread Flatten X 0, g X 0 Flatten X Integers Flatten Heltal x, x, x,, x, x, x, 8, x, x, x, 8, x, x, x,, x, x, x, x, 0, x, x, x, x, 0, x, x, x, x,, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, x, x, x, x, x, x, x, x, x, x, x,

16 Linjärprogrammering och Mathematica HH/ITE/BN Vi har designvariabler och så här många bivillkor Length biv 0 Avslutningsvis svaret på fiskarens funderingar fångst, placering Maximize objfkn, biv, Flatten X 80, x, 0, x, 0, x,, x, 0, x, 8, x, 0, x, 8, x, 0, x, 0, x,, x,, x, Eller på samma matrisform som han är van vid X. placering Exempel: Ett snickeri i Siljansbygden kan tillverka fyra olika sorters souvenirer av trä kallade Mora, Nisse, Dala respektive Hästen. Fabrikationen går till så, att en grov tillsågning sker i snickerifabriken, varefter de går ut till trätäljare för definitiv utformning. Slutligen dekoreras de. Tidsåtgången i minuter och vinst för varje modell samt tillgänglig tid i timmar/vecka för varje avdelning framgår av nedanstående tabell. Råvaror finns i obegränsad mängd. Hur bör man planera tillverkningen för att optimera vinsten? Mora Nisse Dala Hästen Tillgänglig tid h Snickeri 00 Trätäljning Dekorering Vinst kr st 8 9 Lösningsförslag: Låt snickeriet tillverka x M, x N, x D, x H st av respektive souvenir vars tillverkningstider samlas i T. X x M,x N,x D,x H ;T ; Med designvariabler är grafisk lösning är utesluten. Låt x j vara designvariablerna och i, i,, tillgänglig tid i timmar för de tre avdelningarna så får vi LP-formuleringen med heltalskrav och sedan direkt till Mathematica. max x M x N 8x D 9x H då j T ij x j 0 i, i g i x M, x N, x D, x H 0 x M, x N, x D, x H g X 0 g objfkn,, 8, 9.X 8 x D 9 x H x M x N biv Thread T.X 0 00, 80,, g i Thread X 0, g X 0 X Integers Flatten Heltal x D x H x M x N 000, 0 x D 0 x H 0 x M 0 x N 0 800, 0 x D 0 x H x M 8 x N 70, x M 0, x N 0, x D 0, x H 0, x M x N x D x H Alltså designvariabler och så här många bivillkor Length biv 8 Äntligen svaret på Dalasnickeriets produktionslayout. Maximize objfkn, biv, X 0, x M 0, x N 0, x D 0, x H 0

17 HH/ITE/BN Linjärprogrammering och Mathematica 7 Snickeriet bör koncentrera sig på att tillverka 0 st av modell Nisse och 0 st av modell Dala samt släcka ljuset för Mora och Hästen ;-) Exempel: En byggherre står i begrepp att bygga sorters hyreshus med byggkostnad och förväntad hyresintäkt netto per månad enligt tabell. Minst 0 av husen ska vara av typ A och högst 0 ska vara av typ C. Totala investeringen får inte överstiga 000 Mkr. Hur ska han bygga för att maximera vinsten räknat över en 0 årsperiod? Typ Kostnad Mkr Intäkt Mkr A 0.0 B 0. C 8 0. Lösningsförslag: Låt byggherren bygga x A, x B, x C st av respektive hyreshus. Här har vi designvariabler så grafisk lösning är utesluten. Vi får LP-formuleringen med heltalskrav eftersom halvfärdiga hus är svåra att hyra ut. Objektfunktionen räknat i Mkr är hyresintäkter under tio år utan uppräkning för ränta minus byggkostnad. Sedan till Mathematica. max 0 0.0x A 0.x B 0.x C x A x B 8x C x A x B 8x C 000 Max investering x A 0. x A x B x C Minst 0 av typ A då x C 0. x A x B x C Max 0 av typ C x A, x B, x C Heltalskrav X x A,x B,x C ; 0 objfkn x A x B 0 x C x A x B 8x C ; 00 biv,, 8.X 000, Max investering x A Total X, x C Total X, Minst 0 av typ A. Max 0 av typ C X Integers Bara färdiga hus x A x B 8 x C 000, x A x A x B x C, x C x A x B x C, x A x B x C Modellstorleken är designvariabler och så här många bivillkor Length biv Så här ska byggherren planera byggnationen samt total vinst. Maximize objfkn, biv, X, x A 9, x B 88, x C 9 Exempel: Ett företag har fabriker som tillverkar samma produkter. Dessa skall sändas till företagets lager för vidare distribution till kunder. Tabellen nedan visar tillgänglig mängd vid de olika fabrikerna, vilken mängd som efterfrågas vid de olika lagren samt kostnaden i kr för att transportera en enhet mellan respektive fabrik och lager. Lager A Lager B Lager C Lager D Lager E Tillgänglig mängd Fabrik X 0 9 Fabrik Y Fabrik Z 8 Efterfrågad mängd Formulera och lös uppgiften att minimera transportkostnaden. Lösningsförslag: Låt x ij x i, j vara antalet produkter som sänds från fabrik i till lager j och K ij transportkostnadsmatrisen X Array x,, ; K ; Här har vi designvariabler x ij så grafisk lösning är utesluten. Låt nu f i, i,, vara antal tillgängliga produkter i de tre fabrikerna och l j, j,, efterfrågan i de fem lagren. Vi får då LP-formuleringen med heltalskrav och sedan över till dess lösning i Mathematica.

18 8 Linjärprogrammering och Mathematica HH/ITE/BN max i j K ij x ij j x ij f i, i g i då i x ij l j, j g j x ij 0 g X 0 x ij Heltal objfkn Total K X, x, x, x, 0 x, x, x, x, 0 x, x, 8 x, x, x, x, 8 x, x, biv Thread X.,,,, 9, 8,, g i Thread X.,,,, 7, 7,, g j Thread Flatten X 0, g X 0 Flatten X Integers Flatten Heltal x, x, x, x, x, 9, x, x, x, x, x, 8, x, x, x, x, x,, x, x, x,, x, x, x,, x, x, x, 7, x, x, x, 7, x, x, x,, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, Vid sidan om designvariabler är det också många bivillkor Length biv Slutligen svaret på transportoptimeringen kostnad, sänd Minimize objfkn, biv, Flatten X 98, x, 0, x,, x, 0, x, 7, x, 0, x,, x, 0, x, 7, x, 0, x, 0, x, 0, x,, x, 0, x, 0, x, Eller på samma matrisform som han är van vid från transportkostnadsmatrisen X. sänd Exempel: Två städer, A och B, producerar 00 ton respektive 00 ton hushållsavfall per dag. Avfallet måste först brännas vid någon av anläggningarna C eller D, båda med kapaciteten 00 ton/dag. Kostnaden vid C är 0 kr/ton och vid D 0 kr/ton. Vid förbränningen förvandlas ton avfall till 00 kg slagg vilket måste dumpas vid någon av slutstationerna (ss) E eller F. Varje slutstation kan ta emot som mest 0 ton slagg/dag. Transportkostnaden är 0 kr per ton och mil, både för avfallet och slaggen. Avståndet, i mil, mellan de olika platserna framgår av tabellerna nedan. Hur ska man på billigaste sätt ta hand om hushållsavfallet? Anläggning C Anläggning D Stad A 7 Stad B 8 9 ss E ss F Anläggning C Anläggning D Lösningsförslag: Låt x ij vara antalet ton som transporteras från i j. Med hjälp av text och tabell formulerar vi LP-problemet. Minimize 0 x AC x BC 0 x AD x BD 0 7 x AC x AD 8x BC 9x BD x CE x CF x DE x DF, x AC x AD 00, x BC x BD 00, x AC x BC 00, x AD x BD 00, x AC x BC x CE x CF, x AD x BD x DE x DF,x CE x DE 0, x CF x DF 0, x AC 0, x AD 0, x BC 0, x BD 0, x CE 0, x CF 0, x DE 0, x DF 0, x AC,x AD,x BC,x BD,x CE,x CF,x DE,x DF 8 000, x AC 0, x AD 00, x BC 00, x BD 0, x CE 80, x CF 0, x DE 0, x DF 00

19 HH/ITE/BN Linjärprogrammering och Mathematica 9 Nu är det bara att sätta igång och köra enligt följande schema till kostnaden ovan Anläggning C Anläggning D Stad A 0 00 Stad B 00 0 ss E ss F Anläggning C 80 0 Anläggning D 0 00 Exempel: Limföretaget Lim AB tillverkar olika sorters lim; LimIt, LimAll och Standard. Råvarorna Klix, Kladd och Fästis används i olika proportioner vid tillverkningen beroende på vilket lim som skall framställas. I nedanstående tabell redovisas minrespektive maxgränser för hur andelen av de olika råmaterialen får variera i varje limsort för att garantera dess kvalitet. Råvara LimIt min LimIt max LimAll min LimAll max Standard min Standard max Klix Kladd Fästis För att tillverka kg lim åtgår kg råvara. Inköpspriset för råvarorna är respektive 00, 7, kr/kg. Försäljningspriset för respektive limsort är 00, 80, 0 kr/kg. Av olika anledningar måste limföretaget köpa lika mycket av Klix som av Fästis. Vidare kan företaget ej tillverka mer än 00 kg lim. Hur skall företaget planera sin produktionspolicy då målet är att maximera vinsten? Formulera och lös företagets problem. Lösningsförslag: Låt x ij vara mängden av råvara i som ingår i produkt j. Bilda också de två matriserna som formulerar recepten samt objektfunktion och bivillkor. X Array x,, ; p min ;p max 00 objfkn Total X. 00, 80, 0 X. 00, 7, biv Table p min i, j x k, j x i, j p max i, j x k, j, i,, j,, k x, j x, j 0, x i, j 00, Thread Flatten X 0 Flatten j i j 00 x, 80 x, 0 x, x, 0 x, x, 7 x, x, 9 x, k ; 0 x, x, x, x,, x, x, x, x, x, x, x,, x, x, x, x, x, x, x,, 7 x, x, x, x, x, x, x,,0 x, x, x, x,, 0 0 x, x, x, x,, x, x, x, x, x, x, x,, x, x, x, x, x, x, x,, 0 x, x, x, x,, x, x, x, x, x, x, 0, 0 x, x, x, x, x, x, x, x, x, 00, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0, x, 0 Här har vi 9 designvariabler och så här många bivillkor Length biv 0 Nu är det bara att blanda så vinsten blir maximal vinst, blanda Maximize objfkn, biv, Flatten X 0, x,, x, 0, x, 0, x,, x, 0, x, 0, x,, x, 0, x, 0 och inse att det är dax att sluta med LimAll och Standard!

20 0 Linjärprogrammering och Mathematica HH/ITE/BN X. blanda Exempel: Ett dataföretag har uppskattat antalet servicetimmar som måste utföras under de närmaste fem månaderna Månad Behov servicetimmar Januari 000 Februari 7000 Mars 8000 April 900 Maj 00 Servicen utförs av anställda tekniker som i början av Januari är 0 till antalet. Varje tekniker kan arbeta upp till 0 timmar per månad. För att täcka det framtida behovet av tekniker måste nya tekniker (praktikanter) utbildas. Denna utbildning tar en månad och kräver 0 timmars handledning av en utbildad tekniker. En utbildad tekniker har en månadslön på 0000 kr och en praktikant har en månadslön på 000 kr, oavsett antalet arbetstimmar under månaden. I slutet av varje månad slutar tekniker för arbete inom något annat företag. Formulera bemanningsproblemet som ett LP-problem vars lösning kommer att minimera den totala lönekostnaden för den givna perioden, givet att antalet servicetimmar tillgodoses. Lösningsförslag: Sätt igång och optimera bemanningen! Låt x i antal praktikanter som utbildas månad i, i,,, och y i antal tekniker som finns tillgängliga i början av månad i, i,,. tid 000, 7000, 8000, 900, 00 ; biv y 0, Table 0 y i 0 x i tid i, x i 0, y i 0, x i,y i Integers, i,, Table y i x i y i, i, Flatten y 0, 0 y 0 x 000, x 0, y 0, x y, 0 y 0 x 7000, x 0, y 0, x y, 0 y 0 x 8000, x 0, y 0, x y, 0 y 0 x 900, x 0, y 0, x y, 0 y 0 x 00, x 0, y 0, x y, x y y, x y y, x y y, x y y Minimize y i 000 x i, biv, Flatten Table x i,y i, i, i , x 0, y 0, x 8, y 8, x, y, x, y, x 0, y 7 Till ovanstående minimala lönekostnad har vi alltså följande utveckling av tekniker och nya praktikanter samt vilken kapacitet 0y i 0x i dessa har. Vi ser att det är lite mycket överkapacitet i början men optimeringen ser till att allt bättre och bättre anpassa kapacitet efter behov. Månad Behov servicetimmar Tekniker Praktikanter Kapacitet servicetimmar Januari Februari Mars April Maj Exempel: En storavdelning på ett sjukhus ska göra ett rullande veckoschema för sjuksköterskornas nattskift. Antalet sjuksköterskor som behövs varje natt ges av vidstående tabell. Varje sjuksköterska arbetar tre nätter i rad och är sedan ledig fyra nätter. Bestäm en plan för bemanningen som uppfyller behovet och minimerar antalet sjuksköterskor. Är det överkapacitet någon natt? Natt Behov Sön Mån 0 Tis 8 Ons 8 Tor Fre 8 Lör

21 HH/ITE/BN Linjärprogrammering och Mathematica Lösningsförslag: Låt x i, i,, 7 vara antalet sjuksköterskor som börjar arbeta natt nr i. Rullande schema. Kolonn ett sju är söndag lördag natt. Rad ett är de antal sjuksköterskor som börjar på söndag natt och arbetar tre nätter och sedan lediga fyra nätter. Rad två de som börjar måndag natt, och så vidare. X x,x,x,x,x,x,x 7 ; schema x x x x x x x x x x x x x x x x x x x 7 x x 7 ; Uppfyll bemanningskraven. Naturligtvis befattar vi oss bara med hela sjuksköterskor! biv Thread Total schema, 0, 8, 8,, 8,, Thread X 0, X Integers Flatten x x x 7, x x x 7 0, x x x 8, x x x 8, x x x, x x x 8, x x x 7, x 0, x 0, x 0, x 0, x 0, x 0, x 7 0, x x x x x x x 7 Sök nu optimal bemanning, det vill säga hur många som behöver börja natt i. antalanställda, bemanning Minimize Total X, biv, X, x 0, x, x, x 8, x 0, x 0, x 7 Det behövs minst sjuksköterskor på avdelningen och så här många är i tjänst natt i. Total schema. bemanning, 0, 0, 8,, 8, En jämförelse visar att det är överkapacitet endast på tisdag natt. Exempel:: På ett pappersbruk produceras stora pappersrullar. Dessa kallas tambours, vanligtvis några meter breda och en papperslängd på upp till 0 km. När en tambour producerats flyttas den till en maskin som skär den i mindre bredder. Dessa nya rullar kallas produktrullar och har en typisk efterfrågan från kunder. Varje sätt att skära en tambour kallas ett mönster. En pappersbruk har koncentrerat sig på följande fyra mönster för sina.9 m breda tambourer. Mönster Bredd m Spill m.,.0, , , , LP-problemet är att välja skärmönster som minimerar antalet tambours som behövs för att tillfredsställa kundens efterfrågan på rullar. En dag beställde en kund st rullar av bredd. m, 7 st med bredd.0 m och st med bredd 0.8 m. Hjälp pappersbruket med att lösa problemet. Endast hela tambours används! Inga rullar sparade från tidigare skärningar. Lösningsförslag: Låt x i vara antalet tambourer som ska sågas enligt mönster i. Vi har fyra mönster att välja bland. Typiskt LPproblem. X x,x,x,x ; mönster ; Xtt, Xt Minimize Total X, mönster.x, 7,, X 0, X Integers, X 8, x, x 8, x, x Så här många rullar blev det av varje bredd. Några extra, som kanske kan sparas till nästa beställning, eller låta kunden betala för allt. mönster.x. Xt, 7,

22 Linjärprogrammering och Mathematica HH/ITE/BN Exempel: En snickare besöker en brädgård i syfte att inhandla st bräder av längden m och st av längden m. Brädgården som inte är speciellt välsorterad kan bara erbjuda längderna m och m. Hur ska det inhandlas och sågas så att spillet minimeras? Lösningsförslag: Typiskt brädgårdsproblem. Låt x i och x j vara de sätt som man kan såga upp en bräda av längden m respektive m på. Gör två tabeller med antal av önskad längd och spill. m: Antal m Antal m Spill m x 0 x 0 0 x 0 m: Antal m Antal m Spill m x 0 x 0 x 0 x 0 Vi kan nu direkt formulera och skicka LP-problemet till Mathematica. Här krävs både likhetsbivillkor och heltal i lösningen. Minimize x 0x x x x x 0x, Spillet x x 0x x x 0x x, Önskat antal av m 0x 0x x 0x 0x x x, Önskat antal av m x 0, x 0, x 0, x 0, x 0, x 0, x 0, x,x,x,x,x,x,x Integers, x,x,x,x,x,x,x 0, x 0, x 0, x 0, x 0, x 0, x 0, x Snickaren skall alltså köpa 0 st av längden m och såga alla enligt x, st av längden m och såga alla enligt x. Spillet blir då 0 m. Vid mer omfattande beställning och välsorterad brädgård är handpåläggning utesluten. Systematiken framgår tydligt så det är lämpligt att generera (tabellerna och) LP-formuleringen med hjälp av Mathematica. Gör det gärna som övning!! Lite historik Linjärprogrammeringsproblem är i dag ett av de vanligaste problemen som uppkommer i samband med matematisk modellering. Varje dag löses mängder av LP-problem, ofta mycket stora med kanske flera hundra tusen designvariabler och bivillkor. Förmodligen är det den matematiska tillämpning, frånsett finita elementmetoden för hållfasthetsberäkningar, som utnyttjar mest datortid världen över. Av detta inses lätt att varje förbättring av lösningsalgoritmer och dess implementeringar i datorprogram kan spara mycket pengar. Detta skäl i sig skulle kunna vara tillräckligt för att sysselsätta många, men det finns också en annan mer teoretisk aspekt på LP-problemet. Hur mycket ökar tidsåtgången (antalet räkneoperationer) för att lösa ett LP-problem då antalet variabler ökar? Bekant är att simplexmetoden har exponentiell tillväxt, det vill säga att lösningstiden T a n om n är antalet designvariabler. För att hålla beräkningstider under kontroll är det alltid önskvärt är att ha algoritmer som har polynomiell tillväxt, T n k. Jämför Gauss eliminationsmetod där T n. George Dantzig 9 00 Leonid Kantorovich 9 98 John von Neumann Leonid Khachiyan 9 00 Narendra Karmarkar 97 Simplexmetoden går tillbaka till 90-talet, då George Dantzig presenterade embryot. Naturligtvis var det militära ändamål i USA som gjorde att hans grupp fick medel att koncentrera sig på uppgiften. Snarlikt angreppssätt har krediterats i efterhand åt ryssen Leonid Kantorovich (99), som vid denna tidpunkt hade svårt att publicera sig. Det dröjde nästan 0 år innan hans arbete uppmärksammades. År 97 fick han tillsammans med T.C. Koopmans från USA det så kallade nobelpriset i ekonomi för "bidrag till teorin för optimal resursanvändning". Under slutet av 0-talet och början av 0-talet fick Dantzig hjälp av John von Neumann, en av 900- talets stora matematiker, att slipa simplexmetoden till den form vi känner den idag. Tilläggas bör att von Neumann, som biprodukt i ett arbete 97, redan hade gjort det mesta jobbet. Men den teoretiska frågan om det finns någon algoritm för att lösa allmänna LP-problem inom polynomiell tid levde kvar. Svaret kom inte förrän 979 från armeniern Leonid Khachiyan. Det visade sig dock att implementeringar av denna så kallade ellipsoidme-

Något om Linjärprogrammering och Mathematica

Något om Linjärprogrammering och Mathematica HH/ITE/BN Linjärprogrammering och Mathematica Något om Linjärprogrammering och Mathematica Bertil Nilsson 0-08- max får 7kor får g får g får kor g då får kor g kor 7 g får 0 g kor 0 g 7 kor 070 90 0 8

Läs mer

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

Linjärprogramming. EG2205 Föreläsning 7, vårterminen 2015 Mikael Amelin Linjärprogramming EG2205 Föreläsning 7, vårterminen 2015 Mikael Amelin 1 Kursmål Formulera korttidsplaneringsproblem för vatten- och värmekraftsystem. 2 Tillämpad matematisk programming Korttidsplanering

Läs mer

Optimalitetsvillkor. Optimum? Matematisk notation. Optimum? Definition. Definition

Optimalitetsvillkor. Optimum? Matematisk notation. Optimum? Definition. Definition Optimum? När man har formulerat sin optimeringsmodell vill man lösa den Dvs finna en optimal lösning, x, till modellen Nästan alltid: Sökmetoder: Stå i en punkt, gå till en annan (bättre Upprepa, tills

Läs mer

MA2004 Tillämpad Matematik II, 7.5hp,

MA2004 Tillämpad Matematik II, 7.5hp, MA00 Tillämpad Matematik II, 7hp, 09-0-6 Hjälpmedel: Penna, radergummi och rak linjal Varken räknedosa eller formelsamling är tillåtet! Tentamen består av 0 frågor! Endast Svarsblanketten ska lämnas in!

Läs mer

De optimeringsproblem som kommer att behandlas i denna kurs kan alla (i princip) skrivas. 1 2 xt Hx + c T x. minimera

De optimeringsproblem som kommer att behandlas i denna kurs kan alla (i princip) skrivas. 1 2 xt Hx + c T x. minimera Krister Svanberg, mars 2012 1 Introduktion De optimeringsproblem som kommer att behandlas i denna kurs kan alla (i princip) skrivas på följande allmänna form: f(x) (1.1) x F, där x = (x 1,..., x n ) T

Läs mer

Speciell användning av heltalsvariabler. Heltalsprogrammering. Antingen-eller-villkor: Exempel. Speciell användning av heltalsvariabler

Speciell användning av heltalsvariabler. Heltalsprogrammering. Antingen-eller-villkor: Exempel. Speciell användning av heltalsvariabler Heltalsprogrammering Speciell användning av heltalsvariabler max z = då c j x j j= a ij x j b i j= x j 0 x j heltal i =,..., m j =,..., n j =,..., n ofta x j u j j =,..., n Oftast c, A, b heltal. Ibland

Läs mer

TNSL05 Optimering, Modellering och Planering. Föreläsning 4

TNSL05 Optimering, Modellering och Planering. Föreläsning 4 TNSL05 Optimering, Modellering och Planering Föreläsning 4 2018-11-14 2 Kursmål: idag Studenten ska efter avslutad kurs kunna: Analysera och formulera optimeringsmodeller inom ekonomiska tillämpningsområden

Läs mer

Lösningar till 5B1762 Optimeringslära för T, 24/5-07

Lösningar till 5B1762 Optimeringslära för T, 24/5-07 Lösningar till 5B76 Optimeringslära för T, 4/5-7 Uppgift (a) Först använder vi Gauss Jordans metod på den givna matrisen A = Addition av gånger första raden till andra raden ger till resultat matrisen

Läs mer

Linjärprogrammering (Kap 3,4 och 5)

Linjärprogrammering (Kap 3,4 och 5) Linjärprogrammering (Kap 3,4 och 5) Fredrik Olsson, fredrik.olsson@iml.lth.se Avdelningen för produktionsekonomi Lunds tekniska högskola, Lunds universitet 16 september 2015 Dessa sidor innehåller kortfattade

Läs mer

MA2004 Tillämpad Matematik II, 7.5hp,

MA2004 Tillämpad Matematik II, 7.5hp, MA004 Tillämpad Matematik II, 7.hp, 08-0- Hjälpmedel: Penna, radergummi och rak linjal. Varken räknedosa eller formelsamling är tillåtet! Tentamen består av 0 frågor! Endast Svarsblanketten ska lämnas

Läs mer

Lösningar till SF1861 Optimeringslära, 28 maj 2012

Lösningar till SF1861 Optimeringslära, 28 maj 2012 Lösningar till SF86 Optimeringslära, 28 maj 202 Uppgift.(a) Då det primala problemet P är så är det motsvarande duala problemet D minimera 3x + x 2 då 3x + 2x 2 6 x + 2x 2 4 x j 0, j =, 2. maximera 6 +

Läs mer

Föreläsning 2: Simplexmetoden. 1. Repetition av geometriska simplexmetoden. 2. Linjärprogrammeringsproblem på standardform.

Föreläsning 2: Simplexmetoden. 1. Repetition av geometriska simplexmetoden. 2. Linjärprogrammeringsproblem på standardform. Föreläsning 2: Simplexmetoden. Repetition av geometriska simplexmetoden. 2. Linjärprogrammeringsproblem på standardform. 3. Simplexalgoritmen. 4. Hur bestämmer man tillåtna startbaslösningar? Föreläsning

Läs mer

Optimeringslara = matematik som syftar till att analysera och. Optimeringslara ar en gren av den tillampade matematiken.

Optimeringslara = matematik som syftar till att analysera och. Optimeringslara ar en gren av den tillampade matematiken. Optimal = basta mojliga. Optimeringslara = matematik som syftar till att analysera och nna det basta mojliga. Anvands oftast till att nna ett basta handlingsalternativ i tekniska och ekonomiska beslutsproblem.

Läs mer

Tentamensinstruktioner

Tentamensinstruktioner TNSL05 1(8) TENTAMEN Datum: 1 april 2016 Tid: XXX Sal: XXX Provkod: TEN1 Kursnamn: TNSL05 Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt

Läs mer

MA2004 Tillämpad Matematik II, 7.5hp,

MA2004 Tillämpad Matematik II, 7.5hp, MA004 Tillämpad Matematik II, 7.5hp, 09-06-07 Hjälpmedel: Penna, radergummi och rak linjal. Varken räknedosa eller formelsamling är tillåtet! Tentamen består av 0 frågor! Endast Svarsblanketten ska lämnas

Läs mer

1 Duala problem vid linjär optimering

1 Duala problem vid linjär optimering Krister Svanberg, april 2012 1 Duala problem vid linjär optimering Detta kapitel handlar om två centrala teoretiska resultat för LP, nämligen dualitetssatsen och komplementaritetssatsen. Först måste vi

Läs mer

Optimeringsproblem. 1 Inledning. 2 Optimering utan bivillkor. CTH/GU STUDIO 6 TMV036c /2015 Matematiska vetenskaper

Optimeringsproblem. 1 Inledning. 2 Optimering utan bivillkor. CTH/GU STUDIO 6 TMV036c /2015 Matematiska vetenskaper CTH/GU STUDIO TMV3c - 1/15 Matematiska vetenskaper Optimeringsproblem 1 Inledning Vi skall söka minsta eller största värdet hos en funktion på en mängd, dvs. vi skall lösa s.k. optimeringsproblem min f(x)

Läs mer

1 LP-problem på standardform och Simplexmetoden

1 LP-problem på standardform och Simplexmetoden Krister Svanberg, mars 202 LP-problem på standardform och Simplexmetoden I detta avsnitt utgår vi från LP-formuleringen (2.2) från föreläsning. Denna form är den bäst lämpade för en strömlinjeformad implementering

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP14/TEN 1 OPTIMERINGSLÄRA GRUNDKURS för I, Ii och TB Datum: 24 augusti 2009 Tid: 8.00-13.00 Hjälpmedel: Lundgren m fl: Optimeringslära och/eller Lundgren

Läs mer

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Torsdag 28 maj 2010 kl

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Torsdag 28 maj 2010 kl Lösningsförslag till tentamen i SF86 Optimeringslära för T. Torsdag 28 maj 2 kl. 4. 9. Examinator: Per Enqvist, tel. 79 62 98. (a) Inför variablerna x = (x sr, x sm, x sp, x sa, x sd, x gr, x gm, x gp,

Läs mer

Tentamensinstruktioner

Tentamensinstruktioner TNSL05 1(9) TENTAMEN Datum: 6 april 2018 Tid: 14-18 Provkod: TEN1 Kursnamn: TNSL05 Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt 12 p,

Läs mer

LP-problem. Vårt första exempel. Baslösningar representerar extrempunkter. Baslösningar representerar extrempunkter

LP-problem. Vårt första exempel. Baslösningar representerar extrempunkter. Baslösningar representerar extrempunkter LP-problem Vårt första exempel Ett LP-problem: max z = c T x då Ax b, x 0. Den tillåtna mängden är en polyeder och konvex. Målfunktionen är linjär och konvex. Så problemet är konvext. Var ligger optimum?

Läs mer

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister Vektorgeometri för gymnasister Per-Anders Svensson http://w3.msi.vxu.se/users/pa/vektorgeometri/gymnasiet.html Institutionen för datavetenskap, fysik och matematik Linnéuniversitetet Vektorer i planet

Läs mer

min c 1 x 1 + c 2 x 2 då x 1 + x 2 = 1, x 1 {0, 1}, x 2 {0, 1} plus andra bivillkor. Vi måste göra k st av n alternativ:

min c 1 x 1 + c 2 x 2 då x 1 + x 2 = 1, x 1 {0, 1}, x 2 {0, 1} plus andra bivillkor. Vi måste göra k st av n alternativ: Heltalsprogrammering Speciell användning av heltalsvariabler max z = då n c j x j j= n a ij x j b i j= x j 0 x j heltal i =,..., m j =,..., n j =,..., n ofta x j u j j =,..., n Oftast c, A, b heltal. Ibland

Läs mer

TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM

TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Matematiska institutionen Optimeringslära TENTAMEN TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Datum: 19 april 2017 Tid: 14.00-19.00 Hjälpmedel: Miniräknare Kurslitteraturen: Kaj Holmberg:

Läs mer

Lösningar till tentan i SF1861 Optimeringslära, 3 Juni, 2016

Lösningar till tentan i SF1861 Optimeringslära, 3 Juni, 2016 Lösningar till tentan i SF86 Optimeringslära, 3 Juni, 6 Uppgift (a) We note that each column in the matrix A contains one + and one, while all the other elements in the column are zeros We also note that

Läs mer

min c 1 x 1 + c 2 x 2 då x 1 + x 2 = 1, x 1 {0, 1}, x 2 {0, 1} plus andra bivillkor. Vi måste göra k st av n alternativ:

min c 1 x 1 + c 2 x 2 då x 1 + x 2 = 1, x 1 {0, 1}, x 2 {0, 1} plus andra bivillkor. Vi måste göra k st av n alternativ: Heltalsprogrammering Speciell användning av heltalsvariabler max z = då c j x j a ij x j b i x j 0 x j heltal i =,..., m j =,..., n j =,..., n ofta x j u j j =,..., n Oftast c, A, b heltal. Ibland u j

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 1 OPTIMERING FÖR INGENJÖRER för M/EMM Datum: januari 2013 Tid: 14.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

Tentamensinstruktioner

Tentamensinstruktioner TNSL05 (6) TENTAMEN Datum: augusti 07 Tid: 8- Provkod: TEN Kursnamn: TNSL05 Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt p, betyg kräver

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Datum: januari 01 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

Optimeringslära 2013-11-01 Kaj Holmberg

Optimeringslära 2013-11-01 Kaj Holmberg Tekniska Högskolan i Linköping Optimering för ingenjörer Matematiska Institutionen Lösning till tentamen Optimeringslära 23-- Kaj Holmberg Uppgift a: Problemet skrivet i standardform är: Lösningar min

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER för EMM Datum: 2 augusti 2011 Tid: 8.00-1.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED Matematiska institutionen Optimeringslära TENTAMEN TAOP8/TEN 1 KOMBINATORISK OPTIMERING MED MILJÖTILLÄMPNINGAR Datum: januari 01 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering

Läs mer

1(8) x ijt = antal mobiltelefoner av typ i=1,,m, Som produceras på produktionslina 1,, n, Under vecka t=1,,t.

1(8) x ijt = antal mobiltelefoner av typ i=1,,m, Som produceras på produktionslina 1,, n, Under vecka t=1,,t. 1(8) (5p) Uppgift 1 Företaget KONIA tillverkar mobiltelefoner I en stor fabrik med flera parallella produktionslinor. För att planera produktionen de kommande T veckorna har KONIA definierat följande icke-negativa

Läs mer

Optimeringslära för T (SF1861)

Optimeringslära för T (SF1861) Optimeringslära för T (SF1861) 1. Kursinformation 2. Exempel på optimeringsproblem 3. Introduktion till linjärprogrammering Introduktion - Ulf Jönsson & Per Enqvist 1 Linjärprogrammering Kursinformation

Läs mer

e 3 e 2 e 1 Kapitel 3 Vektorer i planet och i rummet precis ett sätt skrivas v = x 1 e 1 + x 2 e 2

e 3 e 2 e 1 Kapitel 3 Vektorer i planet och i rummet precis ett sätt skrivas v = x 1 e 1 + x 2 e 2 Kapitel 3 Vektorer i planet och i rummet B e 3 e 2 A e 1 C Figur 3.16 Vi har ritat de riktade sträckor som representerar e 1, e 2, e 3 och v och som har utgångspunkten A. Vidare har vi skuggat planet Π

Läs mer

Tillämpad Matematik II Övning 2

Tillämpad Matematik II Övning 2 HH/ITE/BN Tillämpad Matematik II, Övning Tillämpad Matematik II Övning Allmänt Övningsuppgifterna, speciellt Typuppgifter i första hand, är exempel på uppgifter du kommer att möta på tentamen. På denna

Läs mer

1. Vad är optimering?

1. Vad är optimering? . Vad är optimering? Man vill hitta ett optimum, när något är bäst, men att definiera vad som är bäst är inte alltid så självklart. För att kunna jämföra olika fall samt avgöra vad som är bäst måste man

Läs mer

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN KOMBINATORISK OPTIMERING GRUNDKURS för D och C Datum: 17 januari 01 Tid: 8.00-1.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering.

Läs mer

Laboration 1 - Simplexmetoden och modellformulering

Laboration 1 - Simplexmetoden och modellformulering Linköpings universitet Optimeringslära grundkurs för Y Matematiska institutionen Laboration 1 Optimeringslära 29 januari 2017 Laboration 1 - Simplexmetoden och modellformulering Den första delen av laborationen

Läs mer

7 Extremvärden med bivillkor, obegränsade områden

7 Extremvärden med bivillkor, obegränsade områden Nr 7, 1 mars -5, Amelia 7 Extremvärden med bivillkor, obegränsade områden Största och minsta värden handlar om en funktions värdemängd. Värdemängden ligger givetvis mellan det största och minsta värdet,

Läs mer

Laboration 1 - Simplexmetoden och Modellformulering

Laboration 1 - Simplexmetoden och Modellformulering Linköpings universitet Optimeringslära grundkurs för Y Matematiska institutionen Laboration 1 Optimeringslära 30 januari 2013 Laboration 1 - Simplexmetoden och Modellformulering Den första delen av laborationen

Läs mer

Optimering. Optimering av transportproblem. Linköpings universitet SL. Campusveckan VT2013

Optimering. Optimering av transportproblem. Linköpings universitet SL. Campusveckan VT2013 Optimering Optimering av transportproblem Campusveckan VT2013 Linköpings universitet SL 1 Optimering - Distributionsproblem Företaget Kulprodukter AB producerar sina kulor vid fyra olika fabriksanläggningar

Läs mer

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Onsdag 25 augusti 2010 kl

Lösningsförslag till tentamen i SF1861 Optimeringslära för T. Onsdag 25 augusti 2010 kl Lösningsförslag till tentamen i SF86 Optimeringslära för T. Onsdag 25 augusti 2 kl. 4. 9. Examinator: Per Enqvist, tel. 79 62 98. (a) Vi har ett nätverksflödesproblem med 5 noder. Låt x = (x 2, x 3, x

Läs mer

TENTAMEN. Tentamensinstruktioner. Datum: 30 augusti 2018 Tid: 8-12

TENTAMEN. Tentamensinstruktioner. Datum: 30 augusti 2018 Tid: 8-12 1( 9) TENTAMEN Datum: 30 augusti 2018 Tid: 8-12 Provkod: TEN1 Kursnamn: Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt 12 p, betyg kräver

Läs mer

Optimeringslära Kaj Holmberg

Optimeringslära Kaj Holmberg Tekniska Högskolan i Linköping Optimering för ingenjörer Matematiska Institutionen Lösning till tentamen Optimeringslära 26-6- Kaj Holmberg Lösningar Uppgift Hinkpackning (hink = tur med cykeln. Jag använder

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER för M/EMM Datum: 8 januari 201 Tid: 8.00-13.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering

Läs mer

TNSL05 Optimering, Modellering och Planering. Föreläsning 2: Forts. introduktion till matematisk modellering

TNSL05 Optimering, Modellering och Planering. Föreläsning 2: Forts. introduktion till matematisk modellering TNSL05 Optimering, Modellering och Planering Föreläsning 2: Forts. introduktion till matematisk modellering 2017-11-01 2 Dagordning Matematisk modellering, Linjära Problem (LP) Terminologi Målfunktion

Läs mer

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 1 KOMBINATORISK OPTIMERING MED MILJÖTILLÄMPNINGAR för IT Datum: 2 oktober 2013 Tid:.00-13.00 Hjälpmedel: Miniräknare Kaj Holmberg: Optimering.

Läs mer

TAOP07/TEN1 OPTIMERINGSLÄRA GRUNDKURS för Y. Antal uppgifter: 7 Uppgifterna är inte ordnade efter svårighetsgrad.

TAOP07/TEN1 OPTIMERINGSLÄRA GRUNDKURS för Y. Antal uppgifter: 7 Uppgifterna är inte ordnade efter svårighetsgrad. Matematiska institutionen Optimeringslära TENTAMEN TAOP07/TEN1 OPTIMERINGSLÄRA GRUNDKURS för Y Datum: 27 augusti 2013 Tid: 14-19 Hjälpmedel: Inga Antal uppgifter: 7 Uppgifterna är inte ordnade efter svårighetsgrad.

Läs mer

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED Matematiska institutionen Optimeringslära TENTAMEN TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED MILJÖTILLÄMPNINGAR för IT Datum: 16 mars 010 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kaj Holmberg: Kombinatorisk

Läs mer

Tentamensinstruktioner

Tentamensinstruktioner TNSL05 1(7) TENTAMEN Datum: 1 april 2016 Tid: 14-18 Provkod: TEN1 Kursnamn: TNSL05 Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt 12 p,

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 1 OPTIMERING FÖR INGENJÖRER Datum: januari 2016 Tid: 1.00-19.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN OPTIMERING FÖR INGENJÖRER för M/EMM Datum: oktober 0 Tid:.00-9.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

Tentamensinstruktioner

Tentamensinstruktioner TNSL05 1(7) TENTAMEN Datum: 21 april 2017 Tid: 14-18 Provkod: TEN1 Kursnamn: TNSL05 Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt 12 p,

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN OPTIMERING FÖR INGENJÖRER Datum: 0 oktober 0 Tid: 8.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar i

Läs mer

Lösningar till tentan i SF1861 Optimeringslära, 1 juni 2017

Lösningar till tentan i SF1861 Optimeringslära, 1 juni 2017 Lösningar till tentan i SF86 Optimeringslära, juni 7 Lösningarna är på svenska, utom lösningen av (a som är på engelska (a The considered network is illustrated in FIGURE below, where the supply at the

Läs mer

Något om Dimensionsanalys och Mathematica. Assume period T Cm Α g Β L Γ s 1 kg Α m Β m Γ s 1 kg Α m Β. Identify exponents VL HL kg 0 Α m 0 Β Γ s 1 2 Β

Något om Dimensionsanalys och Mathematica. Assume period T Cm Α g Β L Γ s 1 kg Α m Β m Γ s 1 kg Α m Β. Identify exponents VL HL kg 0 Α m 0 Β Γ s 1 2 Β HH/ITE/BN Dimensionsanalys och Mathematica 1 Något om Dimensionsanalys och Mathematica Bertil Nilsson 2016-08-15 Assume period T Cm Α g Β Γ s 1 kg Α m Β m Γ s 2 s 1 kg Α m Β s 2Β m Γ Identify exponents

Läs mer

5B1817 Tillämpad ickelinjär optimering. Kvadratisk programmering med olikhetsbivillkor Active-set metoder

5B1817 Tillämpad ickelinjär optimering. Kvadratisk programmering med olikhetsbivillkor Active-set metoder 5B1817 Tillämpad ickelinjär optimering Föreläsning 7 Kvadratisk programmering med olikhetsbivillkor Active-set metoder A. Forsgren, KTH 1 Föreläsning 7 5B1817 2006/2007 Kvadratisk programmering med olikhetsbivillkor

Läs mer

Lösningsförslag till skrivningen i Vektorgeometri (MAA702) måndagen den 30 maj 2005

Lösningsförslag till skrivningen i Vektorgeometri (MAA702) måndagen den 30 maj 2005 VÄXJÖ UNIVERSITET Matematiska och systemtekniska institutionen Per-Anders Svensson Lösningsförslag till skrivningen i Vektorgeometri (MAA702) måndagen den 30 maj 2005 Uppgift. Bestäm samtliga vektorer

Läs mer

TNK049 Optimeringslära

TNK049 Optimeringslära TNK049 Optimeringslära Clas Rydergren, ITN Föreläsning 3 Problemklassificering Global/lokal optimalitet Konvexitet Generella sökmetoder Agenda Problemklassificering (kap 1.4, 2.1 2.3) Lokalt/globalt optimum

Läs mer

Tentamensinstruktioner

Tentamensinstruktioner TNSL05 1(9) TENTAMEN Datum: augusti 017 Tid: 8-1 Provkod: TEN1 Kursnamn: TNSL05 Optimering, modellering och planering Institution: ITN Antal uppgifter: 5 Betygskrav: För godkänt krävs normalt 1 p, betyg

Läs mer

Lösningar till SF1861/SF1851 Optimeringslära, 24/5 2013

Lösningar till SF1861/SF1851 Optimeringslära, 24/5 2013 Lösningar till SF86/SF85 Optimeringslära, 4/5 03 Uppgift (a) Inför de 3 variablerna x ij = kvantitet (i sorten ton) som fabrik nr i åläggs att tillverka av produkt nr j, samt t = tiden (i sorten timmar)

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 1 OPTIMERING FÖR INGENJÖRER för M/EMM Datum: 1 november 2013 Tid:.00-13.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN OPTIMERING FÖR INGENJÖRER Datum: juni 0 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar i boken får

Läs mer

1 Ickelinjär optimering under bivillkor

1 Ickelinjär optimering under bivillkor Krister Svanberg, maj 2012 1 Ickelinjär optimering under bivillkor Hittills har vi behandlat optimeringsproblem där alla variabler x j kunnat röra sig fritt, oberoende av varann, och anta hur stora eller

Läs mer

Vinsten (exklusive kostnaden för inköp av kemikalier) vid försäljning av 1 liter fönsterputs är 2 kr för F1 och 3 kr för F3.

Vinsten (exklusive kostnaden för inköp av kemikalier) vid försäljning av 1 liter fönsterputs är 2 kr för F1 och 3 kr för F3. TNSL05 2(8) (5p) Uppgift 1 Företaget XAJA tillverkar två olika sorters rengöringsprodukter för fönsterputsning, benämnda F1 och F2. Förutom vatten, som ingår i båda produkterna är, innehållet ett antal

Läs mer

1 Konvexa optimeringsproblem grundläggande egenskaper

1 Konvexa optimeringsproblem grundläggande egenskaper Krister Svanberg, april 2012 1 Konvexa optimeringsproblem grundläggande egenskaper Ett optimeringsproblem är i viss mening godartat om det tillåtna området är en konvex mängd och den målfunktion som ska

Läs mer

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C Datum: 2 augusti 2011 Tid: 8.00-1.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering

Läs mer

När det gäller en motor kanske man vill maximera verkningsgraden för att hålla nere bränslekostnaden men inte till vilket pris som helst.

När det gäller en motor kanske man vill maximera verkningsgraden för att hålla nere bränslekostnaden men inte till vilket pris som helst. Vad är optimering? Man vill hitta ett optimum, när något är bäst. Men att definiera vad som är bäst är inte alltid så självklart. När det gäller en motor kanske man vill maximera verkningsgraden för att

Läs mer

Tentamensinstruktioner. När Du löser uppgifterna

Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN OPTIMERING FÖR INGENJÖRER för M/EMM Datum: 29 maj 20 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar

Läs mer

Optimeringslära Kaj Holmberg

Optimeringslära Kaj Holmberg Tekniska Högskolan i Linköping TAOP88 Matematiska Institutionen Lösning till tentamen Optimeringslära 9--7 Kaj Holmberg Lösningar Uppgift a: Inför slackvariabler x 5, x 6 och x 7 Starta med slackvariablerna

Läs mer

SF1545 Laboration 1 (2015): Optimalt sparande

SF1545 Laboration 1 (2015): Optimalt sparande Avsikten med denna laboration är att: SF1545 Laboration 1 (215: Optimalt sparande - snabbt komma igång med träning på matlabprogrammering (uttnyttja gärna alla schemalagda laborationstillfällen, - lösa

Läs mer

Laborationsuppgift 1 Tillämpad optimeringslära för MMT (5B1722)

Laborationsuppgift 1 Tillämpad optimeringslära för MMT (5B1722) Laborationsuppgift 1 Tillämpad optimeringslära för MMT (5B1722) Februari 2004 Avdelningen för Optimeringslära och Systemteori Institutionen för Matematik Kungliga Tekniska Högskolan Stockholm Allmän information

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP88/TEN OPTIMERING FÖR INGENJÖRER Datum: juni 0 Tid: 8.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar i boken

Läs mer

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C. Tentamensinstruktioner. När Du löser uppgifterna

TAOP33/TEN 2 KOMBINATORISK OPTIMERING GRUNDKURS för D och C. Tentamensinstruktioner. När Du löser uppgifterna Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN KOMBINATORISK OPTIMERING GRUNDKURS för D och C Datum: juni 0 Tid:.00-9.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering. Kaj

Läs mer

Optimering av olika slag används inom så vitt skilda områden som produktionsplanering,

Optimering av olika slag används inom så vitt skilda områden som produktionsplanering, Anders Johansson Linjär optimering Exempel på användning av analoga och digitala verktyg i undervisningen Kursavsnittet linjär optimering i Matematik 3b kan introduceras med såväl analoga som digitala

Läs mer

Olinjär optimering med bivillkor: KKT min f (x) då g i (x) 0 för alla i

Olinjär optimering med bivillkor: KKT min f (x) då g i (x) 0 för alla i Olinjär optimering med bivillkor min då f (x) g i (x) 0 för alla i Specialfall: Konvext problem. Linjära bivillkor: Ax b. Linjära likhetsbivillkor: Ax = b. Inga bivillkor: Hanterat tidigare. Metodprinciper:

Läs mer

MICROECONOMICS Mid Sweden University, Sundsvall (Lecture 2) Peter Lohmander &

MICROECONOMICS Mid Sweden University, Sundsvall (Lecture 2) Peter Lohmander   & MICROECONOMICS 2018 Mid Sweden University, Sundsvall (Lecture 2) Peter Lohmander www.lohmander.com & Peter@Lohmander.com NYTT MÖTE: Diskutera Ert förslag till lämpligt problem med kursledaren (Peter Lohmander)

Läs mer

Matematik och grafik i mikroekonomiska modeller

Matematik och grafik i mikroekonomiska modeller Matematik och grafik i mikroekonomiska modeller Hur bestäms resursfördelningen i en marknadsekonomi? Utbud, efterfrågan priser Bakom detta ligger i sin tur beslut av enskilda företag och hushåll, marknadskrafterna

Läs mer

Talmängder. Målet med första föreläsningen:

Talmängder. Målet med första föreläsningen: Moment 1..1, 1.., 1..4, 1..5, 1.. 1..5, 1..6 Viktiga exempel 1.7, 1.8, 1.8,1.19,1. Handräkning 1.7, 1.9, 1.19, 1.4, 1.9 b,e 1.0 a,b Datorräkning 1.6-1.1 Målet med första föreläsningen: 1 En första kontakt

Läs mer

MULTIPLIKATION AV MATRISER, BASER I RUMMET SAMT FÖRSTA MÖTET MED MATRISINVERSER = = =

MULTIPLIKATION AV MATRISER, BASER I RUMMET SAMT FÖRSTA MÖTET MED MATRISINVERSER = = = Matematiska institutionen Stockholms universitet CG Matematik med didaktisk inriktning 2 Problem i Algebra, geometri och kombinatorik Snedsteg 5 MULTIPLIKATION AV MATRISER, BASER I RUMMET SAMT FÖRSTA MÖTET

Läs mer

Vinsten (exklusive kostnaden för inköp av kemikalier) vid försäljning av 1 liter fönsterputs är 2 kr för F1 och 3 kr för F3.

Vinsten (exklusive kostnaden för inköp av kemikalier) vid försäljning av 1 liter fönsterputs är 2 kr för F1 och 3 kr för F3. TNSL05 (10) (5p) Uppgift 1 Företaget XAJA tillverkar två olika sorters rengöringsprodukter för fönsterputsning, benämnda F1 och F. Förutom vatten, som ingår i båda produkterna är, innehållet ett antal

Läs mer

Tentamensinstruktioner. Vid skrivningens slut

Tentamensinstruktioner. Vid skrivningens slut Matematiska institutionen Optimeringslära TENTAMEN TAOP14/TEN1 OPTIMERINGSLÄRA GRUNDKURS för I och Ii Datum: 13:e januari 2011 Tid: 8.00 13.00 Hjälpmedel: Kurslitteratur av Lundgren m fl: Optimeringslära

Läs mer

Sidor i boken Figur 1: Sträckor

Sidor i boken Figur 1: Sträckor Sidor i boken 37-39 Vektorer Det vi ska studera här är bara en liten del av den teori du kommer att stifta bekantskap med i dina fortsatta studier i kursen Linjär algebra. Många av de objekt man arbetar

Läs mer

Optimeringslära Kaj Holmberg

Optimeringslära Kaj Holmberg Tekniska Högskolan i Linköping Optimering för ingenjörer Matematiska Institutionen Lösning till tentamen Optimeringslära 28-5-3 Kaj Holmberg Lösningar Uppgift a: P: Grafisk lösning ger x = 2/7 = 2 6/7,

Läs mer

Extrempunkt. Polyeder

Extrempunkt. Polyeder Optimum? När man har formulerat sin optimeringsmodell vill man lösa den. Dvs. finna en optimal lösning, x, till modellen. Nästan alltid: Sökmetoder: Stå i en punkt, gå till en annan bättre. Upprepa, tills

Läs mer

Del A: Digitala verktyg är inte tillåtna. Endast svar krävs. Skriv dina svar direkt på provpappret.

Del A: Digitala verktyg är inte tillåtna. Endast svar krävs. Skriv dina svar direkt på provpappret. NAN: KLASS: Del A: Digitala verktyg är inte tillåtna. Endast svar krävs. Skriv dina svar direkt på provpappret. 1) a) estäm ekvationen för den räta linjen i figuren. b) ita i koordinatsystemet en rät linje

Läs mer

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED

TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED Matematiska institutionen Optimeringslära TENTAMEN TAOP86/TEN 1 KOMBINATORISK OPTIMERING MED MILJÖTILLÄMPNINGAR för IT Datum: 10 mars 01 Tid: 8.00-1.00 Hjälpmedel: Miniräknare Kaj Holmberg: Optimering.

Läs mer

TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM

TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Matematiska institutionen Optimeringslära TENTAMEN TAOP61/TEN 1 OPTIMERING AV REALISTISKA SAMMANSATTA SYSTEM Datum: 26 augusti 2014 Tid: 8.00-13.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg:

Läs mer

Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet

Flöde i nätverk. Flöde i nätverk. Specialfall av minkostnadsflödesproblemet Flöde i nätverk Graf: G = (N, B) Variabeldefinition: x ij = flöde i båge (i, j). Bågdata för båge (i, j): c ij : flödeskostnad per enhet. u ij : övre gräns för flödet. l ij : undre gräns för flödet. Bivillkor:

Läs mer

MA4021 Vektorgeometri, Projekt 2

MA4021 Vektorgeometri, Projekt 2 HH/IDE/BN Projekt 2 1 MA4021 Vektorgeometri, Projekt 2 Allmänt Skriv klart och tydligt. Motivera väl! Tänk på att skriva så att fler än ni själva förstår vad ni menar. Rita alltid tydliga figurer där variabler

Läs mer

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER

TAOP88/TEN 1 OPTIMERING FÖR INGENJÖRER Matematiska institutionen Optimeringslära TENTAMEN TAOP/TEN OPTIMERING FÖR INGENJÖRER Datum: augusti 0 Tid:.00-.00 Hjälpmedel: Miniräknare Kurslitteratur: Kaj Holmberg: Optimering Anteckningar i boken

Läs mer

Funktioner. Räta linjen

Funktioner. Räta linjen Sidor i boken 14-143, 145-147 Funktioner. Räta linjen Här följer en dialog mellan studenten Tor-Björn (hädanefter kallad TB) och hans lärare i matematik Karl-Ture Hansson (nedan kallad KTH). När vi möter

Läs mer

Sidor i boken f(x) = a x 2 +b x+c

Sidor i boken f(x) = a x 2 +b x+c Sidor i boken 18-151 Andragradsfunktioner Här ska vi studera andragradsfunktionen som skrivs f(x) = ax +bx+c där a, b, c är konstanter (reella tal) och där a 0. Grafen (kurvan) till f(x), y = ax + bx +

Läs mer

TNSL05 Optimering, Modellering och Planering. Föreläsning 6

TNSL05 Optimering, Modellering och Planering. Föreläsning 6 TNSL05 Optimering, Modellering och Planering Föreläsning 6 Agenda Kursens status Tolkning av utdata Intro lösningsmetoder Linjära optimeringsproblem (LP) på standardform Algebraisk formulering av LP Konveitet

Läs mer

13 Potensfunktioner. Vi ska titta närmare på några potensfunktioner och skaffa oss en idé om hur deras kurvor ser ut. Vi har tidigare sett grafen till

13 Potensfunktioner. Vi ska titta närmare på några potensfunktioner och skaffa oss en idé om hur deras kurvor ser ut. Vi har tidigare sett grafen till 3 Potensfunktioner 3. Dagens teori Vi ska titta närmare på några potensfunktioner och skaffa oss en idé om hur deras kurvor ser ut. Vi har tidigare sett grafen till f(x) = x 8 6 4 2-3 -2-2 3-2 -4-6 -8

Läs mer

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition

Träd. Sats. Grafer. Definition. En fullständig graf har en båge mellan varje par av noder. Definition Grafdefinitioner Träd N = {i}: noder (hörn) = {(i, j)}, i N, j N: bågar (kanter) Graf: G = (N, ) efinitioner Väg: Sekvens av angränsande bågar. ykel: Väg som startar och slutar i samma nod. En enkel väg

Läs mer

Tillämpad Matematik II Övning 2

Tillämpad Matematik II Övning 2 HH/ITE/BN Tillämpad Matematik II, Övning Tillämpad Matematik II Övning Allmänt Övningsuppgifterna, speciellt Typuppgifter i första hand, är exempel på uppgifter du kommer att möta på tentamen. På denna

Läs mer

Dynamisk programmering. Dynamisk programmering. Dynamisk programmering. Dynamisk programmering

Dynamisk programmering. Dynamisk programmering. Dynamisk programmering. Dynamisk programmering Betrakta ett lagerhållningsproblem i flera tidsperioder. Vi har tillverkning och försäljning av produkter i varje tidsperiod. Dessutom kan vi lagra produkter mellan tidsperioder, för att utnyttja stordriftsfördelar

Läs mer