Reinforcement Learning med Q-learning LUDWIG HALVORSEN PROJEKT 729G43

Storlek: px
Starta visningen från sidan:

Download "Reinforcement Learning med Q-learning LUDWIG HALVORSEN PROJEKT 729G43"

Transkript

1 Reinforcement Learning med Q-learning LUDWIG HALVORSEN PROJEKT 729G43 0

2 Innehåll 1. Introduktion Teori och begrepp Kort historia lektion om varför ANN helt plötsligt blev stort Dynamiskprogrammering Monte Carlo metoder Markov Decision Process Policy sökning GPU vs CPU, eller hur ANN räknar Q-learning Q-learning Exploration vs Exploitation, introduktionen av ε-greedy algoritmen Hinder med Q-learning i RL Funktion approximation Stokastiskt policy sökning med Q-värde representation Maximum Bias och Double Q-learning VAPS algoritmer Nackdelen med ingen KB Framtidsutsikter Referenser

3 Frågeställning : Hur fungerar Reinforcement Learning med Q-learning samt hur ser framtidsutsikterna ut för detta? Begrepp : Reinforcement Learning, Bells ekvation, Dynamisk programmering, Monte Carlo metoder, Markov Decision Process(MDP), policy sökning, Q-learning, ε-greedy policy, funktions approximation, Stokastiskt policy sökning, Maxium Bias, Double Q-learning, VAPS algoritmer 1. Introduktion Denna text förutsätter att läsaren har grundläggande begrepp kunskap om maskininlärning och neurala nät (de som tagits upp på föreläsningarna). Eftersom texten handlar om artificiella neurala nät förutsätts också att läsaren har grundläggande kunskaper inom artificiell intelligens eller likande kunskaper med det som presenteras i kap 1-14 samt kap 18 i Russel och Norvig(2014) bok Artifical Intelligence: A Modern Approach. Målet med denna studie är att introducera läsaren till hur artificiella neuronnätverk(ann) kan tränas upp med förstärkande inlärning (förkortas RL från det engelska ordet Reinforcement Learning) metoden Q-learning. Detta genom att ge läsaren kunskaper om begrepp och teori bakom idéer för att förstå hur sådana ANN fungerar. Därför kommer första delen utav studien behandla delar bakgrund, tar upp kort historia och bakgrunds teori till Q-learning. Senare kommer Q-learning att introduceras och förklaras. Fördelar med Q-learning kommer tas upp men också nackdelar med Q-learning samt hur man har gått tillväga för att lösa dessa problem. Slutligen kommer det diskuteras om framtidsutsikterna, är RL med Q-learning svaret på allt? Exempel tas upp i studien på djup förstärktinlärda neuronnätverk (Deep Reinforce Learning Neuron Network) då Q-learning oftast appliceras på sådana ANN. Djup förstärktinlärda neuronnätverk är egentligen ett annat ord för neurala nät med mer än två dolda lager. Förstärkt inlärande artificiella neuronnätverk (dvs. RL ANN) är inspirerade utav behaviorism syn på inlärning. Likt en hund som får godis när ens beteende är önskvärt får det ANN poäng när den gör rätt. Nätverken belönas om de gör rätt och bestraffas när de gör fel, istället för att nätverket/programmet får se facit om de har rätt får det istället belöning, vilket kan indirekt ses som att ANN handlande följer facit. Det finns olika sätt att lära ett djupa neurala nätverk (Deep Neural Network förkortas DNN) eftersom begreppet är så stort så kommer i denna studie endast ta upp ett alternativ nämligen Q-learning samt kommer metoden SARSA kort diskuteras. Anledningen till varför Q-learning har valts som metod är för i nuläget är det den en av de mest använda. Vid texten skrivande så är ett av de främsta ANN utvecklat av företaget Google Deep Mind och det använder just en version av Q-learning. I studien kommer deras DNN AlphaGo användas som exempel för att beskriva hu implementering utav Q-learning kan se ut, dock bör nämnas att AlphaGo inte exklusivt baseras på endast Q-learning metoder utan AlphaGo använder också Monte Carlo Tree Search(MCTM) algoritm. Artikeln som använts i denna studie finns referens har använts för att förstå och erbjuder intressant läsning dock ligger den utanför studiens frågeställning att diskutera hela AlphaGO:s ANN. Dessutom är det värt att nämna att tränade de nätet med övervakad inlärning (Supervised Learning (SL)) innan de använda sig utav RL. I studien kommer det handla om aktiv förstärkande inlärning. Med detta menas att funktionerna uppdaterar och förbättra medans passiv RL är som Russel och Norvig(2014) 2

4 förklarar är fast och programmet kan inte göra ändringar på dess policy utan passiv RL utvärderar istället endast hur bra policyn är som den följer. Det som gör att Google Deep Mind AlphaGo är det kändaste ANN att det nyligen lyckades den senaste versionen av nätet vinna över världsmästaren i brädspelet Go. Det som gör segern intressant och varför det fick AI forskare och AlphaGo entusiaster att häpna var att det var tidigare trott att det skulle ta flera år innan ett datorprogram kunde bli bättre än människan. Anledning till varför man har trott detta måste man förstå den kombinatoriska explosionen utav möjliga drag i Go är enormt. Jämfört med möjliga drag i schack så är skillnaden enorm, schack har fortfarande stort antal möjliga positioner(state) med sina olika positioner (Russel & Norvig, 2014) men antalet bleknar i jämförelse med spelet Go på ett 19x19 bräde som har möjliga positioner(allis, 1994). Antalet möjliga drag som kan göras i schack efter två drag är 400 olika drag medans i Go finns det möjliga drag(muoio, 2016). Detta gör att man schack kan använda bredden först sökning i en trädsökningsalgoritm till djup = 6 man använder s.k brute force metod för att räkna ut det bästa draget. Detta var vad IBMs Deep Blue använde när den slog Gary Kasprov 1997 (dåvarande regerande schackvärldsmästare). Även fast både hårdvara och mjukvara har utvecklats otroligt mycket sedan 1997 är det fortfarande omöjligt med dagens teknik att bredden först sök med ett djup som ger bra resultat på spelet Go, eftersom antalet möjliga tillstånd är enormt mycket mer än atomer universum består utav som är Då referenslitteraturen till denna studie är på engelska har jag därför valt att skriva inom parantes på det begrepp som jag valt att översätta eftersom då det oftast hänvisas på engelska beteckningen. Det har jag valt dessutom är för att göra det lättare att för läsaren gå tillbaka när man läser referenserna samt att läsaren förstår vad jag menar då de kan vara vana med endast den engelska beteckningen. 2.Teori och begrepp 2.1 Kort historia lektion om varför ANN helt plötsligt blev stort Även om texten föresätter att läsaren har kunskap om neurala nät skadar det inte ha lite historia. ANN har funnits i teorin sedan 1950-talet (Russel & Norvig, 2014) ändå så har maskin inlärning med ANN tagit igång de senaste 7 åren. Så man kan ställa sig frågan varför har AI forskningen plötsligt börjat intressera sig nu för ANN även om idéen har funnits i teorin i 60 år? Detta kan verka som att det nu endast en trend men det som har hänt nu är det som länge varit eftertraktat, man kunde förut inte träna ANN. Problemet med att träna ANN berodde på två faktorer. För det första hårdvara, att träna ANN krävs en stor mängd beräknings kapacitet, tekniken har inte funnits fram tills nu. Eftersom för att kunna justera alla vikter i neurala nätverk så nätverket ger önskad output behövs det utföras mycket beräkningar utföras(mer om detta i avsnitt 2.5 om varför grafikkort (GPU) är guds gåva till att träna ANN). Det andra problemet som hindrade att kunna träna ANN var att man behöver ofantligt stora mängder på data (samples) för att kunna träna näten så det blir optimala. ofantligt stora datamängder så menar jag verkligen ofantligt stora mängder till exempel skriver Silver, Huang, Maddison(2016) att AlphaGo fick först se på 30 miljoner positioner utav spelet Go (dess träningsdatan) som nätet fick träna på. Denna mängd kan ses absurd och redundant men behövs för träningen och vilka har otroligt stora mängder data och vilka satsar på ANN forskning? Google och Facebook har båda och gissa vad de investerar i? Så nu när vi har både 3

5 tekniken och träningsmängden som krävs för att träna ett RL ANN så är dem heta som aldrig förr. 2.2 Dynamiskprogrammering Dynamiskprogrammering(DP) är ett begrepp man hör när man pratar om ANN och används inom datorvetenskapen och matematiken för att lösa optimering problem. Q-learning är inspirerat för att lösa problem med hjälp utav dynamiskprogrammering. Dynamiskprogrammering innebär att man delar upp ett stort komplexproblem i små mindre delproblem och genom att lösa delproblemen var för sig och sedan summerar dem ihop kan man lösa större problem enklare. Dynamiskprogrammering optimerar också problemlösningen, agenten behöver utföra mindre beräkningar. Detta sker genom att agenten sparar ner sina lösningar på problem den har löst förr i sin kunskapsbas. Sedan när agenten stöter på nya problem jämför agenten om den har tidigare stöt på problemet och löst det. Detta gör om agenten har räknat på problemet förr och löst det så behöver den inte räkna problemet igen utan kan direkt applicerar lösningen. Ett exempel där man kan reducera både minnes och tidskomplexiteten med dynamiskprogrammering är när man programmerar ett program som räknar ut tal i den kända Fibonacci sekvensen. Exemplet som kommer beskrivas är taget från förklarat utav författaren med alias SJ(2015). SJ förklarar att dynamiskprogrammeringens reduceringar beror på att (1) i stället för att göra samma beräkning flera gånger sparas beräkningen ner första gången den görs och resultatet används sedan för att räkna på nya tal i sekvensen. Till exempel istället för att programmet ska räkna ut det fjärde talet i Fibonacci sekvensen behöver programmet endast räkna ut det tredje och andra talet, men eftersom programmet redan har räknat ut det andra och tredje talet i sekvensen så behöver programmet inte räkna ut de talen igen utan programmet kollar endast på resultatet som vi har sparat ner i minnet och använder de talen för att beräkna. Så när programmet har problemet att räkna ut ett stort Fibonacci tal så delar programmet upp det i mindre problem eftersom programmet har sparat ner tidigare tal i minnet. Denna problemlösning tillåter minneskompliteten och tidskomplexiteten att reduceras från O(2 n ) till O(n). Detta tillåter att agenter som använder dynamiskprogrammering att kunna lösa mer komplexa problem genom att bryta ner problemen för att se om det har löst dem tidigare. Till exempel att öppna dörr B är egentligen ingen större skillnad än att öppna dörr A, då det är samma typ av dörr och om agenten vet att den öppnade dörr A har den sparat ner lösningen och använder den vilket är enklare än att behöva lösa problemet igen. 2.3 Monte Carlo metoder Monte Carlo metoder (MCM) är ett matematiskt ramverk med metoder för att räkna ut matematiska problem som har en slumpfaktor i sig. Det som skiljer MCM från DP är som Sutton och Barto (2016) förklarar att agenter som använder sig utav MCM funktioner uppdaterar sina funktioner efter att agenten har upplevt istället för DP som uppdaterar sina funktioner innan. Eftersom funktionerna blir uppdaterade på upplevelser antas då världen att vara episodiskt eftersom uppdateringarna kan endast göras när en episod har avslutats därav kravet på en episodisksekvens. Det andra sättet MCM skiljer sig från DP är att MCM inte försöker att predicera värden på framtida tillstånd med tillstånd som upplevts. 4

