Anton Brunberg,

Storlek: px
Starta visningen från sidan:

Download "Anton Brunberg,"

Transkript

1 INSTITUTIONEN FÖR DATAVETENSKAP, LINKÖPINGS UNIVERSITET AI som är emot dig Ett arbete om AI i spel Anton Brunberg, antbr036@student.liu.se

2 Innehåll Inledning... 3 Scripts... 4 Finite State Machine... 6 STRIPS... 8 Förflyttning Pathfinding Sökningen Nodkostnader Navigation Mesh Varför Navigation Mesh? Diskussion Referenser

3 Inledning AI är ett vitt begrepp, även om man tar ner det på nivån som berör TV- och datorspel så kan AI skilja sig väldigt mycket från spel till spel, det kan även finnas en mängd skillnader inom spelet själv. Allt som i ett spel ger en illusion av intelligens i spel kallas för AI, även om denna illusion inte ens beter sig just intelligent. Även om AI:n är satt på att lösa vissa svåra uppgifter i ett spel så betyder inte det att den kan agera dumt och fortfarande utgöra en bra illusion av intelligent beteende. En AI som gör för många rätt på för få misstag blir väldig svår för spelaren att kunna vinna över, något som speldesigners fått lära sig att justera. Det är en av de stora saker som skiljer AI i spel från många andra delar inom AI, den har två viktiga faktorer som den måste ta hänsyn till för att kunna bli lyckad. Först som vi nämnde så måste den vara utmanande, men den får inte vara för bra, ett spel med en AI som aldrig gör ett fel blir väldigt svårt att vinna mot. Detta löser de flesta spelutvecklare genom att låta spelaren justera olika svårighetsgrader i spelet. En annan sak som är viktig för en AI i ett spel är hur kul den är, nog för att den ska klara av en massa uträkningar och bete sig på intelligenta sätt, men man får inte glömma att det är ett spel, och spels första uppgift är att underhålla spelaren. (Seemann, 2004) Det finns två viktiga AI-typer när man pratar om AI i spel, deterministisk och ickedeterministisk, en deterministisk AI är regelstyrd och har en regel för varje tillfälla, den lämnar aldrig något till slumpen. Sådan AI är simpel att programmera men känns oftast stel, efter ett tags spelande så kommer ren även att ha upprepat sig tillräckligt för att kännas repetitiv såväl som förutsägbar. Ickedeterministisk AI baserar sig istället på att lära sig, den behöver inga regler för minsta sak, då den ickedeterministiska AI:n blir mycket mindre stel så blir den även svårare för spelutvecklarna att testa, eftersom den inte har regler för alla olika händelser så måste spelutvecklarna testa alla möjliga sätt som spelarna kan agera på för att se att AI funkar på alla möjliga spelsätt. (Seemann, 2004) 3

