Anton Brunberg,
|
|
- Astrid Svensson
- för 5 år sedan
- Visningar:
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
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 merKognitionsvetenskapliga 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 merLektion 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 merDEN 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 merReagera 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 merTJUVSTARTER 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 merArtificiell 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 mer729G 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 merArtificiell 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 merFö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 merArtificiell 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 merProgrammerbara 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 mer16. 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 merVä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 merLEK 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 merKombinationer 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 merLegorobot. 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 merFÖ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 merUppdrag 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 merOrienteringsteknik. 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 merTips 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 merFö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 merKIF 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 merLektion 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 merInstruktion 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 merSprå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 merBANVERKTYGET. 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 merTor 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 merBermudatriangeln 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 merSjä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 merAIK 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 merRä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 merSpeldesign 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 merNr 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 merKort 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 merLaboration 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 merFö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 merProgrammeringsappar. 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 merSpelutveckling - 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 merFö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 merStatic 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 mer12 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 merSlutrapport 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 merSpekulativ 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 merStatic 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 merAnvä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
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 merOrganisation: 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 merInbollning. 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 merGenetisk 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 merFö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 merReal-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 mer3 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(); }
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 merInstitutionen 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 merFormula 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 merRegler 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 merPost 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 merNå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 merpassning 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 merFö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 merFotbollslekar. 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 mer4.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 merTalsystem 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 merArtificial 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 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 merL04.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 merUtveckling 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 merDatastrukturer. 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 merBESTÄ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 merProgrammering 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 merTeckenfö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 merFotbollsskolan. 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 merPassning 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 merFotbollsö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 merTrä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 merDin 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 merObjektorientering 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 merJavaScript 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 merBouleträ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 merDel 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 merDagbok 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 merFM-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 merPlanering 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 merVeckans 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
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 merFö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 merFö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 merHa 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 merSLALOMINGÅ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 merRapport. 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 merALGORITMER, 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 merS 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 merTrä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 merVä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 merBakgrund. 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 merFotbollsö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 merUpptä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 merProgrammering 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 merLaboration 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