Hyvä tekoäly reaaliaikaisissa strategiapeleissä
|
|
- Santeri Karvonen
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 Aleksi Tamminen Hyvä tekoäly reaaliaikaisissa strategiapeleissä Tietotekniikan kandidaatintutkielma 26. toukokuuta 2018 Jyväskylän yliopisto Informaatioteknologian tiedekunta
2 Tekijä: Aleksi Tamminen Yhteystiedot: Työn nimi: Hyvä tekoäly reaaliaikaisissa strategiapeleissä Title in English: good artificial intelligence in real-time strategy games Työ: Kandidaatintutkielma Sivumäärä: 21+0 Tiivistelmä: Vaikka reaaliaikaiset strategiapelit ovat olleet olemassa jo pitkän ajan ei niiden tekoälyssä ole saavutettu tilaa mihin voisimme olla kunnolla tyytyväisiä. Tämän kanditutkielman tavoitteena on tutkia, miten voitaisiin luoda hyvä tekoäly reaaliaikaisiin strategiapeleihin ja kuinka tekoäly mahdollisesti paranee tulevaisuudessa. Kanditutkielman muotona on kirjallisuuskatsaus. Tässä tutkielmassa käymme läpi RTS-pelien tekoälyn osa-alueita ja ongelmia, jotka liittyvät näihin osaalueisiin. Lopuksi käymme läpi koneoppimistekniikoilla suoritettuja tutkimuksia, joita voitaisiin mahdollisesti käyttää parantamaan RTS-pelien tekoälyä tulevaisuudessa. Avainsanat: tekoäly, realiaikainen strategiapeli Abstract: Even though real-time strategy games have been around for a long time we still have not achieved a state where we can be content. The goal of this bachelors thesis is to research how to create a good AI to real-time strategy games and how the AI will improve in the future. Form of the bachelors thesis is a literacy review. In this study we will go through some of the parts of RTS-game AI and problems that are included in these parts. In the end we will go through machine learning studies that could possibly be used to improve RTS-game AI in the future. Keywords: artificial intelligence,real-time strategy games i
3 Kuviot Kuvio 1. (Vasemmalla puolella kuvaa on pelimaailma, mikä näkyy vaikutuskartalle oikeanpuoleisena kuvana.(liu, Louis ja Ballinger, 2014). Vaikutuskartalla näkyy himmeänä valona pelikartan rajat ja kirkkaalla valolla vihollisen yksiköt.)... 4 Kuvio 2. RTS-pelin tekoälyn tasot (Liu, Louis ja Ballinger, 2014). Mikromanagerointi voidaan jakaa reaktioiden hallintaan (engl. reaction control) ja mikromanageroinnin taktiikoihin. Makromanagerointi koostuu yleisestä strategiasta ja siihen sisältyy yksiköiden parannukset ja pelialueen tutkiminen. Makromanageroinnin lopputuloksena on pelaajan armeija, minkä voi jakaa miten pelaaja näkee parhaaksi. Ontañón ym (2013) jakavat tehtävät suuresti samalla tavalla ii
4 Sisältö 1 JOHDANTO REAALIAIKAISTEN STRATEGIAPELIEN TEKOÄLY Reitinhaku Ryhmässä liikkuminen Taktinen- ja strateginen tekoäly Päätöksen teko MITEN REALIAIKAISTEN STRATEGIAPELIEN TEKOÄLYÄ VOIDAAN PARANTAA TULEVAISUUDESSA KONEOPPIVA TEKOÄLY JA SEN HYÖDYNTÄMINEN Mikromanagerointi Makromanagerointi YHTEENVETO...14 KIRJALLISUUTTA...16 iii
5 1 Johdanto Tässä kanditutkielmassa tutkitaan, miten voitaisiin luoda hyvä tekoäly reaaliaikaisiin strategiapeleihin ja kuinka tekoäly mahdollisesti paranee tulevaisuudessa. Reaaliaikaisista strategiapeleistä käytetään lyhennettä RTS-peli (engl. Real-time strategy game) ja tätä lyhennettä käytetään myös tässä tutkielmassa. Kanditutkielman muotona on kirjallisuuskatsaus. Tekoäly on laaja käsite ja sen merkitys riippuu paljon kontekstista. Tässä tutkielmassa tekoälyllä tarkoitetaan RTS-pelien sisältämää tekoälyä. RTS-pelien tekoälyyn luetaan mukaan kaikki toiminnot, jotka tarvitsevat tekoälyä toimiakseen tai toimivat tekoälyn ohjaamana, esimerkiksi pelien sisällä olevien ohjattavien yksiköiden tekoäly ja tietokonevastustajan eli botin käyttämä tekoäly. Tietokonevastustaja tekee tekoälyn avulla päätöksiä monella tasolla ohjatessaan hallitsemansa osapuolen yksiköitä, kun taas pelin sisällä oleva yksikkö tekee päätöksiä automaattisesti tilanteen vaatiessa. RTS-pelien tekoälyä tulisi tutkia, koska hyvän tekoälyn luominen RTS-peleihin on moneen muuhun peligenreen verrattuna paljon vaikeampaa. Esimerkiksi vuoropohjaisissa strategiapeleissä tietokonevastustaja tekee päätöksiä ja liikkeitä vain omalla vuorollaan, kun taas RTS-peleissä tietokonevastustajan täytyy tehdä päätöksiä koko pelin ajan. Videopeliyhtiöt eivät koe tarpeelliseksi kehittää tekoälyä, koska se vaatii paljon aikaa ja resursseja. Hyvä tietokonevastustaja kuitenkin auttaisi lisäämään tulevaisuuden RTS-pelien suosiota. Nykyinen tekoäly RTS-peleissä ei ole kovin kehittynyt ja sitä olisi joillain osa-alueilla helppo parantaa (Buro, 2004). Kehitystä RTS-pelien tekoälyssä on kuitenkin saavutettu Buron artikkelin jälkeen erilaisten kilpailujen avulla. Näitä kilpailuja on pidetty käyttäen esimerkiksi Blizzard Entertainmentin StarCraft peliä alustana (Ontañón ym. 2013). RTS-peleissä pelaajat käyttävät resurssien keräystä, tukikohdan rakentamista, teknologioiden kehittämistä ja yksiköiden ohjaamista voittaakseen vastustajansa pelimaailmassa, joka on usein jonkinlaisessa sotatilassa (Hagelbäck ja Johansson, 2008). 1
6 Reaaliaikaisten strategiapelien nykyisellä tekoälyllä varustettu tietokonevastustaja saadaan vaikeammaksi antamalla tälle ylimääräisiä etuja. Näin pelaajalle saadaan helposti vaikeammin voitettava vastustaja pelin vaikeusasteen noustessa. Yleisimpiin etuihin kuuluvat nopeampi resurssien keräys ja kartan paljastaminen tietokonevastustajalle. Luvussa 2 käydään läpi tärkeitä RTS-peleihin kuuluvia tekoälyn osia ja kuinka ne yleensä toimivat. Luvussa 3 tutkitaan, miten reaaliaikaisten strategiapelien tekoälyä pyritään nykyään parantamaan ja kuinka se tulee vaikuttamaan tulevaisuuden RTS-peleihin. Luvussa 4 käydään läpi koneoppivan tekoälyn hyötyjä ja kuinka sitä voitaisiin käyttää parantamaan RTS-pelien käyttämää tekoälyä. 2
7 2 Reaaliaikaisten strategiapelien tekoäly RTS-pelien tekoälyn tärkeimmiksi osa-alueiksi voidaan lukea ainakin reitinhaku (engl. pathfinding), ryhmässä liikkuminen (engl. group movement), taktinen- ja strateginen tekoäly (engl. tactical and strategic AI) ja päätöksenteko (eng decision making) (Millington ja Funge, 2009). 2.1 Reitinhaku Reitinhaussa etsitään pelikartalta reitti paikasta A paikkaan B. Reitin tulee olla mahdollisimman hyvä, mikä yleensä tarkoittaa nopeinta reittiä. Reitinhaku toimii käyttäen reitinhakualgoritmeja. Yleensä RTS-pelien navigoinnin hoitaa reitinhakualgoritmit kuten A*, joka löytää parhaan mahdollisen reitin kahden kohteen välillä tarpeeksi lyhyessä ajassa. RTS-pelien dynaamiset pelimaailmat ovat vaikeita käsitellä, mikä tuottaa reitinhakualgoritmeille ongelmia (Hagelbäck, 2016). Reitinhaku ja reitinhakualgortimit vaihtelevat peleittäin ja peligenreittäin. RTS-peleissä maailma jaetaan yleensä ruudukkoihin (engl. grid) ja kartat sisältävät usein kymmeniä tuhansia palasia (engl. tiles). Pelaajan täytyy pystyä siirtämään monia yksiköitä koko kartan halki, minkä takia vanhemmissa RTS- peleissä tehokas reitinhaku oli suurin haaste (Millington ja Funge, 2009). Näille ruudukoille annetaan arvo perustuen siihen, miten helppoa sen kautta on kulkea. Järjestelmän kehittyneisyydestä riippuen reitinhakualgoritmi saattaa ottaa huomioon asioita, kuten vesistöt ja pelikartan korkeuserojen vaikutukset (Schwab, 2009). 2.2 Ryhmässä liikkuminen Ryhmässä liikkuminen tarkoittaa pelissä liikutettavien yksikköjen liikuttamista yhtenä ryhmänä. RTS-peleissä ryhmässä liikkuminen on yleensä tärkeää ja joissain jopa automaattista. Muita tapoja saada aikaan helpompi yksiköiden liikuttaminen ryhmässä, jos se ei pelissä ole automaattista, olisi laittaa peliin ryhmäytymisnappula tai muodostelmajärjestelmä. Ryhmäytymisnappulalla pelaajan valitsemat yk- 3
8 siköt menevät samaan ryhmään, kun taas muodostelmajärjestelmässä pelaajan valitseman ryhmän yksiköt menevät ennalta määrättyihin muodostelmiin (Millington ja Funge, 2009). Esimerkiksi pelissä "Age of Empires 2"on neljä eri muodostelmaa valittavissa. Muodostelma otetaan käyttöön kun vähintään 2 yksikköä on samassa ryhmässä. Yksiköt jotka ovat ryhmässä liikkuvat samaa nopeutta kuin ryhmän hitain jäsen. Normaali muodostelmana on valittuna linjamuodostelma, joka muodostuu siten, että edessä on ratsuväki toisessa linjassa on jalkäväki ja takana on ampuma aseita käyttävät yksiköt. Toinen muodostelma on neliö missä keskelle menevät heikot yksiköt. Kolmas on hajaantunut muodostelma, joka toimii kuten linja mutta yksiköt ottavat väliä toisiinsa. Neljäs muodostelma on sivusta (eng flank) muodostelma missä valitun ryhmän yksiköt jakautuvat kahteen pienempään ryhmään. Ryhmässä liikumisen esimerkkinä pelissä "Stellaris"pelaajan armeija jakautuu laivastoihin, joiden alukset liikkuvat yhdessä ryhmässä mutta eivat voi erikseen valita muodostelmaa. 2.3 Taktinen- ja strateginen tekoäly Kuvio 1. (Vasemmalla puolella kuvaa on pelimaailma, mikä näkyy vaikutuskartalle oikeanpuoleisena kuvana.(liu, Louis ja Ballinger, 2014). Vaikutuskartalla näkyy himmeänä valona pelikartan rajat ja kirkkaalla valolla vihollisen yksiköt.) Taktista- ja strategista tekoälyä on tähän mennessä käytetty enimmäkseen ohjaa- 4
9 maan reitinhakua. Toinen asia mihin sitä käytetään on rakennusten sijaintien valitseminen, missä käytetään myös apuna vaikutuskartoitusta (eng influence mapping) (Millington ja Funge 2009). Vaikutuskartalta tekoäly tunnistaa turvallisimat paikat rakentaa tärkeät rakennukset. Millington ja Funge (2009) kertovat myös, että RTSpeleissä missä on mahdollista rakentaa muureja tekoäly tutkii niille sopivan sijainnin vaikutuskartalta. Vaikutuskartta on koordinaatisto, joka on laitettu pelimaailman päälle. Sen yksityisille osille, neliöille (square), annetaan vaikutuskartan funktiolla jokin arvo. Vaikutuskarttaa käytetään myös tilallisten ongelmien (engl. spatial problem) ratkaisuun (Liu, Louis ja Ballinger, 2014). 2.4 Päätöksen teko Varsinkin RTS-peleissä päätöksien tekeminen ei ole helppoa, koska koko peli pyörii pelikartalta kerättyjen resurssien ympärillä ja melkein kaikki mitä tekoäly voi tehdä käyttää samoja resursseja. Tekoälyn pitää tietää milloin käyttää resurseja mihinkin asiaan. Milloin ja mihin se rakentaa rakenukset, milloin tutkitaan lisää teknologioita, milloin hyökätään tai puolustetaan ja mitä yksiköitä pitää tilata. RTS-peleissä on monta kohtaa milloin päätöksen teon tulee tapahtua, minkä takia melkein aina tarvitaan moniosainen tekoäly (Millington ja Funge, 2009). Moniosainen tekoäly on käytössä tietokonevastustajan korkeantason strategisessa tekoälyssä. Tämä korkean tason tekoäly vastaa tietokoneen johtaman maan resurseista. Tekoäly vaihtelee resurssienhallintaa puolustuksen, hyökkäyksen, talouden ja tutkimusten välillä. Korkean tason strategista tekoälyä muokaten voidaan myös helposti luoda tekoäly vastustajista erilaisia. Esimerkiksi antamalla agressiiviselle maalle X tekoäly, joka näkee parhaaksi tuottaa enemmän sotilaita, kun taas taloudellinen maa Y näkee parhaaksi tehdä vahva talous ennen hyökkäämistä (Schwab, 2009). Yksinkertaisimmat tekoälyn toimminnat tekevät yksiköt itsekseen. Tämän voi tehdä esimerkiksi yksikkö tai ryhmäpohjaisilla käskyillä. Esimerkiksi monissa peleissä yksikön voi käskeä olemaan agressiivinen, passiivinen tai puolustautuva. Keskita- 5
10 soisiin päätösiin voidaan lukea esimerkiksi yhden ryhmän käyttäytyminen, jolloin kaikki ryhmän jäsenet tekevät ryhmän valitseman toimenpiteen (Millington ja Funge, 2009). Ryhmäpohjaisia käskyjä on esimerkiksi liiku ja hyökkää, jolloin ryhmä liikkuu ja hyökkää kaikkia vastaan tulevia vihollisia vastaan. Päätöksen teon vaikeuden takia tärkeimmillä RTS-pelin elementeillä on oma tekoäly, jonka monimutkaisuus riippuu pelistä itsestään. Joissain peleissä nämä osaset ovat melko itsenäisiä. Esimerkiksi resursseista vastaava tekoäly ei mieti muita osia vaan kerää kaikkia resursseja mahdollisimman hyvin (Millington ja Funge, 2009). Peleissä joissa tekoäly on yhtenäisempi kaikki tekoälyn osat pyrkivät toimimaan yhteen, esimerkiksi keräämällä enemmän resurseja yksiköihin ja rakentamalla vähemmän (Millington ja Funge, 2009). 6
11 3 Miten realiaikaisten strategiapelien tekoälyä voidaan parantaa tulevaisuudessa Jotta RTS pelien tekoälyä saadaan parannettua tulevaisuudessa, tulee meidän miettiä mitä parannettavaa meillä on nykyisestä tilanteesta. Nykyaikainen tekoäly ei ole kovin hienovarainen, eikä se pysty pelaajiin verrattuna tekemään tärkeitä valintoja, jotka tekevat pelaajia vastaan pelatuista peleistä haastavampia ja nautinnollisempia. RTS-pelien tulevaisuuden kannalta on tärkeää pyrkiä saamaan tekoäly tekemään enemmän valintoja taktiikoissaan ja pelityylissään pelin keskellä. Ontañón ym (2013) jakavat RTS-pelien tekoälyn haastavimmat osa-alueet kuuteen ryhmään. Nämä ryhmät ovat pelissä olevien resurssien käyttö (engl. resource management), valintojen tekeminen epävärmuuden alaisena, ajallinen ja tilallinen järkeily, usean tekoälyn yhteistyö, vastustajaan mukautuminen ja oppiminen ja vastakkainen realiaikainen suunnittelu (eng. Adversarial real-time planning). Buro ja Furtak (2004) mainitsivat myös reitinhaun yhdeksi ongelmaksi näiden kuuden lisäksi. Reitinhaku on kuitenkin parantunut huomattavasti, joten sitä ei lasketa nykyään suureksi ongelmaksi. Resurssien käytöllä on suurin vaikutus pelistrategian onnistumiseen, jos pelaaja tai tekoäly ei osaa käyttää resursseja oikeisiin asioihin oikeaan aikaan on häviäminen paljon todennäköisempää. Buro ja Furtak (2004) antavat esimerkkinä tilanteen, missä pelaaja käyttää liian paljon resursseja teknologioiden parantamiseen, mistä johtuen pelaan ei voi tehdä niin paljon yksiköitä ja hänen puolustuksensä kärsii. Valintojen tekeminen epävärmuuden alaisena tarkoitaa valintojen tekemistä ilman tarkkaa tietoa. Buro ja Furtak (2004) antavat tästä esimerkkinä pelitilanteen, missä pelaajat eivät tiedä toistensa tukikohtien sijaintia ja joutuvat tekemään päätelmiä siitä, mitä toinen on tekemässä. Ontañón ym (2013) jakavat epävärmuuden kahteen osaan, kartan näkyvyyteen ja RTS-pelien vastustaja painoitteisuuteen. Kartan näkyvyysongelmaa voi korjata tutkimalla pelikarttaa ja vetämällä johtopäätöksiä löydetyistä asioista. Vastustaja painoitteisuus tarkoittaa, että peliä pelataan jotakin 7
12 vastaan, mikä johtaa tarpeeseen vetää johtopäätöksiä vihollisen tilanteesta samalla tavalla kuin pelaajakin tekee. Vastasuunnitteluun kuuluu tärkeitä korkeantason valintoja, kuten milloin rakentaa mitä rakennuksia, milloin tutkia teknologioita, missä edetä ja hyökätä. Buron (2004) mukaan jotta tulevaisuuden tekoäly saataisiin niin hyväksi, että se pystyisi voittamaan pelaajan komentotasolla, tulisi sen osata tehdä valintoja dynaamisessa pelimaailmassa. Buro ja Furtak (2004) myös lisäävät, että RTS-pelin pelimaailma tulisi muokata jonkinlaiseen abstraktiin tilaan, missä tekoäly voisi ratkaista ongelmia ja muokata löydetyt ratkaisut jonoksi toimintoja, mitkä tekoäly sitten suorittaisi pelissä. Buro ja Furtak (2004) antavat tästä esimerkki ongelman, missä tietokonevastustaja ei ymmärrä hakata puita päästäkseen hakemaan lisää resursseja, kun taas pelaaja ymmärtää tämän helposti. Vastustajaan mukautuminen ja yleinen oppiminen on yksi suurimmista tekoälyn ongelmista. Uusia koneoppimistekniikoita tulisi kehittämään parantamaan tekoälyn kykyä vastaamaan pelaajan taitoa oppia vihollisen tekniikoista nopeasti ja käyttämään kyseisen strategian heikkouksia pelaajaa vastaan (Buro 2004). Esimerkiksi jos pelaaja rakentaa paljon tankkeja tulisi tekoälyn pystyä vaihtamaan resurssien käytön tankkien vastaisten yksiköiden rakentamiseen. Tekoäly-yhteisöissä on ollut jo pitkään keskustelua taktisen analyysin käytöstä. Käyttäen taktista analyysiä tekoäly voisi suunnitella laajoja yksiköiden liikkeitä ja voisi löytää heikkoja kohtia viholisen muodostelmasta ja käyttämään niitä hyväkseen (Millington ja Funge 2009). Ajallinen ja tilallinen järkeily on vaikeaa tekoälylle, koska RTS pelit tapahtuvat realiajassa eli tilanne voi vaihtua erittäin nopeasti. Staattisen ympäristön kuten kuristuskohdat tai dynaamiset tilalliset ominaisuudet kuten näkyvyys ja vihollisen vaikutus ovat erittäin tärkeitä asioita, mitkä pitää ottaa huomioon pelitaktikkaa luodessaan RTS pelissä. Nykyiset pelin tekoälyt jättävät nämä asiat monesti huomioimatta, eivätkä pärjää yleisjärjen päättelylle (Buro ja Furtak, 2004). Ontañón ym (2013) lisäävät tähän ongelmaan myös ainakin tukikohdan laajennuksen ja puolustusten rakentamisen. Ajallisesta järkeily on myös tärkeää strategisella tasolla. Ontañón ym (2013) mainitsevat strategisen tason asioista pitkän aikavälin suunnitelmat, jotka ot- 8
13 tavat huomioon talouden, teknologiat, rakennusten rakentamisen ja strategian vaihtamisen. Liu, Louis ja Ballinger (2014) käyttivät tutkimuksessaan vaikutuskarttoja hoitamaan tilallisia ongelmia. Tekoälyn yhteistyö pitää sisällään tietokonevastustajien yhteistyön keskenään tai pelaajien kanssa. Buro ja Furtak (2004) antavat tästä esimerkkinä tilanteen, missä tekoäly pelaa ihmisen kanssa samalla puolella mutta ei hyökkää samaan aikaan pelaajan kanssa. Buro ja Furtak (2004) antavat tähän syyksi sen, että tekoäly ei tutki mitä ihminen tekee. Tulevaisuudessa tekoälylle voisi esimerkiksi ilmoittaa pelaajalle, kun se on valmis hyökkäämään tai pelaaja voisi ohjata tekoälyä toimimaan puolustautuvasti. RTS-pelin maailmassa tapahtuu paljon asioita, jotka vaikeuttavat reitinhakua. Esimerkiksi haeutulle reitille saattaa tulla liikkuva este mikä estää reitin käytön. A* algoritmille onkin esitetty ehdotus, että lisättäisiin aika dimensio minkä yksiköt varaisivat tietyksi ajaksi helpottaen liikkumista dynaamisessa pelimaailmassa (Hagelbäck 2016). 9
14 4 Koneoppiva tekoäly ja sen hyödyntäminen Alpaydin (2014) mukaan koneoppiminen on tietokoneiden ohjelmoimista optimoimaan suoriutumisensa käyttäen esimerkkidataa tai aikaisempaa kokemusta. Meillä on malli, jolle annetaan joitain parametrejä ja oppiminen on tietokoneohjelman toteuttama, mallissa olevien parametrien optimointi käyttäen harjoitusdataa tai aikaisempaa kokemusta. Malli mitä tullaan optimoimaan voi olla ennustava, joka pyrkii tekemään oletuksia tulevaisuudesta, tai kuvaileva, joka pyrkii keräämään tietoa datasta. Malli voi olla myös kumpaakin edellämainittua. Alpdaydinin (2014) käyttämä optimointi termi tarkoittaa, että mallin opittuaan sen esitys ja algoritminen ratkaisu päätelmään on myös tehokas. Alpaydin (2014) kirjoittaa myös, että joissain tapauksissa oppimisen tehokkuus tai päättely algoritmin ja varsinkin sen ajallinen ja avarudellinen monimutkaisuus voi olla yhtä tärkeää kuin se kuinka tarkkoja sen ennustukset ovat. Koneoppiminen ei ole myöskään pelkkä tietokanta ongelma vaan se on myös osa tekoälyä. Ollakseen järkevä järjestelmän, joka on muuttuvassa ympäristössä pitäisi osata oppia (Alpaydin 2014, sivu 46). Ponsen (2004) ja Manslow (2002) jakavat oppimisen suoraan ja epäsuoraan oppimiseen. Epäsuorassa oppimisessa muutos käyttäytymiseen perustuu pelimaailman statistiikkoihin. Suorassa oppimisessa optimointialgoritmit tai vahvistusoppimisalgoritmit (engl. reinforcement learning ) muuttavat suoraan tekoälyn toimintaa, perustuen suoriutumiseen pelimaailmassa (Manslow, 2002). Ponsenin (2004) mukaan peliyhtiöt ovat kuitenkin varovaisia koneoppimisen kanssa peleissään, koska se on raskasta järjestelmälle, se voi oppia väärin ja sen muokkaaminen saamaan oikeanlainen tulos on vaikeaa. Ponsen (2004) kuitenkin kirjoittaa koneoppimisen kyvystä tehdä tekoälystä parempi ja tätä peliyhteisökin kaipaisi. Manslow (2002) kirjoittaa koneoppimisen hyödyistä ja mainitsee pelien kestävyyden ja pitkäaikaisuuden paranemisen. Ponsen (2004) nimeää koneoppimistekniikoista dynaamisen skriptauksen (engl. dynamic scripting) ja evoluutio algoritmit (engl. evolutionary algorithms) RTS-pelien tekoälyt voidaan jakaa kahteen osaan, mikromanagerointiin ja makromanagerointtin. Mikromanagerointi on yksiköiden käyttäminen taisteluissa. Mak- 10
15 romanagerointiin kuuluu resurssien käyttö eli pelin talous. RTS-peleissä on useasti jonkinlainen resurssienkerääjä yksikkö, joka ei pysty taistelemaan kovin hyvin. Työskentelijä yksikkö yleensä myös toimii tukikohdan rakentajana. Taisteluista vastaavat yksiköt voidaan jakaa eri tavoin riippuen pelin aikakaudesta. Yksiköt voivat olla esimerkiksi jalkaväkeä, lentäviä, tankkeja, vedessä kulkevia tai tykistö yksiköitä. Kuvio 2. RTS-pelin tekoälyn tasot (Liu, Louis ja Ballinger, 2014). Mikromanagerointi voidaan jakaa reaktioiden hallintaan (engl. reaction control) ja mikromanageroinnin taktiikoihin. Makromanagerointi koostuu yleisestä strategiasta ja siihen sisältyy yksiköiden parannukset ja pelialueen tutkiminen. Makromanageroinnin lopputuloksena on pelaajan armeija, minkä voi jakaa miten pelaaja näkee parhaaksi. Ontañón ym (2013) jakavat tehtävät suuresti samalla tavalla. 4.1 Mikromanagerointi Mitä voidaan tehdä tekoälyn mikromanageroinnin parantamiseksi? Liu, Louis ja Ballinger (2014) tutkivat kuinka geneettisiä algoritmejä voidaan käyttää löytämään strategia voittoon taistelussa. Yksiköiden mikromanagerointi taistelussa pyrkii maksimoimaan viholliselle tehdyn vahinkon ja minimoimaan omille tehdyn vahingon. Yleisesti käytettyjä mikromanagerointi tekniikoita ovat yksiköiden tulen ohjaaminen samaan kohteeseen ja haavoittuneiden yksiköiden pois vetäminen, sekä etäi- 11
16 syyden pitäminen viholliseen, jolla on lyhyempi ampumisetäisyys (engl. kiting). RTS-peleissä on tärkeää tietää missä on paras paikka taistella ja mitkä taistelut pystyy voittamaan. Aikaisemmin mainitsemaani vaikutuskarttaa voidaan käyttää tässä hyödyksi. Liu, Louis ja Ballinger (2014) käyttivät kahta eri vaikutuskarttaa. Toinen laski vihollisten yksiköiden lukumääriä ja merkkasi vaaralliset alueet ja toinen vaikutuskartta merkkasi pelin ympäristöä. Näiden kahden kartan yhdistelmää käytettiin sitten ohjaamaan tekoälyn yksiköiden sijoittelua ja reaktioita pelissä. Szczepański ja Aamodt (2009) pyrkivät parantamaan mikromanagerointia käyttäen tilannekohtaista järkeilyä (engl. Case-based reasoning CBR) Warcraft 3 pelissä. He pyrkivät voittamaan pelissä jo olleen tekoälyn ja myös tutkimaan, miten CBR voisi auttaa ihmis pelaajia. Algorimina toimi lähin naapuri algoritmi, mutta ilman tavoitteita. Järjestelmän algoritmissä oli viisi kohtaa. Aluksi tallennettiin pelitilanne uudeksi ratkaisemattomaksi tilanteeksi. Toisena verrattiin uutta tilanetta muistissa jo oleviin tilanteisiin ja haettiin kaikista samanlaisin tilanne. Kolmantena kartoitetaan ratkaisu valitusta tilanteesta ja suoritetaan haettu tilanne. Neljännessä kohdassa lisätään uusi tilanne järjestelmään, jos ollaan harjoitustilassa ja ongelma on havainnoitu. Lopuksi odotetaan sekuntti ja palataan ensimmäiseen kohtaan. 4.2 Makromanagerointi Monissa RTS-peleissä on pelitallennus (engl. replay) järjestelmä mistä pelaaja voi käydä katsomassa aikaisemmin pelattuja pelejään. Tätä replay järjestelmää voitaisiin mahdollisesti käyttää opettamaan tekoälyä pelaamaan paremmin. Hsieh ja Sun (2008) analysoivat tutkimuksessaan pelaajien pelitallennuksia ja tutkivat niistä rakennusten rakennusjärjestyksiä ja yksiköiden rakennus strategioita. Tämä on mahdollista, koska pelitalennukset tallentavat pelaajan toiminnot pelitallennus lokiin (engl. replay log). Hsieh ja Sun (2008) käyttivät järjestelmässään tilannekohtaista järkeilyä opettamaan tekoälyä pelaamaan. Aha ym (2005) tutkivat suunnitelman hakemisalgoritmia, jolla on kolme tietolähdettä. Tilannekohtaisen strategian valinta toimii tilannekohtaisen taktikon (engl. Case- 12
17 based Tactician CaT ) avulla. CaT hakee hilasta uuden tilanteen pelin alkaessa ja pelin siirtyessä uuteen vaiheesee, tarkoittaen tietyn rakennuksen valmistumista. Uuden tilan alussa CaT tallentaa muistiin vihollisen työntekijöiden ja taisteluyksiköiden kuolemat vähennettynä omistakuolemistaan, vihollisen menettämät rakennukset vähennettynä omista tuhoutuneista rakennuksistaan, vihollisen rakentamien rakennusten määrän pelin aikana,vihollisen tekemien taisteluyksiköiden määrän pelin aikana, vihollisen tekemien työntekijöiden määrän pelin aikana, itsensä rakentamien ehjinä olevien rakennusten määrän, itsellään elossa olevien taisteluyksiköiden määrän ja itsellään elossa olevien työntekijöiden määrän. Näiden lukujen avulla valitaan parhaiten toiminut tai mahdollisesti parhaiten toimiva strategia seuraavaan vaiheeseen. CaT käyttää muokattua k-lähin naapuri funktiota (engl. k-nearest neighbor function). 13
18 5 Yhteenveto Tämän kanditutkielman muotona on kirjallisuuskatsaus. Tutkielmassa tekoälyllä tarkoitetaan realiaikaisten strategiapelien eli RTS-pelien sisältämää tekoälyä mihin luetaan kaikki toiminnot, jotka tarvitsevat tekoälyä toimiakseen. RTS-peleissä pelaajat käyttävät resurssien keräystä, tukikohdan rakentamista, teknologioiden kehittämistä ja yksiköiden ohjaamista voittaakseen vastustajansa pelimaailmassa, joka on usein jonkinlaisessa sotatilassa (Hagelbäck ja Johansson, 2008). Tutkielman päätävoite on tutkia kuinka saataisiin hyvä tekoälyvastustaja tulevaisuuden RTSpeleihin. Hyvä tekoälyvastustaja parantaisi RTS.pelien suosiota ja parantaisi näiden pelien elinikää. Tekoälyä on parannettu varsinkin erinäisten kilpailujen avulla, mutta kaupallisiin peleihin ei olla saatu tekoälyvastustajaa, jota ei joutuisi parantamaan antamalla tälle ylimääräisiä etuja. RTS-pelien tekoälyn tärkeimmiksi osa-alueiksi voidaan lukea ainakin reitinhaku, ryhmässä liikkuminen, taktinen- ja strateginen tekoäly ja päätöksenteko (Millington ja Funge, 2009). Reitinhaku toimii reitinhakualgoritmeilla, jotka etsivät pelikartalla reitin paikasta A paikkaan B. RTS-peleissä pelimaailma on yleensä jaettu ruudukkoihin, joille annetaan arvo riippuen kuinka helppo sen kautta on kulkea. Ruudukot jaetaan vielä pienempiin palasiin, joita kutsutaan tiileiksi. Ryhmässä liikkuminen voidaan toteuttaa esimerkiksi ryhmäytymisnapilla tai muodostelmilla. Joskus ryhmäytyminen on automaattista. Taktinen- ja strateginen tekoäly käytetään enimmäkseen ohjaamaan reitinhakua ja rakennusten sijaintien valintaa. Tässä käytetään apuna vaikutuskarttoja. Päätöksen teko on vaikeaa RTS-peleissä ja tämän takia tekoäly on usein moniosainen. Korkeimman tason tekoäly hoitaa tietokonevastustajan resursseja ja Macromanagerointia. Toinen tekoälyn osa johtaa tietokonevastustajan armeijoita taistelussa. Pelissä yksiköt tekevät myös itsekseen päätöksiä tarpeen vaatiessa. Ontañón ym (2013) jakavat RTS-pelien tekoälyn haastavimmat osa-alueet kuuteen ryhmään.resurssien käyttöön, valintojen tekemiseen epävärmuuden alaisena, ajalliseen ja tilalliseen järkeilyyn, usean tekoälyn yhteistyöhön, vastustajaan mukautu- 14
19 miseen ja oppimiseen ja vastakkaiseen realiaikaiseen suunnitteluun. Lisäksi vähän reitinhakua. Resurssien käytössä tekoälyn tulisi osata käyttää tilanteen mukaisesti resurssejaan. Valintoja tulisi tehdä useammin ja tietokonevastustajan tulisi osata tutkia pelikartaa saadakseen tietoa näihin valintoihin. Tekoälyn tulisi osata suunnitella pelaajaa vastaan toimiva strategia ja osata ratkoa ongelmia pelissä. Vatustajaan mukautumista on mahdollista parantaa koneoppimis tekniikoilla. Tekoäly yhteisö on myös tutkinut taktista-analyysia. Ajallinen ja tilallinen järkeilyssä tekoälyn tulisi miettiä pitkän aikavälin suunnitelmaa ja varsinkin tukikohdan järkevää laajentamista. Tekoälyn tulisi osata tehdä pelaajan tai toisen tekoälyn kanssa yhteistyötä. Reitinhakua voisi parantaa lisäämällä aika dimensio reitinhakualgoritmeille. Koneoppiminen on suoriutumisen optimointia käyttäen esimerkkidataa tai aikaisempaa kokemusta. Oppimisen voi jakaa suoraan ja epäsuoraan oppimiseen. Micromanageroinnissa koneoppimistekniikoista on käytetty ainakin geneettisiä algoritmeja ja tilannekohtaista järkeilyä. Micromanageroinnin avulla pelaaja pyrkii maksimoimaan vahingon viholliseen ja pitämään vahingot itseensä mahdollisimman pieninä. Macromanageroinnilla tarkoitetaan pelaajan maan ohjaamista. Koneoppimistekniikoita on käytetty ainakin opettelemaan rakennusjärjestystä ja valitsemaan pelitaktiikoita. Pelitallennuksia voidaan käyttää tässä hyväksi. Apuna on käytetty myös lähin naapuri funktiota. Meidän olisi hyvä tutkia lisää koneoppimistekniikoita, jotta tulevaisuudessa RTSpeleihin todella saataisiin hyvä tekoäly, mutta siihen tarvittaisiin tekniikoita, joita olisi helppo soveltaa uusiin peleihin. 15
20 Kirjallisuutta Alpaydin, Ethem Introduction to machine learning. MIT press. Buro, Michael Call for AI Research in RTS Games. David W. Aha, Matthew Molineaux ja Marc Ponsen Learning to Win: Case-Based Plan Selection in a Real-Time Strategy Game Hagelbäck, Johan, ja Stefan J Johansson The Rise of Potential Fields in Real Time Strategy Bots. Hagelbäck, Johan "Hybrid Pathfinding in StarCraft,"in IEEE Transactions on Computational Intelligence and AI in Games Ji-Lung Hsieh ja Chuen-Tsai Sun Building a Player Strategy Model by Analyzing Replays of Real-Time Strategy Games Manslow, J. (2002). Learning and Adaptation. AI Game Programming Wisdom (ed. S.Rabin), Charles River Media, 2002, pp Michael Buro ja Timothy M. Furtak RTS Games and Real Time AI Research Millington, Ian, ja John Funge Artificial Intelligence for Games. Second Edition. Ponsen, Marc Improving adaptive game AI with evolutionary learning Schwab, Brian AI Game Engine Programming. 2nd Edition. 16
21 Tomasz Szczepański ja Agnar Aamodt Case-based reasoning for improved micromanagement in real-time strategy games. 17
Koneoppivan tekoälyn hyödyntäminen reaaliaikaisessa strategiapelissä
Joonas Vilppunen Koneoppivan tekoälyn hyödyntäminen reaaliaikaisessa strategiapelissä Tietotekniikan kandidaatintutkielma 11. toukokuuta 2016 Jyväskylän yliopisto Tietotekniikan laitos Tekijä: Joonas Vilppunen
Peliteoria Strategiapelit ja Nashin tasapaino. Sebastian Siikavirta sebastian.siikavirta@helsinki.fi
Peliteoria Strategiapelit ja Nashin tasapaino Sebastian Siikavirta sebastian.siikavirta@helsinki.fi Helsinki 11.09.2006 Peliteoria Tomi Pasanen HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö
Nollasummapelit ja bayesilaiset pelit
Nollasummapelit ja bayesilaiset pelit Kristian Ovaska HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Seminaari: Peliteoria Helsinki 18. syyskuuta 2006 Sisältö 1 Johdanto 1 2 Nollasummapelit 1 2.1
Seniorit ja tietokonepelit. Tietokonepelien pelaamisesta senioreiden näkökulmasta. Seniorien pelitapahtuma 16.11.2015 Enter ry
Seniorit ja tietokonepelit Tietokonepelien pelaamisesta senioreiden näkökulmasta Seniorien pelitapahtuma 16.11.2015 Enter ry 1 Seniorit ovat erilaisia Kiinnostus tietokonepelien pelaamiseen vaihtelee tietokonepelien
Trafficars - Ruuhkaara
760104 Trafficars - Ruuhkaara 2 5 pelaajaa Ikäsuositus 5+, 8+ Peliaika 10 15 minuuttia Pelipaketin sisältö 50 autokorttia 12 erikoiskorttia ohjevihko Pelissä: Opitaan liikkumaan lukualueella 0 50. Harjoitellaan
Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly
Bayesin pelit Kalle Siukola MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly 12.10.2016 Toistetun pelin esittäminen automaatin avulla Ekstensiivisen muodon puu on tehoton esitystapa, jos peliä
KODU. Lumijoen peruskoulu
KODU Lumijoen peruskoulu Sisällysluettelo 1. Aloitus... 2 1.1 Pelin tallennuspaikka... 2 1.2 Kodu Game lab... 3 2 Maan luominen... 4 2.1. Seinän tekeminen... 5 2.2. Vesialueen tekeminen peliin... 6 2.3.
Pelin kautta oppiminen
Pelin kautta oppiminen Suunnittele PELI Suunnittele E11-ikäluokalle sopiva peli Valitse pelille AIHE, joka on ikäluokalle tärkeä Mieti ainakin seuraavat asiat Montako maalia ja miten sijoitettu Miten maali
Johdatus tekoälyyn. Luento 6.10.2011: Koneoppiminen. Patrik Hoyer. [ Kysykää ja kommentoikaa luennon aikana! ]
Johdatus tekoälyyn Luento 6.10.2011: Koneoppiminen Patrik Hoyer [ Kysykää ja kommentoikaa luennon aikana! ] Koneoppiminen? Määritelmä: kone = tietokone, tietokoneohjelma oppiminen = ongelmanratkaisukyvyn
Tekoäly strategiapeleissä
Tekoäly strategiapeleissä Miika Mäkinen Pro gradu tutkielma Tietojenkäsittelytieteen laitos Tietojenkäsittelytiede Maaliskuu 2019 ITÄ-SUOMEN YLIOPISTO, Luonnontieteiden ja metsätieteiden tiedekunta, Kuopio
ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto
ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto Serve Research Brunch 24.10.2013 Esityksen sisältö ATLAS-hanke lyhyesti ATLAS-kartan kehittäminen:
Johdanto peliteoriaan Kirja kpl. 2
Aalto-yliopiston TKK Mat-2.4142 K2010 Esitelmä 1 Ilkka Leppänen 1 Johdanto peliteoriaan Kirja kpl. 2 Ilkka Leppänen 20.1.2010 Aalto-yliopiston TKK Mat-2.4142 K2010 Esitelmä 1 Ilkka Leppänen 2 Aiheet Laajennettu
CSC:N SHAKKIKOULU. esittää: Taktinen pelitapa ja kuningashyökkäykset
CSC:N SHAKKIKOULU esittää: Taktinen pelitapa ja kuningashyökkäykset 14.2.2019 Pelin evoluutio Useimmissa globaalisti kilpailluissa urheilulajeissa ja peleissä on käynnissä valtava pelin evoluutio. Digitalisoituminen,
Pelaajat siirtävät nappuloitaan vastakkaisiin suuntiin pelilaudalla. Peli alkaa näin. Tuplauskuutio asetetaan yhtä kauas kummastakin pelaajasta.
DVD Backgammon Pelin tavoite Pelin tavoitteena on siirtää kaikki omat pelinappulat omalle sisäkentälle ja sieltä pois laudalta. Se pelaaja, joka ensimmäisenä on poistanut kaikki pelinappulansa pelilaudalta,
Erotuomarin polku. ja koulutukset. Kansainvälinen ura. Valioerotuomarit Miesten SMliiga. Liittoerotuomarikurssi
Erotuomarin polku ja koulutukset Liittoerotuomarikurssi Kansainvälinen ura Liittoerotuomarit Naisten SM-sarja Miesten 1.divisioona Alkeiskurssi tai sääntökoulutus sekä koeottelu Jatkokurssi sekä vuosittainen
Opettaminen ja oppiminen
Opettaminen ja oppiminen MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly 19.10.2016 Nina Gunell The document can be stored and made available to the public on the open internet pages of Aalto
Merkkijono on palindromi, jos se säilyy samana, vaikka sen kääntää väärinpäin.
A Palindromi Sinulle annetaan merkkijono, ja tehtäväsi on poistaa siitä tarkalleen yksi merkki, minkä jälkeen merkkijonon tulisi olla palindromi. Onko tehtäväsi mahdollinen? Merkkijono on palindromi, jos
Tekoäly ja sen soveltaminen yrityksissä. Mika Rantonen
Tekoäly ja sen soveltaminen yrityksissä Mika Rantonen Tekoäly- paljon puhetta, mistä kyse? Lyhyesti sanottuna: tekoäly on sellaista koneen tekemää toimintaa, joka ihmisen tekemänä olisi älykästä Otetaan
TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)
JOHDATUS TEKOÄLYYN TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA) KONEOPPIMISEN LAJIT OHJATTU OPPIMINEN: - ESIMERKIT OVAT PAREJA (X, Y), TAVOITTEENA ON OPPIA ENNUSTAMAAN Y ANNETTUNA X.
KOKO PERHEEN HAUSKA STRATEGIAPELI OHJEET
KOKO PERHEEN HAUSKA STRATEGIAPELI OHJEET ROBOGEM_Ohjevihko_148x210mm.indd 1 PELIN TAVOITE Robotit laskeutuvat kaukaiselle planeetalle etsimään timantteja, joista saavat lisää virtaa aluksiinsa. Ohjelmoi
SEKASTRATEGIAT PELITEORIASSA
SEKASTRATEGIAT PELITEORIASSA Matti Estola 8. joulukuuta 2013 Sisältö 1 Johdanto 2 2 Ratkaistaan sukupuolten välinen taistelu sekastrategioiden avulla 5 Teksti on suomennettu kirjasta: Gibbons: A Primer
Pelien tekoäly ennen ja nyt
Pelien tekoäly ennen ja nyt Aihe-esittely Tuomas Honkala Good AI vs Fun AI Tekoälytutkimukseen sisältyy vahvan tekoälyn ideaali. Tekoäly on vahva silloin, kun se suoriutuu jostakin tehtävästä paremmin
Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto
OHJ-3200 Ohjelmistoarkkitehtuurit 1 Arkkitehtuurien tutkimus Outi Räihä 2 Darwin-projekti Darwin-projekti: Akatemian rahoitus 2009-2011 Arkkitehtuurisuunnittelu etsintäongelmana Geneettiset algoritmit
Taktiikan opettamisen tulee tukeutua pelaajien lajitaitoihin ja siihen, että valmentajalla on selvä kuva käyttämästään pelisysteemistä.
Taktiikka yleisesti Sanalla taktiikka tarkoitetaan sitä, kuinka käytetään oman joukkueen vahvuuksia ja vastustajan heikkouksia hyväksi valmistauduttaessa otteluun sekä sen aikana valmentajan tekemiä muutoksia
Tekniikka Informaatio Asiayhteys Laumaeläin Ihminen
Päätöksenteko Uskalla tehdä toisin Ari & Mona Riabacke Tekniikka Informaatio Asiayhteys Laumaeläin Ihminen Talentum Helsinki 2015 Ruotsinkielinen alkuperäisteos: Beslutspyramiden: stegen till klokare beslut
11 Oligopoli ja monopolistinen kilpailu (Mankiw & Taylor, Ch 17)
11 Oligopoli ja monopolistinen kilpailu (Mankiw & Taylor, Ch 17) Oligopoli on markkinamuoto, jossa markkinoilla on muutamia yrityksiä, jotka uskovat tekemiensä valintojen seurauksien eli voittojen riippuvan
Luento 8. June 3, 2014
June 3, 2014 Luokka pelejä, joissa pelaajilla on epätäydellistä informaatiota toistensa preferensseistä ja joissa valinnat tehdään samanaikaisesti. Tämä tarkoittaa, että pelaajat eivät tiedä toistensa
INTERAKTIIVINEN PELI, JOKA SAA OPPILAAT LIIKKUMAAN JA OPPIMAAN - TÄYDELLINEN TUOTE LIIKKUVIIN KOULUIHIN!
e-wall yhdistää liikkumisen ja oppimisen. e-wall yhdessä ilmaisen applikaation kanssa mahdollistaa opetukseen soveltuvien pelien tuomisen osaksi oppitunteja. Opettajat voivat itse tehdä pelin, jonka sisältö
Määrittelydokumentti
Määrittelydokumentti Aineopintojen harjoitustyö: Tietorakenteet ja algoritmit (alkukesä) Sami Korhonen 014021868 sami.korhonen@helsinki. Tietojenkäsittelytieteen laitos Helsingin yliopisto 23. kesäkuuta
Tiedot, taidot ja osaaminen oppivassa yhteiskunnassa
Tiedot, taidot ja osaaminen oppivassa yhteiskunnassa Prof. Sanna Järvelä Oulun yliopisto Oppijan taidot & oppivan yhteiskunnan haasteet Tarvitaan ehjät ja pidemmät työurat. Pään sisällä tehtävän työn osuus
Onnistut yrittämässäsi, mutta jokin täysin epäolennainen. vikaan.
KYLLÄ, JA Onnistut yrittämässäsi ja saavutat enemmän kuin odotit, enemmän kuin kukaan osasi odottaa. KYLLÄ, MUTTA Onnistut yrittämässäsi, mutta jokin täysin epäolennainen asia menee vikaan. EI, MUTTA Et
1. Taustatietoa näppäimistönkuuntelusta
Muilla kielillä: English Suomi Pong-peli, vaihe 5 Tämä on Pong-pelin tutoriaalin osa 5/7. Tämän vaiheen aikana Lisäämme peliin näppäimet Laitetaan mailat liikkumaan pelaajien ohjaamina Näin ohjelmaamme
Harjoitussuunnitelma viikko 18 Kärkipotku II
Harjoitussuunnitelma viikko 18 Kärkipotku II = Pelikenttä = Keiloilla rajattu alue = Pelaaja = Maalivahti = Valmentaja = Pallo = Liike pallon kanssa = Liike ilman palloa = Syöttö tai potku = Keila Harjoituskerralla
Pelisuunnittelua tulevaisuudessa. Karoliina Korppoo / Colossal Order
Pelisuunnittelua tulevaisuudessa Karoliina Korppoo / Colossal Order Puhuja Karoliina Korppoo Game Designer Lead designer projektissa Cities: Skylines Medianomi, Tampereen Ammattikorkeakoulu Filosofian
Valmistelut: Aseta kartiot numerojärjestykseen pienimmästä suurimpaan (alkeisopiskelu) tai sekalaiseen järjestykseen (pidemmälle edenneet oppilaat).
Laske kymmeneen Tavoite: Oppilaat osaavat laskea yhdestä kymmeneen ja kymmenestä yhteen. Osallistujamäärä: Vähintään 10 oppilasta kartioita, joissa on numerot yhdestä kymmeneen. (Käytä 0-numeroidun kartion
Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla
Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla Viimeksi muokattu 5. toukokuuta 2012 Maastotietokannan torrent-jakeluun sisältyy yli 5000 zip-arkistoa,
Evolutiivisesti stabiilin strategian oppiminen
Evolutiivisesti stabiilin strategian oppiminen Janne Laitonen 8.10.2008 Maynard Smith: s. 54-60 Johdanto Käytös voi usein olla opittua perityn sijasta Tyypillistä käytöksen muuttuminen ja riippuvuus aikaisemmista
Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari
Konsensusongelma hajautetuissa järjestelmissä Niko Välimäki 30.11.2007 Hajautetut algoritmit -seminaari Konsensusongelma Päätöksen muodostaminen hajautetussa järjestelmässä Prosessien välinen viestintä
STEP 1 Tilaa ajattelulle
Työkalu, jonka avulla opettaja voi suunnitella ja toteuttaa systemaattista ajattelutaitojen opettamista STEP 1 Tilaa ajattelulle Susan Granlund Euran Kirkonkylän koulu ja Kirsi Urmson Rauman normaalikoulu
Älykäs datan tuonti kuljetusongelman optimoinnissa. Antoine Kalmbach
Älykäs datan tuonti kuljetusongelman optimoinnissa Antoine Kalmbach ane@iki.fi Sisällys Taustaa Kuljetusongelma Datan tuominen vaikeaa Teoriaa Tiedostojen väliset linkit Mikä sarake on mikäkin? Ratkaisutoteutus
Yhteistyötä sisältämätön peliteoria
Yhteistyötä sisältämätön peliteoria jarkko.murtoaro@hut.fi Optimointiopin seminaari Kevät 2003 / 1 Sisältö Johdanto Käsitteistö Työkalut Nashin tasapaino Täydellinen tasapaino Optimointiopin seminaari
Muista että ketään ei ole kielletty toteuttamasta itseään joukkueen hyväksi.
14 Tärkeitä on joka alueella: Aluepeli Näkökenttäpeli Kakkospallot Äänenkäyttö Liikkuminen ilman palloa Periksiantamattomuus Pallo liikkeelle yhdellä ja kahdella kosketuksella. Kavereiden auttaminen Taktiikan
JUVAKE 2 OPPIMISYMPÄRISTÖN LUOMINEN JA VUOROVAIKUTUS
JUVAKE 2 OPPIMISYMPÄRISTÖN LUOMINEN JA VUOROVAIKUTUS Koulutuksen sisältö 1. Meidän pelin osa-alueet 2. Luonne 3. Oppimisympäristö - oppimistaidot 4. Vuorovaikutus 1. Valmentajien välinen 2. Pelaajien välinen
STEFAN KARKULAHTI HARJOITTELUN JA OPPIMISEN OPTIMOINTI. - case Black Knights korkeakoulujoukkue
STEFAN KARKULAHTI HARJOITTELUN JA OPPIMISEN OPTIMOINTI - case Black Knights korkeakoulujoukkue Harjoittelu Toistetaan määriteltyä toimintaa tai sen osaa jotta saavutetaan haluttu oppimistaso. Osaamistasot:
Johdatus go-peliin. 25. joulukuuta 2011
Johdatus go-peliin 25. joulukuuta 2011 Tämän dokumentin tarkoitus on toimia johdatuksena go-lautapeliin. Lähestymistapamme poikkeaa tavallisista go-johdatuksista, koska tässä dokumentissa neuvotaan ensin
Algoritmi III Vierekkäisten kuvioiden käsittely. Metsätehon tuloskalvosarja 7a/2018 LIITE 3 Timo Melkas Kirsi Riekki Metsäteho Oy
Algoritmi III Vierekkäisten kuvioiden käsittely Metsätehon tuloskalvosarja 7a/2018 LIITE 3 Timo Melkas Kirsi Riekki Metsäteho Oy Algoritmi III vierekkäisten kuvioiden käsittely Lähtötietoina algoritmista
Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely)
Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely) Jari Hast xx.12.2013 Ohjaaja: Harri Ehtamo Valvoja: Hari Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston
Harjoitussuunnitelma viikko 17 Kärkipotku I
Harjoitussuunnitelma viikko 17 Kärkipotku I = Pelikenttä = Keiloilla rajattu alue = Pelaaja = Maalivahti = Valmentaja = Pallo = Liike pallon kanssa = Liike ilman palloa = Syöttö tai potku = Keila Harjoituskerran
Pikaopas. ALOITA TÄSTÄ! Pelin tavoite: Valmistaudu taisteluun!! Riko kaikki vastustajasi kilvet ja hyökkää vielä kerran voittaaksesi
ALOITA TÄSTÄ! Pelin tavoite: Riko kaikki vastustajasi kilvet ja hyökkää vielä kerran voittaaksesi pelin! Pikaopas Valmistaudu taisteluun!! Sekoita pakkasi. Ota 5 korttia pakkasi päältä. Älä katso niitä.
SAMI HYYPIÄ ACADEMY FOOTBALL CAMP 6.-8.6.2015, EERIKKILÄ LEIRIN HARJOITTEET YHTEENVETO: KIMMO KANTOLA
SAMI HYYPIÄ ACADEMY FOOTBALL CAMP 6.-8.6.2015, EERIKKILÄ LEIRIN HARJOITTEET YHTEENVETO: KIMMO KANTOLA 1.HARJOITUS LA 6.6 13.30-13.45 (75 ) SISÄLTÖ JA TAVOITTEET: PALLOTTOMAN PELAAJAN SIJOITTUMINEN, LIIKKUMINEN
Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun
Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun Sami Hokuni 12 Syyskuuta, 2012 1/ 54 Sami Hokuni Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun Turun Yliopisto. Gradu tehty 2012 kevään
Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti
Luku 6 Dynaaminen ohjelmointi Dynaamisessa ohjelmoinnissa on ideana jakaa ongelman ratkaisu pienempiin osaongelmiin, jotka voidaan ratkaista toisistaan riippumattomasti. Jokaisen osaongelman ratkaisu tallennetaan
Peliteoria ja kalatalous YE4
Peliteoria ja kalatalous YE4 Kansainväliset kalastussopimukset Tarve kansainväliselle yhteistyölle: Vain kestävillä kansainvälisillä sopimuksilla voidaan taata biologinen ja taloudellinen tehokkuus. Neuvottelujen
CALL TO ACTION! Jos aamiaistilaisuudessa esillä olleet aiheet kiinnostavat syvemminkin niin klikkaa alta lisää ja pyydä käymään!
CALL TO ACTION! Jos aamiaistilaisuudessa esillä olleet aiheet kiinnostavat syvemminkin niin klikkaa alta lisää ja pyydä käymään! Monikanavaisen viestinnän mittaaminen: https://www.vapamedia.fi/mittaaminen/
Impedanssitomografia-peli
Impedanssitomografia-peli Avainsanat: inversio-ongelmat, päättely, satunnaisuus Luokkataso: 3.-5. luokka, 6.-9. luokka, lukio, yliopisto Välineet: kynä, paperia, 2 pelinappulaa, 4 kolikkoa tai kolikonheittokortit
Kilpailut, pelit ja leikit taidon oppimisen tukena. Martti Iivonen
Kilpailut, pelit ja leikit taidon oppimisen tukena Martti Iivonen Mikä on tärkeää lapsiurheilussa? Intohimon synnyttäminen Hauska ja kannustava ilmapiiri Mahdollisuus saada oppia uusia liikuntataitoja
Cover letter and responses to reviewers
Cover letter and responses to reviewers David E. Laaksonen, MD, PhD, MPH Department of Medicine Kuopio University Hospital Kuopio, Finland Luennon sisältö Peer review Vinkit vastineiden kirjoittamista
Harjoitussuunnitelma viikko 14 Potkaiseminen II
Harjoitussuunnitelma viikko 14 Potkaiseminen II = Pelikenttä = Keiloilla rajattu alue = Pelaaja = Maalivahti = Valmentaja = Pallo = Liike pallon kanssa = Liike ilman palloa = Syöttö tai potku Harjoituskerralla
CHERMUG-pelien käyttö opiskelijoiden keskuudessa vaihtoehtoisen tutkimustavan oppimiseksi
Tiivistelmä CHERMUG-projekti on kansainvälinen konsortio, jossa on kumppaneita usealta eri alalta. Yksi tärkeimmistä asioista on luoda yhteinen lähtökohta, jotta voimme kommunikoida ja auttaa projektin
Lentotiedustelutietoon perustuva tykistön tulenkäytön optimointi (valmiin työn esittely)
Lentotiedustelutietoon perustuva tykistön tulenkäytön optimointi (valmiin työn esittely) Tuukka Stewen 1.9.2017 Ohjaaja: DI Juho Roponen Valvoja: prof. Ahti Salo Työn saa tallentaa ja julkistaa Aalto-yliopiston
Pong-peli, vaihe Aliohjelman tekeminen. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana
Muilla kielillä: English Suomi Pong-peli, vaihe 3 Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana Jaetaan ohjelma pienempiin palasiin (aliohjelmiin) Lisätään peliin maila (jota ei voi vielä
1 PÖYDÄT JA PALLOT 1. Kilpailuissa tulee käyttää Suomen Biljardiliiton hyväksymiä pöytiä ja palloja.
KARAMBOLEN SÄÄNNÖT Kolmen vallin kara Yhden vallin kara Suora kara - Cadre YHTEISET SÄÄNNÖT KAIKILLE PELIMUODOILLE 1 PÖYDÄT JA PALLOT 1. Kilpailuissa tulee käyttää Suomen Biljardiliiton hyväksymiä pöytiä
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS KURSSIN PERUSTIEDOT VALINNAINEN AINEOPINTOTASOINEN KURSSI, 4 OP PERIODI 1: 6.9.2012-12.10.2012 (6 VIIKKOA) LUENNOT (B123, LINUS TORVALDS -AUDITORIO): TO 10-12, PE 12-14 LASKUHARJOITUKSET
Kun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo.
Kun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo. Iterointi on menetelmä, missä jollakin likiarvolla voidaan määrittää jokin toinen,
Board Game Lab. 4 Teema. Materiaalit CC-BY 4.0 Mikko Lampi
Board Game Lab 4 Teema Materiaalit CC-BY 4.0 Mikko Lampi Sisältö Alustus 1. Mikä on teema? 2. Teeman suunnittelu ja kehittäminen Työskentelyä Keskustelua Teeman suunnittelua Mikä on teema? Peli = mekaniikka
Mitäs peliä sitä oikein pelataan? Susanna Snellman Vyyhti-hanke
Mitäs peliä sitä oikein pelataan? Case: Vyyhtipeli Susanna Snellman Vyyhti-hanke Pelillisyys vai peli? - Pelillistäminen tarkoittaa toiminnon tai menetelmän pelillistämistä (joskus se voi olla myös leikillistämistä)
Oppiminen ja oivaltaminen
Oppiminen ja oivaltaminen Pohdittavaa Kuinka hyvä lapsestasi tulee, jos opetat hänelle kaiken sen mitä jo osaat? Riittääkö tämä lapselle? Kuinka hyvä pelaajasta tulee 2025, jos hän tekee kaiken sen, mitä
Tekoäly ja koneoppiminen metsävaratiedon apuna
Tekoäly ja koneoppiminen metsävaratiedon apuna Arbonaut Oy ja LUT University 26. marraskuuta 2018 Metsätieteen päivä 2018 Koneoppimisen kohteena ovat lukujen sijasta jakaumat Esimerkki 1 Koneoppimisessa
TAITO TARTTUU TREENAAMALLA!
TAITO TARTTUU TREENAAMALLA! TAIDON OPPIMINEN TAITO TARTTUU TAITOTASON VAIHEET Suunnittele harjoitus 1, jossa on neljä osiota omalle joukkueellesi - (Pohdi mitä harjoitteita käyttäisit samaan harjoitteluun
KUUDELLA PELAAMINEN. Kuudella pelaamisen opettelu. Pertti Honkanen
KUUDELLA PELAAMINEN Kuudella pelaamisen opettelu Pertti Honkanen Avain asiat KOLME VERKOLLE KOLME TAAKSE KESKIPASSARI VASTAANOTTO,etu ja takapelaajien vastuut OMA SYÖTTÖVUORO - Kuutonen edessä pelaaminen
GA & robot path planning. Janne Haapsaari AUTO Geneettiset algoritmit
GA & robot path planning Janne Haapsaari AUTO3070 - Geneettiset algoritmit GA robotiikassa Sovelluksia liikkeen optimoinnissa: * eri vapausasteisten robottien liikeratojen optimointi * autonomisten robottien
Oppiminen ja oivaltaminen
Oppiminen ja oivaltaminen OPPIMINEN Oppimiseen liittyy usein jotain vanhaa, tai osatun käyttöä uudella tavalla Oppiminen on hyödyllistä liittää jo osattuun Oppiminen on prosessi emme tule koskaan valmiiksi
Minimilatenssiongelman ratkaisualgoritmeja (valmiin työn esittely)
Minimilatenssiongelman ratkaisualgoritmeja (valmiin työn esittely) Antti Salmela 03.03.2014 Ohjaaja: Harri Ehtamo Valvoja: Harri Ehtamo Työn saa tallentaa ja julkistaa Aalto-yliopiston avoimilla verkkosivuilla.
10 yleistä hakukoneoptimointivirhettä
10 yleistä hakukoneoptimointivirhettä Petteri Erkintalo Kehitysjohtaja Klikkicom Oy 2011-09-27 2 1. Hakukoneiden pääsy sivustolle on estetty Hakukoneiden pääsyn sivustolle voi estää usein eri keinoin Yllättävän
PuMu D-TYTÖT Ensimmäinen ja tärkein sääntö koko pesäpallossa, olit sitten ulkopelissä tai sisäpelissä, on: TIEDÄ AINA TILANNE.
PuMu D-TYTÖT 2013 Ensimmäinen ja tärkein sääntö koko pesäpallossa, olit sitten ulkopelissä tai sisäpelissä, on: TIEDÄ AINA TILANNE. Onko 1-tilanne, 2-tilanne, 3-tilanne, 1-3-tilanne, 2-3-tilanne, ajolähtö
Tukimies. Tukimiehen tehtävät? Tukimiehen ominaisuudet? Miten kehitän? Pelinlukua Liikkumista Juoksupuolustusta Heittopuolustusta
Tukimies LB Tukimies Tukimiehen tehtävät? Tukimiehen ominaisuudet? Miten kehitän? Pelinlukua Liikkumista Juoksupuolustusta Heittopuolustusta Esihavannointi suorituksen tarkoituksen tunnistaminen suorituksen
Jypelin käyttöohjeet» Ruutukentän luominen
Jypelin käyttöohjeet» Ruutukentän luominen Pelissä kentän (Level) voi luoda tekstitiedostoon "piirretyn" mallin mukaisesti. Tällöin puhutaan, että tehdään ns. ruutukenttä, sillä tekstitiedostossa jokainen
Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta. Esimerkin kuvaus ja OLAP-määritelmä
OLAP-kuution teko Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta Esimerkin kuvaus ja OLAP-määritelmä Tavoitteena on luoda OLAP-kuutio Northwind-tietokannan tilaustiedoista
E. Oja ja H. Mannila Datasta Tietoon: Luku 2
2. DATASTA TIETOON: MITÄ DATAA; MITÄ TIETOA? 2.1. Data-analyysin ongelma Tulevien vuosien valtava haaste on digitaalisessa muodossa talletetun datan kasvava määrä Arvioita: Yhdysvaltojen kongressin kirjasto
Mitä harjoitteella halutaan saavuttaa (aim), eli päämäärä (tarkoitusperä):
1 Stressipeli Kasvattaa kilpapelaajan itsetuntoa ja sopivasti röyhkeyttä. Hävinneen pelaajan on nopeasti kartoitettava katseellaan tilanne, jotta pääsisi haastamaan pelaajan jonka uskoo voittavansa. Eli
MS-C2105 Optimoinnin perusteet Malliratkaisut 5
MS-C2105 Optimoinnin perusteet Malliratkaisut 5 Ehtamo Demo 1: Arvaa lähimmäksi Jokainen opiskelija arvaa reaaliluvun välillä [0, 100]. Opiskelijat, joka arvaa lähimmäksi yhtä kolmasosaa (1/3) kaikkien
Pelinopettaminen. Juniori KalPa ry PELAAMINEN PELAAMISTA TUKEVAT LAJITEKNIIKAT
Pelinopettaminen Juniori KalPa ry PELAAMINEN PELAAMISTA TUKEVAT LAJITEKNIIKAT 2 TAVOITTEET ERI PELITILANTEISSA HYÖKKÄYSTILANTEET PUOLUSTUSTILANTEET 1. Maalinteko 1. Maalinesto 2. Tilan voittaminen 2. Riisto
PANA RY LIIGASA A NNÖ T
PANA RY LIIGASA A NNÖ T 2013 2014 Liigasäännöt ovat PANA ry:n hallituksen laatimat ja hyväksymät. Hallituksella on oikeus muuttaa ja muokata liigapelien sääntöjä, mikäli näkee sen tarpeelliseksi. Sisällysluettelo
Kontrollilaitteet. Arsenaali
Arsenaali Kontrollilaitteet Tietokonepeleissä käytettäviä kontrollilaitteita on valtava määrä Kaikilla alustoilla, joilla pelejä pelataan on jokin vakio kontrolleri PC: Hiiri ja näppäimistö Konsolit: Controller
Mikromanageroinnin toteuttaminen StarCraft-reaaliaikastrategiapeliin geneettisellä ohjelmoinnilla muodostettujen potentiaalikenttien avulla
Oskari Leppäaho Mikromanageroinnin toteuttaminen StarCraft-reaaliaikastrategiapeliin geneettisellä ohjelmoinnilla muodostettujen potentiaalikenttien avulla Tietotekniikan pro gradu -tutkielma 13. joulukuuta
AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML
AJAX-konsepti AJAX Asynchronous JavaScript And XML Viimeisin muoti-ilmiö web-ohjelmoinissa, termi Ajax tuli käyttöön vuoden 2005 aikana Joukko teknologioita, joiden avulla voidaan toteuttaa uudenlaisen
Harjoitussuunnitelma viikko 15 Sisäsyrjäpotku I
Harjoitussuunnitelma viikko 15 Sisäsyrjäpotku I = Pelikenttä = Keiloilla rajattu alue = Pelaaja = Maalivahti = Valmentaja = Pallo = Liike pallon kanssa = Liike ilman palloa = Syöttö tai potku = Keila Harjoituskerran
Tietorakenteet ja algoritmit - syksy 2015 1
Tietorakenteet ja algoritmit - syksy 2015 1 Tietorakenteet ja algoritmit - syksy 2015 2 Tietorakenteet ja algoritmit Johdanto Ari Korhonen Tietorakenteet ja algoritmit - syksy 2015 1. JOHDANTO 1.1 Määritelmiä
Toimiva työyhteisö DEMO
Toimiva työyhteisö DEMO 7.9.6 MLP Modular Learning Processes Oy www.mlp.fi mittaukset@mlp.fi Toimiva työyhteisö DEMO Sivu / 8 TOIMIVA TYÖYHTEISÖ Toimiva työyhteisö raportti muodostuu kahdesta osa alueesta:
Kokemuksia ja tuloksia - meiltä ja maailmalta. Jouni Puumalainen, tutkija Kuntoutussäätiö
Kokemuksia ja tuloksia - meiltä ja maailmalta Jouni Puumalainen, tutkija Kuntoutussäätiö Kokemuksia Google Scholars löysi hakulauseella how to deal with ADHD child in exercise miljoonia osumia. Yleisiä
FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL
FinFamily PostgreSQL 1 Sisällys / Contents FinFamily PostgreSQL... 1 1. Asenna PostgreSQL tietokanta / Install PostgreSQL database... 3 1.1. PostgreSQL tietokannasta / About the PostgreSQL database...
Strategiset kyvykkyydet kilpailukyvyn mahdollistajana Autokaupassa Paula Kilpinen, KTT, Tutkija, Aalto Biz Head of Solutions and Impact, Aalto EE
Strategiset kyvykkyydet kilpailukyvyn mahdollistajana Autokaupassa Paula Kilpinen, KTT, Tutkija, Aalto Biz Head of Solutions and Impact, Aalto EE November 7, 2014 Paula Kilpinen 1 7.11.2014 Aalto University
Pelin kautta opettaminen
Pelin kautta opettaminen Pelin kautta opettaminen Pelaamaan oppii vain pelaamalla?? Totta, mutta myös harjoittelemalla pelinomaisissa tilanteissa havainnoimista, päätöksentekoa ja toimintaa. Pelikäsitystä
Strategiapelit ja Nashin tasapaino. Esitta ja : Sebastian Siikavirta
Strategiapelit ja Nashin tasapaino. Esitta ja : Sebastian Siikavirta Johdantoa peliteoriaan - ka ytetyt termit Peliteoria tutkii pelaajien toimintaa peleissa. Mika on peli? Mika on pelaaja? Peli tarkasti
Epätäydellisen tiedon jatkuvat pelit. Mika Viljanen Peliteorian seminaari
Epätäydellisen tiedon jatkuvat pelit Mika Viljanen Peliteorian seminaari Erityispiirteitä Erityispiirteitä Epätäydellinen tieto aiemmista toiminnoista Erityispiirteitä Epätäydellinen tieto aiemmista toiminnoista
ALGORITMIT & OPPIMINEN
ALGORITMIT & OPPIMINEN Mitä voidaan automatisoida? Mikko Koivisto Avoimet aineistot tulevat Tekijä: Lauri Vanhala yhdistä, kuvita, selitä, ennusta! Tekijä: Logica Mitä voidaan automatisoida? Algoritmi
KANNATTAVUUDEN ARVIOINTI JA KEHITTÄMINEN ELEMENTTILIIKETOIMINNASSA
LAPPEENRANNAN TEKNILLINEN YLIOPISTO TEKNISTALOUDELLINEN TIEDEKUNTA Tuotantotalouden koulutusohjelma KANNATTAVUUDEN ARVIOINTI JA KEHITTÄMINEN ELEMENTTILIIKETOIMINNASSA Diplomityöaihe on hyväksytty Tuotantotalouden
Tasohyppelypeli. Piirrä grafiikat. Toteuta pelihahmon putoaminen ja alustalle jääminen:
Tasohyppelypeli 1 Pelissä ohjaat liikkuvaa ja hyppivää hahmoa vaihtelevanmuotoisessa maastossa tavoitteenasi päästä maaliin. Mallipelinä Yhden levelin tasohyppely, tekijänä Antonbury Piirrä grafiikat Pelaajan
1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI
1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI 1 1.1 Funktion optimointiin perustuvat klusterointialgoritmit Klusteroinnin onnistumista mittaavan funktion J optimointiin perustuvissa klusterointialgoritmeissä
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari 1 1. JOHDANTO 1.1 Määritelmiä 1.2 Tietorakenteen ja algoritmin valinta 1.3 Algoritmit ja tiedon määrä 1.4 Tietorakenteet ja toiminnot 1.5 Esimerkki: