Optimering av en Yatzytur genom utvärdering av alla inom turen nåbara tillstånd

Storlek: px
Starta visningen från sidan:

Download "Optimering av en Yatzytur genom utvärdering av alla inom turen nåbara tillstånd"

Transkript

1 Optimering av en Yatzytur genom utvärdering av alla inom turen nåbara tillstånd Arvid Fahlström Myrman 30 april

2 Sammanfattning I denna rapport beskrivs en metod för att kunna optimera den förväntade resultatet från en tur under en omgång av Yatzy. Yatzy är ett klassiskt tärningsspel som kan spelas ensam eller med flera spelare. Det finns sedan tidigare en matematiskt optimal strategi för hur man bäst bör gå tillväga för att optimera det förväntade slutresultatet från en omgång Yatzy, först beskriven av James Glenn för amerikanska regler och sedan applicerad på svenska regler av Markus Larsson och Andreas Sjöberg, som bygger på att bygga upp en graf över alla möjliga tillstånd under spelets gång. I denna rapport beskrivs en mer begränsad version av denna metod, som endast bygger upp en graf över de möjliga tillstånden för den nuvarande turen, med syfte att minska beräkningstid och minnesåtgång för att lagra grafen. Metoden har visat sig vara tillräckligt snabb för användning i begränsade miljöer såsom mobila plattformar, och den genomsnittliga slutpoängen efter ett färdigt spel har efter simuleringar beräknats som ungefär 198,6 poäng, runt 50 poäng sämre än Larsson och Sjöbergs metod, och 175 poäng sämre än den högsta möjliga slutpoängen 374. Den är även 12 poäng sämre än en heuristisk beskriven av Nils Dahlbom Norgren och Philip Svensson, men metoden som beskrivs i denna rapport har fördelen att beslutsfattningsstrategierna är enklare att modifiera. Denna rapport är en kandidatuppsats skriven för kursen DD143X Examensarbete inom datalogi, grundnivå, för Skolan för datavetenskap och kommunikation (CSC) på Kungliga Tekniska högskolan (KTH) i Stockholm. Handledare är Vahid Mosavat. 2

3 Innehåll 1 Introduktion Yatzy Tidigare arbete Syfte Metod Tärningskast Möjliga tärningskast Möjliga val av tärningar att spara Sannolikheter Tillståndsgrafen Struktur Konstruktion Viktning Strykning av kategori då ingen är poänggivande Resultat Implementationsdetaljer Simulering Diskussion Potentiella förbättringar A Poängblocket 14 3

4 1 Introduktion 1.1 Yatzy Yatzy är ett tärningsspel som kan spelas både själv och med flera personer. Det slutgiltiga målet är att samla så många poäng som möjligt. Spelet är turbaserat, och varje tur börjar den spelare vars tur det är med att kasta fem tärningar. Spelaren har sedan möjlighet att kasta om tärningarna upp till två gånger till, och vid varje omkast kan spelaren välja att spara, d.v.s. låta bli att kasta om, vilka som helst av de tärningar spelaren redan har kastat. När spelaren är nöjd eller inte får kasta fler gången är turen över och spelaren måste fylla i en av kategorierna på det s.k. poängblocket med så många poäng den fått denna tur. För varje kategori räknas poängen ut olika; exempelvis ger treor tre poäng per tärning som visar tre ögon, medan exempelvis liten straight ger 15 poäng om tärningskonfigurationen består av en etta, två, tre, fyra samt en femma. Om spelaren inte kan eller vill fylla i någon poänggivande kategori måste spelaren istället fylla i valfri kategori med 0 poäng. När varje spelare har fyllt i alla kategorier på poängblocket är spelet över, och den med flest sammanlagda poäng vinner. Den högsta slutpoängen som går att få från en Yatzyomgång är 374. En intressant uppgift kan vara att avgöra hur man programmatiskt kan implementera en strategi för att maximera ens chanser att få så hög poäng som möjligt under en Yatzyomgång. En sådan strategi skulle sedan kunna användas för att exempelvis implementera en AI-motståndare i ett datorbaserat Yatzyspel. Denna rapport diskuterar en möjlig metod, som försöker optimera individuella turer. Reglerna för Yatzy, eller Yahtzee som det heter på engelska, varierar något från land till land. Jag kommer här främst att ha de klassiska svenska reglerna i åtanke. Se bilaga A för en utförligare beskrivning av de tillgängliga kategorierna på poängblocket. 1.2 Tidigare arbete Yatzy är sedan tidigare ett löst spel, d.v.s. en algoritm för att optimera det förväntade resultatet är känd. James Glenn [2] har beskrivit hur man kan bygga upp en graf där varje nod representerar ett möjligt tillstånd under en spelomgång, och den finns en kant från tillstånd v till tillstånd u om det med en handling (t.ex. ett kast med tärningar eller val av tärningar att behålla) går att röra sig från v till u. Varje nod sparar på väntevärdet för det förväntade resultatet om man spelar optimalt med utgång från tillståndet noden representerar, vilket gör det möjligt att med en bredden först-sökning finna den optimala vägen genom grafen. Denna metod har överförts till Yatzy med svenska regler av Marcus Larsson och Andreas Sjöberg [3], med en genomsnittlig slutpoäng av 248,63 vid användning av en optimal strategi. Nils Dahlbom Norgren och Philip Svensson har även beskrivit en heuristik för att optimera en individuell tur [4], denna med genomsnittspoängen 211,04. 4

5 1.3 Syfte Spelet må vara löst, men metoden för att beräkna hela tillståndsgrafen är krävande, och grafen i sig mycket stor. I Larsson och Sjöbergs fall tog beräkningarna 50 minuter och grafen blev 1,5 GB stor [3], vilket är otympligt för användning i applikationer utvecklade för exempelvis mobila plattformar. För att begränsa beräkningarna som behöver göras kommer jag istället att implementera en variant av Glenns metod som bara ser till den nuvarande turen. Med andra ord kommer jag i början av varje tur att efter att tärningarna har kastats en första gång beräkna alla möjliga tillstånd fram till slutet av turen, för att sedan ta reda på vilka val av tärningar att kasta om ger högst sannolikhet till så hög poäng som möjligt. Syftet är att besvara följande fråga: Kan en variant av James Glenns metod, begränsad till att endast ta hänsyn till den nuvarande turen, vara tillräckligt snabb för att vara praktiskt tillämpbar på exempelvis mobila plattformar? Hur mäter den sig i sådana fall med andra metoder? Jag kommer ej att ta bonus (se bilaga A) i åtanke under utveckling av metoden, med anledning av metodens oförmåga att se längre fram än en enda tur. 2 Metod 2.1 Tärningskast Möjliga tärningskast Antalet möjliga resultat vid kast med k tärningar med n sidor är detsamma som antalet sätt att välja ut k objekt ur en mängd av storlek n, oordnat och med repetition. Detta kan beräknas som ( ) n+k 1 k. För fem stycken tärningar med sex sidor blir detta ( ) 10 5 = 252 möjliga distinkta tärningskast. På samma sätt finns det 126, 56, 21 och 6 distinkta tärningskast vid kast med fyra, tre, två, respektive en tärning. Det finns dessutom exakt 1 möjligt resultat vid kast med noll tärningar; med andra ord finns det bara ett möjligt tillstånd man kan ta sig till om man väljer att behålla alla tärningar efter ett kast. Att sedan generera de möjliga tärningskasten kan enkelt göras iterativt. Alla möjliga tärningskast med tre tärningar kan exempelvis genereras som följer, där kast är en mängd av multimängder: function Möjliga-Tärningskast kast {} for i 1 1 to 3 do for i 2 i 1 to 3 do for i 3 i 2 to 3 do kast kast {i 1, i 2, i 3 } end for end for end for return kast end function 5