4 Scripts Idag kan man ändra saker i många av de spel som släpps på marknaden. Vissa spel släpper även sina utvecklingsverktyg till spelarna så att de enkelt kan skapa nya banor eller äventyr med samma spelmotor. En av de största och även ett av de största sådana verktyg som kom till marknaden var BioWares Neverwinter Nights toolset Aurora. Med Aurora så kunde spelarna själva bygga upp till hela världar, skapa komplexa dialog-träd och även göra events för de datorstyrda agenterna att agera efter. Det som styr allt i Aurora är scripts, ett simpelt sätt att kunna skriva saker utan en egentlig kodvana, allt man behöver kunna är de mest fundamentala kodsträngar så som if-satser och programmeringsoperatorer så som == och >. Script i Aurora (Bild från Fördelar med scripting är att de som sagt inte lägger lika mycket vikt vid att utvecklaren kan programmera utan hjälper till en bra bit på vägen då det gäller utvecklingen av spel så man kan koncentrera sig på att lägga fram spelets story mer än att fastna i kodning. En annan mycket bra sak med scripting är vid mellansekvenser i spel. Istället för att ta spelaren ur spelmiljön för att sätta in en kort film så sköts detta med script för att hålla kvar spelaren i samma miljö. Nackdelar med scripting är att spel som använder dem för mycket kan ofta kännas stela. Ta ett ställe i ett svårt spel som du blir tvungen att spela om ett tiotal gånger, i sådant fall kommer du få uppleva stelheten i spelet på så sätt att det kommer förflyta likadant alla tio gånger så länge som du spelar någorlunda liknande varje gång. 4

5 Vilka spel använder scripting och hur? Förutom Neverwinter Nights som tidigare nämnt använder scripting vid det mesta i spelet så gör även det enorma spelet World of Warcraft det i form av LUAfiler. En av de vanligaste spelscriptstyperna som används idag. I World of Warcraft, eller WoW så kan man lätt märka scriptens enkelhet. Vissa datorstyrda agenter säger dialoger när de blir slagna på, om du slår på ett hundratal av samma typ så kommer du enkelt märka hur ofta dialogen kommer upp. Andra elakare agenter kan göra vissa saker som respons på dina egna handlingar. Om du försöker använda en egenskap i spelet så kommer de agenter som kan använda någonting för att förhindra dig att använda den egenskapen mot dem. 5

6 Finite State Machine Ett annat sätt att programmera agenters beteende i spel är så kallad Finite State Machine, eller FSM. FSM bygger på att det finns olika states för agenten, olika saker kan trigga dessa states så som att agenten blir skadad eller att agenten ser spelaren eller någon annan agent. Detta gör den mycket mer flexibel än scripts där allt exekveras av spelaren kommer inom en viss zon eller triggar något i scripten. En i ett spel som körs av FSM är hundar i första Quake nedan visas en bild på hundens olika states och deras innehållande ageringsplan. (Brownlee) visar på sin sida hur hunden agerar i de olika states som finns, de gråa rutorna med svart ram runt är de som får de olika states att aktiveras. Rutorna i vitt är typiska för all AI i Quake och de i grått är specifika för just den agenten. Fördelar med FSM är som det står på AI-junkies sida om FSM att den är simpel att koda, då den på många sett liknar sctrips i enkelhet beräknat. En annan mycket bra sak är att man lätt kan debugga FSM tack vare sin nedbrytbarhet till de states den kan befinna sig i och applicera en spårningskod på varje state för att se var den fastnar. Den följer deterministiska regler vilket är till fördel då den tar liten tid att köra kod som om A så gör B. FSM hjälper även till att skapa en mer trovärdig AI, då även vi ibland kan komma i states vilket gör att vi på enklare sätt kan förstå dens agerande och på så sätt finna den mer trovärdig. Ta bara hunden i exemplet ovan, så fort den tar skada av något slag så kommer den att attackera den som orsakade skadan, oavsett om det är en spelare eller en annan agent i spelet. Detta kan på många sätt tyckas likna en vanlig hunds beteende. (AI-Junkie) 6

7 Nackdelar med FSM är att de bara kan befinna sig i ett state åt gången vilket gör att om man ska programmera in någon slags personlighet i agenten så kommer man att programmera ett liknande beteende flera gånger i olika states, det finns med andra ord ingen högre nivå av states utan alla ligger på samma plan. (Champandard, AI-game dev) En regelstyrd FSM tenderar att bli väldigt förutsägbar då det är lätt att se hur den ska agera. (Brownlee) En annan nackdel med FSM är just dens enkelhet, då mer och mer krävs idag av spelen på marknaden så måste nya saker implementeras, detta görs genom att använda det underliggande programspråket för att skapa saker som minne eller räknare. (Champandard, AI-game dev) Vilka spel använder FSM och hur? Förutom det redan nämnda Quake så är ett mycket klassiskt spel som använder sig av FSM, PacMan. Spökena i PacMan jagar spelaren ända tills denna käkar ett så kallat power pill varpå spökena ändrar state från att jaga till att fly och försöker istället hålla sig borta från spelaren. I sportspel så hanteras spelarna som FSM, även hela lag hanteras som FSM men på en annan nivå, spelaren har states så som att de ska jaga bollen medan lagen har ett state så som att de ska försvara mål (kanske ligger de i överläge och vill dra på tiden tills matchen är över) (AI-Junkie) 7

8 STRIPS Stanford Research Institute Problem Solver, även kallat STRIPS är en relativ ny implementering inom spel då den sattes i bruk 2005, dock har den funnits en bra tid innan då den faktiskt skapades på tidigt 70-tal. (Champandard, AI-game dev) STRIPS är en planerare, och i planerare så försöker agenten uppnå ett mål av något slag genom att eliminera de faktorer som hindrar den från att uppfylla målkraven. Ta i ett actionspel där AI:n försöker att döda spelaren, en sak för AI:n kan vara att slå ner spelaren, men då måste vi befinna oss nära spelaren. Ett annat sätt kan vara att kasta en handgranat på honom, dock vill AI:n inte stå lika nära när den gör det då handgranaten exploderar. Ett av målen i STRIPS brukar vara just att döda spelaren, dock måste ofta AI:n på någon sätt veta var spelaren befinner sig för att kunna göra så. Därför brunkar de ofta ha ett mål med lägre prioritet innan den har fått syn på var spelaren gömmer sig. Det kan vara saker som att stå still, eller patrullera ett område. Detta kommer AI:n göra ända tills han ser spelaren och kan uppfylla sitt mål med högre prioritet. (Orkin) Ett exempel på hur STRIPS kan se ut (Bild från Ai game dev) Fördelar med STRIPS: Då STRIPS inte arbetar med states så kan samma mål nås på fler olika sätt mycket enklare. När man använder FSM så måste man göra ett state för varje vapentyp som AI:n är utrustad med, som jag förklarade innan då skiljer sig handgranater och knytnävar ganska mycket. STRIPS har istället en inbyggd sak som kallas för dependency tracking som håller koll på vilka saker som måste uppfyllas för en handling ska kunna utföras. Så genom samma plan kan två olika AI försöka eliminera spelaren på två olika sätt då de har olika förutsättningar. Detta gör att med STRIPS så får man enklare skillnad på olika fiender som man möter i spel och slipper den stora klumpen med fiender där alla gör exakt likadant. Då man kan göra allt detta med FSM genom att skapa ett träd till varje unik AI så gör STRIPS det mycket enklare, istället för att koda 20 olika träd för 20 olika fiender så måste man bara sätta ihop ett träd och dela ut olika egenskaper till AI:n. (Orkin) (Champandard, AIgame dev) 8

9 Nackdelar med STRIPS: Då STRIPS i många fall är en väldigt bra lösning så finns det ännu enklare implementeringar som kan lösa samma uppgift. Och eftersom STRIPS bygger få första ordningens logik (FOL) och kräver en kunskap inom den domänen så kan det vara smart att använda sig av A*. (Champandard, AI-game dev) Vilka spel använder sig av STRIPS och hur? F.E.A.R. av spelföretaget Monolith använder sig av en blandning mellan STRIPS och A*. Efter att ha gjort en plan med STRIPS så lade de en kostnad på alla handlingar som AI:n kunde utföra. Om vi sätter en kostnad för att kasta en handgranat till 1.0 och att handlingen kräver att vi har en handgranat, och kostnaden för att slå till spelaren till 2.0. Vi utrustar en AI med en handgranat. Målet för AI:n är att eliminera spelaren. Först kommer den att kasta iväg handgranaten mot spelaren, om spelaren fortfarande lever kommer AI:n springa mot spelaren för att slå honom. A* hjälper till på två sätt i detta fall. Först så söker den i STRIPS-planen efter den plan med lägst kostnad. Sedan när AI:n ska fram till spelaren så söker även A* efter kortaste vägen till spelaren. På så sätt så återanvänder de kod på ett då väldigt nyskapande sätt. 9

10 Förflyttning Efter att snabbt gått igenom tre grundprinciper för hur en AI kan agera i spel tänkte jag nu lite mer grundligt gå in på hur AI i spel förflyttar sig. För vad vore en AI som enbart stod still och försöker interagera med spelaren? Pathfinding En väldigt viktig komponent inom spel-ai är Pathfinding, det vill säga den komponent som gör att AI:n hittar mellan punkt A och punkt B. Givet att vägen mellan punkterna är mer komplex än en rak gång utan hinder så använder man sig av en sökalgoritm. Idag är den vanligaste sökalgoritmen A* då den är både komplett och optimal. (Seemann, 2004) Även om A* är både komplett och optimal, så finns det ett smärre problem vad gällande användningen i mer komplexa spelmiljöer. För att simplifiera en stor värld som AI:n kan röra sig i så används så kallade noder. Noder är en plats i världen dit AI:n kan söka sig till, genom att koppla samman noderna får vi ett nät som kommer vara AI:n möjliga rörelseschema. Så länge varje nod är kopplad till någon av de andra noderna i nätet så kommer AI:n att kunna ta sig mellan två givna noder. (Seemann, 2004) Sökningen Nu när vi har ett område att söka av så kommer vi gå igenom lite psuedokod för hur A* söker av vägen till målet. Add the starting node to the open list while the open list is not empty: current node = node from open list with the lowest cost if current node = goal node then: path complete else move current node to closed list examine each node adjacent to the current node for each adjacent node if it isn t on the open list and it isn t on the closed list and it isn t an obstacle move it to the open list and calculate cost Kod från Seemann(2004) Som vi ser i koden här över så är det första vi gör att lägga till startnoden i den så kallade open list, det är den lista med noder som vi vill använda oss av, det vill säga tillgängliga noder från där vi befinner oss just nu. Därefter gör vi ett måltest för att se om vi är framme på vår tänkta destination. Om så är fallet så stannar koden där, om inte så lägger vi den nuvarande noden i closed list. Den listan innehåller noder som vi inte längre anser vara intressanta, det vill säga noder där vi redan har varit. Nästa steg är att inspektera intilligande noder, se om de ligger i antingen open list eller closed list 10

11 eller om det finns ett hinder i vägen, typ en vägg. Om inte så flyttar vi dem till open list och räknar ut kostnaden och flyttar oss till den med lägst kostnad. Därefter repeterar vi koden tills det att vi är vid målnoden. (Seemann, 2004) Nodkostnader För att bestämma kostnaden för en nod i ett spel använder man sig av två saker, kostnaden att ta sig dit från startnoden och avståndet från noden till målnoden. Detta betyder att noder som ligger närmre mål kommer att ha en större kostnadsvärde för avståndet från startnoden, men en lägre kostnad från avståndet till målnoden. Att räkna på avståndet från start är lätt, vi aderar enbart ihop all kostnad från tidigare noders avstånd. När vi räknar ut avståndet till mål kan det bli svårare då det kan förkomma hinder på den vägen. Detta betyder att sökningen i många fall kommer att öppna noder som leder till sämre vägar, men senare kassera dessa då den hittar en nod som har mindre sammanlagd kostnad. (Seemann, 2004) Det finns andra slags kostnader som kan användas vid pathfinding, säg att det tar längre tid att gå en väg istället för en annan då den är utmärkt med lera. Då vill vi ge den vägen en högre kostnad på grund av detta. Den kostnaden är en extrakostnad som kan tilldelas varje nod. Sådan kostnad kan antingen vara statisk, så som teräng, eller dynamisk om det förefaller sig vara dåligt att stå på den noden i vissa scenarion. Om vi vill att AI:n ska undvika att bli sedd allt för mycket av spelaren så kan vi sätta noder som är inom spelarens synfällt att ha en högre kostnad. (Seemann, 2004) 11

12 Navigation Mesh Det finns mer än ett sätt att använda pathfinding, tidigare har jag förklarat navigering via noder, så kallat waypointing. Det finns dock gånger då waypointing blir utklassat av så kallat Navigation Mesh. Navigation Mesh är ett för spelaren osynligt 2D-lager som täcker den yta där AI:n kan röra sig på. Istället för att ge AI:n specifika punkter som den kan röra sig till så har den istället en yta varpå den navigerar. (Game Programming Gems, 2000) Meshen är uppbyggd av trianglar där varje triangel måste sitta ihop med en annan triangel på en sida, om det skulle bli avbrott så kommer AI:n inte kunna ta sig till de delar som är avskiljda från den mesh den befinner sig på. Inte heller får två trianglar överlappa varandra då det skapar krockar i lokaliseringen. AI:n bör enbart kunna vara på en position åt gången. (Game Programming Gems, 2000) När vi har vår mesh klar vill vi även att vår AI ska kunna navigera den, för att göra detta så skapar vi först och främst en kontrollpunkt. Kontrollpunkten sitter direkt under AI:n och kan aldrig lämna meshen. När vi vill att AI:n ska flytta sig så drar vi ett streck i meshen, från kontrollpunkten till önskad plats. Därefter så testar vi vårt dragna streck mot trianglarnas kanter i vår mesh. För att lämna en triangel och komma till en annan så måste vi korsa en av triangels tre sidor. Så för varje sida som vi korsar så kan vi får ett av följande tre resultat. (Game Programming Gems, 2000) 1. Sidan sitter inte ihop med en sida på en annan triangel. Vilket innebär att det finns ett hinder. Vi drar om banan för att undvika hindret och gör om testet. 2. Sidan gränsar till en annan triangel, vi flyttar kontrollpunkten till den triangeln och drar en ny linje till samma mål men som startar i triangeln vi står i. 3. Om linjen inte passerar någon av triangelns kanter betyder det bara en sak, att vi är framme vid vår önskade destination. Kontrollpunkten säger nu till AI:n att flytta sig till den platsen via den väg som har ritats upp. 12

13 Varför Navigation Mesh? Avsnittet nedan bygger på före detta spelutvecklare hos Nintendo, Paul Tozour, AI-blog. Det finns fler än ett skäl till varför man bör använda Navigation Mesh istället för waypoints i mer eller mindre alla fall. Kanske inte i en 2D miljö med rutnätsystem, men det är även ett av de ända fall då waypoint kan anses vara bättre. Jag kommer kort att gå igenom argumenten till varför Navigation Mesh är bättre än waypoints. 1. Vissa spel skulle kräva ett enormt antal noder. En stor och öppen yta kräver oftast väldigt stora mängder waypoints när navigation meshkan beskriva samma yta med enbart ett fåtal polygoner. Se bilderna nedan. Som vi ser på bilden ovan så krävs det cirka 30 waypoints för att täcka spelytan så att en AI ska kunna vandra nästan var som hellst. Om vi istället hade använt Navigation Mesh så hade det sett ut som på bilden nedan. Som synes så behövs inte hälften så många polygoner för att täcka samma yta. Detta innebär att sökningen för att AI:n ska kunna ta sig fram förenklas betydligt. 13

14 2. Waypoints får AI:n att sick-sacka. För att AI:n ska kunna röra sig mellan två noder i vår givna spelvärd så kommer den att sick-sacka fram mellan noderna, genom att använda samma miljö som i förra exemplet och markera den väg som vi vill att vår ska ta så kommer vi se hur konstigt det ser ut om en AI skulle gå så. Om vi nu gämför detta med hur det skulle se ut om vi skulle navigera mellan samma punkter fast med Navigation Mesh. Som vi ser på bilden ovan så är den helt rak. Navigation Mesh i sig skapar inte en helt rak linje utan till det så används Catmull-Rom Spline som, utan att gå in på matematiken, slätar ut kurvan mellan punkterna. Waypoints kan inte använda sig utav det då dess nätverk saknar information om kringliggande värld. Dock kan man lägga till noder så att AI:n kan gå rakt mellan alla punkter. Dock skulle antalet noder bli alldeles för stort för att kunna sökas i. 14

15 3. Kollisionstest behöver extra noder, medan navigation mesh klarar det utan extra tillägg. Eftersom waypoint nätet som tidigare nämnt inte har någon kunskap om kringliggande värld så får den stora problem med blockerade noder i vissa sammanhang. Om vi kollar på exempelbilden nedan så ser vi en bro med ett hinder. Hindret blockerar noden efter vilket AI:n ska navigera. Med andra ord kommer AI:n välja en annan väg, om möjligt, då den inte vet om den ska hålla till vänster eller till höger för att undvika hindret. Om vi istället skulle använda oss av en Navigation Mesh så skulle den kunna undvika hindret genom sin heuristik, som tidigare förklarat. Visst kan man undvika hindret genom att placera ut fler noder i waypoint nätet. Men det kommer i en större spelvärld ta aldeles för lång tid att söka igenom alla noder. (Tozour, 2008) 15

16 Diskussion Nu har vi gott igenom tre olika tekniker för AI i spel. Som det kanske märks så är de av olika ålder, vilket även innebär att de i dagens läge är olika användbara i spel. Scripts som är äldst används dock fortfarande i vissa spelutvecklarverktyg som är tänkte för folk som inte enbart är programmerare, annat än på lekmanna nivå. Även om STRIPS är långt överlägset än de andra två så är den även mycket mer invecklad och kanske inte funkar lika bra som en inkörsport till spelutveckling för lika många. Så jag tror att även om det är enkelheten som begränsar de andra två teknikerna så är det även enkelheten som gör att de fortfarande har en plats inom spel. Vad gällande förflyttning så finns det många skäl till varför man bör använda Navigation Mesh istället för Waypoints. Så varför använder man waypoints alls? Jag själv tror att det kan ha och göra med att Navigation Mesh är en nyare teknik. Waypoints har används länge i 2D spel, och översattes lätt till 3D. Det har funkat fint, och varför ändra ett vinnande koncept? Navigation Mesh är enligt Paul Tozour lika enkelt att implementera som waypoints. Dock kräver detta så klart någon som från början kan programmera in navigation meshen i spelet. Jag tror att många mindre spelföretag inte har haft råd att anställa en person enbart i egenskap av att göra en mesh. Dock kan vi numera se Navigation Mesh användas mer och mer flitigt i action-baserade spel, vilket tyder på att utvecklarna har hunnit ikapp tekniken. 16

17 Referenser Game Programming Gems. (2000). Charles River Media. Neverwinter Nights. (2002, July 3). EU: BioWare. AI-Junkie. (n.d.). AI-Junkie. Retrieved from Brownlee, J. (n.d.). AI-depot. Retrieved from Framework.html Champandard, A. J. (n.d.). AI-game dev. Retrieved from 10 Reasons the Age of Finite State Machines is Over: Champandard, A. J. (n.d.). AI-game dev. Retrieved from STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving: Iwantani, T. (1980, Maj 22). Pac-Man. Japan: Namco. Orkin, J. (n.d.). Three States and a Plan: The A.I. of F.E.A.R. Retrieved from Rob Pardo, J. K. (2005, Februari 11). World of Warcraft. EU: Blizzard Entertainment. Romero, J. (1996, Juni 22). Quake. Nordamerika: id Software. Seemann, D. M. (2004). AI For Game Developers. Tozour, P. (2008, July 26). Fixing Pathfinding Once and For All. Retrieved September 10, 2010, from AI-Blog: 17

Richard Wiik 9/16/2011

Richard Wiik 9/16/2011 LINKOPINGS UNIVERSITET Pathfinding i spel Inte bara optimalt, utan även realistiskt. 9/16/2011 Abstrakt Hur AI används för att avgöra hur AI karaktärer väljer hur och var de ska gå i Första Persons Actionspel.

Läs mer

Kognitionsvetenskapliga Programmet LiU. AI i spelet Magicka. Gruppbeteende/Grupprörelser. Jonathan Nilsson

Kognitionsvetenskapliga Programmet LiU. AI i spelet Magicka. Gruppbeteende/Grupprörelser. Jonathan Nilsson Kognitionsvetenskapliga Programmet LiU AI i spelet Magicka Gruppbeteende/Grupprörelser Jonathan Nilsson jonni544@student.liu.se 2011-09-01 2 Sammanfattning Den här fördjupningsuppgiften kommer handla om

Läs mer

Lektion 2: Sökagenter. Robin Keskisärkkä

Lektion 2: Sökagenter. Robin Keskisärkkä Lektion 2: Sökagenter Robin Keskisärkkä Lektionens innehåll Introduktion till laboration 2 Implementation av en sökalgoritm Livekodning Konfrontera ett liknande problem själva Extra: Heuristisk sökning

Läs mer

DEN RUNDA TUNNELN EN UNDERSKATTAD FIENDE

DEN RUNDA TUNNELN EN UNDERSKATTAD FIENDE DEN RUNDA TUNNELN EN UNDERSKATTAD FIENDE Av Marie Hansson När man är nybörjare i agility, eller ser sporten utifrån, är det lätt att tro att just den runda tunneln är det allra lättaste hindret! Och det

Läs mer

Reagera på WoW-event Att använda OnUpdate Introduktion Att kapa funktioner Automatisering och AI

Reagera på WoW-event Att använda OnUpdate Introduktion Att kapa funktioner Automatisering och AI Reagera på WoW-event Att använda OnUpdate Introduktion Att kapa funktioner Automatisering och AI Introduktion pptplex Section Divider The slides after this divider will be grouped into a section and given

Läs mer

TJUVSTARTER I AGILITY - en kamp i envishet

TJUVSTARTER I AGILITY - en kamp i envishet TJUVSTARTER I AGILITY - en kamp i envishet Av Marie Hansson När det handlar om tjuvstarter är det ofta en kamp mellan en ivrig hund och dess förare. Men ju mer psykologi man använder, desto större övertag

Läs mer

Artificiell Intelligens inom datorspel Är det ett seriöst ämne?

Artificiell Intelligens inom datorspel Är det ett seriöst ämne? Artificiell Intelligens inom datorspel Är det ett seriöst ämne? Tobias Andersson, tan10006@student.mdh.se Erik Johnasson, ejn11015@student.mdh.se Information kunskap vetenskap etik DVA223 SAMMANFATTNING

Läs mer

729G Artificiell jakt och flockbeteende inom datorspel

729G Artificiell jakt och flockbeteende inom datorspel Artificiell jakt och flockbeteende inom datorspel Abstrakt Chasing and Evading är ett begrepp som används för att beskriva hur agenter rör sig mot (jagar), eller undviker en spelare. Liksom i de flesta

Läs mer

Artificiell intelligens i en virtuell värld

Artificiell intelligens i en virtuell värld LINKÖPINGS UNIVERSITET Artificiell intelligens i en virtuell värld Ett fördjupningsarbete om artificiell intelligens inom spelbranschen Victor Sjölin, vicsj486@student.liu.se 2011-09-18 Table of Contents

Läs mer

Föreläsning 3.1: Datastrukturer, en översikt

Föreläsning 3.1: Datastrukturer, en översikt Föreläsning.: Datastrukturer, en översikt Hittills har vi i kursen lagt mycket fokus på algoritmiskt tänkande. Vi har inte egentligen ägna så mycket uppmärksamhet åt det andra som datorprogram också består,

Läs mer

Artificiell intelligens i spel

Artificiell intelligens i spel Artificiell intelligens i spel En redogörelse Björn Larsson 871210-4036 bjola054 729G11 Sammanfattning Under år 2007 omsatte den svenska tv- och datorspelsmarknaden 2,3 miljarder kronor (nyteknik.se).

Läs mer

Programmerbara kretsar och VHDL 2. Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik

Programmerbara kretsar och VHDL 2. Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik Programmerbara kretsar och VHDL 2 Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik 2 Dagens föreläsning Programmerbara kretsar igen Mer om processer Egna typer Använda

Läs mer

16. VOLLEY Volley är tillåtet dock inte på serven.

16. VOLLEY Volley är tillåtet dock inte på serven. Spelregler 1. PLACERING AV SPELARNA Spelet spelas i par Spelarna står i områden som är belägna på varsin sida av nätet. Servaren sätter bollen i spel och mottagaren returnerar bollen. Mottagaren kan stå

Läs mer

Vägplanering och vägavrudning med SSF i navigationsnät

Vägplanering och vägavrudning med SSF i navigationsnät Vägplanering och vägavrudning med SSF i navigationsnät Pathfinding and path smoothing with SSF in navigation meshes Examensarbete inom huvudområdet Informationteknologi Grundnivå 30 högskolepoäng Vårtermin

Läs mer

LEK MED BOLLEN. Svenska Fotbollförbundet

LEK MED BOLLEN. Svenska Fotbollförbundet LEK MED BOLLEN Svenska Fotbollförbundet Syfte Genom bollek vill vi i tidig ålder ge barn en möjlighet att uppleva glädje och kamratskap inom idrotten. Bollek uppmuntrar barn att använda sin kreativitet

Läs mer

Kombinationer och banor i agilityträningen

Kombinationer och banor i agilityträningen Kombinationer och banor i agilityträningen av Emelie Johnson Vegh och Eva Bertilsson, publicerad i Canis 2012 En av de saker som gör agility så fantastiskt roligt är den ständiga variationen. Ingen tävlingsbana

Läs mer

Legorobot. Lär dig programmera en legorobot. Teknikåttan 2009. Ola Ringdahl Lena Kallin Westin

Legorobot. Lär dig programmera en legorobot. Teknikåttan 2009. Ola Ringdahl Lena Kallin Westin Legorobot Lär dig programmera en legorobot. Teknikåttan 2009 Ola Ringdahl Lena Kallin Westin Legorobot Sid 2 (6) Legorobot Sid 3 (6) LEGOROBOT Syfte Syftet med denna praktiska uppgift är att man ska få

Läs mer

FÖRKORTA DIN VÄG PÅ BANAN

FÖRKORTA DIN VÄG PÅ BANAN FÖRKORTA DIN VÄG PÅ BANAN Av Marie Hansson - Känns hunden för snabb? - Har du svårt att hinna dit du vill på banan? Själva kärnan i lösningen på problemet borde väl vara att förkorta din väg? Ju svårare

Läs mer

Uppdrag för LEGO projektet Hitta en vattensamling på Mars

Uppdrag för LEGO projektet Hitta en vattensamling på Mars LEGO projekt Projektets mål är att ni gruppvis skall öva på att genomföra ett projekt. Vi använder programmet LabVIEW för att ni redan nu skall bli bekant med dess grunder till hjälp i kommande kurser.

Läs mer

Orienteringsteknik. Steg 1: Att förstå kartans symboler. Steg 2: Att förstå kompassen. Steg 3: Att förstå kartan. Steg 4: Koncentration.

Orienteringsteknik. Steg 1: Att förstå kartans symboler. Steg 2: Att förstå kompassen. Steg 3: Att förstå kartan. Steg 4: Koncentration. Orienteringsteknik Orientering är egentligen världens enklaste sport. Man får facit redan vid start och får kolla på det hur ofta man vill under hela loppet. Trots detta har majoriteten av orienterarna

Läs mer

Tips för laget/gruppen

Tips för laget/gruppen Ver 1.2 Inledning Detta dokument har satts ihop för att ge tips till både nya och redan erfarna paintballspelare. Vissa taktiska förslag kan verka självklara visst, men kanske finns det något nytt att

Läs mer

Försvar. 1. Förberedande försvarsträinng (5 eller 6 spelare). 2. Försvar mot 1:a-tempo följt av 3:e-tempo (minst 6 spelare).

Försvar. 1. Förberedande försvarsträinng (5 eller 6 spelare). 2. Försvar mot 1:a-tempo följt av 3:e-tempo (minst 6 spelare). Försvar (! = även lämplig för nybörjare) 1. Förberedande försvarsträinng (5 eller 6 spelare). En passare i mitten (framme vid nät) och fyra försvarare/anfallare på position 1, 2, 4 & 5 (alternativt hel

Läs mer

KIF HFK P04 7 MANNA SPEL. Spelidé och organisation för 7 manna spel

KIF HFK P04 7 MANNA SPEL. Spelidé och organisation för 7 manna spel 2014-02-28 KIF HFK P04 7 MANNA SPEL Spelidé och organisation för 7 manna spel Vårt sätt att spela och agera Häftet du håller i handen kan du bläddra och läsa lite i för att förstå hur vi i KIF vill spela

Läs mer

Lektion G43 Artificiell intelligens. Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm

Lektion G43 Artificiell intelligens. Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm Lektion 1 729G43 Artificiell intelligens Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm Dagens lektion Kort om laborationsserien Introduktion till laboration 1 Live-kodning Börja arbeta med laboration

Läs mer

Instruktion Finta/dribbla

Instruktion Finta/dribbla Instruktion Du kan skilja på att finta och att dribbla Finta gör du före dribblingen Du kan finta utan att dribbla efteråt T.ex. en inläggsfint då du vänder och slår inlägget med andra foten istället Du

Läs mer

Språkäventyret. Mål. Verktyg. Inledande arbete

Språkäventyret. Mål. Verktyg. Inledande arbete Språkäventyret Mål Sammanfatta hur jag gjorde spelet Språkäventyret på Fronter. Verktyg Fronters provverktyg Inledande arbete Fundera över dessa saker innan du börjar: 1. Vilken del av det centrala innehållet

Läs mer

BANVERKTYGET. Verktygen

BANVERKTYGET. Verktygen BANVERKTYGET Genom banverktyget kan man skapa banor eller kurvor genom att peka och klicka eller peka och dra med verktyget för att skapa mjukare linjer. Detta är funktionellt när man antingen ska skapa

Läs mer

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson Lab 4: Anti Tower Defence Oskar Mothander Alan Mendez Larsson dit06omr dit06mln Lärare: Handledare: Johan Eliasson Johan Granberg Tor Sterner-Johansson Thomas Johansson Daniel Henriksson Innehåll 1. Problemspecifikation...

Läs mer

Bermudatriangeln där alla problem försvinner spårlöst av Eva Bertilsson och Emelie Johnson Vegh publicerad i Canis 2008

Bermudatriangeln där alla problem försvinner spårlöst av Eva Bertilsson och Emelie Johnson Vegh publicerad i Canis 2008 Bermudatriangeln där alla problem försvinner spårlöst av Eva Bertilsson och Emelie Johnson Vegh publicerad i Canis 2008 I vår agilityträning jobbar vi utifrån ett par grundläggande principer: Vi strävar

Läs mer

Självständigt arbete på grundnivå

Självständigt arbete på grundnivå Självständigt arbete på grundnivå Independent degree project - first cycle Datateknik Computer engineering AI-motor Artificiell intelligens för spel Emil Åström MITTUNIVERSITETET Informations- och kommunikationssystem

Läs mer

AIK P03 Träning v Träningsupplägg. Johan Berg

AIK P03 Träning v Träningsupplägg. Johan Berg AIK P03 Träning v.41-43 Träningsupplägg Johan Berg AIK P03, V41, Måndag, Bollbehandling, ca 15 min Övningen Kona upp en kvadrat det ska bli lite trångt Hälften av spelarna har boll, hälften är utan boll

Läs mer

Räkna med Rutiga Familjen

Räkna med Rutiga Familjen Räkna med Rutiga Familjen Ett grafiskt mattespel som behandlar de fyra räknesätten med positiva och negativa tal. Utan siffror och symboler. Med lärande agenter. Saga Http://rutigafamiljen.se 2008-11-06

Läs mer

Speldesign och projektledning Specialkurs 2B Spelprogrammet VT15 2015-03-02

Speldesign och projektledning Specialkurs 2B Spelprogrammet VT15 2015-03-02 Post mortem Den här rapporten undersöker hur banan eller scenariot i ett brädspel kan påverka AI:s förutsättningar och sålunda upplevelsen för spelaren. Generellt sett så har det varit en ganska svår uppgift

Läs mer

Nr 782 3833. Hunden får inte visa störande aggressivitet eller tydlig skygghet. Hunden förs till prestationen försedd med munkorg.

Nr 782 3833. Hunden får inte visa störande aggressivitet eller tydlig skygghet. Hunden förs till prestationen försedd med munkorg. Nr 782 3833 Bilaga 1. TILLGÄNGLIGHET Hunden förs kopplad och försedd med munkorg genom en människogrupp till domaren. På hunden utförs kontroll av utrustningen och identifikationsmärkningen samt hundens

Läs mer

Kort Sammanfattning av Schack MAS

Kort Sammanfattning av Schack MAS Kort Sammanfattning av Schack MAS Krister Ljung kljung@kth.se 6th April 2003 1 Bamse 1.1 Agenter 1.1.1 Bamse Bestämmer vilket drag som skall skickas till spelplanen. Har även nio öppningar att spela dom

Läs mer

Laboration D159. Sekvensnät beskrivna med VHDL och realiserade med PLD. Namn: Datum: Epostadr: Kurs:

Laboration D159. Sekvensnät beskrivna med VHDL och realiserade med PLD. Namn: Datum: Epostadr: Kurs: UMEÅ UNIVERSITET Tillämpad fysik och elektronik Digitalteknik Lars Wållberg/Håkan Joëlson 2001-03-01 v 1.5 ELEKTRONIK Digitalteknik Laboration D159 Sekvensnät beskrivna med VHDL och realiserade med PLD

Läs mer

Föreläsning Datastrukturer (DAT037)

Föreläsning Datastrukturer (DAT037) Föreläsning Datastrukturer (DAT037) Nils Anders Danielsson 2015-11-20 Idag Grafer: Terminologi. Datastrukturer. Topologisk sortering. Kortaste vägen. Bredden först-sökning. Dijkstras algoritm. (Vi får

Läs mer

Programmeringsappar. Av Alex

Programmeringsappar. Av Alex Programmeringsappar Av Alex Omdöme 4/5 40 Kr 10+ År Robot School Robot School kommer från företaget Next is Great I appen Robot School hjälper man roboten R-obbie att nå sitt batteri genom att placera

Läs mer

Spelutveckling - Gameplay. Design och produktion

Spelutveckling - Gameplay. Design och produktion Spelutveckling - Gameplay Design och produktion Vad är ett spel? Finns olika åsikter Några exempel som räcker på egen hand Coola features Akta er för feature creep För mycket features kan dränka gameplay

Läs mer

Föreläsning Datastrukturer (DAT036)

Föreläsning Datastrukturer (DAT036) Föreläsning Datastrukturer (DAT036) Nils Anders Danielsson 2013-11-13 Idag Grafer: Terminologi. Datastrukturer. Topologisk sortering. Kortaste vägen. Bredden först-sökning. Dijkstras algoritm. (Vi får

Läs mer

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018 Static vs Dynamic binding Polymorfism Objekt-orienterad programmering och design (DIT95) Niklas Broberg, 2018 Diagnostiskt prov Shape + overlaps(shape): int return 1; Shape shape = new Shape(); Polygon

Läs mer

12 Systemspecifika regler Europabanan Generellt Standardbanor... 4

12 Systemspecifika regler Europabanan Generellt Standardbanor... 4 Version 2015-04-15 Innehållsförteckning 12... 3 12.1 Generellt... 3 12.2 Standardbanor... 4 De systemspecifika reglerna för europabanan beslutas av World Minigolf Sport Federation och uppdaterades senast

Läs mer

Slutrapport för Pacman

Slutrapport för Pacman Slutrapport för Pacman Datum: 2011-05-30 Författare: cb222bj Christoffer Bengtsson 1 Abstrakt Jag har under våren arbetat med ett projekt i kursen Individuellt Mjukvaruutvecklingsprojekt. Målet med mitt

Läs mer

Spekulativ exekvering i CPU pipelining

Spekulativ exekvering i CPU pipelining Spekulativ exekvering i CPU pipelining Max Faxälv Datum: 2018-12-05 1 Abstrakt Speculative execution is an optimisation technique used by modern-day CPU's to guess which path a computer code will take,

Läs mer

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016 Static vs Dynamic binding Polymorfism Objekt-orienterad programmering och design Alex Gerdes, 2016 Diagnostiskt prov Shape + overlaps(shape): int return 1; Shape shape = new Shape(); Polygon tripoly =

Läs mer

Användarmanual Wapspel

Användarmanual Wapspel Användarmanual Wapspel Innehållsförteckning No Refuge...2 Telefonkrav...2 Inloggning...3 Huvudmenyn...3 Spelet...4 Spelplanen...4 Radar...5 Extra tillbehör...6 Earthquake...6 Night mission...6 Datorspelare...6

Läs mer

[ÖVNINGSBANK] Sollentuna FK. Träffa linjen

[ÖVNINGSBANK] Sollentuna FK. Träffa linjen Träffa linjen Övning nr. 1 Alla spelare samlas på en linje med boll. Avstånd till linjen som ska träffa ca 10-15 meter. Varje spelare försöker passa bollen mot linjen och låta den stanna exakt på linjen.

Läs mer

Organisation: 4v4, boll, 35x20m 15min, 2 småmål. Anvisningar: När man är på sin egna planhalva får man bara spela 2 touch

Organisation: 4v4, boll, 35x20m 15min, 2 småmål. Anvisningar: När man är på sin egna planhalva får man bara spela 2 touch Organisation: 4v4, boll, 35x20m 15min, 2 småmål Anvisningar: När man är på sin egna planhalva får man bara spela 2 touch Syfte: Passningspel i defensiven Coaching Points: Uppmuntra lugn i defensiven, spela

Läs mer

Inbollning. Bagger 2 & 2: Parabola bagger som skickas rakt fram i axelhöjd utan båge (med böjda knän).

Inbollning. Bagger 2 & 2: Parabola bagger som skickas rakt fram i axelhöjd utan båge (med böjda knän). Inbollning (! = även lämplig för nybörjare) 1. Inbollning 2 & 2 - bagger. Bagger 2 & 2: Parabola bagger som skickas rakt fram i axelhöjd utan båge (med böjda knän). 2.! Inbollning 2 & 2 - grundslag och

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 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

Real-time requirements for online games

Real-time requirements for online games Real-time requirements for online games En undersökning om protokoll, tekniker och metoder som datorspel använder för att kommunicera över Internet Victor Grape Milad Hemmati Linköpings universitet Linköping

Läs mer

3 augusti (G) Programmering: Lego

3 augusti (G) Programmering: Lego 3 augusti (G) Programmering: Lego Idag ska vi gå igenom vad en robot är, hur programmeringsmiljön ser ut och skriva våra första program. Vi kommer gå igenom flera gröna programmeringsblock, samt det orangea

Läs mer

// //Constructor public function Main_Playground() { init(); }

// //Constructor public function Main_Playground() { init(); } Den här övningen kommer även den att beröra kontroll av figurer med piltangenter, men denna gång ska vi träna på att plocka upp och släppa objekt, samt hantera kollisioner. 1. Öppna filerna du förberedde

Läs mer

Institutionen för datavetenskap, DAT060, Laboration 2 2 För denna enkla simulerings skull kommer handen att representeras som ett par tal μ värdet på

Institutionen för datavetenskap, DAT060, Laboration 2 2 För denna enkla simulerings skull kommer handen att representeras som ett par tal μ värdet på DAT 060 Laboration 2 I Malmös kasino Institutionen för datavetenskap 17 juni 2002 Per tänkte dryga ut sitt magra studielån genom att jobba som labbassistent på sommarkursen. Tyvärr fanns det redan tillräckligt

Läs mer

Formula Dice Regelverk

Formula Dice Regelverk Formula Dice Regelverk Innehållsförteckning Sida Grunder Principer för ett bra spel 1 Förkortningar 1 Inför loppet Före loppet Under loppet Efter loppet Startordning 2 Väder 2 Spelarkortet 3 Däck 3 Vinginställning

Läs mer

Regler för Robotfemkamp under Robot-SM 2011

Regler för Robotfemkamp under Robot-SM 2011 Regler för Robotfemkamp under Robot-SM 2011 Sammanfattning av tävlingsgrenen Robotfemkamp innebär att en helt autonom robot skall tävla i fem olika grenar med olika karakteristiska uppgifter. Dessa är

Läs mer

Post Mortem för Get The Treasure!

Post Mortem för Get The Treasure! Post Mortem för Get The Treasure! Av: Emil Lindberg - Grupp 15 Vi skulle göra ett action multiplayerspel som spelades över nätverket. Vilket vi nästan lyckades göra. Tiden tog slut och programmerarna han

Läs mer

Några små tips om att träna på utsatt fågel

Några små tips om att träna på utsatt fågel Några små tips om att träna på utsatt fågel Att träna sin fågelhund på utsatt fågel, vanligen rapphöns eller fasan, har blivit rätt populärt. Gör man rätt kan det vara en effektiv och förhållandevis enkel

Läs mer

passning Passningsövningar stegrande svår 1/9 Created with Sideline XPS Trainer - 2/9

passning Passningsövningar stegrande svår 1/9 Created with Sideline XPS Trainer -   2/9 Passningsövningar stegrande svår 1/9 2/9 1 2 3 4 5 6 Teckenförklaring. 1. Springa utan boll 2. Passning eller skott (bollens förflyttning) 3. Driva med boll 4. Boll 5. Spelare 6. Koner Förklaring av vissa

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

Fotbollslekar. Ett kompendium av bra övningar för att leka och lära sig fotboll

Fotbollslekar. Ett kompendium av bra övningar för att leka och lära sig fotboll Fotbollslekar Ett kompendium av bra övningar för att leka och lära sig fotboll Barn har ett naturligt behov av lek och rörelse i unga år men även en begränsad förmåga till att inse vikten av och konsekvenserna

Läs mer

4.3 Försvarsspel 2v2

4.3 Försvarsspel 2v2 4.3 Försvarsspel 2v2 Försvarsspel 2 mot 2 Övning 1 Vad: Försvarsspel 2 mot 2 i ytterzon och styrande mot markerad yta Varför: Försvarsarbete inom begränsad yta enligt bild, för att arbeta med att hålla

Läs mer

Talsystem Teori. Vad är talsystem? Av Johan Johansson

Talsystem Teori. Vad är talsystem? Av Johan Johansson Talsystem Teori Av Johan Johansson Vad är talsystem? Talsystem är det sätt som vi använder oss av när vi läser, räknar och skriver ner tal. Exempelvis hade romarna ett talsystem som var baserat på de romerska

Läs mer

Artificial Intelligence

Artificial Intelligence Omtentamen Artificial Intelligence Datum: 2014-08-27 Tid: 09.00 13.00 Ansvarig: Resultat: Hjälpmedel: Gränser: Anders Gidenstam Redovisas inom tre veckor Inga G 8p, VG 12p, Max 16p Notera: Skriv läsbart!

Läs mer

Övningar. Utespelare

Övningar. Utespelare Övningar Utespelare Teckenförklaringar - Anfallande spelare (Våra egna spelare i detta dokument). - Försvarande spelare/motståndare M - Målvakt - Småmål - Koner - Madrass - Skott/Avslut L - Ledare - Rörelse

Läs mer

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I L04.1 Marodören Inledning Genom att öva sig på de grundläggande koncepten i JavaScript öppnas vägen allteftersom till de mer avancerade funktionerna. Man måste lära sig krypa innan man kan gå, även i JavaScript!

Läs mer

Utveckling Av Artificiell Intelligens Till Datorspel LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik

Utveckling Av Artificiell Intelligens Till Datorspel LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik Utveckling Av Artificiell Intelligens Till Datorspel LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik Examensarbete: Johan Källberg Copyright Johan Källberg LTH Ingenjörshögskolan vid Campus Helsingborg

Läs mer

Datastrukturer. föreläsning 8. Lecture 6 1

Datastrukturer. föreläsning 8. Lecture 6 1 atastrukturer föreläsning 8 Lecture 6 1 jupet-först sökning (S) och bredden-först sökning (S) Två metoder att genomsöka en graf; två grafiteratorer! Kan även användas för att avgöra om två noder är sammanbundna.

Läs mer

BESTÄLLARSKOLAN #4: VAD KOSTAR DET ATT GÖRA FILM?

BESTÄLLARSKOLAN #4: VAD KOSTAR DET ATT GÖRA FILM? Sida 1/7 BESTÄLLARSKOLAN #4: VAD KOSTAR DET ATT GÖRA FILM? I detta avsnitt kommer du upptäcka bland annat: Hur du sparar halva reklamfilmskostnaden Vad det är som kostar i en film Vad du måste berätta

Läs mer

Programmering II (ID1019) :00-11:00

Programmering II (ID1019) :00-11:00 ID1019 Johan Montelius Programmering II (ID1019) 2015-06-11 08:00-11:00 Instruktioner Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten. Svaren

Läs mer

Teckenförklaring. Försvarspelare. Anfallsspelare. Spelare med boll. Löpning utan boll. Löpning med boll. Bollens väg. Kon

Teckenförklaring. Försvarspelare. Anfallsspelare. Spelare med boll. Löpning utan boll. Löpning med boll. Bollens väg. Kon F-97 TRÄNINGSPÄRM Teckenförklaring Försvarspelare Anfallsspelare Spelare med boll Löpning utan boll Löpning med boll Bollens väg Kon Tips & råd Gå gärna igenom övningarna teoretiskt med gruppen först..

Läs mer

Fotbollsskolan. fintdribbling.indd

Fotbollsskolan. fintdribbling.indd Fotbollsskolan fintdribbling.indd 1 07-06-05 16.16.18 Välkommen till fotbollsskolan! Fotboll är en meningsfull sysselsättning året runt. För att få ett friskare och roligare liv och inte minst - för att

Läs mer

Passning och mottagning

Passning och mottagning Passning och mottagning Vad vi ska lära oss: Passa bollen (bredsida och utsida) Ta emot bollen på olika sätt Passa och ta emot bollen när vi springer Hålla avstånd till våra medspelare Varför Att passa

Läs mer

Fotbollsövningar 2 P08 Mariaskolan

Fotbollsövningar 2 P08 Mariaskolan Fotbollsövningar 2 P08 Mariaskolan Dribbla Svarteman Anpassa storleken på ytan efter antalet spelare 1 spelare är Svarteman och placerad på ena linjen Övriga spelare (förslagsvis med boll) på motsatt linje

Läs mer

Tränarutbildning 6 för P03: Översikt teman 2. Översikt om hur gör vi 1. Hemläxa 2. Övningar v Andy Alzuhn

Tränarutbildning 6 för P03: Översikt teman 2. Översikt om hur gör vi 1. Hemläxa 2. Övningar v Andy Alzuhn Tränarutbildning 6 för P03: 2011-04-27 1. Översikt teman 2. Översikt om hur gör vi 1. Hemläxa 2. Övningar v 17-21 Träningsteman P03 kommer löpande att ha bollbehandling som huvudfokus kompletterat med

Läs mer

Din skattade profil inför 2012

Din skattade profil inför 2012 Jag som orienterare Din skattade profil inför 2012 Motivationsmål Målsättning inför 2012 Tekniska mål Mentala mål Din skattade profil efter 2012 Motivationsmål Uppnådda mål 2012 Tekniska mål Mentala mål

Läs mer

Objektorientering i liten skala

Objektorientering i liten skala Linköpings Universitet Institutionen för datavetenskap (IDA) UPP-gruppen 2012-10-24 Objektorientering i liten skala Mål I denna lab skall du skriva ett objektorienterat program. Programmet skall delas

Läs mer

JavaScript del 3 If, Operatorer och Confirm

JavaScript del 3 If, Operatorer och Confirm JavaScript del 3 If, Operatorer och Confirm Under förra uppgiften så kollade vi på hur användaren kan ge oss information via promt(), vi använde den informationen både för att skriva ut den och för att

Läs mer

Bouleträning. (Ovanstående text är inspirerad av Anders Gerestrands hemsida: www.) geocities.com/boulesidan.)

Bouleträning. (Ovanstående text är inspirerad av Anders Gerestrands hemsida: www.) geocities.com/boulesidan.) Bouleträning Bouleteknik Målet i boule är kasta sina klot på ett sådant sätt att de gör störst nytta. Detta är svårt att göra om man inte har full kontroll över kloten. Visst kan dåliga klot studsa rätt

Läs mer

Del 1, trepoängsproblem

Del 1, trepoängsproblem Del 1, trepoängsproblem 1 Vad kommer det att stå i rutan som är märkt med ett X? 2 Alice skriver ner en uträkning, som är riktig. Sen täcker hon över två siffror. Det är samma siffra bakom båda rutorna.

Läs mer

Dagbok Mikael Lyck 810717-0071

Dagbok Mikael Lyck 810717-0071 Dagbok Mikael Lyck 810717-0071 2/6 Slutredovisning, redovisningen gick bra vi hade ju redan byggt ihop spelet så vi var inte särskilt oroliga. Allt som allt är jag väldigt nöjd med slutprodukten. 11/5

Läs mer

FM-ultralång, Salo

FM-ultralång, Salo FM-ultralång, Salo 14.10.2018 Allmän tävlingsinfo. Tävlingarnas hemsidor finns på denna länk. Läs in dig på all relevant info där. Gemensam start för H/D21 och yngre, intervallstart för de ändre klasserna.

Läs mer

Planering av ett större program, del 2 - for och listor. Linda Mannila

Planering av ett större program, del 2 - for och listor. Linda Mannila Planering av ett större program, del 2 - for och listor Linda Mannila 9.10.2007 Vad kan vi nu? Primitiva datatyper Tal, strängar, booleska värden Utskrift Indata Felhantering Funktioner och moduler (grunder)

Läs mer

Veckans regelnöt nr 32 2015

Veckans regelnöt nr 32 2015 Veckans regelnöt nr 32 2015 The Open Rules Quiz 2015 Del III Hål 13-18 Kevin and Shona spelar en slagtävling över 18 hål på the Old Course. Du är deras domare och ska som sådan besvara frågorna korrekt

Läs mer

= anfallande spelare, spelare i anfallande lag eller i ett av lagen. = tredje lag t ex vid spel med 3 smålag eller joker. = spelarens väg med boll

= anfallande spelare, spelare i anfallande lag eller i ett av lagen. = tredje lag t ex vid spel med 3 smålag eller joker. = spelarens väg med boll Teckenförklaring X = anfallande spelare, spelare i anfallande lag eller i ett av lagen. = försvarande spelare, spelare i försvarande lag eller i ett annat lag. = tredje lag t ex vid spel med 3 smålag eller

Läs mer

Föreläsning 7 Datastrukturer (DAT037)

Föreläsning 7 Datastrukturer (DAT037) Föreläsning 7 Datastrukturer (DAT037) Fredrik Lindblad 1 2016-11-21 1 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt. Se http://www.cse.chalmers.se/edu/year/2015/course/dat037 Förra

Läs mer

Förberedelser. Spelplanen

Förberedelser. Spelplanen Första gången jag provade dataspelet Worms, var jag ohjälpligt fast. Det kanske har något med att min bror, när han kommer på besök, alltid vill spela det. Den genuina känslan av tillfredställelse när

Läs mer

Ha rätt sorts belöning. Åtta tips för bästa sätt hur du tränar din hund. Grunden till all träning:

Ha rätt sorts belöning. Åtta tips för bästa sätt hur du tränar din hund. Grunden till all träning: Åtta tips för bästa sätt hur du tränar din hund Grunden till all träning: Gör det lätt för hunden! Börja alltid på en nivå som är enkel för hunden och bygg på svårigheterna. På det sättet tycker hunden

Läs mer

SLALOMINGÅNGAR hur svårt kan det vara?

SLALOMINGÅNGAR hur svårt kan det vara? SLALOMINGÅNGAR hur svårt kan det vara? Av Marie Hansson Ju mer man börjar tänka på vad en slalomingång innebär, desto mer komplicerat blir det! Det är inte lite vi begär att hundarna ska lära sig och hålla

Läs mer

Rapport. Engagemang. - Solis, Brian, 2011 (s. 282)

Rapport. Engagemang. - Solis, Brian, 2011 (s. 282) Rapport Engagemang "Engagement metrics are captured through the impact garnered from conversations with brand representatives, time spent viewing or taking action around social objects, as well as browsing,

Läs mer

ALGORITMER, OPTIMERING OCH LABYRINTER

ALGORITMER, OPTIMERING OCH LABYRINTER ALGORITMER, OPTIMERING OCH LABYRINTER Text: Marie Andersson, Learncode AB Illustrationer: Li Rosén Foton: Shutterstock Har du någonsin lagat mat efter recept eller monterat ihop en möbel från IKEA? Då

Läs mer

S i d a 1. Goda råd. från en erfaren. kranförare

S i d a 1. Goda råd. från en erfaren. kranförare S i d a 1 Goda råd från en erfaren kranförare S i d a 2 Beställning av kranen När du ska beställa kranen för ett lyft, måste du göra klart att lasten är färdig att koppla (eller gärna förbered med stroppar)

Läs mer

Träningsguide för barn och ungdom inom IK Huge Fotboll

Träningsguide för barn och ungdom inom IK Huge Fotboll Träningsguide för barn och ungdom inom IK Huge Fotboll Detta dokument är en bilaga till Riktlinjer för träning och beskriver hur ett träningsprogram kan läggas upp, vad man ska tänka på under övningarna

Läs mer

Välkommen till Ipad för nybörjare

Välkommen till Ipad för nybörjare Välkommen till Ipad för nybörjare Detta häfte kommer innehålla Alla knappars funktioner Simplare och hjälpsamma sätt att kunna använda och ta sig runt i en Ipad Mindre genom gång av appar och dess betydelse

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

Fotbollsövningar UPPVÄRMING:

Fotbollsövningar UPPVÄRMING: UPPVÄRMING: 1. Nummerboll Dela upp barnen i grupper om 4-6 som alla får varsitt nummer. Nummer ett börjar med bollen och skall passa till nummer två, osv. Viktigt med rörelse över stor del av planen, variera

Läs mer

Upptäck 7 trick som förvandlar ditt nyhetsbrev till en kassako

Upptäck 7 trick som förvandlar ditt nyhetsbrev till en kassako LYSTRING FÖRETAGARE som vill ha fler referenser, högre intäkter och fler kunder, klienter eller patienter som jagar dig istället för tvärtom Upptäck 7 trick som förvandlar ditt nyhetsbrev till en kassako

Läs mer

Programmering i Scratch 2.0

Programmering i Scratch 2.0 Programmering i Scratch 2.0 Version 1.3 Anders Berglund @andersberglund_ anders.h.berglund@stockholm.se Mälarhöjdens skola 2017 Del 1 Vad är Scratch? Scratch är ett visuellt programmeringsspråk som går

Läs mer

Laboration D184. ELEKTRONIK Digitalteknik. Sekvensnät beskrivna med VHDL och realiserade med PLD

Laboration D184. ELEKTRONIK Digitalteknik. Sekvensnät beskrivna med VHDL och realiserade med PLD UMEÅ UNIVERSITET Tillämpad fysik och elektronik Digitalteknik Lars Wållberg/Dan Weinehall/ Håkan Joëlson 2010-05-06 v 1.7 ELEKTRONIK Digitalteknik Laboration D184 Sekvensnät beskrivna med VHDL och realiserade

Läs mer