6 2.4 Markov Decision Process Markov Decision Process(MDP) är en process som kan användas för att lösa beslutsfattande i sekventiella problem(russel & Norvig, 2014). Dock så går det att göra om formlerna så agenten kan hantera kontinuerliga miljöer. MDP ligger tillgrund för Q-learning och därför tas den upp. Exempel MDP spel som schack, backgammon, och Go. Ett MDP-tillstånd består utav en tupel på fem variabler, vilket gör att den skiljer sig från Markov Chains(MC) då MDP också dessutom tillåter val utav handlingar i ett tillstånd medans MC istället endast tillåter en handling samt också att det finns belöningar i MCP. Men som Sutton och Barto(2016) berättar är målet att reducera MDP till MC, för då betyder det att agenten har hittat den optimala beslutsekvensen. (S, A, P. (, ), R. (, ), γ) (2.1) S : Uppsättningen med tillstånd agenten kan vara i, detta är oftast finit i RL dvs det finns ett tillstånd som är agentens måltillstånd(terminal state). A: Uppsättningen/mängden med handlingar(action) agenten kan utföra i ett tillstånd. Kan därför skrivas s(a A). Pa(s, s ) : Eftersom MDP problem är stokastiska måste därför sannolikheter kunna skrivas in. Variabeln anger sannolikheten P för att handling a i tillstånd s i tidpunkten t leder till tillstånd s i tidpunkten t+1. Kan därför skrivas mer utförligt som Pr(st+1 = s st = s, at= a), givet att vid tillstånd s i tidpunkten t och agenten utför handlingen a i tidpunkten t så vet vi sannolikheten för att agenten hamnar i nästa tillstånd som är st+1 som skrivs s. Ra(s, s ): Anger den direkta belöningen agenten får för att röra sig från tillstånd s till tillstånd s när den utföra handling a i tillstånd s. γ [0,1](gamma): Anger avdragsfaktorn en agent har, avdragsfaktorn avgör om det är viktigt att tänka på långsiktiga och kortsiktiga mål eller endast kortsiktiga mål. Avdragsfaktorn är ett tal mellan 0 och 1. Mer om detta och påverkan kommer tas upp i avsnitt 2.6 Denna tupel använder MDP som sagt för att fatta en sekvens av beslut och i varje steg avgör vilket utav de möjliga besluten som ska tas och därmed tillslut reduceras ner och blir en MC. Det MDP gör är att hela tiden försöker uppskatta och avgöra vilken handling i agentens nuvarande tillstånd(state) som leder agenten till de nästkommande tillstånd som har bäst prestationsmått, dvs det nästkommande tillstånd som tar agenten närmast dess måltillstånd(terminal tillstånd). Nästa avsnitt tar upp hur detta sker Policy sökning Det som man med MDP vill lösa är att hitta den bästa beslutssekvensen, detta kallas också för den mest optimala policyn för att lösa problemet, ett utdrag från hur svenska akademin ordlista(saol) definierar ordet policy är på principer grundat på handlingar (SAOL 2016, s698). För att hitta den optimala policyn krävs det som Russel och Norvig(2016) förklarar att agenten iterativt söker i världen efter den serie tillstånd(state) som leder till måltillståndet med bästa prestationsmått. Exempel på olika prestationsmått man kan mäta en agent utefter är tid, kortast res sträcka, använt minst antal beräkningar. Symbolen som använts för att representera policy är π, samma symbol som använts för att representera talet pi. 5

7 Formel för att räkna ut den bästa policyn används formeln 2,2 och detta görs iterativt. π (s) = argmax P(s s, a)u(s ) a A(s) s För förklaring se formelförklaring för 2.3 (2.2) För att hitta den bästa policyn måste man kunna räkna på vad varje tillstånd har för värde och då måste det tas hänsyn till några egenskaper i varje tillstånd. För att göra detta används Bellmans ekvation(russel & Norvig, 2014) som ser ut : U(s) = R(s) + γ argmax P(s s, a)u(s ) a A(s) s (2.3) U(s) : Prestationsmåttet(nyttan) för agenten befinna sig i tillstånd s. R(s) : Den direkta belöningen agenten har för att befinna sig i tillstånd s, tillstånd som följer den optimala policyn har därför högst belöningar eftersom det är den bästa vägen att ta för att komma fram till målet. γ : inlärningsfaktorn kolla formel förklaringen i avsnitt 2.6 argmax: Kan ses som ett argument: hitta handlingen a utav alla möjliga handlingar A i a A(s) tillstånd s som ger högst värde. Detta sker genom att agenten går igenom alla olika tillstånd varje handling i mängden A och räknar på sannolikheten för att s givet s och a gånger tillståndet prestationsmått. P(s s, a) : Anger sannolikheten för agenten kommer i s givet om agenten befinner sig i tillstånd s och utför handling a. U(s ): Anger prestationsmåttet agenten får för att befinna sig i s. Bellman ekvationen räknar ut värden vilket gör det till en värdes-funktion. Genom att funktionen går igenom alla värden på vad alla tänkbara handlingar i det nuvarandetillståndet leder det till att agenten väljer den handling har högst prestationsmått, vilket gör att agenten är en så kallad greedy agent. Genom att göra Bellman ekvation iterativ dvs vi uppdaterar ekvationens värden ju mer agenten får verka i världen så för den närmre den optimala policyn vilket skrivs π * (Russel & Norvig, 2014). För att göra kunna uppdateringar görs Bellmans ekvationen om lite och blir en så kallad Bellman uppdateringar vilket ser ut så här: U i+1 R(s) + γ max a A(s) P(s s, a)u i (s ) s (2.4) Att hitta optimala policyn på detta sätt gör det inte spelar ingen roll vart agentens starttillstånd i världen är, för så länge agenten följer den satta policyn så kommer den att nå ett måltillstånd. Eftersom varje tillstånd är ett MDP har varje tillstånd har den informationen som kräver för agenten att nå målet på det optimala sättet, detta kallas att varje state har Markov Property egenskaper. Policynsvärde i tillstånd s har räknat ut hur mycket tillstånd värd med alla värden hädanefter till målet så därför spelar ingen roll vart agenten börjar i miljön/världen. (Sutton & Barto, 2016) 6

8 2.5 GPU vs CPU, eller hur ANN räknar Som tidigare nämnt i historieavsnittet kommer det här förklaras mer ingående varför tekniken tillåter djupt förstärkande neuronnätverk att vara bättre på grafikkort (graphical processing unit, GPU) än central processorn (central proccessing unit CPU). Även fast detta är än hårdvarufråga ligger den fortfarande i intresse för denna studie för den förklaringen hjälper att förstå hur Q-learning fungerar. Ett CPU:s fokus är att kunna utföra matematiska operationer så snabbt så möjligt och gör den gör detta seriellt. Anledningen är för att kunna reducera överföringshastighet/fördröjningen (latency) för det är viktigt att ha så låg latency som möjligt. CPU är byggt för att kunna arbeta med mycket olika sorters problem. Medans GPU:er är fokuserat på att räkna på stora matrisvektorer och kan göra massa operationer parallellt. För Q-learning metoden använder matrisvektorer datastrukturen för att spara ner datan. Matriserna består utav vektorer som Q- learning använder sig utav är samma som används för att renderar det grafiska för spel, detta var en slumpmässig tillfällighet. Vilket också gjort att grafikkorts tillverkare intresset för neurala nätverk har ökat. Därför är minnesbandbredden därmed större hos ett GPU än ett CPU. Ett CPU består endast utav få antal kärnor jämfört med GPU, en normalt CPU som är vanligt i datorer är i5 från Intel har 4 kärnor medans ett grafikkort har tusentals kärnor, dessa kärnor tillåter som sagt att mer beräkningar kan beräknas parallellt. En liknelse är att en CPU kan jämföras med ett snabbt tåg med endast några vagnar. Tåget kan snabbt leverera gods till den andra stationen medans GPU kan liknas med ett godståg med många vagnar, den kan inte leverera godsen lika snabbt som det snabba tåget men den kan ta med mer gods. 3.Q-learning Lärande utan modell eller KB. Handlings värdes funktionen alla snackar om. 3.1 Q-learning Q-learning är en blandning utav dynamisk programmering och Monte Carlo metoder. Q- learning är en handlings värdes-funktion då den räknar värden på handlingar i och inte tillstånden i världen. Sutton och Barto (2016) berättar idéerna som Q-learning bygger på som tagits från dynamisk programmering är att algoritmen uppdaterar sina uppskattade värden med inlärda värden. Det som är taget från Monte Carlo är att algoritmen gör uppdateraring på sina upplevelser som inte kräver att Q-learning agenten måste ha en modell. Q-learning är en temporal skillnad metod (eng. temporal difference (TD)). Detta innebär som Russel och Norvig(2014) skriver att den i sin uppdatering uppdaterar med skillnaden mellan det uppskattade värdet för handlingen och handlingens faktiska värde och därav namnet. Detta kommer senare visas och förklaras i ekvation en nedanför. Q-learning använder sig utav Bellmans ekvationen som tidigare visades och uppdaterar den iterativt för att göra hitta den bästa policyn (Mnih et al. 2013), policy sökning tas upp i senare avsnitt. En utav fördelarna och varför Q-learning används flitigt är som Russel och Norvig(2014) tar upp är för att Q-learning är modell fri RL metod. Med detta innebär att en Q-learning agent MCTS algoritm inte behöver inre modell över omgivningen för att lära sig att lösa problem. Just därför gör denna metod så populär då det tillåter att RL ANN göra större generaliseringar och nätverken behöver därför inte justera mycket för att utföra en annan uppgift enligt Silver et al. (2016) och Mnih et al. (2013). Midth säger detta tillät ett och samma så kallat Deep Q- 7