6 En mer generell funktion som kan räkna ut möjliga tärningskast när man slår ett givet k antal tärningar kan implementeras rekursivt Möjliga val av tärningar att spara Resultatet vid ett tärningskast kan ses som en multimängd av storlek 5. Antalet sätt att välja n tärningar att spara efter ett kast är då ekvivalent med antalet delmängder med kardinalitet n. Låt oss säga att M = {m 1, m 2,..., m k } beskriver antalet upprepningar av k distinkta element i en multimängd, d.v.s. något element e 1 upprepas m 1 gånger i multimängden, elementet e 2 m 2 gånger, o.s.v. Hur många delmängder av storlek n finns det då av multimängden? Om m 1 = 2 och n = 4 kan vi i varje delmängd förvänta oss att det finns 0 k 2 förekomster av e 1, så antalet delmängder är antalet delmängder med 0 förekomster av e 1, plus antalet delmängder med 1 förekomst av e 1, plus antalet delmängder med 2 förekomster av e 1. Detta är ekvivalent med antalet delmängder av storlek 4 med M = M \ {m 1 }, plus antalet delmängder av storlek 3 med M = M \ {m 1 }, plus antalet delmängder av storlek 2 med M = M \ {m 1 }. Generellt får vi följande rekursiva samband: 1 om n = 0 0 om M = S(M = {m 1, m 2,..., m k }, n) = min(n, m 1) S (M \ m 1, n c) annars Detta samband kan även användas för att generera de olika delmängderna. Antalet delmängder beror på hur många upprepade element det finns i multimängden; i tabell 1 är det totala antalet delmängder av storlek 0 n k av multimängder av storlek 5 sammanställda för de olika mönster som kan uppträda vid kast av 5 tärningar. c= Sannolikheter Precis som antalet delmängder varierar sannolikheten för att få ett visst resultat vid tärningskast beroende på det mönster som tärningarna uppvisar. Sannolikheten att alla tärningar ska visa 6 ögon är exempelvis 1 6 vid kast med fem 5 sexsidiga tärningar, medan sannolikheten att tärningarna ska visa 2, 3, 4, 5, respektive 6 antal ögon är Då antalet sannolikhetsvärden är väldigt få är 5 det enklare och sannolikt effektivare att räkna ut dessa i förhand. De relevanta värdena är tabulerade i tabell Tillståndsgrafen Struktur Varje nod i tillståndsgrafen representerar ett tillstånd. Ett tillstånd beskriver vad de tärningar som spelaren för närvarande innehar visar, hur många omkast 6

7 k = 5 abcde 32 abcdd 24 abbcc 18 abccc 16 aabbb 12 abbbb 10 aaaaa 6 Tabell 1: Antalet delmängder av multimängder av storlek 5 för olika mönster på resultatet av ett tärningskast. Det finns exempelvis 18 unika delmängder av storlek 0 n 5 av multimängden {1, 3, 3, 4, 4}. k = 5 k = 4 k = 3 k = 2 k = abcde 6 abcd 5 6 abc 4 6 ab 3 6 a 2 6 abcdd abcc abb aa abbcc aabb aaa abccc abbb aabbb aaaa abbbb aaaaa Tabell 2: Sannolikheten att få ett visst resultat beroende på mönstret tärningarna uppvisar, vid kast med 1 k 5 st sexsidiga tärningar. 7

8 Steg 1 Steg 2 Steg 3 Steg 4 Steg 5 {1, 2} {1, 2, 3, 3, 3} {1} {1, 1, 2, 2, 6} {1, 2, 4, 5, 6} {1, 2, 3, 4, 4} {2, 2, 2, 2, 2} {1, 2, 3, 4, 5} {2, 4, 5, 6, 6} {1, 2, 3, 4, 4} {1, 2, 3, 4, 4} {1, 2, 3, 4, 4} {1, 2, 3, 4, 4} Figur 1: Exempel på hur man kan röra sig mellan tillstånd. Transitioner utmärkta med streckade linjer är slumpberoende. Heldragna linjer representerar transitioner som spelaren fritt kan välja mellan. I steg 2 och 4 representerar värdena i noderna de tärningar man valt att behålla. spelaren har kvar, och huruvida spelarens nästa handling är att slå om tärningar eller välja tärningar att spara. Kanter mellan noder representerar antingen vilka tärningar som spelaren valt att behålla inför ett omkast eller sannolikheten för att få ett visst resultat vid omkast. Varje tillstånd tillhör ett av fem steg som varje tur består av. Det första steget innehåller det tillstånd som man befinner sig i efter att ha kastat de fem tärningarna i början av turen. Detta steg innehåller alltså endast ett tillstånd. Steg 2 är de tillstånd som man kan ta sig till genom att välja vilka tärningar man vill spara; steg 3 är de tillstånd man kan hamna i efter att ha kastat de tärningar man inte sparat. Tillstånden i steg 4 och 5 fungerar på samma sätt som de i steg 2 och 3. Då man kan kasta om tärningarna upp till två gånger efter det inledande kastet kommer det tillstånd man hamnar i i steg 5 att vara det slutgiltiga resultatet för turen. För att kunna bestämma vilket tillstånd i steg 2 och 4 som är mest fördelaktigt att välja behöver varje tillstånd spara på ett värde som är större för tillstånd som ger högre sannolikhet att resultera i fler poäng. I exempelvis steg 1 väljs då nästa tillstånd utifrån vilket tillstånd som har högst värde, vilket då också avgör vilka tärningar man väljer att spara Konstruktion Tillståndet i steg 1 kommer att variera mellan turer, och då steg 2 innehåller ett tillstånd per delmängd av den multimängd som motsvarar tärningskastet i steg 1, gäller detta även för steg 2. Då man när man går mellan steg 1 och steg 2 kan välja att inte spara någon tärning, kommer steg 3 dock att innehålla 252 tillstånd, ett per möjligt tärningskast. Tillstånden i steg 3 samt de efterföljande stegen 4 och 5 kommer därmed vara konstanta med avseende på antalet tillstånd som finns, vilka tillstånd som är nåbara samt sannolikheten att nå varje tillstånd, och det finns därför inget behov av att bygga upp den del av tillståndsgrafen som befinner sig i steg 3, 4 eller 5 mer än en gång. Dock måste värdet för varje tillstånd räknas om vid varje tur, då det beror på 8

