Datorlaboration :: 1 Problembeskrivning ::



Relevanta dokument
. (2p) 2x + 2y + z = 4 y + 2z = 2 4x + 3y = 6

SF1624 Algebra och geometri Tentamen Onsdagen 29 oktober, 2014

För studenter på distans och campus Linjär algebra ma014a ATM-Matematik Mikael Forsberg

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

2 = 3 = 1. ekvationssystem är beskriven som de vektorer X =

SKRIVNING I VEKTORGEOMETRI

SF1624 Algebra och geometri Lösningsförslag med bedömningskriterier till kontrollskrivning 2 Måndagen den 24 september, 2012

x 2y + z = 1 (1) 2x + y 2z = 3 (2) x + 3y z = 4 (3)

Exempel :: Spegling i godtycklig linje.

M = c c M = 1 3 1

1. (Dugga 1.1) (a) Bestäm v (3v 2u) om v = . (1p) and u =

Preliminärt lösningsförslag

Frågorna 1 till 6 ska svaras med ett kryss för varje korrekt påstående. Varje uppgift ger 1 poäng.

Exempel :: Spegling i godtycklig linje.

TMV166 Linjär algebra för M. Datorlaboration 2: Matrisalgebra och en mekanisk tillämpning

Chalmers tekniska högskola Datum: kl Telefonvakt: Linnea Hietala MVE480 Linjär algebra S

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

Grafer och grannmatriser

Preliminärt lösningsförslag

Instruktion för laboration 1

MMA132: Laboration 2 Matriser i MATLAB

Tentamen TMV140 Linjär algebra Z

3x + y z = 0 4x + y 2z = 0 2x + y = Lös det överbestämda systemet nedan på bästa sätt i minsta kvadratmening. x = 1 x + y = 1 x + 2y = 2

SKRIVNING I VEKTORGEOMETRI

Instruktion för laboration 1

2s + 3t + 5u = 1 5s + 3t + 2u = 1 3s 3u = 1

1. (a) Bestäm alla värden på c som gör att matrisen A(c) saknar invers: c 1

SKRIVNING I VEKTORGEOMETRI

Laboration: Vektorer och matriser

Linjär algebra med tillämpningar, lab 1

Linjär algebra/matematik. TM-Matematik Mikael Forsberg ma014a, ma031a

3. Lös det överbestämda systemet nedan på bästa sätt i minsta kvadratmening. x + y = 1 x + 2y = 3 x + 3y = 4 x + 4y = 6

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

Linjär Algebra M/TD Läsvecka 1

2x + y + 3z = 4 x + y = 1 x 2y z = 3

Linjär algebra på några minuter

Matriser och vektorer i Matlab

Begrepp :: Determinanten

TMV166 Linjär Algebra för M. Tentamen

15 september, Föreläsning 5. Tillämpad linjär algebra

14 september, Föreläsning 5. Tillämpad linjär algebra

Version Linjär algebra kapiltet från ett ODE-kompendium. Mikael Forsberg

TMV166/186 Linjär Algebra M/TD 2011/2012 Läsvecka 1. Omfattning. Innehåll Lay, kapitel , Linjära ekvationer i linjär algebra


Lösningar till några övningar inför lappskrivning nummer 3 på kursen Linjär algebra för D, vt 15.

Matematiska Institutionen KTH. Lösning till tentamensskrivning på kursen Linjär algebra, SF1604, den 15 mars 2012 kl

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

Objective:: Linjärt beroende och oberoende version 1.0

6. Matriser Definition av matriser 62 6 MATRISER. En matris är ett rektangulärt schema av tal: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n A =

(d) Mängden av alla x som uppfyller x = s u + t v + (1, 0, 0), där s, t R. (e) Mängden av alla x som uppfyller x = s u där s är ickenegativ, s 0.

Del 1: Godkäntdelen. TMV142 Linjär algebra Z

2x + y + 3z = 1 x 2y z = 2 x + y + 2z = 1

Övningstenta 001. Alla Linjär Algebra. TM-Matematik Sören Hector Mikael Forsberg. 1. x 2y z + v = 0 z + u + v = 3 x + 2y + 2u + 2v = 4 z + 2u + 5v = 0

2 1 1 s s. M(s) = (b) Beräkna inversen för det minsta positiva heltalsvärdet på s som gör matrisen inverterbar.