9 learning Network(DQN) att lära spela 18 olika Atari 2600 spel. Detta nät är också utvecklat utav företaget Google Deep Mind och AlphaGo grundar sig på framstegen gjorda med Atari DQN(Sutton & Barto, 2016). Ytterligare fördel med Q-learning är att metoden tillåter som Sutton och Barto säger att Q-learning agenter kan tränas i en miljö där modellen är okänd. Detta modellfria lärande kan ske tack vare att Q-learning inte behöver en förändringsmodell (transition model) utav miljön den agerar i, utan Q-learning agenten ser nyttan i handlingar istället för nyttan i tillstånden. Handlingarnas värden kallas Q-värden. Det kan förklaras med att Q-learning agenten lär sig en representation utav nyttan av att utföra en vis handling istället för att se nyttan i tillståndet, därför tillåts Q-learning agenten att kunna tränas mer abstrakt utan modell. Ett tillstånd har ett Q-värde som uppdateras iterativt, Q-värdet används för att avgöra vilken handling Q-learning agenten ska utföra för att få så bra prestationsmått som möjligt. Q- learning agenten försöker hela tiden uppskatta Q-värdena på nästa tillstånd i beslutssekvensen och algoritmen konvergerar när det uppskattade Q-värdet är samma värde som värde som den har efter uppdateringen. Uppskattningarna av Q-värdet görs baserat på att agenten alltid tar den handlingen i nästa tillstånd som är bäst. Detta leder till som togs upp förut i MDP avsnittet att det inte spelar någon roll vart agenten börjar så länge den följer algoritmen vilket leder till måltillståndet eftersom vanligtvis när man kör en Q-learning algoritm så körs den greedy. Eftersom Q-learning saknar en modell och har ingen representation från börjar så antar ingenting så alla handlingar samma värden och burkar sättas till 0. (Russel & Norvig, 2014) Eftersom Q-learning inte längre använder sig utav förändrings modell samt att agenten inte längre är passiv då den ändrar på värdena i sin uppdateringsfunktion måste därför också MDP ekvationer anpassas för att kunna ta hänsyn till dessa och därför också Bellmans uppdateringsregel justerar för att ta hänsyn till detta så presenterar Russel och Norvig(2014) den nya uppdateringsregeln som Q-learning använder sig utav är: Q(s t, a t ) Q(s t, a t ) + α(r t+1 + γ (max a Q(s t+1, a t+1 ) Q(s t, a t )) (3.1) Skillnaden här från Bellmans uppdatering är att uppdateringen inte tar hänsyn tillståndets sannolikhet dvs P(st+1 s, a) utan tar endast hänsyn till att handling a leder till tillstånd st+1. Notering går också att skriva nästa tillstånd med notationen s istället för s t+1, vilket bla. Russel och Norvig valt att göra. Betydelse utav formeln 3.1: Q(st,at) : Är det Q-värdet tillstånd s i tidpunkten t då handlingen i tidpunkten t man vill uppdatera. : betyder att man uppdatera VL med det som står i HL. Q(st,at) + α[ ] : Betyder att man uppdaterar med nuvarande och uppskattade värdet skillnaden med det nya värdet. α (alfa) : Alfa värdet är inlärningskvoten likt gradientsökningen steglängdsfaktor som används vid linjär regression. Alfa värdet säger hur mycket man ska uppdatera, man vill därför hålla det lågt för att den inte göra allt för stora uppdatering och undvika att agenten lär sig säregenskaper hos datan (vilket leder till överinlärning). 8

10 rt+1 : Den direkta belöningen r agenten får för att utföra handling a i tillstånd s i tidpunkten t. Kan också skrivas som R(s), där R är belöningen från tillstånd s. γ (gamma) : har samma funktion som i ekvation 1. Den anger om agenten ska vikta belöningar som ligger en nära en högst eller belöningar längre fram lika högt som belöningar som kan nås i nästa tillstånd. max Q(s t+1, a t+1 ): Denna del av funktionen gör varför Q-learning skiljer sig från SARSA a som är en annan TD metod. Det max gör är att den tar det Q-värdet i s (dvs st+1) som a är högts och använder det Q-värdet i sin uppdatering. Resonemanget är att man vet inte säkert att det finns en garanti att agenten kan välja den. SARSA algoritmens uppdateringsfunktion skiljer sig i det här fallet då den istället saknar max. SARSA a uppdaterar först efter den har besökt nästa tillstånd dvs s, medans Q-learning gör uppdateringen innan. SARSA:s uppdaterings regel istället ser därför istället ut så här Q(s t, a t ) Q(s t, a t ) + α(r t+1 + γ Qs t+1, a t+1 Q(s t, a t )) Notera dock om båda agenterna följer en greedy algoritm så skiljer inte algoritmerna från varandra eftersom då kommer båda ta den handlingen med högst Q-värde (Russel & Norvig, 2014). Sutton och Barto (2016) förklarar att SARSA följer policyn och uppdaterar efter policyn vilket gör den on-policy medans Q-learning uppdaterar efter det högsta Q- värdet vilket gör den off-policy. Ytterligare skillnad är som Russel och Norvig(2014) förklarar agenten upptäcker (exploration) då SARSA följer policyn medans Q-learning agenten istället följer det bästa Q-värdet istället. Mer om att upptäcka tas upp mer utförligt om i nästa avsnitt där också ε (epsilon) introduceras. - Q(st,at) Anledningen till varför man i slutet tar bort den nuvarande tillstånds Q värde är för att man vill räkna ut skillnaden mellan det uppskattade Q-värdet och det faktiska Q- värdet i uppdateringen. Vilket innebär att om den nya tillstånd Q-värde man uppdatera med är lika stort som innan uppdateringen blir det 0 dvs ingen uppdatering har gjorts vilket tyder på att man nått ett optimum och funktionen har därmed konvergerat. Man kan inte heller vara säker på att agenten tar den bästa handlingen i s därför gamma tar hänsyn till sannolikheten/frekvensen för att Q(st,at) tar det högsta Q-värdet i tillstånd s dvs (max Q(s t+1, a t+1 ) a Q-learning använder som tidigare beskrivet sig utav en matris (matrix) datastruktur för att spara ner data och kolla upp datan. Detta fungerar för små världar med begränsat antal tillstånd men som visas i avsnitt 3.3 är detta en ineffektiv metod att representera data för större världar. 3.2 Exploration vs Exploitation, introduktionen av ε-greedy algoritmen Lärande agenter som Russel och Norvig(2014) säger i kap 2 måste testa nya handlingar som kan leda till nya informationsrika upplevelser. Anledningen är för att förhindra att agenten fastnar på ett lokalt optimum och fortsätter använda den taktik som tog den första gången till mål tillståendet som inte behöver vara den optimala vägen till målet. Därför så introduceras därmed en slumpfaktor som skrivs som ε (elipson) i agenten. Slumpfunktion gör att agenten ibland istället för att följa handlingen a i tillstånd s som har det högsta Q- värdet istället väljer att göra en slumpmässig val av handling. Denna handling kan leda till ett tillstånd som är 9

11 bättre. Detta gör att Q-learning agenten följer en ε-greedy policy och användes av bland annat av Mnih et al.(2013) ANN. Policyn kan vilket kan skrivas: Slumpmässig funktion om q 1 π(s) = { argmax A(s) Q(s, a) q[0,1] a Om ε sätts till t ex.10 kommer agenten i 10% av fallen gå ifrån dess policy π. I längden blir det bättre för agenten att testa slumpmässiga. Q är slumpmässigt värde som kan antigen vara 0 eller 1 och om det får värdet är 1 som sker i 10% av fallen gör agenten då en slumpmässig handling. Eftersom algoritmen vet om detta kommer Q-värdena kunna att ta hänsyn till dessa om den får köras tillräckligt länge. Dock vill man som Sutton och Barto(2016) säger rekommenderas agenten att reducera ε övertid i och med att agenten lär sig mer och mer om sin omgivning och därför är inte behovet utav att upptäcka inte längre lika stort då den efter ett tag har upptäckt det som är relevant. Dock om miljön förändras över tid kan ε -värdet vara konstant eftersom då måste agenten hela tiden lära sig nya saker. 3.3 Hinder med Q-learning i RL Hinder med Q-learning från att skapa Skynet men hur vi övervinner dem och skapar skynet. Problemet med att använda sig utav en matris för att representera Q-funktionens Q-värdena är att det passar bra på små världar, men så fort det blir allt större världar med mer tillstånd och mer komplex blir också tidsåtgången hög. En matris representation kräver att Q-learning agenten måste besöka många utav det möjliga tillstånd visa till och med flera gånger vilket gör att det tar lång tid att få den bästa uppskattade Q-värdet, därför kan inte Q-learning med sin uppdateringsregel självt stå på egna ben. Än så länge så har vi inte använt den fulla kraften som ligger i DP och MCM men här används inspirationen för att lösa detta problem. Metoder funktions approximation (function approximation) eller stokastisk policy sökning används för att göra det mer effektivare sökning efter den optimala policyn. Vi överger inte Q-learning, detta är en del utav Q-learning. Agenten använder fortfarande Q-värdes representationen för att beskriva hur bra handlingarna är för att söka efter den bästa funktionsapproximation eller policyn Funktionsapproximation Funktionsapproximation går enligt Russel och Norvig(2014) ut på att istället för att ha en matris där alla möjliga tillstånd är sparade i som agenten sedan måste söka efter så parametrisera man variablerna i en vektor (symbolen för en parametriserad vektor är θ). Att spara informationen i parametrar jämfört med en matris gör att Q-learning lära sig från upplevelser (inspirerat från MCM) och göra generaliseringar på tidigare upplevelser (inspirerat från DP). Funktionsapproximation gör att man kan reducera antalet värden som behövs representeras för att agenten ska fatta beslut, genom att göra en funktion som uppskattar Q-värden. Som i fallet med Backgammon som Russel och Norvig tar upp behöver endast agenten besöka ett tillstånd i varje tillstånd för att lära sig en tillräckligt bra värdes-funktion för att kunna spela lika bra som en människa. Alltså är komprimeringen som fås utav att gå från en matris representation till en parametriserad representation enorm. Enligt Russel och Norvig kan man från skapa en schackspelande agent som spelar bra som en vanlig person på endast 20 parametrar istället för att representerar det med en matris som kräver att agenten besöker alla möjliga tillstånd och ger värdena på alla möjliga tillstånd. Genom att 10

12 parametrisera variablerna så det blir linjära kan de använda linjära gradientsökningar på funktion som är icke-linjära, så länge parametrarna är linjär. Metoder för att parametrisera variablerna dock är utanför denna studies frågeställning. Russel och Norvig (2014) påpekar dock att funktionsapproximation endast en uppskattning och ett problem med detta är att det leder till att det finns en chans att agenten väljer en bristfällig funktionsapproximation (kan ses som en hypotes) som inte generaliserar sig bra. Detta kan motverkas genom att utöka och söka i en större hypotesrymd som Russel och Norvig menar ökar chanserna att agenten hittar en bra funktionsapproximation (hypotes), dock kommer det ta längre tid tills agenten hittar den Stokastiskt policysökning med Q-värde representation Dock finns det nackdelar med att använda funktionsapproximation även om man med hjälp parametrar utav den lyckas reducera antalet tillstånd och kan göra bra generaliseringar så blir det fortfarande mycket som ska beräknas. Stokastisk policysökning använder också likt funktionsapproximation generaliseringar utifrån besökta stadier. Stokastisk policysökning används här för att hitta den bästa policyn som då agenten kommer att följa, policyn uppdateras i varje handling. Medans Q-learning med funktions approximation letar efter den optimala Q- värdet på varje Q(s, a) som skrivs Q*(s, a) letar stokastiskt policysökningen istället efter än policy som är tillräckligt bra för parameter vektorn θ. (Russel & Norvig 2014). Stokastisk policysökning kan liknas med heuristiker vi människor använder när vi ska fatta beslut, det kanske inte gör att vi fattar det mest rationella beslutet men det är tillräckligt bra för att vi ska vara nöjda. Resultatet som ges av en funktions approximation med Q-learning kan skilja sig mycket från de resultat en stokastisk policysökning ger med Q-learning på grund utav att policyn nöjer sig med Q*(s,a)/10. Notering: Anledningen till varför det inte görs back propagation på deep reinforce NN, vilket annars är vanlig metod för att fixa med hjälp utav fel-funktionen är för att som Sutton (2016) berättar deep reinforce ANN är allt för komplexa. Baxter och Bernett (2001) presenterar i sin artikel två sätt att göra stokastisk policy sökning uppdateringen på. Första sättet är att genom direkt räkna ut gradienten med hänsyn på p(θ) och räkna ut medelvärdet av belöningen och uppdatera policyns genom att ändra på dess parametrar i gradientens riktning. Det andra sättet är att uppdatera policyn indirekt då policyns parametrar består utav värde-funktioner, då istället för att minimera felet genom att gå i gradientsriktning som första alternativet justerar man värdes-funktioner direkt vilket därmed gör att indirekt uppdateras också policyn. Anledning till stokastiskt policysökning istället för den vanliga policysökning är för som säger Russel och Norvig(2014) att problemet med att göra en policysökning är för att parameter variablerna är diskontinuerliga. Med diskontinuerliga innebär det att funktionen (variabelns parameter) inte är kontinuerligt utan på ett intervall ändras värdet (det gör ett hopp) som är oändligt detta innebär att där är funktionens derivata är oändlig och gradientsökning kommer att komma till detta ställe så småningom. Istället används en stokastisk policy sökning som optimeringsstrategi för att uppdatera parametern för att optimera policyn för MDP problemet. Russel och Norvig(2014) presenterar policy sökning som man vill hitta den en tillräcklig bra policy dvs π θ (s, a). Policyvärdet skrivs p θ vilket är det direkta värdet agenten får när den utför en handling som följer policyn. Det man deriverar på i sökningen är policyn gradient vektor vilket är θp(θ). 11

13 Notering: Om p(θ) inte går att få isolerat på och inte går därmed att räkna på används emperical gradient descent vilket gör uppdateringar på vad den har upplevt. Dock är nackdelen med metoden att den kräver att omgivningen agenten handlar i är deterministiskt och inte stokastiskt för då uppstår problem. Mnih et al.(2013) berättar de ändrade på policy sökningen för deras DQN så att policyn inte uppdaterades i varje steg utan användes sig utav mini-batch strategin, dvs att samla upp en mängd handlingar innan policyn uppdateras detta för att minska påverkan varje handling hade och på så sätt göra uppdatering mer generell och minskade risken att den lär sig särdrag Maximum Bias och Double Q-learning Problemet med Q-learning är att funktionen alltid överskattar handlingarnas Q-värden så det blir ett positivt bias(sutton & Barto,2016). Som van Hasselt et al.(2015) påpekar uppdaterats Q-värdena efter tron att den har tagit den bästa handlingen dvs arg max a Q(s, a) så därför riskera den att överskatta nyttan i sin handlingar. Det skulle inte vara något problem om agenten gjorde det på varje handling säger van Hasselt et al., men dock är det inte uniformt utan i och med att agenten också utforskar och vissa handlingar är slumpmässiga, se så blir vissa uppdateringar inte helt korrekta. För att uppdaterings funktion fortfarande antar att den valde handlingen med högst Q-värde och inte en slumpmässighandling. Som Sutton och Barto (2016) tar upp i ett exempel från boken kan detta visas med figuren nedanför. Då agenten börjar i A, och måltillståndet är det gråa boxarna längst ut på varsin sida som ger 0 poäng. Att gå vänster alltså till B så får man ett värde mellan -1,1 < x > 0,9 dvs - 0,1 är medelvärdet med variansen på distributionen av möjliga värden är 1. Vilket gör att det mest logiska alternativet är för agenten att alltid gå till höger. Dock blir problemet att Q- learning har positivt bias som sagt överskattar och därför väljer i början att gå till B. Detta för att den ibland kan få ett positivt värde dock så är belöningen att nå måltillståndet och att få ett extra poäng är inte viktigt, vilket gör att det optimala beslutet att gå till höger för då finns inte risken att få minus poäng. Som diagrammet visar så lär den sig efter ett tag att det bästa beslutet är att gå till höger och inte till vänster. Dock så lär sig Double Q-learning snabbare. Figuren ovanför är taget från Sutton och Barto(s144, 2016). Lösningen på detta problem är så kallad Double Q-learning som presenteras i flera verk bla. Sutton och Barto(2016), van Hasselt et al.(2015), och Silver et al.(2016). Som Sutton och Barto presenterar är poängen med Double Q-learning en metod för att ta bort det positiva biaset agenten har på handlingar och därmed få bort maximum bias problemet. Detta sker som 12

14 namnet double Q-learning intygar på, man gör två Q-värdes uppskattningar utav handlingen a i tillstånd s där mängden A är handlingar kan väljas. Detta sker då genom att ha två Q-värdes funktioner Q1 och Q2. Q1 gör som vanligt och uppskattar den handling som har högst Q-värde : A * = arg max a Q 1 (a). Det Q2 gör är att räkna ut sannolikheten för dess värde Q2(A*) = Q2(arg max a Q1(a)) på så sätt fås en uppskattning utav Q-värde som inte är överskattat dvs det bli ingen bias (kallas också för unbias). Vi kan också få ett till Q-värde som inte är överskattat genom att låta Q1 uppskattningen utvärdera Q2 dvs. Q1(A*) = Q1(arg max a Q2(a)) och på så sätt görs ett dubbel lärande utav Q-värdena som summeras ihop eller. Detta gör dock att minneskomplexiteten som krävs blir dubbel så stort, vilket är självförklarande men tidskomplexiteten förblir densamma vilket är positivt för då kan vi på samma tid som förut beräkna Q-värden men nu utan överskattning! VAPS algoritmer En lösning som är värde och policy sökning (Value and Policy Search förkortas VASP) algoritmer som kombinerar det två funktionerna till en funktion som ger en output(baird, 1999). Här används två neuronnät, ett ANN som utför en policysökning och ett ANN som utför värdefunktionssökning. Både ANN använder sig utav Q-värdes representationer. Detta kan verka onödigt att ha två ANN när vi redan har ett policynätverk och som tidigare framställdes det som att det dög eftersom man endast är ute efter en tillräckligt bra ANN inte det optimala ANN, men det finns en bra tanke bakom det två olika ANN. Som Baxter och Barlett(2001) lägger fram är VAPS metoden ett bra sätt för att reducera och få en mindre varians på den stokastiska policy sökningen värderingar på Q-värdena. På ett sett kan detta ses som en regularisering då inlärningen sker jämnare och riskerar inte att uppdateras på ett särdrag. De ser vilket kan dras en liknelse med en lärande agent som presteras i Russel och Norvig(2014), där värdefunktions ANN kan ses som kritikern och policynätverket kan ses som utföraren. Silver et al. (2016) skriver i sin artikel när de förklarar hur AlphaGo fungerar nämner det aldrig explicit ordet VAPS algoritm men om man läser artikeln så skriver de att agenten använder sig utav ett policynätverk och värdefunktionsnätverk. Dock kombineras båda ANN med som nämnt i en MCTS algoritm för att kolla på tillstånd i löv i trädet länge fram. MCTS algoritmen används för att ytterligare reducera beräkningar som krävs för att fatta bra beslut Nackdelen med ingen KB Problemet som Russel och Norvig(2014) tar upp är att Q-learning inte använder sig utav någon representation och därmed har ingen kunskapsbas(kb). Det går bra i små världar med få dimensioner men de är osäkra på hur bra det skalar upp sig till när problemmiljöerna blir allt mer komplexa. De utrycker att ju mer komplex miljön desto tydligare blir behovet utav en KB. Det påpekar dock att det är deras personliga åsikt och att det fortfarande är ett diskuterat ämne. AlphaGo bevisar tycker jag inte bevisar att man inte behöver en modell eftersom Go är fortfarande en liten värld även om komplexiteten av att avgöra vilket drag som är bäst är enormt. 4. Framtidsutsikter Ligger AI singulariteten i RL med Q-learning? Djup förstärkt inlärda neurala nätverk (Deep Reinforce Nerual Network DRNN) är nu ett hett område eftersom fördelen att kunna lära ett ANN utan som inte hade någon kunskapsbas eller 13

15 modell från början att bli bättre än människor på ett 2500 årigt spel som Go, dessutom ser AlphaGo på spelet som ingen människa har gjort förut. Det finns fördelar och jag tycker att Silver et al. (2016) gör viktiga poänger i sin artikel då författarna anser att AlphaGo i sitt handlade går på intuition likt en människa. Att AlphaGo dessutom utvärderade mindre tillstånd i trädsökningsalgoritmen än vad IBMs Deep Blue gjorde när den slog Kasparov 1997 i schack visar tecken på någon slags intuition med tanke på hur komplexiteten skiljer sig mellan de två spelen. Det kanske viktigaste AlphaGo visade på är att man kan lära en DRNN att spela är komplex spel utan någon som helst existerade modell utan endast via övervakadoch förstärkandeinlärning. Denna studie har valt att endast fokusera på RL med Q-learning och detta har visat dock är det inte enda som finns framtidstro på vilket är positivt. En nära värdefunktionalgoritm till Q- learning är SARSA-expected som Sutton och Barto(2016) tar upp och verkar finnas hopp på för att den delar inte nackdelarna som Q-learning har. Men som Sutton och Barto kommenterar avgör problemets karaktär vilken metod man använder för att lära AI. IBM Watson som tillskillnad från RL ANN med Q-learning har kunskapsbas och använder sig utav bayesianska nätverk i sitt beslutsfattande. Genom att låta IBM Watsson få tillgång till enorma mängder information (big data) t ex medicinska tidskrifter så har Watson lyckas ställa diagnos på cancer sjukpatient som doktorerna inte kunde. Eftersom doktorerna inte kan läsa in sig på lika mycket information som Watson(Ng, 2016). Det finns därför ingen mening att inte låta Watson inte ha en KB och därför kan inte heller RL med Q-learning utan det är problemet i sig som avgör vilken inlärningsmetod som är bäst lämpad för agenten. Kritiken och nackdelen med Q-learning som förstärktinlärningsmetod är att den än så länge kräver mycket beräkningar. Åter igen jag tror det ligger något i Russels och Norvigs intuition (deras ord) att det blir svårare att skala upp Q-learning när problemen blir allt mer komplexa och får mer dimensioner, som denna studie visar måste det. Det får inte glömmas att AlphaGo inte endast var VAPS algoritmer och VAPS var kombinerat i ett MCTS algoritm. Även AlphaGo bevisar mycket så krävdes ändå extremt mycket datorkraft, enligt Silver et al.(2016) använde dem på det distribuerade systemet (som kör den bästa AlphaGo versionen)1202 CPU:er och 176 GPU:er, och då hade den ändå tränat i på ca 30 miljoner olika tillstånd utav Go innan den började med ens med RL. Detta visar tecken på att inte ha en kunskapsbas har sina nackdelar. Jag vågar inte yttra mig om AlphaGo:s ANN generaliserbarhet då det krävs en djupare kunskap inom området samt eftersom det svårt att än så länge säga dess generaliserbarhet eftersom det är så nytt. En enighet mellan författarna till båda böckerna som används i denna studie(sutton & Barto(2016) samt Russel & Norvig (2014))tycks ändå finnas, då ingen vet exakt hur långt vi kan gå RL. Min personliga syn på RL med Q-learning är att metoden utgör endast del utav alla AI agenter. Endast RL Q-learning kommer inte ensamt kunna ta oss närmare för att skapa en artificiell generell intelligens(agi), med AGI menas en generell AI som är lika bra som än människa och som till exempel skulle klarar Turing testet. Men det Q-learning (och även andra TD metoder) kan bidra med till utvecklandet utav AGI agenter är att metoderna kan användas när den ska lära sig nya saker(koncept) som vi inte har någon modell över. En oerhört relevant forskning fråga som kan studeras vidare på är hur man kan koppla RL Q- learning till physical grounding project inom kroppsligkognition(embodied Cognition) som Anderson(2003) berättar om i sin artikel. För får agenten genom att lära sig handla utan tidigare kunskap eller inre representationsmodell över miljön då också en förståelse över vad 14

16 symbolerna innebär? För genom att ANN har studerat symbolerna visuellt grundar sig symbolerna i något fysiskt. AlphaGo fick se bilder på spelade spel utav Go utan några instruktioner utan fick resonera sig fram hur spelet fungerade, AlphaGo fick bara veta vem som vann i slutet av varje match. Min tanke är att RL eventuellt kan vara en del utav lösningen på physical grounding project som enligt Anderson är fokus med kroppsligkognition. AlphaGo har gjort drag som förvånat även de bästa Go spelarna i världen, samma drag som sedan visade sig vara avgörande. Avslutningsvis kommer ett kort tankeexperiment för att visa på vad jag menar. Om vi sätter en expert på schack tillsammans med en novis och experten får lära upp novisen att spela schack tills novisen också blir expert. Dock så är båda stumma och ingen av dem kan teckenspråk så det finns ingen kommunikation mellan dem, så inget kunskapsutbyte sker. Men likt AlphaGo fick övervakad inlärning så belönar experten novisen när novisen gör rätt. Om tiden inte är en faktor så kommer novisen att förmodligen att tillslut bli lika bra som experten på schack utan att något kunskapsutbyte mellan parterna har skett. Frågan är då förstår den f.d novisen schack? Om svaret på frågan är ja, vad skiljer då den f.d novisen från AlphaGo? Betyder det att programmet genom sin inlärning också har därmed förstått symbolerna? Men kanske viktigare fråga att ställa sig: förstår den Go bättre än vi? Då AlphaGo är bättre än människans på spelet, om nej hur vet vi att vi vet Go? Eftersom AlphaGo saknar kommunikationsförmåga kommer frågan om physical grounding project var löst redan förra året än så länge förbli obesvarad. 15

17 5. Referenser Allis, L. V. (1994). Searching for solutions in games and artificial intelligence. Ponsen & Looijen. Anderson, M. L. (2003). Embodied cognition: A field guide. Artificial intelligence, 149(1), Baird III, L. C. (1999). Reinforcement learning through gradient descent (Doctoral dissertation, US Air Force Academy, US). Baxter, J., & Bartlett, P. L. (2001). Infinite-horizon policy-gradient estimation. Journal of Artificial Intelligence Research, 15, Mnih, V., Kavukcuoglu, K., Silver, D., Graves, A., Antonoglou, I., Wierstra, D., & Riedmiller, M. (2013). Playing atari with deep reinforcement learning. arxiv preprint arxiv: Muoio, D. ( ). Why Go is so much harder for AI to beat than chess. Hämtad från Ng, A. ( ). IBM s Watson gives proper diagnosis for Japanese leukemia patient after doctors were stumped for months. Hämtad från Prabhavalkar, R., Alsharif, O., Bruguier, A., & McGraw, L. (2016, March). On the compression of recurrent neural networks with an application to LVCSR acoustic modeling for embedded speech recognition. In 2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp ). IEEE. Russell, S. J., Norvig, P., (2014). Artificial intelligence: a modern approach (Vol. 3 International Edition). Pearson Education Limited: USA. Silver, D., Huang, A., Maddison, C. J., Guez, A., Sifre, L., Van Den Driessche, G.,... & Dieleman, S. (2016). Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587), SJ. ( ). Introduction To Dynamic Programming Fibonacci Series. Hämtad från Sutton, R. S., & Barto, A. G. (2016). Reinforcement learning: An introduction Second Edition (2016sepdraft). Cambridge: MIT press. Van Hasselt, H., Guez, A., & Silver, Huang, Maddison, D. (2015). Deep reinforcement learning with double Q-learning. CoRR, abs/

med hjälp av Deep Reinforcement Learning

med hjälp av Deep Reinforcement Learning Agent som kan spela Atarispel bättre än människor med hjälp av Deep Reinforcement Learning Sofie Adolfsson, sofad117@student.liu.se Artificiell Intelligens Linköpings Universitet 2017-01-12 SofieAdolfsson

Läs mer

GRIDWORLD OCH MDP PROJEKTRAPPORT 729G43 MICHAEL JONASSON

GRIDWORLD OCH MDP PROJEKTRAPPORT 729G43 MICHAEL JONASSON 2018 GRIDWORLD OCH MDP PROJEKTRAPPORT 729G43 MICHAEL JONASSON Innehåll Inledning & Bakgrund... 2 Förstärkt inlärning... 2 MDP... 2 Gridworld... 3 Nytta och policy... 4 Värdefunktion och Bellmanekvationer...

Läs mer

de var svåra att implementera och var väldigt ineffektiva.

de var svåra att implementera och var väldigt ineffektiva. OBS! För flervalsfrågorna gäller att flera alternativ eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad. Totalt kan

Läs mer

Lärande genom interaktion

Lärande genom interaktion Lärande genom interaktion Förstärk inlärning, specifikt Q-learning Ebba Algvere 729G43 Artificiell Intelligens Linköpings Universitet 2017 Abstract This report will provide the reader with an understanding

Läs mer

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 3 Marco Kuhlmann Förra gången: Perceptroninlärning Beslutsregel predicerat y-värde Exempel: AND Välj parametrar θ 0, θ 1, θ 2 sådana att perceptronen

Läs mer

Förstärkande inlärning med fokus på Q-learning

Förstärkande inlärning med fokus på Q-learning LINKÖPINGS UNIVERSITET 12 januari 2017 Förstärkande inlärning med fokus på Q-learning Artificiell Intelligens, 729G43 Sammanfattning Förstärkande inlärning innebär att vi människor lär oss genom att interagera

Läs mer

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs... OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap 729G43 Artificiell intelligens (2016) Maskininlärning 3 Marco Kuhlmann Institutionen för datavetenskap Modell med vektornotation parametervektor särdragsvektor Perceptron kombinerar linjär regression med

Läs mer

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs... OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap 729G43 Artificiell intelligens (2016) Maskininlärning 2 Marco Kuhlmann Institutionen för datavetenskap Förra gången: Gradientsökning tangentens lutning i punkt θ steglängdsfaktor Översikt Introduktion

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 2 Marco Kuhlmann Förra gången: Linjär regression Gradientsökning Vandra ner i felets dal. Steg 0: Börja med ett godtyckligt värde för θ. Steg 1: Räkna

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap ARTIFICIELLA NEURALA NÄT MARCO KUHLMANN Institutionen för datavetenskap Example Alt Bar Fri Hun Pat Price Rain Res Type Est WillWait 1 Yes No No Yes Some $$$ No Yes French 0 10 Yes 2 Yes No No Yes Full

Läs mer

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna kan man bara ha rätt eller fel, dvs frågan måste vara helt korrekt besvarad för att man skall

Läs mer

HKGBB0, Artificiell intelligens

HKGBB0, Artificiell intelligens HKGBB0, Artificiell intelligens Kortfattade lösningsförslag till tentan 3 november 2005 Arne Jönsson 1. Vad karaktäriserar dagens AI-forskning jämfört med den AI-forskning som bedrevs perioden 1960-1985.

Läs mer

729G43 Artificiell intelligens / Maskininlärning 1. Marco Kuhlmann

729G43 Artificiell intelligens / Maskininlärning 1. Marco Kuhlmann 729G43 Artificiell intelligens / 2015 Maskininlärning 1 Marco Kuhlmann Introduktion Maskininlärning Tack vare maskininlärning kan AI-system idag bl.a. producera och förstå naturligt språk kontrollera maskiner,

Läs mer

Vad behövs för att skapa en tillståndsrymd?

Vad behövs för att skapa en tillståndsrymd? OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten. OS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University

Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University Neurala nätverk och språk Henli807!1 Neurala nätverk och språkigenkänning Henrik Linnarsson Linköping University Neurala nätverk och språk Henli807!2 RNN, LSTM och språkigenkänning Inledning Idag är språkigenkänning

Läs mer

Introduktion till programmering

Introduktion till programmering Introduktion till programmering Vad är programmering? Vad gör en dator? Vad är ett datorprogram? 1 (9) Vad är programmering? För att bestämma en cirkels area måste du: 1. Dividera diametern 5 med 2. 2.

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

Ger bilder stöd för förståelsen av och förmågan att minnas kunskapskraven?

Ger bilder stöd för förståelsen av och förmågan att minnas kunskapskraven? Ger bilder stöd för förståelsen av och förmågan att minnas kunskapskraven? Inledning Många elever har svårt att förstå och minnas kunskapskraven. I utvärderingar av min undervisning får ofta frågor kopplade

Läs mer

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen 1. Komplexiteten hos en agent beror mycket på vilken omgivning den skall verka i. Vad innebär det att en omgivning är stokastisk, episodisk och dynamisk? Ge exempel på en omgivning som är stokastisk, episodisk

Läs mer

Självlärande Hare and Hounds-spelare med Q-learning. HARALD HARTWIG och MAX WESTERMARK

Självlärande Hare and Hounds-spelare med Q-learning. HARALD HARTWIG och MAX WESTERMARK Självlärande Hare and Hounds-spelare med Q-learning HARALD HARTWIG och MAX WESTERMARK Examensarbete Stockholm, Sverige 2011 Självlärande Hare and Hounds-spelare med Q-learning HARALD HARTWIG och MAX WESTERMARK

Läs mer

Personifierad Netflix

Personifierad Netflix Linköpings universitet Personifierad Netflix Lisa Rönnqvist 2016-08-24 Sammanfattning INNEHÅLLSFÖRTECKNING 1. Inledning... 1 1.1 Bakgrund... 1 1.2 Syfte... 2 2. Netflix... Fel! Bokmärket är inte definierat.

Läs mer

Regression med Genetiska Algoritmer

Regression med Genetiska Algoritmer Regression med Genetiska Algoritmer Projektarbete, Artificiell intelligens, 729G43 Jimmy Eriksson, jimer336 770529-5991 2014 Inledning Hur många kramar finns det i världen givet? Att kunna estimera givet

Läs mer

Tänk på följande saker när du skriver tentan:

Tänk på följande saker när du skriver tentan: Ämne: AI med inriktning mot kognition och design Kurskod: KOGB05 / TDBB21 Datum: 2005-04-01 Antal uppgifter: 12 Skrivtid: 09:00 15:00 Max poäng: 54 Betygsgränser: 27 x

Läs mer

Självlärande Hare and Hounds spelare med Q-learning

Självlärande Hare and Hounds spelare med Q-learning Självlärande Hare and Hounds spelare med Q-learning Examensarbete inom datalogi - DD143X HARALD HARTWIG RINDÖGATAN 27, 11558 STOCKHOLM TEL.NR: 0737264340 MAX WESTERMARK

Läs mer

Registerforskning Oktober 2018, Stockholm City Conference Centre. Möjligheter med Artificiell Intelligens inom registerforskningen

Registerforskning Oktober 2018, Stockholm City Conference Centre. Möjligheter med Artificiell Intelligens inom registerforskningen Registerforskning 2018 17 Oktober 2018, Stockholm City Conference Centre Möjligheter med Artificiell Intelligens inom registerforskningen Peter Funk Mälardalens Högskola Vem är Peter Funk? Artificiell

Läs mer

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén,

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén, Sub-symbolisk kognition & Konnektionism Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén, mats.andren@liu.se 1 Konnektionism Neutrala nät baseras på en (förenklad) modell av hur hjärnan fungerar.

Läs mer

Lite Kommentarer om Gränsvärden

Lite Kommentarer om Gränsvärden Lite Kommentarer om Gränsvärden På föreläsningen (Föreläsning 2 för att vara eakt) så introducerade vi denitionen Denition. Vi säger att f() går mot a då går mot oändligheten, uttryckt i symboler som f()

Läs mer

Inledande programmering med C# (1DV402) Introduktion till programmering

Inledande programmering med C# (1DV402) Introduktion till programmering Introduktion till programmering Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt

Läs mer

Självlärande Dots & Boxes-spelare

Självlärande Dots & Boxes-spelare Självlärande Dots & Boxes-spelare ANDREAS PETTERSSON Kandidatexamensarbete inom datalogi, grundnivå Kurs 143X Handledare: Johan Boye Examinator: Mads Dam andrepet@kth.se Vintrosagatan 5 124 73 Bandhagen

Läs mer

TAMS79: Föreläsning 10 Markovkedjor

TAMS79: Föreläsning 10 Markovkedjor TAMS79: Föreläsning 0 Markovkedjor Johan Thim december 08 0. Markovkedjor Vi ska nu betrakta en speciell tidsdiskret diskret stokastisk process, nämligen Markovkedjan. Vi börjar med en definition Definition.

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Instruktioner - Datortentamen 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 får ha anteckningar,

Läs mer

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping Fuzzy Logic När oskarpa definitioner blir kristallklara Linköpings Universitet Linköping Sammanfattning I denna fördjupningsuppgift har jag fokuserat på Fuzzy Logic och försökt att beskriva det på ett

Läs mer

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit.

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit. 2D1432 Artificiella Neuronnät och andra lärande system Lösningsförslag till Tentamen 2003-03-06 Inga hjälpmedel. Uppgift 1 Vilka av följande påståenden är sanna? Korrigera de som är fel. 1. Potentialen

Läs mer

1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta denna följd av tal, där varje tal är dubbelt så stort som närmast föregående

1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta denna följd av tal, där varje tal är dubbelt så stort som närmast föregående MATEMATISKA INSTITUTIONEN STOCKHOLMS UNIVERSITET Christian Gottlieb Gymnasieskolans matematik med akademiska ögon Induktion Dag 1 1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta

Läs mer

Enlagersnät Flerlagersnät Generalisering. Artificiella Neuronnät

Enlagersnät Flerlagersnät Generalisering. Artificiella Neuronnät Artificiella Neuronnät 1 Karaktäristiska egenskaper Användningsområden Klassiska exempel Biologisk bakgrund 2 Begränsningar Träning av enlagersnät 3 Möjliga avbildningar Backprop algoritmen Praktiska problem

Läs mer

Artificiella Neuronnät

Artificiella Neuronnät Artificiella Neuronnät 2 3 4 2 (ANN) Inspirerade av hur nervsystemet fungerar Parallell bearbetning Vi begränsar oss här till en typ av ANN: Framåtkopplade nät med lagerstruktur 3 4 Fungerar i princip

Läs mer

Universe Engine Rapport

Universe Engine Rapport 1 Universe Engine Rapport Alexander Mennborg 2017-05-08 2 Inledning I denna rapport diskuteras utvecklingsprocessen till projektet Universe Engine. Denna diskussion omfattar hela utveckling från starten

Läs mer

Föreläsning 1: Dekomposition, giriga algoritmer och dynamisk programmering

Föreläsning 1: Dekomposition, giriga algoritmer och dynamisk programmering 2D1458, Problemlösning och programmering under press Föreläsning 1: Dekomposition, giriga algoritmer och dynamisk programmering Datum: 2007-09-04 Skribent(er): Anders Malm-Nilsson och Niklas Nummelin Föreläsare:

Läs mer

KUNDCASE. Inovia gjorde sin AI-utveckling 10 gånger snabbare med Power-plattformen

KUNDCASE. Inovia gjorde sin AI-utveckling 10 gånger snabbare med Power-plattformen KUNDCASE Inovia gjorde sin AI-utveckling 10 gånger snabbare med Power-plattformen MÖT INOVIA Inovia är ett marknadsledande bolag som är specialiserade på Big Data och AI där lösningarna utvecklas av ett

Läs mer

Tentamen: Programutveckling ht 2015

Tentamen: Programutveckling ht 2015 Tentamen: Programutveckling ht 2015 Datum: 2015-11-04 Tid: 09:00-13:00 Sal: Ansvarig: Resultat: Hjälpmedel: Maxpoäng: Betygsgränser: Anslås inom 3 veckor. Inga 40 p 20 p för G, 32 p för VG. Iakttag följande:

Läs mer

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd. OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervalsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

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öreläsning 9 Innehåll. Söndra och härska. Fibonaccitalen. Söndra och härska. Divide and conquer teknik för att konstruera rekursiva algoritmer.

Föreläsning 9 Innehåll. Söndra och härska. Fibonaccitalen. Söndra och härska. Divide and conquer teknik för att konstruera rekursiva algoritmer. Föreläsning 9 Innehåll Mer om rekursion söndra-och-härska-algoritmer dynamisk programmering backtracking Orientering om versionshantering med git Söndra och härska Divide and conquer teknik för att konstruera

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

Word2Vec. Högkvalitativa vektorrepresentationer av ord tränat på stora mängder data. Innehåll LINKÖPINGS UNIVERSITET. 1. Inledning...

Word2Vec. Högkvalitativa vektorrepresentationer av ord tränat på stora mängder data. Innehåll LINKÖPINGS UNIVERSITET. 1. Inledning... LINKÖPINGS UNIVERSITET Innehåll 1. Inledning... 2 2. Terminologi... 3 3. Allmänt om Word2Vec... 3 4. Continous Skip-gram model... 4 Word2Vec Högkvalitativa vektorrepresentationer av ord tränat på stora

Läs mer

ANN fk. Örjan Ekeberg. Framåtkopplade Nät. återkopplade nät. Olika arkitekturer. BackPropagation through Time. Kalman-Filter tekniker

ANN fk. Örjan Ekeberg. Framåtkopplade Nät. återkopplade nät. Olika arkitekturer. BackPropagation through Time. Kalman-Filter tekniker Hantering av Tid Återkopplade Återkopplade Återkopplade t Återkopplade Återkopplade Temporala signaler är svåra Gör om temporal signal till spatial t 1 t 2 t 3 t 4 Återkopplade t Enklaste formen Neuronal

Läs mer

Föreläsning 5: Grafer Del 1

Föreläsning 5: Grafer Del 1 2D1458, Problemlösning och programmering under press Föreläsning 5: Grafer Del 1 Datum: 2006-10-02 Skribent(er): Henrik Sjögren, Patrik Glas Föreläsare: Gunnar Kreitz Den här föreläsningen var den första

Läs mer

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar

Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar 1 Agenda Vad är Artificiell Intelligens (AI) Olika typer av AI och deras användningsområden Innovation med hjälp av AI Framtiden och etiska frågeställningar 2 Nuvarande AI Funktioner en grov Analogi Rekommendation,

Läs mer

Extramaterial till Matematik X

Extramaterial till Matematik X LIBER PROGRMMERING OCH DIGITL KOMPETENS Extramaterial till Matematik X NIVÅ TRE Programmering LÄRRE I den här uppgiften får du och dina elever en introduktion till programmering. Uppgiften vänder sig först

Läs mer

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692

Beräkning med ord. -hur en dator hanterar perception. Linköpings universitet Artificiell intelligens 2 2010-10-03 Erik Claesson 880816-1692 Beräkning med ord -hur en dator hanterar perception 2010-10-03 Erik Claesson 880816-1692 Innehåll Inledning... 3 Syfte... 3 Kan datorer hantera perception?... 4 Naturligt språk... 4 Fuzzy Granulation...

Läs mer

SF1544 LABORATION 2 INTEGRATION, MONTE-CARLO OCH BLACK-SCHOLES EKVATION FÖR OPTIONER

SF1544 LABORATION 2 INTEGRATION, MONTE-CARLO OCH BLACK-SCHOLES EKVATION FÖR OPTIONER SF1544 LABORATION INTEGRATION, MONTE-CARLO OCH BLACK-SCHOLES EKVATION FÖR OPTIONER Avsikten med denna laboration är att: - snabbt komma igång med träning på matlabprogrammering (uttnyttja gärna alla schemalagda

Läs mer

729G43 Artificiell intelligens (2016) Maskininlärning 1. Marco Kuhlmann Institutionen för datavetenskap

729G43 Artificiell intelligens (2016) Maskininlärning 1. Marco Kuhlmann Institutionen för datavetenskap 729G43 Artificiell intelligens (2016) Maskininlärning 1 Marco Kuhlmann Institutionen för datavetenskap Introduktion Maskininlärning Tack vare maskininlärning kan AI-system idag bl.a. producera och förstå

Läs mer

Föreläsning 9 Innehåll. Söndra och härska. Fibonaccitalen. Söndra och härska. Divide and conquer teknik för att konstruera rekursiva algoritmer.

Föreläsning 9 Innehåll. Söndra och härska. Fibonaccitalen. Söndra och härska. Divide and conquer teknik för att konstruera rekursiva algoritmer. Föreläsning 9 Innehåll Mer om rekursion söndra-och-härska-algoritmer dynamisk programmering backtracking Orientering om versionshantering med git Söndra och härska Divide and conquer teknik för att konstruera

Läs mer

Autokorrelation och Durbin-Watson testet. Patrik Zetterberg. 17 december 2012

Autokorrelation och Durbin-Watson testet. Patrik Zetterberg. 17 december 2012 Föreläsning 6 Autokorrelation och Durbin-Watson testet Patrik Zetterberg 17 december 2012 1 / 14 Korrelation och autokorrelation På tidigare föreläsningar har vi analyserat korrelationer för stickprov

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

Tentamen MVE301 Sannolikhet, statistik och risk

Tentamen MVE301 Sannolikhet, statistik och risk Tentamen MVE301 Sannolikhet, statistik och risk 2018-05-31 kl. 8:30-13:30 Examinator: Johan Jonasson, Matematiska vetenskaper, Chalmers Telefonvakt: Ivar Simonsson, telefon: 031-7725325 Hjälpmedel: Valfri

Läs mer

Datormetaforen. Från människa till dator Från dator till människa o.s.v.

Datormetaforen. Från människa till dator Från dator till människa o.s.v. Datormetaforen Från människa till dator Från dator till människa o.s.v. Det mekaniska tänkandet Räknemaskin tillverkad av Pascal 1642 Hjärnan ett avancerat urverk 1800-talet Henry Colebrooke, (president

Läs mer

Vindkraft och ML. - hur kan vindkraft dra nytta avml

Vindkraft och ML. - hur kan vindkraft dra nytta avml Vindkraft och ML - hur kan vindkraft dra nytta avml AI och ML Intelligens: förmågan att utnyttja kunskap för att bättre lösa en klass av uppgifter Lärande: förmågan att förbättra sin förmåga att lösa uppgifterna

Läs mer

Pathfinding med reinforcement learning i delvis observerbara miljöer

Pathfinding med reinforcement learning i delvis observerbara miljöer Pathfinding med reinforcement learning i delvis observerbara miljöer Anne Engström Joel Lidin Gustav Molander Olle Månsson Noa Onoszko Hugo Ölund Institutionen för Matematiska vetenskaper CHALMERS TEKNISKA

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

Monte Carlo-metoder. Bild från Monte Carlo

Monte Carlo-metoder. Bild från Monte Carlo Monte Carlo-metoder 0 Målen för föreläsningen På datorn Bild från Monte Carlo http://en.wikipedia.org/wiki/file:real_monte_carlo_casino.jpg 1 Begrepp En stokastisk metod ger olika resultat vid upprepning

Läs mer

Karta över Jorden - viktigt exempel. Sfär i (x, y, z) koordinater Funktionen som beskriver detta ser ut till att vara

Karta över Jorden - viktigt exempel. Sfär i (x, y, z) koordinater Funktionen som beskriver detta ser ut till att vara Föreläsning 1 Jag hettar Thomas Kragh och detta är kursen: Flervariabelanalys 1MA016/1MA183. E-post: thomas.kragh@math.uu.se Kursplan finns i studentportalens hemsida för denna kurs. Där är två spår: Spår

Läs mer

MVE051/MSG Föreläsning 7

MVE051/MSG Föreläsning 7 MVE051/MSG810 2016 Föreläsning 7 Petter Mostad Chalmers November 23, 2016 Överblick Deskriptiv statistik Grafiska sammanfattningar. Numeriska sammanfattningar. Estimering (skattning) Teori Några exempel

Läs mer

Självlärande Othello-spelare

Självlärande Othello-spelare Självlärande Othello-spelare Kan en dator lära sig att spela Othello? KLAS BJÖRKQVIST och JOHAN WESTER Examensarbete Stockholm, Sverige 2010 Självlärande Othello-spelare Kan en dator lära sig att spela

Läs mer

MESI i Intel Core 2 Duo

MESI i Intel Core 2 Duo MESI i Intel Core 2 Duo Sammanfattning Denna rapport beskriver en processor (Intel Core 2 Duo) vars cache coherence protokoll är MESI. Rapporten beskriver hur processorn är uppbyggd, hur många kärnor den

Läs mer

KOMPLEMENT TILL MATTE DIREKT BORGEN UPPLAGA

KOMPLEMENT TILL MATTE DIREKT BORGEN UPPLAGA Programmering KOMPLEMENT TILL MATTE DIREKT BORGEN UPPLAGA 2 Lektion Sanoma Utbildning POSTADRESS: Box 009, 0 25 Stockholm BESÖKSADRESS: Alströmergatan 2, Stockholm HEMSIDA: www.sanomautbildning.se E-POST:

Läs mer

Schemaläggnings metoderna AMP & SMP i en Multiprocessor

Schemaläggnings metoderna AMP & SMP i en Multiprocessor EDT621 Datorarkitekturer med operativsystem 7,5 HP 2015-12-05 Schemaläggnings metoderna AMP & SMP i en Multiprocessor Författare: Simon Plato Sammanfattning Rapporten beskriver två schemaläggnings metoder.

Läs mer

PARALLELLISERING AV ALGORITMER PROCESSORER FÖR FLERKÄRNIGA

PARALLELLISERING AV ALGORITMER PROCESSORER FÖR FLERKÄRNIGA PARALLELLISERING AV ALGORITMER FÖR FLERKÄRNIGA PROCESSORER 870928 3017 Johan Gustafsson 870303 4952 Gustaf David Hallberg 880525 8210 Per Hallgren 801117 0597 Wuilbert Lopez 1/7 Innehållsförteckning Table

Läs mer

Exempel ode45 parametrar Miniprojekt 1 Rapport. Problemlösning. Anastasia Kruchinina. Uppsala Universitet. Januari 2016

Exempel ode45 parametrar Miniprojekt 1 Rapport. Problemlösning. Anastasia Kruchinina. Uppsala Universitet. Januari 2016 Problemlösning Anastasia Kruchinina Uppsala Universitet Januari 2016 Anastasia Kruchinina Problemlösning 1 / 16 Exempel ode45 parametrar Miniprojekt 1 Rapport Anastasia Kruchinina Problemlösning 2 / 16

Läs mer

Korrelation och autokorrelation

Korrelation och autokorrelation Korrelation och autokorrelation Låt oss begrunda uttrycket r = i=1 (x i x) (y i y) n i=1 (x i x) 2 n. i=1 (y i y) 2 De kvadratsummor kring de aritmetiska medelvärdena som står i nämnaren är alltid positiva.

Läs mer

AI och schack. En överblick

AI och schack. En överblick 1 AI och schack En överblick Jakob Danielsson - jdn11003@student.mdh.se Sam Vaezi - svi11001@student.mdh.se Information - kunskap - vetenskap - etik 3/10/2014 2 SAMMANFATTNING Schack anses ofta vara ett

Läs mer

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum:

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum: Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60 Superscalar vs VLIW Cornelia Kloth IDA2 Inlämningsdatum: 2018-12-05 Abstract Rapporten handlar om två tekniker inom multiple issue processorer

Läs mer

Artificiell Intelligens den nya superkraften

Artificiell Intelligens den nya superkraften Artificiell Intelligens den nya superkraften Socialchefsdagarna, 4 oktober 2018 #CGINext Artificiell Intelligens Förmågan hos mjukvara att agera självständigt på ett intelligent sätt tidigare bara associerat

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

Grafiska pipelinens funktion

Grafiska pipelinens funktion LUNDS TEKNISKA HÖGSKOLA CAMPUS HELSINGBORG Grafiska pipelinens funktion Ludvig von Sydow EDT62, HT17 Datorarkitekturer med Operativsystem Sammanfattning Denna rapport syftar till att beskriva hur en graphics

Läs mer

Likhetstecknets innebörd

Likhetstecknets innebörd Likhetstecknets innebörd Följande av Görel Sterner översatta och bearbetade text bygger på boken: arithmetic & algebra in elementary school. Portsmouth: Heinemann Elever i åk 1 6 fick följande uppgift:

Läs mer

Data på individ/hushålls/företags/organisationsnivå. Idag större datamänger än tidigare

Data på individ/hushålls/företags/organisationsnivå. Idag större datamänger än tidigare MIKROEKONOMETRI Data på individ/hushålls/företags/organisationsnivå Tvärsnittsdata och/eller longitudinella data o paneldata Idag större datamänger än tidigare Tekniska framsteg erbjuder möjligheter till

Läs mer

Föreläsning 5 Innehåll

Föreläsning 5 Innehåll Föreläsning 5 Innehåll Algoritmer och effektivitet Att bedöma och jämföra effektivitet för algoritmer Begreppet tidskomplexitet Datavetenskap (LTH) Föreläsning 5 VT 2019 1 / 39 Val av algoritm och datastruktur

Läs mer

Stora talens lag eller det jämnar ut sig

Stora talens lag eller det jämnar ut sig Stora talens lag eller det jämnar ut sig kvensen för krona förändras när vi kastar allt fler gånger. Valda inställningar på räknaren Genom att trycka på så kan man göra ett antal inställningar på sin räknare.

Läs mer

Den räta linjens ekvation

Den räta linjens ekvation Den räta linjens ekvation 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 dem för första gången är

Läs mer

Vardagssituationer och algebraiska formler

Vardagssituationer och algebraiska formler Modul: Algebra Del 7: Kommunikation i algebraklassrummet Vardagssituationer och algebraiska formler Cecilia Kilhamn, Göteborgs Universitet och Jörgen Fors, Linnéuniversitetet En viktig del av algebran

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

Bakgrund. Bakgrund. Bakgrund. Håkan Jonsson Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige

Bakgrund. Bakgrund. Bakgrund. Håkan Jonsson Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige Är varje påstående som kan formuleras matematiskt*) alltid antingen sant eller falskt? *) Inom Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige Exempel: 12 = 13 nej, falskt n! >

Läs mer

CDC en jämförelse mellan superskalära processorer. EDT621 Campus Helsingborg av: Marcus Karlsson IDA

CDC en jämförelse mellan superskalära processorer. EDT621 Campus Helsingborg av: Marcus Karlsson IDA CDC6600 - en jämförelse mellan superskalära processorer av: Marcus Karlsson Sammanfattning I denna rapport visas konkret information om hur den första superskalära processorn såg ut och hur den använde

Läs mer

Fyra-i-rad med förstärkt inlärning

Fyra-i-rad med förstärkt inlärning Fyra-i-rad med förstärkt inlärning En implementation av Q-learning CHRISTOFFER JANSON och CARL LANDEFJORD Examensarbete Stockholm, Sverige 2011 Fyra-i-rad med förstärkt inlärning En implementation av Q-learning

Läs mer

Föreläsning 13 Innehåll

Föreläsning 13 Innehåll Föreläsning 13 Innehåll Exempel på problem där materialet i kursen används Hitta k största bland n element Histogramproblemet Schemaläggning PFK (Föreläsning 13) VT 2013 1 / 15 Hitta k största bland n

Läs mer

Hur kan du som lärare dra nytta av konjunkturspelet i din undervisning? Här följer några enkla anvisningar och kommentarer.

Hur kan du som lärare dra nytta av konjunkturspelet i din undervisning? Här följer några enkla anvisningar och kommentarer. Konjunkturspelet Ekonomi är svårt, tycker många elever. På webbplatsen, i kapitel F2, finns ett konjunkturspel som inte bara är kul att spela utan också kan göra en del saker lite lättare att förstå. Hur

Läs mer

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion Algoritmer och datastrukturer HI1029 8,0 hp Introduktion Lärandemål Efter kursen ska studenten: Ha kunskaper om de vanligaste algoritmteknikerna och datastrukturerna I viss mån kunna utvärdera algoritmers

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

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson Uppsala Universitet Matematiska Institutionen Thomas Erlandsson LÄSANVISNINGAR VECKA 36 VERSION 1. ARITMETIK FÖR RATIONELLA OCH REELLA TAL, OLIKHETER, ABSOLUTBELOPP ADAMS P.1 Real Numbers and the Real

Läs mer

Rapport (1,5 HP) Lunds Universitet HT15

Rapport (1,5 HP) Lunds Universitet HT15 Rapport (1,5 HP) Lunds Universitet HT15 Cache-koherens protokoll i Intel Core i7 En rapport om cache-koherens och protokollet som används i Intel Core i7 processorer för att hålla minnet koherent Författare:

Läs mer

Svar till vissa uppgifter från första veckan.

Svar till vissa uppgifter från första veckan. Svar till vissa uppgifter från första veckan. Svar till kortuppgifter F:. Ja! Förhoppningsvis så ser man direkt att g fx) är ett polynom. Vidare så gäller det att g fα) = gfα)) = gβ) = 0. Använd faktorsatsen!

Läs mer

Exempelprov. Matematik Del A, muntlig del. 1abc

Exempelprov. Matematik Del A, muntlig del. 1abc Exempelprov Matematik Del A, muntlig del 1abc 2 DEL A, EXEMPELPROV MATEMATIK 1ABC Innehållsförteckning 1. Instruktioner för att genomföra del A... 5 2. Uppgifter för del A... 6 Version 1 Sten, sax och

Läs mer