9 vilka kategorier som finns tillgängliga. Detta görs lämpligen genom att göra en baklänges bredden-först-sökning från tillstånden i steg 5, där man först i steg 5 tilldelar varje tillstånd något lämpligt värde baserat på vad tärningarna visar och vilka kategorier som finns tillgängliga exempelvis kan man tilldela varje tillstånd den högsta poäng som går att få bland de tillgängliga kategorierna med det givna tärningskastet. I steg 4 och 2 tilldelar man sedan varje tillstånd summan av värdet för varje nåbart tillstånd i det efterföljande steget multiplicerat med sannolikheten för att nå det givna tillståndet. I steg 3 och 1 kan spelaren själv välja vilket tillstånd denne ska förflytta sig till genom att välja vilka tärningar som ska sparas, varför vi som värde för noderna i steg 3 och 1 helt enkelt väljer det högsta värdet av varje nåbart tillstånd Viktning Då det inte går att se längre fram än den nuvarande turen behövs någon strategi för att i sluttillstånden i steg 5 välja vilken kategori man bör fylla i givet ett visst tärningskast. Två strategier diskuteras här: högsta poäng och högsta poängandel. Högsta poäng går ut på att helt enkelt välja den kategori som resulterar i flest poäng. Detta kan dock resultera i situationer där man exempelvis väljer att fylla i femmor för fem poäng istället för ettor för fyra poäng om man har kastat {1, 1, 1, 1, 5}. Detta kan ses som ofördelaktigt, då man genom att fylla i femmor när man bara hade en femma endast utnyttjade 5 poäng, d.v.s. 20%, av den maximala möjliga poängen 25 för den kategorin, medan om man hade fyllt i ettor hade utnyttjat 4, d.v.s. 80%, av maximala 5 poäng. Av denna anledning kan det vara intressant att vikta de poäng som man kan få från en viss kategori. Högsta poängandel går då ut på att vikta poängen genom att dividera med den maximala möjliga poängen som går att få från kategorin. Om flera kategorier ger samma poängandel vid användning av denna viktning, ges preferens åt kategorier som ger mer poäng Strykning av kategori då ingen är poänggivande Om man har haft oturen att kasta en tärningskombination som inte går att använda sig av i någon av de lediga kategorierna måste man istället fylla i 0 poäng i en valfri ledig kategori. Det går att tänka sig ett antal olika strategier för att välja vilken kategori som ska strykas. Den som använts här är följande: stryk den kategori som ger lägst genomsnittspoäng vid optimalt spel. Med genomsnittspoängen för en viss kategori avses här den poäng som man genomsnittligt bör få efter en tur om kategorin i fråga är den enda lediga kategorin på poängblocket. Detta kan beräknas genom att utöka tillståndsgrafen beskriven ovan till att inkludera tillståndet innan man har slagit tärningarna för första gången under turen. Om man då i sluttillstånden alltid placerar tärningarna i samma kategori kommer efter beräkning enligt sektion värdet för starttillståndet att vara genomsnittspoängen för den givna kategorin. I tabell 3 visas den beräknade genomsnittspoängen för varje kategori. Detta säger oss att vi i första hand bör stryka kategorier högre upp i tabellen. Om 9

10 Ettor 2,11 Yatzy 2,30 Liten straight 2,95 Stor straight 3,94 Tvåor 4,21 Fyrtal 4,57 Treor 6,32 Kåk 6,97 Fyror 8,43 Tretal 9,55 Femmor 10,53 1 par 10,63 2 par 11,91 Sexor 12,64 Chans 23,33 Tabell 3: Genomsnittligt antal poäng som varje kategori ger vid optimalt spel. exempelvis liten straight och tretal är de kvarvarande kategorierna på poängblocket och vi slagit en tärningskombination som inte kan användas i någon av kategorierna, bör vi med andra ord placera 0 poäng i liten straight. 3 Resultat 3.1 Implementationsdetaljer Jag har skapat en naiv implementation av den ovan beskrivna metoden i Python 3.4. Trots att implementationen är ooptimerad och Python i sig ett långsamt språk tar det under en halv sekund att bygga och uppdatera grafen inför varje tur på en 2,8 GHz-processor. 3.2 Simulering Metoden har testats med de båda viktningsmetoderna högsta poäng och högsta delpoäng som beskrivs i sektion vid val av kategori. För att kontrollera att strategin faktiskt är en förbättring jämfört med en ren slumptaktik implementerade jag utöver detta även tre olika slumpbaserade metoder där vilka tärningar som behålls vid omkast är slumpade; de skiljer sig sinsemellan baserat på hur kategorin väljs i slutet av en tur. En av de slumpbaserade metoderna 10

11 Metod Val av kategori Slutpoäng Graf Högsta poäng 198,6 Graf Högsta poängandel 197,3 Slump Slump 49,5 Slump Högsta poäng 97,5 Slump Högsta poängandel 100,4 Tabell 4: Genomsnittlig slutpoäng efter simuleringar av olika strategier. 150 Antal omgångar Poäng Figur 2: Resultat från simulerade Yatzyomgångar. Rött är högsta poäng ; blått är högsta poängandel. väljer kategori slumpmässigt, medan de andra två använder samma taktik som de grafbaserade metoderna. Tabell 4 redovisar den genomsnittliga slutpoängen efter simuleringar av hela spelomgångar. Figur 2 redovisar resultaten från samtliga simuleringar. 4 Diskussion Metoden som beskrivs i den här rapporten har demonstrerats vara betydligt snabbare än den som ursprungligen beskrevs av Glenn [2], och därmed också tillämpbar i mer begränsade miljöer såsom mobila plattformar. Den får därmed anses ha uppnått de mål som beskrivs i sektion 1.3. Det är dock tydligt, men förväntat, att den genomsnittliga poängen är sämre än den förväntade genomsnittspoängen hos den av Larsson och Sjöberg [3] beskrivna metoden, med en försämring med ungefär 50 poäng. Den är också 12 poäng sämre än Dahlbom Norgren och Svenssons metod [4], men har fördelen att man enklare kan vikta beteendet vid val av kategori i turernas sluttillstånd. Den är dock avsevärt bättre än slumpbaserade metoder. Det är även tydligt att det inte finns någon märkbar fördel mellan de två viktningsmetoderna som beskrevs i sektion En möjlig förklaring till detta kan 11

12 vara att en sådan situation där viktning faktiskt skulle ge en praktisk fördel är statistiskt osannolik. 4.1 Potentiella förbättringar Sannolikt finns det förbättringar som kan göras till viktningsstrategierna, både för att välja kategori utifrån ett tärningskast och för att välja vilken kategori som bör strykas om ingen kategori är poänggivande för ett visst kast. Det kan också vara intressant att undersöka ifall det finns situationer där det på lång sikt är bättre att fylla i någon kategori med 0 poäng även om det finns poänggivande kategorier för ett visst tärningskast. Metoden lider också av samma problem som James Glenns ursprungliga i och med att den inte tar hänsyn till motståndarens poäng, vilket gör att det kan uppstå situationer där man för att ha en chans att vinna måste ge sig efter riskabla, men mer poänggivande, kategorier såsom yatzy, men där denna metod istället väljer att sikta på lättare kategorier men som ger färre poäng. Det kan därför vara intressant att implementera en viktningsstrategi som prioriterar kategorier som är nödvändiga för att vinna. 12

13 Referenser [1] (2013). Original Yatzy Spelregler. Egmont Kärnan. [2] Glenn, J. (2006). An optimal strategy for yahtzee. Technical report, Loyola College in Maryland. [3] Larsson, M. och Sjöberg, A. (2012). Optimal yatzy strategy. Kandidatuppsats, Kungliga Tekniska högskolan, Stockholm. [4] Norgren, N. D. och Svensson, P. (2013). Optimal yahtzee. Kandidatuppsats, Kungliga Tekniska högskolan, Stockholm. 13