SKRIVNING I VEKTORGEOMETRI

Syftet med den här laborationen är att du skall bli mer förtrogen med följande viktiga områden inom matematisk statistik

Hemuppgift 1, SF1861 Optimeringslära för T

Mer om analytisk geometri

För ingenjörs- och distansstudenter Linjär Algebra ma014a ATM-Matematik Mikael Forsberg

Mathematica Quick Start

SF1624 Algebra och geometri

A = x

Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem.

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

Algebraiska egenskaper hos R n i)u + v = v + U

UPPSALA UNIVERSITET Matematiska institutionen Styf. Exempeltenta med lösningar Programmen EI, IT, K, X Linjär algebra juni 2004

MATRISTEORI. Pelle Pettersson MATRISER. En matris är ett rektangulärt schema med tal, reella eller komplexa, vilka kallas matrisens

Föreläsningsanteckningar Linjär Algebra II Lärarlyftet

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna

1 De fyra fundamentala underrummen till en matris

Här är ett antal uppgifter, en del tagna från gamla tentamina, som handlar om basbyte. respektive B = uttryckta i basen A

Matematik med datalogi, mfl. Linjär algebra ma014a ATM-Matematik Mikael Forsberg

1 Grundläggande kalkyler med vektorer och matriser

x 1 x 2 T (X) = T ( x 3 x 4 x 5

Rangordning av internetsidor - ett egenvärdesproblem för positiva matriser

Hemuppgift 1, SF1861 Optimeringslära, VT 2017

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

MYSTERIER SOM ÅTERSTÅR

Linjär algebra och geometri I

Linjära ekvationssystem i Matlab

DEL I. Matematiska Institutionen KTH. Lösning till tentamensskrivning på kursen Linjär algebra II, SF1604, den 15 mars 2010 kl

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

1 LP-problem på standardform och Simplexmetoden

Vektorgeometri för gymnasister

TAMS79: Föreläsning 10 Markovkedjor

y z 3 = 0 z i )

Moment 4.2.1, 4.2.2, 4.2.3, Viktiga exempel 4.1, 4.3, 4.4, 4.5, 4.6, 4.13, 4.14 Övningsuppgifter 4.1 a-h, 4.2, 4.3, 4.4, 4.5, 4.

Laboration: Grunderna i MATLAB