14 A Poängblocket Det finns 16 olika kategorier på spelblocket, som alla ger olika mycket poäng beroende på vad tärningarna visar när man är färdig med sin tur. De regler som beskrivs här är de som använts i implementationen av metoden som beskrivits i denna rapport. Reglerna bygger på de spelregler som medföljer Original Yatzy [1]. Med undantag för bonus och yatzy ger varje kategori så många poäng som det sammanlagda antalet ögon på de tärningar som kan räknas med i kategorin. Nedan beskrivs för varje kategori vilka tärningar som får räknas med. Ettor Alla tärningar som visar ett öga. Tvåor Alla tärningar som visar två ögon. Treor Alla tärningar som visar tre ögon. Fyror Alla tärningar som visar fyra ögon. Femmor Alla tärningar som visar fem ögon. Sexor Alla tärningar som visar sex ögon. Bonus Ger 50 poäng om den sammanlagda poängen från kategorierna ettor, tvåor, treor, fyror, femmor och sexor är eller överstiger 63 poäng. Ett par Två tärningar som visar samma antal ögon. Två par Två par av tärningar där varje par består av två tärningar som visar samma antal ögon. Paren måste sinsemellan visa olika antal ögon. Tretal Tre tärningar som visar samma antal ögon. Fyrtal Fyra tärningar som visar samma antal ögon. Liten straight Alla tärningar om tärningskastet är {1, 2, 3, 4, 5}. Stor straight Alla tärningar om tärningskastet är {2, 3, 4, 5, 6}. Kåk Alla tärningar om det finns två grupper av tre respektive två tärningar där alla tärningar inom varje grupp visar samma antal ögon. Tärningarna måste grupperna sinsemellan visa olika antal ögon. Chans Alla fem tärningar, villkorslöst. Yatzy Ger 50 poäng om alla fem tärningar visar samma antal ögon. Om det inte finns någon kategori som är poänggivande i slutet av turen måste någon kategori fyllas med 0 poäng. 14

Optimal Yatzy. En jämförelse mellan den matematiskt optimala strategin och en i vardagligt spel tillämplingsbar strategi

Optimal Yatzy. En jämförelse mellan den matematiskt optimala strategin och en i vardagligt spel tillämplingsbar strategi Optimal Yatzy En jämförelse mellan den matematiskt optimala strategin och en i vardagligt spel tillämplingsbar strategi Rickard Larsson Niklas Axelsson Degree Project in Computer Science, DD143X Handledare:

Läs mer

Optimal Yatzy KAN DEN OPTIMALA ALGORITMEN OPTIMERAS? JOAKIM HEDLUND NIKLAS QVARFORTH

Optimal Yatzy KAN DEN OPTIMALA ALGORITMEN OPTIMERAS? JOAKIM HEDLUND NIKLAS QVARFORTH DEGREE PROJECT, IN COMPUTER SCIENCE, FIRST LEVEL STOCKHOLM, SWEDEN 2015 Optimal Yatzy KAN DEN OPTIMALA ALGORITMEN OPTIMERAS? JOAKIM HEDLUND NIKLAS QVARFORTH www.kth.se KTH ROYAL INSTITUTE OF TECHNOLOGY

Läs mer

Miniprojektuppgift i TSRT04: Femtal i Yatzy

Miniprojektuppgift i TSRT04: Femtal i Yatzy Miniprojektuppgift i TSRT04: Femtal i Yatzy 22 augusti 2016 1 Uppgift I tärningsspelet Yatzy används fem vanliga sexsidiga tärningar. Deltagarna slår tärningarna i tur och ordning och försöker få vissa

Läs mer

Sannolikhetslära till pdf.notebook. May 04, 2012. Sannolikhetslära. Kristina.Wallin@kau.se

Sannolikhetslära till pdf.notebook. May 04, 2012. Sannolikhetslära. Kristina.Wallin@kau.se May 0, 0 Sannolikhetslära Kristina.Wallin@kau.se May 0, 0 Centralt innehåll Sannolikhet Åk Slumpmässiga händelser i experiment och spel. Åk 6 Sannolikhet, chans och risk grundat på observationer, experiment

Läs mer

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 14:e Mars, 2017 Provkod: TEN1 Hjälpmedel:

Läs mer

MinMax Algoritmen Implementation och optimering. Joakim Östlund 15 juni 2004

MinMax Algoritmen Implementation och optimering. Joakim Östlund 15 juni 2004 MinMax Algoritmen Implementation och optimering Joakim Östlund 15 juni 2004 1 Samanfattning MinMax är en algoritm som kan användas i turbaserade spel för att skapa en virituell motståndare. Algoritmen

Läs mer

Optimal spelstrategi för yatzy

Optimal spelstrategi för yatzy Optimal spelstrategi för yatzy en jämförande studie av mindre regelförändring Optimal game strategy for yatzy a comparative study of minor rule changes Henriksson, Sam Kärrstigen 6 142 51 Skogås 0763379309

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok,

Läs mer

Slump och statistik med Scratch

Slump och statistik med Scratch Lektionen handlar om att simulera tärningskast och skapa en statistikapplikation genom att arbeta med modifiera algoritmer. Lektionsförfattare: Måns Jonasson En digital lektion från https://digitalalektioner.iis.se

Läs mer

4 Diskret stokastisk variabel

4 Diskret stokastisk variabel 4 Diskret stokastisk variabel En stokastisk variabel är en variabel vars värde bestäms av utfallet av ett slumpmässigt försök. En stokastisk variabel betecknas ofta med X, Y eller Z (i läroboken används

Läs mer

Mörkpoker Strategi. 2003 Christian Eriksson och Mikael Knutsson Uppdaterad 2004-01-26

Mörkpoker Strategi. 2003 Christian Eriksson och Mikael Knutsson Uppdaterad 2004-01-26 Mörkpoker Strategi 2003 Christian Eriksson och Mikael Knutsson Uppdaterad 2004-01-26 Innehåll 1 GRUNDLÄGGANDE VISDOM...2 1.1 SATSNINGSRUNDOR...3 1.2 TÄNK IGENOM SITUATIONEN!...4 1.3 DISCIPLIN...5 1.4 BLUFFANDE/VARIERAT

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Laboration 1. Vektorberäkningar Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion I denna övning skall vi träna på

Läs mer

Slump och statistik med Scratch. Se video

Slump och statistik med Scratch. Se video Se video I lektionen simuleras hundratals tärningskast på kort tid. Eleverna får skapa en statistikapplikation och lära sig att skapa och modifiera algoritmer. Måns Jonasson, Internetstiftelsen, har arbetat

Läs mer

Ishavsspelet är ett kort- och tärningsspel för 2-4 spelare som bygger på tur och lite strategi

Ishavsspelet är ett kort- och tärningsspel för 2-4 spelare som bygger på tur och lite strategi Ishavsspelet är ett kort- och tärningsspel för 2-4 spelare som bygger på tur och lite strategi Spelet hör ihop med Sveriges Radios julkalender Siri och ishavspiraterna och du kan ladda hem och skriva ut

Läs mer

Memory Det kombinatoriska spelet

Memory Det kombinatoriska spelet Institutionen för naturvetenskap och teknik Memory Det kombinatoriska spelet Simon Sjölund & Erik Åstrand Örebro universitet Institutionen för naturvetenskap och teknik Matematik C, 76 90 högskolepoäng

Läs mer

1 Föreläsning I, Mängdlära och elementär sannolikhetsteori,

1 Föreläsning I, Mängdlära och elementär sannolikhetsteori, 1 Föreläsning I, Mängdlära och elementär sannolikhetsteori, LMA201, LMA521 1.1 Mängd (Kapitel 1) En (oordnad) mängd A är en uppsättning av element. En sådan mängd kan innehålla ändligt eller oändlligt

Läs mer

Föreläsning 5: Dynamisk programmering

Föreläsning 5: Dynamisk programmering Föreläsning 5: Dynamisk programmering Vi betraktar en typ av problem vi tidigare sett: Indata: En uppsättning intervall [s i,f i ] med vikt w i. Mål: Att hitta en uppsättning icke överlappande intervall

Läs mer

Yatzy Optimala spelstrategier

Yatzy Optimala spelstrategier Institutionen för naturvetenskap och teknik Yatzy Optimala spelstrategier Robin Blom, Mathias Dimberg Örebro universitet Institutionen för naturvetenskap och teknik Matematik C, 76 90 högskolepoäng Yatzy

Läs mer

Ekvivalensrelationer

Ekvivalensrelationer Abstrakt datatyp för disjunkta mängder Vi skall presentera en abstrakt datatyp för att representera disjunkta mängder Kan bl.a. användas för att lösa ekvivalensproblemet avgör om två godtyckliga element

Läs mer

TDDI16: Datastrukturer och algoritmer

TDDI16: Datastrukturer och algoritmer TDDI16: Datastrukturer och algoritmer Lab 3: Ordkedjor Höstterminen 2018 2018-05-14 1 Upplägg Första delen av instruktionen, avsnitt 2 till 6, innehåller en fullständig beskrivning av problemet utan några

Läs mer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en

Läs mer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.

Läs mer

Sagaforms spelregler SCHACK, FIA MED KNUFF, BACKGAMMON, DOMINO

Sagaforms spelregler SCHACK, FIA MED KNUFF, BACKGAMMON, DOMINO Sagaforms spelregler SCHACK, FIA MED KNUFF, BACKGAMMON, DOMINO SCHACK Schack matt När en av motståndarens pjäser hotar kungen säger man att den står i schack. Schack matt - I schack vinner den som först

Läs mer

BFL122/BFL111 Fysik för Tekniskt/ Naturvetenskapligt Basår/ Bastermin Föreläsning 13 Kärnfysik 2 den 4 maj Föreläsning 13.

BFL122/BFL111 Fysik för Tekniskt/ Naturvetenskapligt Basår/ Bastermin Föreläsning 13 Kärnfysik 2 den 4 maj Föreläsning 13. Föreläsning 13 Sönderfallslagen Låt oss börja med ett tankeexperiment (som man med visst tålamod också kan utföra rent praktiskt). Säg att man kastar en tärning en gång. Innan man kastat tärningen kan

Läs mer

Volym liter och deciliter

Volym liter och deciliter Volym liter och deciliter Måla så volymen stämmer. Skriv så volymen stämmer. : l och dl l dl l och 8 dl 0 l 9 dl dl l dl Hur många dl ska du hälla i för att få l? 7 9 dl dl dl dl dl Hur mycket? Skriv.

Läs mer

Kurs i programmering Java Uppgifter

Kurs i programmering Java Uppgifter And Action Nu när du skapat olika komponenter ska vi se till att något händer det då vi exempelvis trycker på en knapp. För att hantera det som sker kommer vi använda Actionlistener Övningarna som följer

Läs mer

Lösningsförslag för tentamen i Datastrukturer (DAT037) från

Lösningsförslag för tentamen i Datastrukturer (DAT037) från Lösningsförslag för tentamen i Datastrukturer (DAT7) från --9 Nils Anders Danielsson. Träd- och köoperationerna har alla tidskomplexiteten O(log s), där s är antalet element i trädet/kön (notera att jämförelser

Läs mer

Programexempel: tärningsspel. Programexempel: tärningsspel Kasta tärning tills etta. Klassen Die Specifikation. Slumptalsgenerator Klassen Random

Programexempel: tärningsspel. Programexempel: tärningsspel Kasta tärning tills etta. Klassen Die Specifikation. Slumptalsgenerator Klassen Random Kasta tärning tills etta Skriv ett program som låter en användare spela detta tärningsspel: Spelaren gör första tärningsslaget och får samma poäng som tärningen visar. Sedan fortsätter spelet enligt följande

Läs mer

Vad kan hända? strävorna

Vad kan hända? strävorna strävorna 4D Vad kan hända? föra, följa och värdera matematiska resonemang sannolikhet Avsikt och matematikinnehåll Innebörden i sannolikhet är en viktig kunskap för alla. Det finns gott om exempel på

Läs mer

Föreläsning 2. Kapitel 3, sid Sannolikhetsteori

Föreläsning 2. Kapitel 3, sid Sannolikhetsteori Föreläsning 2 Kapitel 3, sid 47-78 Sannolikhetsteori 2 Agenda Mängdlära Kombinatorik Sannolikhetslära 3 Mängdlära Används för att hantera sannolikheter Viktig byggsten inom matematik och logik Utfallsrummet,

Läs mer

Beskrivning av Gesällprov. Fia Med Knuff. Mikael Rydmark.

Beskrivning av Gesällprov. Fia Med Knuff. Mikael Rydmark. Beskrivning av Gesällprov Fia Med Knuff Mikael Rydmark rydmark@kth.se Mikael Rydmark 1(11) 10-05-05 Innehållsförteckning Inledning...3 Nytt spel...4 Regler... 6 Om Spelet... 7 Brädet... 7 Tärningen...8

Läs mer

NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN Del I, 9 uppgifter utan miniräknare 3. Del II, 8 uppgifter utan miniräknare 5

NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN Del I, 9 uppgifter utan miniräknare 3. Del II, 8 uppgifter utan miniräknare 5 freeleaks NpMaB vt00 1(8) Innehåll Förord 1 NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN 00 Del I, 9 uppgifter utan miniräknare 3 Del II, 8 uppgifter utan miniräknare 5 Förord Uppgifter till den äldre

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

NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN Del I, 10 uppgifter utan miniräknare 3. Del II, 9 uppgifter med miniräknare 6

NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN Del I, 10 uppgifter utan miniräknare 3. Del II, 9 uppgifter med miniräknare 6 freeleaks NpMaB vt2001 1(8) Innehåll Förord 1 NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN 2001 2 Del I, 10 uppgifter utan miniräknare 3 Del II, 9 uppgifter med miniräknare 6 Förord Skolverket har endast

Läs mer

Handbok Kiriki. Albert Astals Cid Eugene Trounev Översättare: Stefan Asserhäll

Handbok Kiriki. Albert Astals Cid Eugene Trounev Översättare: Stefan Asserhäll Albert Astals Cid Eugene Trounev Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 5 2 Hur man spelar 6 3 Spelets regler, strategi och tips 8 3.1 Spelregler..........................................

Läs mer

getsmart Grå Regler för:

getsmart Grå Regler för: (x²) 1 2 Regler för: getsmart Grå Algebra 8 _ (x²) 1 2 Algebra 4 (2 2³) 1 4 _ xy (2 2³) 1 4 _ xy (x²) 1 2 _ (2 2³) 1 4 _ xy (x²) 1 2 _ (2 2³) 1 4 _ xy 4 Algebra Algebra _ 8 Det rekommenderas att man börjar

Läs mer

Sannolikhet DIAGNOS SA3

Sannolikhet DIAGNOS SA3 Sannolikhet DIAGNOS SA3 Grundläggande sannolikhet Diagnosen omfattar 9 uppgifter där eleverna ska ges möjlighet att visa om de förstår innebörden av begreppet sannolikhet och slump samt om de har strategier

Läs mer

Algebra I, 1MA004. Lektionsplanering

Algebra I, 1MA004. Lektionsplanering UPPSALA UNIVERSITET Matematiska Institutionen Dan Strängberg HT2016 Fristående, IT, KandDv, KandMa, Lärare 2016-11-02 Algebra I, 1MA004 Lektionsplanering Här anges rekommenderade uppgifter ur boken till

Läs mer

Extramaterial till Matematik X

Extramaterial till Matematik X LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik X NIVÅ ETT Sannolikhet ELEV Du kommer nu att få bekanta dig med Google Kalkylark. I den här uppgiften får du öva dig i att skriva

Läs mer

Kapitel 2. Grundläggande sannolikhetslära

Kapitel 2. Grundläggande sannolikhetslära Sannolikhetslära och inferens II Kapitel 2 Grundläggande sannolikhetslära 1 Att beräkna en sannolikhet I många slumpförsök gäller att alla utfall i S är lika sannolika. Exempel: Tärningskast, slantsingling.

Läs mer

1 Mätdata och statistik

1 Mätdata och statistik Matematikcentrum Matematik NF Mätdata och statistik Betrakta frågeställningen Hur mycket väger en nyfödd bebis?. Frågan verkar naturlig, men samtidigt mycket svår att besvara. För att ge ett fullständigt

Läs mer

Algoritm för uppskattning av den maximala effekten i eldistributionsnät med avseende på Nätnyttomodellens sammanlagringsfunktion

Algoritm för uppskattning av den maximala effekten i eldistributionsnät med avseende på Nätnyttomodellens sammanlagringsfunktion Algoritm för uppskattning av den maximala effekten i eldistributionsnät med avseende på Nätnyttomodellens sammanlagringsfunktion Carl Johan Wallnerström December 2005 Kungliga Tekniska Högskolan (KTH),

Läs mer

Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition.

Eulercykel. Kinesiska brevbärarproblemet. Kinesiska brevbärarproblemet: Metod. Kinesiska brevbärarproblemet: Modell. Definition. Definition. Eulercykel Definition En Eulercykel är en cykel som använder varje båge exakt en gång. Definition En nods valens är antalet bågar som ansluter till noden. Kinesiska brevbärarproblemet En brevbärartur är

Läs mer

1 Föreläsning I, Vecka I: 5/11-11/11 MatStat: Kap 1, avsnitt , 2.5

1 Föreläsning I, Vecka I: 5/11-11/11 MatStat: Kap 1, avsnitt , 2.5 1 Föreläsning I, Vecka I: 5/11-11/11 MatStat: Kap 1, avsnitt 2.1-2.2, 2.5 Introduktion till kursen. Grundläggande sannolikhetslära. Mängdlära, händelser, sannolikhetsmått Händelse följer samma räkneregler

Läs mer

Matematiska lägesmått med en micro:bit

Matematiska lägesmått med en micro:bit Matematiska lägesmått med en micro:bit Lektionen handlar om att träna lägesmått genom att programmera en micro:bit. Lektionsförfattare: Camilla Askebäck Diaz Till läraren Sida 1 av 18 1. Repetera medelvärde,

Läs mer

Generering av L-system fraktaler med Processing.js

Generering av L-system fraktaler med Processing.js Generering av L-system fraktaler med Processing.js TNM084 Procedurella Metoder för bilder Carl Claesson, carcl268@student.liu.se Hemsida: http://carlclaesson.se/tnm084 Sammanfattning Denna rapport beskriver

Läs mer

Extramaterial till Matematik X

Extramaterial till Matematik X LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik X NIVÅ TVÅ Sannolikhet ELEV Du kommer nu att få bekanta dig med Google Kalkylark. I den här uppgiften får du öva dig i att skriva

Läs mer

Föreläsning Datastrukturer (DAT036)

Föreläsning Datastrukturer (DAT036) Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2013-11-18 Idag Mer om grafer: Minsta uppspännande träd (för oriktade grafer). Prims algoritm. Kruskals algoritm. Djupet först-sökning. Cykel

Läs mer

getsmart Lila Regler för:

getsmart Lila Regler för: 3 2 Regler för: getsmart Lila 9 Graf y 4 7 3 2 2 3 Funksjon 1-4 4-3 -2-1 -1 1 2 3-2 x f(x)= f(x)= 3 2 2 3 3 2 2 3-3 -4 Graf 9 3 2 2 3 Funksjon 7 Det rekommenderas att man börjar med att se på powerpoint-reglerna

Läs mer

Vidare får vi S 10 = 8,0 10 4 = 76, Och då är 76

Vidare får vi S 10 = 8,0 10 4 = 76, Och då är 76 Ellips Sannolikhet och statistik lösningar till övningsprov sid. 38 Övningsprov.. i) P(:a äss och :a äss och 3:e äss och 4:e äss ) P(:a äss) P(:a äss :a äss) P(3:e äss :a och :a äss) antal P(4:a äss :a

Läs mer

2. Förkorta bråket så långt som möjligt 1001/

2. Förkorta bråket så långt som möjligt 1001/ Nästan vanliga tal 1. Beräkna1 2+3 4+5 2000+2001 Lösning. 1 + ( 2 + 3) + ( 4 + 5) +... + ( 2000 + 2001) = 1+ 142 +... 43 + 1 = 1001 2. Förkorta bråket så långt som möjligt 1001/10000001 1000 gnr Lösning.

Läs mer

Föreläsning 6 Datastrukturer (DAT037)

Föreläsning 6 Datastrukturer (DAT037) Föreläsning 6 Datastrukturer (DAT037) Fredrik Lindblad 1 15 november 2017 1 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt. Se http://www.cse.chalmers.se/edu/year/2015/course/dat037

Läs mer

SF1920/SF1921 Sannolikhetsteori och statistik 6,0 hp Föreläsning 1 Mängdlära Grundläggande sannolikhetsteori Kombinatorik Deskriptiv statistik

SF1920/SF1921 Sannolikhetsteori och statistik 6,0 hp Föreläsning 1 Mängdlära Grundläggande sannolikhetsteori Kombinatorik Deskriptiv statistik SF1920/SF1921 Sannolikhetsteori och statistik 6,0 hp Föreläsning 1 Mängdlära Grundläggande sannolikhetsteori Kombinatorik Deskriptiv statistik Jörgen Säve-Söderbergh Information om kursen Kom ihåg att

Läs mer

Matematiska lägesmått med en micro:bit

Matematiska lägesmått med en micro:bit Lektionen ger eleverna möjlighet att träna matematik och lägesmått med hjälp av att programmera en micro:bit. Camilla Askebäck Diaz är högstadielärare i matematik på Södermalmsskolan i Stockholm. Till

Läs mer

Instruktioner - Datortentamen TDDE24 och TDDD73 Funktionell och imperativ programmering (i Python)

Instruktioner - Datortentamen TDDE24 och TDDD73 Funktionell och imperativ programmering (i Python) Instruktioner - Datortentamen TDDE24 och TDDD73 Funktionell och imperativ programmering (i Python) Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok, t.ex. den rekommenderade kursboken. Boken

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 2018-01-02 Kaj Holmberg Lösningar Uppgift 1 1a: Den givna startlösningen är tillåten

Läs mer

Ansiktsigenkänning med MATLAB

Ansiktsigenkänning med MATLAB Ansiktsigenkänning med MATLAB Avancerad bildbehandling Christoffer Dahl, Johannes Dahlgren, Semone Kallin Clarke, Michaela Ulvhammar 12/2/2012 Sammanfattning Uppgiften som gavs var att skapa ett system

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 6 Anton Grensjö grensjo@csc.kth.se 4 oktober 2017 1 Idag Algoritmkonstruktion (lite blandat) Redovisning och inlämning av labbteori 3 2 Uppgifter Uppgift

Läs mer

Quine McCluskys algoritm

Quine McCluskys algoritm Quine McCluskys algoritm Tabellmetod för att systematiskt finna alla primimplikatorer ƒ(a,b,c,d) = m(4,5,6,8,9,0,3) + d(0,7,5) Moment : Finn alla primimplikatorer Steg: Fyll i alla mintermer i kolumn.

Läs mer

1, 2, 3, 4, 5, 6,...

1, 2, 3, 4, 5, 6,... Dagens nyhet handlar om talföljder, ändliga och oändliga. Talföljden 1,, 3, 4, 5, 6,... är det första vi, som barn, lär oss om matematik över huvud taget. Så småningom lär vi oss att denna talföljd inte

Läs mer

Frekvenstabell över tärningskast med C#

Frekvenstabell över tärningskast med C# Instruktion Frekvenstabell över tärningskast med C# Introduktionsuppgift Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Innehåll Du ska följa steg för steg -instruktionen i

Läs mer

Föreläsning 8 SLUMPTAL, SIMULERING + INTRODUKTION TILL VEKTORER

Föreläsning 8 SLUMPTAL, SIMULERING + INTRODUKTION TILL VEKTORER Föreläsning 8 SLUMPTAL, SIMULERING + INTRODUKTION TILL VEKTORER Från laboration 3 till 4 I laboration 3 har du implementerat klasser implementerat metoder i klasserna I laboration 4 kommer du att implementera

Läs mer

kl Tentaupplägg

kl Tentaupplägg Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer

Läs mer

Tentamen Datastrukturer (DAT036)

Tentamen Datastrukturer (DAT036) Tentamen Datastrukturer (DAT036) Datum och tid för tentamen: 2013-12-16, 14:00 18:00. Ansvarig: Nils Anders Danielsson. Nås på 0700 620 602 eller anknytning 1680. Besöker tentamenssalarna ca 15:00 och

Läs mer

Armin Halilovic: EXTRA ÖVNINGAR

Armin Halilovic: EXTRA ÖVNINGAR KOMBINATORIK I kombinatoriken sysslar man huvudsakligen med beräkningar av antalet sätt på vilket element i en given lista kan arrangeras i dellistor. Centrala frågor i kombinatoriken är: " Bestäm antalet..."

Läs mer

Laboration 2. Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink

Laboration 2. Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink Artificiell Intelligens, Ht 2004 2004-10-19 Lärare: Christina Olsén Handledare: Therese Edvall Daniel Ölvebrink Laboration 2 Laboranter: Johan Bystedt (dit02lbt) Alexander Pettersson (dit02apn) Stefan

Läs mer

Kortspel. Ett spel - tusen upplevelser

Kortspel. Ett spel - tusen upplevelser Kortspel Ett spel - tusen upplevelser 1 Översikt över korten i kortleken 7 8 9 10 Knekt Överste Kung Ess 2 Prova olika spel Farmor / Mormor 3-5 7, 8, 9, 10, Knekt, Överste, Kung, Ess Reglerna för detta

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Laboration 1. Linjär Algebra och Avbildningar Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion I denna övning skall

Läs mer

Datastrukturer och Algoritmer D0041D

Datastrukturer och Algoritmer D0041D Luleå Tekniska Universitet 19 mars 2014 Laborationsrapport Laboration 3 Datastrukturer och Algoritmer D0041D Primms Algoritm Namn E-mail Magnus Björk magbjr-3@ltu.student.se Handledare Felix Hansson Primms

Läs mer

5Chans och risk. Mål. Grunddel K 5. Ingressen

5Chans och risk. Mål. Grunddel K 5. Ingressen Chans och risk ål När eleverna har studerat det här kapitlet ska de kunna: förklara vad som menas med begreppet sannolikhet räkna ut sannolikheten för att en händelse ska inträffa känna till hur sannolikhet

Läs mer

ÅLDER 10+ Approval: ROD. File Name: B _Risk_Core_INST_15.indd. Originator: CF 2 5 SPELARE

ÅLDER 10+  Approval: ROD. File Name: B _Risk_Core_INST_15.indd. Originator: CF 2 5 SPELARE ÅLDER 10+ 2 5 SPELARE 0516B7404106 Aa SPELANVISNINGAR HASBRO GAMING och dess logotyp är varumärken som tillhör Hasbro. 2015 Hasbro. Med ensamrätt. Tillverkad av: Hasbro SA, Rue Emile-Boéchat 31, 2800 Delémont

Läs mer

Föreläsningsmanus i matematisk statistik för lantmätare, vecka 2 HT07

Föreläsningsmanus i matematisk statistik för lantmätare, vecka 2 HT07 Föreläsningsmanus i matematisk statistik för lantmätare, vecka 2 HT07 Bengt Ringnér August 31, 2007 1 Inledning Detta är preliminärt undervisningsmaterial. Synpunkter är välkomna. 2 Händelser och sannolikheter

Läs mer

Three Monkeys Trading. Tärningar och risk-reward

Three Monkeys Trading. Tärningar och risk-reward Three Monkeys Trading Tärningar och risk-reward I en bok vid namn A random walk down Wall Street tar Burton Malkiel upp det omtalade exemplet på hur en apa som kastar pil på en tavla genererar lika bra

Läs mer

Stokastiska processer med diskret tid

Stokastiska processer med diskret tid Stokastiska processer med diskret tid Vi tänker oss en följd av stokastiska variabler X 1, X 2, X 3,.... Talen 1, 2, 3,... räknar upp tidpunkter som förflutit från startpunkten 1. De stokastiska variablerna

Läs mer

STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. Matematisk statistik Anders Björkström

STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. Matematisk statistik Anders Björkström STOCKHOLMS UNIVERSITET 2001-10-22 MATEMATISKA INSTITUTIONEN Avd. Matematisk statistik Anders Björkström GRUNDLÄGGANDE MATLAB-TRÄNING för den som aldrig har arbetat med Matlab förut A. Matlabs allmänna

Läs mer

TDDI16 Datastrukturer och algoritmer. Algoritmanalys

TDDI16 Datastrukturer och algoritmer. Algoritmanalys TDDI16 Datastrukturer och algoritmer Algoritmanalys 2017-08-28 2 Översikt Skäl för att analysera algoritmer Olika fall att tänka på Medelfall Bästa Värsta Metoder för analys 2017-08-28 3 Skäl till att

Läs mer

Föreläsning 7 Innehåll. Rekursion. Rekursiv problemlösning. Rekursiv problemlösning Mönster för rekursiv algoritm. Rekursion. Rekursivt tänkande:

Föreläsning 7 Innehåll. Rekursion. Rekursiv problemlösning. Rekursiv problemlösning Mönster för rekursiv algoritm. Rekursion. Rekursivt tänkande: Föreläsning 7 Innehåll Rekursion Rekursivt tänkande: Hur många år fyller du? Ett år mer än förra året! Rekursion Rekursiv problemlösning Binärsökning Generiska metoder Rekursiv problemlösning: Dela upp

Läs mer

Introduktion till programmering SMD180. Föreläsning 9: Tupler

Introduktion till programmering SMD180. Föreläsning 9: Tupler Introduktion till programmering Föreläsning 9: Tupler 1 1 Sammansatta datatyper Strängar Sekvenser av tecken Icke muterbara Syntax: "abcde" Listor Sekvenser av vad som helst Muterbara Syntax: [1, 2, 3]

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, )}, i N, 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 innehåller