November 6, { b1 = k a

STOCKHOLMS UNIVERSITET VT 2011 Avd. Matematisk statistik GB DATORLABORATION 1: TIDSSERIER.

1. Bestäm volymen för den parallellepiped som ges av de tre vektorerna x 1 = (2, 3, 5), x 2 = (3, 1, 1) och x 3 = (1, 3, 0).

Linjär algebra och geometri I

Vektorgeometri för gymnasister

Matriser och Inbyggda funktioner i Matlab

Sidor i boken Figur 1: Sträckor

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

LYCKA TILL! kl 8 13

Detta cosinusvärde för vinklar i [0, π] motsvarar α = π 4.

Moment 6.1, 6.2 Viktiga exempel Övningsuppgifter T6.1-T6.6

Transkript:

Datorlaboration :: Ett hyrbilsföretags problem Laborationen går ut på att lösa Labbuppgift 1 till 5. Laborationen redovisas individuellt genom att skicka laborationens Mathematicafil till Mikael Forsberg via mail: mfg@hig.se 1 Problembeskrivning :: Hyrbilsföretaget RentaCar har 10 hyrstationer i X-city med en hyrbilsflotta om sammanlagt 1000 bilar. Varje station, som betecknas med S 1,..., S 10, har plats för 100 bilar vardera och kunderna kan hyra på vilken station som helst och lämna till baka bilen på vilken annan station som helst och denna möjlighet är ett av RentaCars stora fördelar gentemot andra konkurrerande hyrbilsföretag. Samtidigt har detta blivit ett problem eftersom återlämningen av bilarna har visat sig ansamlas på vissa av stationerna så att dessa tenderar att få ett överskott av bilar medan andra stationer tenderar att få ett minskat antal bilar. Detta är problematiskt eftersom de stationer med ett överskott av bilar medför extra parkeringskostnader alternativt kostnader för att köra dem till en station där det finns plats. RentalCar vill nu finna en lösning på problemet. Man tror att genom att fördela bilarna på ett annat sätt så att olika stationerna tar hand om olika många bilar så skulle man kunna få en jämnare beläggning av bilar och därmed kunna optimera kostnaderna för bilförvaring och minska bilförflyttningskostnaderna. Som ett led i detta har företaget noggrannt studerat kundernas avhämtning och återlämningsstrutur och kommit fram till följande tabell. Stationer för återlämning S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 8 S 9 S 10 S 1 63 2 3 1 5 9 3 5 2 7 S 2 11 53 7 2 8 9 3 2 4 1 S 3 12 1 47 3 11 8 12 3 2 1 S 4 7 2 4 59 5 17 2 1 2 1 Uthyrningsstationer S 5 3 6 7 2 61 8 6 2 3 2 S 6 1 3 2 2 4 79 1 3 3 2 S 7 13 1 2 1 5 8 67 0 0 3 S 8 2 3 1 0 4 2 10 78 0 0 S 9 0 2 1 1 0 0 1 0 82 13 S 10 0 1 0 1 0 0 0 0 7 91 Tabell 1: En rad i denna tabell visar hur många procent av de bilar uthyrda från stationen som återlämnas på de övriga stationerna. T.ex. den sista raden anger hur många procent av de bilar som hyrdes ut från station S 10 som återlämnas på de övriga stationerna. Från tabell 1 så kan man utläsa hur många bilar som blir återlämnade till en viss station. T.ex bilar som lämnas in till station S 7, betecknat med S i 7 kan fås från kolonn 7: S i 7 = 0.03 S o 1 + 0.03 S o 2 + 0.12 S o 3 + 0.02 S o 4 + 0.06 S o 5+ + 0.01 S o 6 + 0.67 S o 7 + 0.1 S o 8 + 0.01 S o 9 + 0 S o 10 (1) Här betecknas antalet bilar som lämnas ut vid t.ex. station S 1 med S o 1 och station 7 får då 3 procent av detta antal bilar återlämnade hos sig vilket blir 0.03 S o 1. De olika kolonnerna i tabellen hjälper oss alltså att beräkna hur många bilar som blir återlämnade till en viss station och hur många som kommer från de olika stationerna. Vi får således ett flöde av bilar mellan stationerna och tänker vi oss att detta sker varje dag så ser vi att vi kan göra denna räkning från dag till dag och vi kan då beräkna vad som händer med fördelningen av RentaCars bilar från dag till dag och 1

visualisera konsekvenserna om vi inte flyttar bilar mellan stationerna. Vissa stationer kanske helt blir utan bilar och andra stationer blir möjligen överfulla. one Ställ upp alla 10 ekvationer för alla stationer motsvarande ekvation (1) som ett ekvationssystem. Skriv sedan detta system på matrisform där vi kallar den 10 10 matris som uppstår för M. two Beräkna vad som händer efter en dag, en vecka, en månad (30 dagar) och ett år för RentaCar s stationer som dag noll har 100 bilar var. three Beräkna vad som händer efter en dag, en vecka, en månad och ett år om RentaCar dag noll har alla sina bilar på station 1. Försök se ett mönster. Hur ser fördelningen ut i båda två ovanstående fall. Hur fördelningarna ut efter ett år? 2 En förenklad situation :: exempel Exempel 1. Om vi tittar på en enklare situation där RentaCar bara har tre stationer så har vi i detta fall tabell 2: S 1 S 2 S 3 S 1 74 21 5 S 2 12 68 20 S 3 11 12 77 Tabell 2: Tabell som visar hur kunderna hyr och återlämnar bilar i det förenklade fallet Vi ställer upp ekvationerna för denna situation S i 1 = 0.74 S o 1 + 0.12 S o 2 + 0.11 S o 3 S i 2 = 0.21 S o 1 + 0.68 S o 2 + 0.2 S o 3 S i 3 = 0.05 S o 1 + 0.2 S o 2 + 0.77 S o 3 Ställer vi upp detta som matrisekvation så får vi 0.74 0.12 0.11 S i = 0.21 0.68 0.12 S o där S i = Si 1 S i 2 och S o = So 1 S o 0.05 0.2 0.77 S3 i 2 S3 o } {{ } =M Notera att matrisen M har kolonner vars element summeras ihop till 1. Detta ska vi ha eftersom procentsatserna i varje rad i tabell 2 summeras till 100%. M blir således i någon mening transponatet till matrisen som tabellen ger (dividerat med 100). Låt oss nu se vad som händer om dag noll varje station har 100 bilar var. Efter n dagar har man fördelning av bilar mellan stationerna som ges av vektorn S n definierad av S n = M n S 0 där S 0 är fördelningen av bilar som vi har dag noll, innan vi börjar experimentet. Varje multiplikation med matrisen M svarar mot en uthyrningsdag i vårt resonemang. Om 100 S 0 = 100 100 Så får vi (mha mathematica) 97. S 1 = 101., S 7 = 102. 92.238 100.839 106.923, S 30 =, S 365 = 2

Notera att vi får samma svar för en månad och för ett år. Det verkar alltså som om bilfördelningen är stabil efter en månad. Vi kollar vad som händer om vi använder en annan startfördelning. Låt S 0 = 300 0 0 Då får vi S 1 = 222. 63. 15., S 7 = 100.11 104.742 95.1478, S 30 =, S 365 = Vi får alltså samma slutvektor även från denna startpunkt. Vi borde nog gissa att detta är den fördelning som RentaCar söker efter. Om vi sätter S 0 = 92 101 107 så får vi S 1 = 91.97 100.84 107.19 92 101 107 vilket betyder att fördelningen av bilar håller sig konstant från dag till dag... 3 Ett litet egenvärdesproblem I exemplet så såg vi att vi genom att upprepa multiplikationen med M så kunde vi få fram en stabil fördelning av bilarna. Men det finns också ett annat sätt. Med en stabil fördelning av bilarna hos de olika stationerna så menar vi en fördelning som ger att varje station får lika många bilar återlämnade som de har hyrt ut. För matrisekvationen innebär det att vi söker en fördelningsvektor S som uppfyller 1 MS = S (2) Detta är en matrisekvation som vi borde kunna lösa. Vi subtraherar fördelningsvektorn från båda led och bryter ut fördelningsvektorn, vilket leder till MS S = 0 (M I)S = 0 Fördelningsvektorn är alltså en vektor i nollrummet till matrisen M I. 1 Ekvation (2) är en egenvärdesekvation med egenvärdet λ = 1. Egenvärdesproblem kommer vi jobba med ordentligt i kapitel 5 och 7 3

Exempel 2. Vi fortsättermed situationen i exempel 1 och försöker använda Mathematica för att lösa ekvation (2). Vi utgår från att vi lyckats mata in matrisen M i Mathematica och konstruerar då matrisen A = M I genom kommandot A=M-IdentityMatrix[3] Mathematica svarar då med matrisen 0.26 0.12 0.11 0.21 0.32 0.12 0.05 0.2 0.23 Enligt vad vi sa i ovan ska vi nu beräkna nollrummet till denna matris. Detta är enkelt med Mathematicas kommando NullSpace[A] vilket ger oss resultatet ( 0.529561 0.579742 0.619245 ) som i detta fall ser ut som en vector. Men detta beror att jag gjort en inställning 2 om att mathematica ska välja TraditionalForm som output format. Denna inställning har tyvärr den missvisande nackdelen att man inte ser att vad man får ut från NullSpace i själva verket är en lista med vektorer. Har man inställningen StandardForm så får man i stället följande output { { 0.529561, 0.579742, 0.619245 } } som visar att vi har en lista (eftersom vi har dubbla krullparanteser. Den inre parantesuttrycken är den enda vektorn i denna lista) med en enda vektor. Men detta är bara en liten detalj. Vektorn i denna lista får vi fram (och jag döper den till u) genom u=nullspace[a][[1]] Denna vektor spänner alltså upp nollrummet till A och Mathematica har sett till att vektorn har längden 1, vilket vi kan verifiera genom att beräkna längden, eller normen som det också kallas genom Norm[u] och här svarar Mathematica med 1. Det här är dock inte vad vi vill. Vi vill ju få en vektor som hjälper oss att tala hur fördelningen bilar ska vara mellan stationerna. Detta skulle vara klart om vår vektor u på något sätt angav hur stor procent av RentaCars totala antal bilar ska vara på de olika stationerna. En sådan vektor ska därför ha egenskapen att vektorns element summeras och blir ett (precis som kolonnerna i matrisen M). Detta kan man åstadkomma genom att dividera vektorns komponenter med summan av komponenterna. Om vi har vektorn v = (a, b, c) och multiplicerar denna vektor med k = 1 a+b+c så får vi vektorn kv = (ka, kb, kc) och summan av dessa tre komponenter blir 1: ka + kb + kc = k(a + b + c) = 1 (a + b + c) = 1 a + b + c Idén är nu att göra om vår vektor u genom att dividera den med summan av u s komponenter och då behöver vi först räkna ut summan av komponenterna, vilket kan göras med Mathematicakommandot Total: Vi dividerar alltså u med denna summa: v=u/total[u] 2 Mathematicas inställningar finner man under Mathematica > preferences. Man väljer sedan fliken Evaluation och i denna meny har man val för format type of new output cells där man bör välja TraditionalForm om man vill få matriserna utskrivna som matriser och inte som en lista... Det gäller bara att vara medveten om detta eftersom man annars lätt kan missförstå outputen som antyds i detta exempel. 4

och nu svarar Mathematica med {0.306362, 0.335392, 0.358246} Utför vi kommandot Total[v] så får vi svaret 1 och då har vi fått vår vektor som anger andelen av det total bilantalet som ska vara på de olika stationerna. Eftersom vi i vårt fall har totalt 300 bilar så får vi vektorn 300*v som blir {,, } (92, 101, 107) som är precis vad vi kom fram till förut! Det fina är att vi nu kan experimentera och kolla vad fördelningen blir om vi har ett annat antal bilar. Om vi totalt har 1000 bilar kan vi få fram fördelningen genom att använda 1000 istället för 300 i räkningarna ovan. Man får då 1000 v = {306, 362, 335, 392, 358, 246} (306, 336, 358) Observera dock att avrundningen är lite udda för att garantera att den resulterande heltalsvektorns komponenter summeras till 1000. Detta exempel visar i princip hur man kan lösa labbens sista uppgift: sista Lös systemet (2) i fallet med de 10 stationerna och beräkna en sådan fördelningsvektor v som i exemplet. Använd den sedan för att få fram fördelningen av bilar på de olika stationerna i fallet då RentaCar har 1000 bilar och för det fallet då RentaCar köper in ytterligare 1000 bilar. 4 Teori: markovkedjor och sannolikhetsmatriser Vi såg i exemplen ovan att matrisen M hade egenskapen att elementen i varje kolonn summeras ihop och blir 1. En sådan kolonn är en sannolikhetsvektor och matrisen kallas för en stokastisk matris. Labborationen är ett exempel på en s.k. Markovkedja. Om detta kan man läsa i Lays kapitel 4.9. (och i Kapitel 11.6 i Anton och Rorres 3 ) Speciellt så finns där Theorem 18, (sid. 259). Denna sats säger något om det vi såg i exemplet att S 365 blev lika med fördelningsvektorn som vi beräknade genom ekvation (2). Det kanske inte är alldeles nödvändigt att läsa och förstå all denna teori men Idén om Markovkedjor är en första inblick i en viktig del inom tillämpad matematik och matematisk statistik som handlar om Stokastiska Processer och som är väldigt användbar för att modellera olika verkliga system. 5 Hur ska Laborationen redovisas? Laborationen redovisas genom att skicka filen med email till mfg@hig.se Kom ihåg att i filen ska ert namn och personnummer finnas. Döp dessutom matematikafilen till Severus_Snape_123456-7891.nb, men bara om ditt namn är Severus Snape med personnummer 123456-7891..nb är formatet för mathematicafilerna och ska vara med. Om Du heter något annat så skriver Du in ditt namn och personnummer på motsvarande sätt. Notera att man kan skapa fina rapporter mha mathematica. 6 När ska Laborationen redovisas :: Deadline Ingen hård deadline finns. Ni lämnar in när ni vill men kom bara ihåg att för att få ett godkänt betyg på kursen så krävs det att labben är godkänd (och så klart ett godkänt betyg vid tentamen.) 3 Anton och Rorres, Elementary Linear Algebra 9 ed,, ISBN: 0-471-44902-4, kapitel 11.6: Markov Chains, finns som pdf på kurssajten 5

7 Användbara Mathematicakommandon Följande mathematicakommandon kan vara till nytta. Ni använder naturligtvis Mathematicas inbyggda hjälpsystem för att ta reda på exakt vad kommandon gör och hur man ska använda dem. MatrixPower, IdentityMatrix, RowReduce, NullSpace, Norm, Transpose, Total, Inverse, 6