Läs mer

Föreläsning 6. Slumptal Testa slumptal Slumptal för olika fördelningar Grafer Datastrukturen graf

Föreläsning 6. Slumptal Testa slumptal Slumptal för olika fördelningar Grafer Datastrukturen graf Föreläsning 6 Slumptal Testa slumptal Slumptal för olika fördelningar Grafer Datastrukturen graf Repetition En dator kan inte generera slumptal då den är helt deterministisk, däremot kan den generera pseudo-slumptal

Läs mer

Algoritmer, datastrukturer och komplexitet

Algoritmer, datastrukturer och komplexitet Algoritmer, datastrukturer och komplexitet Övning 6 Anton Grensjö grensjo@csc.kth.se 9 oktober 2015 Anton Grensjö ADK Övning 6 9 oktober 2015 1 / 23 Översikt Kursplanering Ö5: Grafalgoritmer och undre

Läs mer

Regler för bräde. av Sten Helmfrid

Regler för bräde. av Sten Helmfrid Regler för bräde av Sten Helmfrid Inledning Den traditionella svenska formen av bräde som i litteraturen ofta kallas svenskt brädspel kom till Sverige senast på 1600-talet. Under årens lopp har det utvecklats

Läs mer

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 2014-2015. Lektion 4 Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret 014-015 Denna lektion ska vi studera rekursion. Lektion 4 Principen om induktion Principen om induktion är ett vanligt sätt att bevisa

Läs mer

Veckoblad 3. Kapitel 3 i Matematisk statistik, Blomqvist U.

Veckoblad 3. Kapitel 3 i Matematisk statistik, Blomqvist U. Veckoblad 3 Kapitel 3 i Matematisk statistik, Blomqvist U. ya begrepp: likformig fördelning, hypergeometerisk fördelning, Hyp(, n, p), binomialfördelningen, Bin(n, p), och Poissonfördelningen, Po(λ). Standardfördelningarna

Läs mer

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1 Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut

Läs mer

Förberedande Sannolikhet DIAGNOS SAF

Förberedande Sannolikhet DIAGNOS SAF Förberedande Sannolikhet DIAGNOS SAF Diagnosen är muntlig och omfattar ett antal försök med tillhörande frågor kring resultaten av försöken. Eleverna ges möjligheter att visa vilken uppfattning de har

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

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

TDDC74 Programmering: Abstraktion och modellering Datortenta , kl 14-18

TDDC74 Programmering: Abstraktion och modellering Datortenta , kl 14-18 TDDC74 Programmering: Abstraktion och modellering Datortenta - 017-10-7, kl 14-18 Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis

Läs mer

Steg-Vis. Innehållsförteckning

Steg-Vis. Innehållsförteckning Innehållsförteckning SIDAN Förord 6 Inledning 7 Målgrupp och arbetssätt 8 Dåligt minne? 9 Nyckelfakta 10 Råd till pedagog 11 Tre matematiska lagar 12 10-komplement 14 Från subtraktion till addition 15

Läs mer

Np MaB vt 2002 NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN 2002

Np MaB vt 2002 NATIONELLT KURSPROV I MATEMATIK KURS B VÅREN 2002 Skolverket hänvisar generellt beträffande provmaterial till bestämmelsen om sekretess i 4 kap. 3 sekretesslagen. För detta material gäller sekretessen fram till utgången av juni 00. Anvisningar Provtid

Läs mer

Artificial Intelligence

Artificial Intelligence Omtentamen Artificial Intelligence Datum: 2013-01-08 Tid: 09.00 13.00 Ansvarig: Resultat: Hjälpmedel: Gränser: Cecilia Sönströd Redovisas inom tre veckor Inga G 10p, VG 16p, Max 20p Notera: Skriv läsbart!

Läs mer

Vinjetter TDDC91 Datastrukturer och algoritmer

Vinjetter TDDC91 Datastrukturer och algoritmer Vinjetter TDDC91 Datastrukturer och algoritmer 17 augusti 2015 2 Scenario 1 Man har inom Posten Logistik AB skrivit programvara för sortering av kundinformation och vill standardisera användningen av sorteringsalgoritmer.

Läs mer

Första sidan är ett försättsblad (laddas ned från kurshemsidan) Alla frågor som nns i uppgiftstexten är besvarade

Första sidan är ett försättsblad (laddas ned från kurshemsidan) Alla frågor som nns i uppgiftstexten är besvarade HT 2011 Inlämningsuppgift 1 Statistisk teori med tillämpningar Instruktioner Ett av problemen A, B eller C tilldelas gruppen vid första övningstillfället. Rapporten ska lämnas in senast 29/9 kl 16.30.

Läs mer

Genetisk programmering i Othello

Genetisk programmering i Othello LINKÖPINGS UNIVERSITET Första versionen Fördjupningsuppgift i kursen 729G11 2009-10-09 Genetisk programmering i Othello Kerstin Johansson kerjo104@student.liu.se Innehållsförteckning 1. Inledning... 1

Läs mer

Föreläsning 1, Matematisk statistik Π + E

Föreläsning 1, Matematisk statistik Π + E Introduktion Sannolikhetsteori Beroende Föreläsning 1, Matematisk statistik Π + E Sören Vang Andersen 4 november 2014 Sören Vang Andersen - sva@maths.lth.se FMS012 F1 1/26 Introduktion Sannolikhetsteori

Läs mer

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp Dag Wedelin, bitr professor, och K V S Prasad, docent Institutionen för data- och

Läs mer

Lösningsförslag till övningsuppgifter, del II

Lösningsförslag till övningsuppgifter, del II Lösningsförslag till övningsuppgifter del II Obs! Preliminär version! Ö.1. För varje delare d till n låt A d var mängden av element a sådana att gcd(a n = d. Partitionen ges av {A d : d delar n}. n = 6:

Läs mer

Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl

Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl 1 Matematiska Institutionen KTH Tentamensskrivning i Diskret Matematik för CINTE och CMETE, SF1610, onsdagen den 20 augusti 2014, kl 14.00-19.00. Examinator: Olof Heden Hjälpmedel: Inga hjälpmedel är tillåtna

Läs mer