Tekoäly strategiapeleissä
|
|
- Risto Haapasalo
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 Tekoäly strategiapeleissä Miika Mäkinen Pro gradu tutkielma Tietojenkäsittelytieteen laitos Tietojenkäsittelytiede Maaliskuu 2019
2 ITÄ-SUOMEN YLIOPISTO, Luonnontieteiden ja metsätieteiden tiedekunta, Kuopio Tietojenkäsittelytieteen laitos Tietojenkäsittelytiede Miika Mäkinen: Tekoäly strategiapeleissä Pro gradu tutkielma, 51s. Pro gradu tutkielman ohjaaja: FT Virpi Hotti Maaliskuu 2019 Tässä tutkielmassa esitetään erilaisia strategiapelejä, strategiapeleissä käytettyjä tekoälymenetelmiä sekä tekoälytyökaluja, joilla tekoälyt on toteutettu tai muokattu. Kirjallisuuskatsauksessa selvitettiin millaisia tekoälyratkaisuja strategiapelien tekoälyjen kehityksessä ja parantamisessa on käytetty ja mitä niillä on saavutettu. Tutkielmassa myös pyrittiin selvittämään mitä eroja reaaliaikaisten ja vuoropohjaisten strategiapelien välillä on ja miksi strategiapeleissä tarvitaan tekoälyä. Strategiapelien tekoälyjen kehityksessä on käytetty useita koneoppimisen algoritmeja, neuroverkkoja ja niiden eri muunnoksia, tiedonlouhintaa, syväoppimista, vahvistusoppimista, evolutionäärisiä menetelmiä sekä Bayeslaista ohjelmointia. Näitä työkaluja hyödyntämällä on kyetty parantamaan pelien olemassa olevien hierarkkisien, heuristiikkoja hyödyntävien ja ehtorakenteisiin pohjautuvien tekoälyjen toimintaa niin suorituskyvyn, luotettavuuden kuin ominaisuuksien osalta. Reaaliaikaisten ja vuoropohjaisten strategiapelien erot syntyvät pääasiassa vain ajan käsityksestä ja toimintojen määrästä. Reaaliaikaisissa strategiapeleissä pelaaja voi tehdä kymmeniä tai satoja päätöksiä jokaisella ajankohdalla, kun useimmissa vuoropohjaisissa strategiapeleissä pelaajalla on yhdestä kymmeneen vaihtoehtoa per vuoro. Lisäksi vuoropohjaisissa peleissä pelaajien toiminnot tapahtuvat ennalta määritetyissä vuoroissa, jolloin pelaajalla on paljon enemmän aikaa reagoida vastustajan toimintoihin ja pohtia omaa strategiaansa verrattuna reaaliaikaisiin strategiapeleihin. Tutkielmassa esitetään tekoälyn tarpeeksi mikro- ja makromanageroinnin hallinta, strategian tunnistaminen, parhaan siirron löytäminen, vastustajan mallintaminen, automaattinen sisällön generointi sekä itseoppivuus. Strategiapeleissä tarvitaan tekoälyä myös, koska se toimii vastustajana, avustajana ja osana pelimaailmaa ja on siksi yhä tärkeämmässä roolissa pelattavuutta. Avainsanat: strategiapeli, tekoäly, neuroverkko, koneoppiminen, tiedonlouhinta ACM-luokat (ACM Computing Classification System, 2012 version): Artificial intelligence, Neural networks, Machine learning, Data mining i
3 UNIVERSITY OF EASTERN FINLAND, Faculty of Science and Forestry, Kuopio School of Computing Computer Science Miika Mäkinen: Artificial Intelligence in Strategy Games Master s Thesis, 51p. Supervisors of the Master s Thesis: PhD Virpi Hotti March 2019 Abstract: This thesis presents different strategy games, AI-methods used in strategy games and AI tools that have been used to create or modify game AIs. The literature review discovers what kind of AI solutions have been used in strategy game AI development and improvement and what has been achieved with them. This thesis also aims to clarify the differences between real-time and turn-based strategy games and why AI is needed in them. Many machine learning algorithms, neural networks and their variants, data mining, deep learning, reinforcement learning, evolutionary methods and Bayesian programming have been used in the development and improvement of strategy game AI. The performance, reliability and features of hierarchical, condition-based AIs that use heuristics have been improved by using these AI tools. The differences between real-time and turs-based strategy games are mainly due to the concept of time and possible actions. In real-time strategy games the player may perform tens to hundreds of actions at any given time where as in turn-based strategy games the player may only perform one to ten actions in one turn. Additionally in turnbased strategy games the actions performed by players happen in predetermined turns so that players have much more time to react to the actions performed by the opponent and thus have more time to plan their own strategy compared to real-time strategy games. This thesis presents the need for AI in micro- and micromanagement, strategy recognition, finding the optimal move or action, opponent modeling, automatic content generation and self learning. Artificial intelligence is needed in strategy games because it functions as an opponent and helper and is part of the game world which makes its role increasingly important considering gameplay. Keywords: strategy game, artificial intelligence, neural network, machine learning, data mining CR Categories (ACM Computing Classification System, 2012 version): Artificial intelligence, Neural networks, Machine learning, Data mining ii
4 Esipuhe Tämä tutkielma on tehty Itä-Suomen yliopiston Tietojenkäsittelytieteen laitokselle keväällä Haluan kiittää ohjaajaani Virpi Hottia opintojeni aikaisesta tuesta ja opastuksesta sekä tutkielman teon ohjeistuksesta. Kiitän myös avopuolisoani, perhettäni ja ystäviäni tuesta ja avusta opintojeni aikana. iii
5 Lyhenneluettelo RTS TBS RL MLP NN NPC Real-Time Strategy; reaaliaikainen strategia Turn-Based Strategy; vuoropohjainen strategia Reinforcement Learning; vahvistusoppiminen Multi-Layer Perceptron; monikerroksinen neuroverkko Neural Network; neuroverkko Non-Player Character; tietokoneen ohjaama hahmo iv
6 Sisällysluettelo 1 Johdanto Strategiapelit ja tekoälyn tarve Balanced Annihilation Boundary Conqueror GLest Go StarCraft Planet Wars Warcraft III Wizard Tekoälyratkaisut strategiapeleissä Balanced Annihilation Boundary Conqueror GLest Go Planet Wars StarCraft Bayeslaisten yksiköiden ratkaisu Piirrevektorien louhintaratkaisu Syväoppimisen ratkaisu WarCraft III Wizard Pohdinta Johtopäätökset Viitteet v
7 1 Johdanto Strategiapelit ovat esiintyneet eri muodoissaan jo tuhansia vuosia. Nykypäivän elektroniset strategiapelit saivat alkunsa 1980-luvulla ja juontavat juurensa perinteisistä strategiapeleistä kuten Go ja shakki. Strategiapelit ovat viihde -ja opetus käyttöön tarkoitettuja aktiviteetteja, jotka haastavat pelaajan älyllisen kapasiteetin ja kehittävät strategista päättelykykyä. Perinteisesti strategiapeleissä kaksi tai useampi ihminen asettuu vastakkain jonkin teeman ja säännöstön mukaisesti riippuen pelattavasta pelistä. Nykypäivänä strategiapeleissä vastustajana voi toimia myös tietokone tekoälyn kehityksen ansiosta. Tekoäly (IBM Deep Blue) voitti shakin maailmanmestarin ensimmäistä kertaa vuonna Tietokoneiden laskentatehon kasvettua tutkijat ovat kyenneet kehittämään yhä tehokkaampia tekoälymenetelmiä. Tästä osoitus on vuonna 2015 Deep Mind tekoälyn saavuttama voitto Go-pelissä ammattilaispelaajaa vastaan. Saavutus on siksi merkittävä, että vaikka shakissa kyettiin toteuttamaan tehokas tekoälyratkaisu raakaa laskentatehoa ja heuristiikkoja käyttäen ei samaa pystytty hyödyntämään Go-peliin sen monimutkaisuuden ja valtavan tila-avaruuden takia. Deep Mind hyödyntikin toiminnassaan itseoppivuutta syväoppimisen, neuroverkkojen, kuvan- ja hahmontunnistuksen ja vahvistusoppimisen muodossa. Strategiapelit voidaan jakaa reaaliaikaisiin ja vuoropohjaisiin strategiapeleihin. Nämä voidaan taas puolestaan jakaa pelityyppeihin kuten korttipelit, lautapelit ja videopelit. Vuoropohjaiset strategiapelit noudattavat yleisesti samaa periaatetta kuin shakki, jossa pelaajat suorittavat siirtonsa vuorotellen. Reaaliaikaisissa strategiapeleissä pelaajat voivat suorittaa toimintoja ja antaa käskyjä samanaikaisesti, mikä korostaa strategisen päättelyn lisäksi. Etenkin reaaliaikaiset strategiapelit ovat huomion kohteena kahdesta merkittävästä syystä. Ensimmäinen syy on se, että reaaliaikaisista strategiapeleistä pidetään suuria yleisöitä tavoittavia e-sports kilpailuita, joissa ammattipelaajat kilpailevat toisiaan vastaan. Toinen merkittävä syy on se, että reaaliaikaiset strategiapelit toi- 6
8 mivat hyvänä testikenttänä reaalimaailman ongelmille. Pelejä varten kehitettyjä tekoäly-, reitinhaku- ja koneoppimisalgoritmeja voidaan hyödyntää monissa reaalimaailman ongelmissa. Tekoälyn kehitys ja sen tarve strategiapeleissä on tärkeää myös pelinkehittäjien näkökulmasta. Tekoälystä on tullut yksi tärkeimmistä osista strategiapelien pelattavuutta (Synnaeve & Bessière, 2011). Pelinkehittäjät ovat huomanneet, että pelin tekoäly on ratkaiseva tekijä siinä, että mistä pelistä tulee bestseller (Nogueira-Collazo ym., 2016). Tässä tutkielmassa pyritään selvittämään tekoälyn merkitystä strategiapeleissä, kuinka tekoälyn suoriutumista voidaan parantaa ja mitä parannuksilla voidaan saada aikaan. Tutkielma on kirjallisuuskatsaus ja sen tutkimuskysymykset ovat seuraavat: 1. Mitä eroa on reaaliaikaisella ja vuoropohjaisella strategiapelityylillä? (Luku 2) 2. Miksi strategiapeleissä tarvitaan tekoälyä? (Luku 2) 3. Mitä tekoälyratkaisuja strategiapeleissä on käytetty? (Luku 3) Tutkimuskysymykset ohjaavat kirjallisuuskatsausta vaikuttamalla suoraan tiedonhakuprosessiin, jonka on tunnistettava keskeisiä tutkimuksia, jotka vastaavat tutkimuskysymyksiin. Lisäksi ne ohjaavat sitä, että kerätty tieto syntetisoidaan niin, että tutkimuskysymykset tulevat kunnollisesti vastatuiksi. (Garousi ym., 2019) Tiedonhakuprosessissa Scopus-hakulausekkeella TITLE-ABS-KEY (("AI" OR "artificial intelligence") AND "strategy games")) löydettiin 438 osumaa. Artikkeleiden sisällyttämisen tai poissulkemisen perusteina voidaan käyttää esimerkiksi artikkelissa käytettyä metodologiaa, julkaisuajankohtaa tai siinä käytettyjen lähteiden määrää (Garousi ym., 2019). Tämän menetelmän etuna on, että mitä useampi lähde voidaan sulkea pois varmuudella näitä kriteereitä hyödyntäen, sitä vähemmän vaivaa joudutaan näkemään tutkimuksen laadun arviointiin (Garousi ym., 2019). Artikkeleiden valintaperusteena käytettiin niiden kykyä vastata asetettuihin tutkimuskysymyksiin sekä niiden julkaisuajankohtaa. Hakulausekkeella löydetyistä artikkeleista rajattiin vuonna 2009 ja sitä uudemmat artikkelit. Vuosirajauksen rajaamasta 343 7
9 artikkelista valittiin artikkelit, jotka vastasivat parhaiten tutkimuskysymyksiin (Taulukko 1). Taulukko 1. Keskeiset lähteet tutkimuskysymyksiin Artikkeli Strategiapelit? Tekoälytarve? Tekoälyratkaisut? Ghoneim & Essam, 2012 x Farouk ym., 2017 x x x Ontañón ym., 2013 x Weber & Mateas, 2009 x x x Brown & Guinn, 2014 x x x Li & Du, 2018 x Tong ym., 2012 x x x Backhus ym., 2013 x x x Jang ym., 2009 x x Nogueira-Collazo ym., 2016 x x Synnaeve & Bessière, 2011 x x Justensen & Risi, 2017 x x Rogers & Skabar, 2014 x x Zhao ym., 2018 x x 8
10 2 Strategiapelit ja tekoälyn tarve Pelit voidaan karkeasti määritellä aktiviteeteiksi kahden tai useamman yksittäisen päätöksentekijän välillä, jotka pyrkivät saavuttamaan päämääränsä tietyssä rajatussa kontekstissa. Strategiapeleissä lopputulos on vahvasti riippuvainen pelaajien älyllisestä kapasiteetista. Strategiapeleissä pelaajien täytyy käyttää abstraktiota, käsitteellistämistä, päättelyä ja päätöksentekoa. (Ghoneim & Essam, 2012) Strategiapeleille ominaisia piirteitä ovat mikro- ja makromanagerointi. Mikromanageroinnilla tarkoitetaan pelin yksiköiden kontrolloimista ja kontrolloitujen yksiköiden tehokkuuden maksimointia, esimerkiksi tuotetun ja vastaanotetun vahingon määrän suhteen (Synnaeve & Bessièrem 2011). Mikromanagerointi on tyypillinen osa reaaliaikaisia strategiapelejä. Makromanageroinnilla tarkoitetaan strategiapeleissä korkean tason strategiaa (Justensen & Risi, 2017). Makromanagerointi on tyypillinen osa sekä reaaliaikaisia, että vuoropohjaisia strategiapelejä. Makromanagerointi käsittää toimintoja, kuten mitä objekteja pelissä aiotaan tuottaa seuraavaksi tai mikä on paras siirto pelin missäkin tilanteessa (Justensen & Risi, 2017). Strategiapelit voidaan jakaa kahteen pelityyppiin: reaaliaikainen strategia (Real-Time Strategy, RTS) ja vuoropohjainen strategia (Turn-Based Strategy, TBS). Reaaliaikaiset strategiapelit ovat yleisesti strategisia sotapelejä, jotka simuloivat oikean maailman sotia. RTS-peleissä pelaajat kontrolloivat yksiköitään reaaliajassa päämäärän, kuten esimerkiksi vihollisen joukkojen tuhoamisen, saavuttamiseksi. Yleensä RTS-peleissä kontrolloitavilla joukoilla on erilaisia vahvuuksia ja heikkouksia - pelin voittaminen on vahvasti riippuvainen pelaajan kyvystä valita ja asettaa joukkonsa oikein, toisin sanoen hänen käyttämästään strategiasta. (Farouk ym., 2017.) RTS-peleissä pelaajan täytyy tavanomaisesti rakentaa ekonomia (kerätä resursseja ja rakentaa tukikohta) ja sotavoima (kouluttaa yksiköitä ja tutkia teknologioita) voittaakseen vastustajansa. Vuoropohjaisissa strategiapeleissä pelaajat tekevät toimintoja joko vuorotellen tai yhtäaikaisesti siten, että toiminnot tapahtuvat vasta kun molemmat pelaajat ovat valinneet toimintonsa (Brown & Guinn, 2014). Tästä syystä pelaajilla on pelin säännöissä 9
11 asetetun vuoron verran aikaa vastata vastustajan toimintoihin, toisin sanoen oman strategiansa pohtimiseen. Vuoropohjaisissa strategiapeleissä korostuu pelaajan taito ennakoida vastustajan reaktioita (Brown & Guinn, 2014). Vuoropohjaisuudesta johtuen TBS-pelit keskittyvät pääasiassa makromanagerointiin. RTS-pelien ja TBS-pelien välillä on eroja kuten yhtäaikainen liike ja reaaliaikaisuus. RTS-pelit ovat yhtäaikaisten liikkeiden pelejä, jossa useampi kuin yksi pelaaja voi suorittaa toimintoja samaan aikaan. Lisäksi nämä toiminnot eivät ole välittömiä, vaan vievät aikaa tapahtua. Reaaliaikaisuus tarkoittaa sitä, että pelaajilla on RTS-peleissä hyvin vähän aikaa päättää seuraava liike verrattuna esimerkiksi shakkiin, jossa pelaajalla voi olla useita minuutteja seuraavan liikkeen päättämiseksi. Esimerkiksi StarCraft RTS-pelissä peli suorittaa 24 ruutua sekunnissa, joka tarkoittaa, että pelaajat voivat suorittaa toimintoja 42ms välein ennen kuin pelin tila muuttuu uudelleen. Lisäksi useimmat RTS-pelit ovat osittain havainnoituja, eli pelaajat voivat nähdä pelikartasta vain tutkitun alueen. Monessa reaaliaikaisessa strategiapelissä on mukana lisäksi epädeterministisiä piirteitä, eli joidenkin toimintojen onnistuminen on sattumasta riippuvaisia. RTS-pelien kompleksisuus niin tila-avaruuden kuin valittavissa olevien toimintojen määrä sykliä kohden ovat hyvin suuria. TBS-pelien, kuten shakin, tila-avaruus on arvioitu olevan noin 10 50, texas hold em pokerin noin ja Gon noin verrattuna esimerkiksi StarCraft RTS-pelin tila-avaruuteen, jonka on arvioitu olevan tyypillisessä kartassa noin tai vieläkin suurempi, riippuen mitkä kaikki tekijät huomioidaan mukaan. Näistä syistä johtuen RTS-peleihin ei voida niiden ratkaisemiseksi soveltaa samoja tekniikoita kuin klassisiin vuoropohjaisiin peleihin, kuten shakkiin, ilman jonkin asteista abstraktiota tai pelkistystä. (Ontañón ym. 2013) Tekoäly on jatkuvasti yhä keskeisempi osa videopelien pelattavuutta. Tekoäly toimii vastustajana jokaisessa yksinpelattavassa videopelissä, mutta myös avustavana osana tiimejä ensimmäisen persoonan räiskintäpeleissä (FPS, first person shooters), neutraaleina ja avustavina ei-pelaaja hahmoina (NPC, non-playing character) roolipeleissä (RPG, role playing games, tai MMORPG, massive multiplayer online RPG) sekä yksiköiden autonomiana reaaliaikaisissa strategiapeleissä, jos pelaaja voi keskittyä 10
12 enemmän strategiaan yksittäisten yksiköiden kontrolloimisien sijaan. (Synnaeve & Bessière 2011) Kirjallisuudessa tekoälyn kehityksessä kohteena olleita strategiapelejä on esitelty omissa luvuissaan (Luvut ). RTS-pelejä ovat Balanced Annihilation, Conqueror, Planet Wars, StarCraft, GLest ja Warcraft III. TBS-pelejä ovat, Boundary, Go ja Wizard. 2.1 Balanced Annihilation Balanced Annihilation on ilmainen ja avoimen lähdekoodin moninpeli. Peli luokitellaan RTS-peliksi, koska pelaajat suorittavat toimintoja yhtäaikaisesti ja pelin tapahtumat päivittyvät reaaliajassa. Pelissä käydään massiivisia taisteluita maalla, merellä ja ilmassa kahden eri kyberneettisen ryhmän välillä. Pelissä voi kontrolloida maksimissaan 5000 erillistä yksikköä. Taisteluita voi käydä sadoissa eri kartoissa, joissa on laaja kirjo erilaisia maanmuotoja ja täten useita eri hyödynnettäviä strategioita. (Balanced Annihilation kotisivu) Balanced Annihilation hyödyntää Spring Engine RTS-pelimoottoria, joka mahdollistaa suuren valikoiman kustomointimahdollisuuksia sekä kompleksien pelien luonnin. Pelissä jokaista yksikköä hallinnoi oma fyysinen mekanismi, jonka ansiosta jokainen tankki, alus tai lentokone valitsee omat kohteensa. Tästä syystä Balanced Annihilation tarjoaa suuren määrän mahdollisia taktiikoita sekä tasapainon mikro- ja makromanageroinnin välille. (Balanced Annihilation kotisivu) Merkittävä ongelma RTS-pelien mikromanageroinnissa on monien yksiköiden tilallinen päättely niiden ollessa pelin tekoälyn hallinnassa liittyen yksiköiden törmäyksien vähentämiseen, vihollisten kimppuun hyökkäämiseen ja hyökkäysten väistämiseen. Ryhmätason mikromanagerointi voidaan esittää monitoimija (multiagent) tehtävänjako-ongelmana (task allocation problem), koska missä tahansa hetkessä pelissä sillä hetkellä suoritettavina olevat erilaiset toiminnot, jotka voidaan asettaa pelin objekteille, voidaan käsittää tehtävinä. Riippuen pelin objektin kyvyistä nämä tehtävät voi- 11
13 vat olla esimerkiksi vihollisen kimppuun hyökkääminen, omien joukkojen parantaminen, rakennusten rakentaminen, uuteen kohteeseen liikkuminen, uusien yksiköiden tuottaminen ja monia muita. Esimerkiksi vihollisen kimppuun hyökkäämisestä tulee hyökkäys tehtävä, jossa kohde on vihollisen yksikkö. Haasteena on kehittää systeemi, joka jakaa näitä tehtäviä vapaille toimijoille (yksiköt ja rakennukset) siten, että ryhmä saavuttaa sille strategia tason tekoälyltä asetetut tavoitteet. (Rogers & Skabar, 2014) Kuvassa 3 esitetty tyypillinen RTS-pelien armeijoiden kontrollointiin liittyvä hierarkia. Hierarkia koostuu armeijasta, joka koostuu yksiköistä koostuvista ryhmistä. Strategiatason päätökset koskevat usein armeijaa kokonaisuutena, kun taas mikromanagerointi käsittää ryhmä- ja yksikkötason kontrolloinnin. Kuva 1. Tyypillinen RTS pelien armeijahierarkia (mukaillen Rogers & Skabar, 2014) 2.2 Boundary Boundary luokitellaan TBS-peliksi, koska pelitapahtumat koostuvat vuoroista, joiden aikana pelaaja suorittaa valitsemansa toiminnot näkemättä vastustajansa toimia ennen kuin vuoro on päättynyt. Boundary kehitettiin testikentäksi mukautuville tekoälyille. Boundary on web-valmiudella varustettu vuoropohjainen strategiapeli, joka perustuu 12
14 sen kehittäneiden tutkijoiden alkuperäisiin ideoihin. Boundary pelissä jokainen pelaaja aloittaa pelin tietyllä määrällä paloja, jotka on sijoitettu satunnaisesti pelikentälle. Palat luovat vaikutuksen alueen ympärilleen, joka esitetään pelaajan värinä. Samalle pelaajalle kuuluvat palat, jotka ovat tarpeeksi lähellä toisiaan, yhdistävät alueensa yhdeksi isoksi vaikutuksen alueeksi. Palat voivat liikkua matkan, joka on suhteutettu niiden muodostaman alueen sisältämien palojen lukumäärään. Mikäli isoon alueeseen kuuluvat palat levittäytyvät liikaa vaikutuksen alue niiden ympärillä pienenee, kunnes ne irtautuvat alueesta. (Brown & Guinn, 2014) Pelin tarkoituksena on kerätä pisteitä joko valtaamalla aarteita, jotka on sijoitettu satunnaisesti pelikentälle, tai valtaamalla vastustajan paloja saartamalla ne pelaajan värillä. Jokaisella vuorolla pelaajilla on tietty määrä aikaa suunnitella liikkeensä yhtäaikaisesti. Pelaajat voivat liikuttaa vuorossa niin montaa omaa palaansa kuin haluavat. Pelaaja ei voi nähdä vastustajan suunnittelemia liikkeitä - ennakoimalla vastustajan liikkeet oikein, niin saa etua pelissä. Suunnitteluvaiheen jälkeen palat liikkuvat yhtäaikaisesti, vaikutusalueet muuttuvat palojen mukana, aarteet tai palat saattavat joutua vallatuiksi sekä palat saattavat jakautua erillisiin alueisiin tai yhdistyä uusiksi alueiksi. (Brown & Guinn, 2014) Peli päättyy, kun joko kaikki aarteet on vallattu tai kun yhdellä pelaajalla ei ole enää paloja jäljellä. Pelin sääntöjen kehittämisen päämääränä oli sallia useita strategioita. Pelaajat voivat keskittyä aarteisiin tai vihollisen palojen valtaamiseen (aarteet ovat helpompia vallata, mutta vihollisen paloista saa enemmän pisteitä ja asettaa vihollisen heikompaan asemaan) ja palojen liikkumismekaniikat mahdollistavat sekä agressiivisen että defensiivisen pelityylin. Defensiivinen pelaaja on alussa heikommassa asemassa, koska hänen täytyy käyttää vuoroja palojensa yhteen kasaamiseen muodostaakseen isoja alueita, mutta loppupelissä siitä saa etua kasvaneen liikkumismatkan ja valtaamispotentiaalin muodossa. Aggressiivinen pelaaja levittää palansa yhden tai kahden ryhmiin ja pyrkii päättämään pelin nopeasti joko valtaamalla kaikki aarteet tai saamalla ylivoimaisen valtaus ylivoiman ennen kuin defensiivisen pelaajan strategia alkaa toimimaan. Boundary on yksinkertainen alusta, jossa tekoälyalgoritmeja voi testata strategisen liikkumisen suhteen. (Brown & Guinn, 2014) 13
15 Pelaajan strategiaan mukautuva tekoäly parantaa pelaajan kokemusta niin pelattavuuden kuin nautinnon kannalta verrattuna tekoälyvastustajaan, joka hyödyntää staattista strategiaa. (Brown & Guinn, 2014) 2.3 Conqueror Conqueror on tutkimusta varten kehitetty reaaliaikainen simulaatiopeli, jossa kaksi kansaa pyrkii laajentamaan aluettaan ja samalla viemään sitä toiselta. Peli luokitellaan RTS-peliksi, koska pelitapahtumat päivittyvät reaaliajassa ja koska pelaajat voivat tehdä toimintoja yhtäaikaisesti. Kummallakin kansalla on sotilaita, jotka yksilöllisesti rakentavat kyliä ja taistelevat vihollisia vastaan. Kylät tuottavat sotilaita tietyn ajan verran. Pelin tarkoituksena on tutkia multiagenttien käyttäytymistä ja esitellä pelien tekoälyä sekä evolutionääristen ratkaisuiden käyttökelpoisuutta. (Jang ym., 2009) Resurssit, joilla kansa aloittaa pelin, ovat yksi kylä ja yksi sotilas. Kylän energia kasvaa ajan kuluessa ja kun energia saavuttaa arvon 100, niin kylä tuottaa yhden sotilaan, ja energia putoaa taas nollaan. Tuotetut sotilaat voivat luoda uusia kyliä, tuhota vihollisen kyliä tai taistella vihollisen sotilaita vastaan. Sotilaiden energia kasvaa samaan tapaan kuin kylien, mutta kuluu taistellessa tai kylää rakentaessa. Sotilaat voivat taistella joukoissa, jolloin joukon energia on sotilaiden yhteenlaskettujen energioiden summa. Lisäksi erilaiset rakennukset voivat vähentää vihollisen hyökkäysvoimaa. (Jang ym., 2009) Tekoälyn menestyminen pelissä riippuu sen kyvystä tehdä päätöksiä tehokkaasti. Tekoäly kykenee parhaisiin ratkaisuihin, jos päätöksentekoprosessi jakautuu usean toimijan kesken yhden monoliittisen päätöksentekijän sijaan. (Jang ym., 2009) 2.4 GLest GLest on ilmainen 3D RTS-peli, jossa pelaaja voi hallita kahden eri kansan, Tech ja Magic, armeijoita. Peli luokitellaan RTS-peliksi, koska pelitapahtumat päivittyvät reaaliajassa ja koska pelaajat voivat tehdä toimintoja yhtäaikaisesti. Tech-kansa koostuu 14
16 pääasiassa sotilaista ja mekaanisista laitteista. Magic-kansa koostuu maageista ja heidän luomistaan olioista. Pelin tarkoituksena on tuottaa ja käyttää joukkoja sekä rakennuksia päihittääkseen vastustajan armeija reaaliaikaisessa taistelussa. (Farouk ym., 2017) GLest ei ole vain peli, mutta myös monialustainen ja täysin muokattava pelimoottori strategiapelien luomista varten XML-kieltä käyttäen. GLestissä käytetty teknologia pitää sisällään useita pelaamisen joustavuutta ja käyttäjäystävällisyyttä koskevia piirteitä. Se mahdollistaa esimerkiksi siirrettävyyden, alustariippumattomuuden ja yksinja moninpelimahdollisuuden. (Farouk ym., 2017) On olemassa tarve vastustajan mallinnukselle, jonka tehtävänä on esittää malli pelaajasta tekoälylle, jotta se kykenisi sopeuttamaan pelityyliään pelaajan vahvuuksien ja heikkouksien mukaisesti. Vastustajan mallintaminen on erittäin haastavaa etenkin videopeleissä, koska se täytyy suorittaa reaaliaikaisesti ja samanaikaisesti muiden vaativien laskutoimitusten, kuten pelin grafiikoiden renderöinnin, kanssa. (Farouk ym. 2017) Farouk ym. (2017) esittävät vastustajan mallintamiseen kehitetyn tekoälyn koostuvan kahdesta osasta: mallin muodostus ja mallin toteutus. Mallin muodostus (model formation) on vastuussa vastustajien mallien suunnittelusta ja rakentamisesta. Se pureutuu siihen, mitä informaatiota mallissa kuuluisi olla. Vaihe hyödyntää historiallista dataa pelitallenteista oppiakseen vastustajien malleja. Mallin muodostusvaiheessa on kolme ketjutettua moduulia: mallin piirteiden valinta, mallin piirteiden painotus ja vastustajan mallin generointi. Mallin piirteiden valinta moduulin funktio on oppia hyvin kuvaavat piirteet, jotka parhaiten erottelevat vastustajatyypit toisistaan. Kun tämä on opittu, niin mallin piirteiden painotus vaihetta kutsutaan, jotta jokaiselle piirteelle saadaan asetettu painoarvo. Tämä painoarvo peilaa sitä, miksi juuri kyseinen piirre on tärkeä kyseisen mallin määrittelyssä. Tämän jälkeen vastustajan mallin generointi moduulia käytetään klusteroimaan vastustajamallit mallikantaan säilöttäväksi. Mallin toteutus (model execution) hyödyntää piirteitä tilannepohjaisesta päättelystä (CBR, Case-Based Reasoning) efektiivisenä metodina älykkäälle reaaliaikaiselle päättelylle ja suunnittelulle RTS-peleissä. Tässä vaiheessa nykyinen vastustajamalli luokitellaan 15
17 yhdeksi opituista malleista. Luokitellusta vastustajasta ja tekoälyn nykyisestä suoriutumisesta riippuen pelin tekoäly sopeuttaa itsensä uudelleen vaihtamalla strategiaa. Tekoälymenetelmään on sisällytetty suoriutumisen arviointi moduuli, joka arvioi tekoälyn suoriutumista jatkuvasti. Havaitun suoriutumisen perusteella systeemi päättää, mikäli sopeutumista tarvitaan vai ei. Jatkuva suoriutumisen arviointi vahvistaa systeemin jykevyyttä ja vahvistaa pelin tekoälyn sopeutumisen luotettavuutta. Tietokoneen laskentatehosta arviolta 20% on tekoälyn käytettävissä. Tästä 20%:sta suuri osa kuluu yksinkertaisiin tekoälytoimintoihin kuten yksiköiden liikuttamiseen peliympäristössä. Vastustajan mallien käsittely on erittäin monimutkainen prosessi, jossa mallit täytyy tuottaa kompleksissa peliympäristössä (vähän aikaa havainnoinnille ja tila-avaruuden korkea dimensionaalisuus). Nämä olosuhteet johtavat vain muutamiin laskennallisesti kevyisiin vastustajan mallinnus lähestymistapoihin, jotka voidaan integroida pelin tekoälyyn. (Farouk ym. 2017) 2.5 Go Go, toiselta nimeltään Weiqi tai Baduk, on strateginen lautapeli, joka on lähtöisin kiinasta yli 2500 vuotta sitten. Peli luokitellaan TBS-peliksi, koska pelaajat toteuttavat siirtonsa vuorotellen. Peli on ollut suosittu Itä-Aasian maissa ja kiinnostus peliä kohtaan on kasvussa Euroopassa ja Pohjois-Amerikassa etenkin tietojenkäsittelyn ja matematiikan saralla. Peli pelataan kahden pelaajan kesken vuorotellen laittamalla vaaleita ja mustia kiviä 19x19 ruudukon sisältävälle laudalle. Tehtävänä on ympäröidä isompaa aluetta kuin vastustaja. Vaikka pelin säännöt ovat helpot, on Go erittäin monimutkainen, sillä sen tila-avaruus on luokkaa ja pelipuun koko on verrattuna shakin vastaaviin, jotka ovat ja (Li & Du, 2018) Peliä voi pelata erikokoisilla laudoilla, esimerkiksi 9x9 ja 13x13. Pelissä musta aloittaa aina ja peli päättyy kahteen ja kolmeen perättäiseen passaukseen tai luovutukseen. Osa Go pelin perussäännöistä on esitetty seuraavasti (Zhao ym. 2018): Vapaudet (liberties). Tyhjät leikkauskohdat kivien vieressä. 16
18 Kytkentä (atari). Liike vähentää kiven tai kivijonon yhteen vapauteen. Kiviä, joilla on vain yksi vapaus, kutsutaan kytketyiksi. Valtaus. Kivien joukko vähentyy nollaan vapauteen vastustajan toimesta ja tämän jälkeen poistetaan laudalta. Itsemurha. Gon säännöissä ei ole sallittua pelata kiveä, jonka pelaamisen seurauksena pelaajan oman kivijoukon vapaudet menisivät nollaan ilman, että valtaa samalla vastustajaa. Silmä. Yksittäistä tyhjää leikkauskohtaa ryhmän sisällä sanotaan silmäksi. Yksi avain teemoista Gossa on silmien luominen omiin kiviryhmiin ja yrittää estää vastustajaa luomasta silmiä. Ko. Pelaajat eivät saa tehdä siirtoa, joka palauttaisi pelin edelliseen tilanteeseen. Ko estää loputtomien valtausten mahdollisuuden. Avustus. Kompensaatiokivien lukumäärä, jotka musta saa pelata ennen valkoisen vuoroa. Avustuksen tarkoituksena on mahdollistaa eritasoisten pelaajien kilpailullisuus. Komi. Musta aloittaa aina, joka antaa pelaajalle edun. Tästä syystä valkoinen saa kompensaatiota, jota kutsutaan nimellä komi. Kiinalaisissa säännöissä komi on 7,5 pistettä ja korealaisissa ja japanilaisissa se on 6,5 pistettä. Pisteytys. Pelin voi päättää perättäisillä passauksilla tai luovutuksella. Kiinalaisissa säännöissä, kun peli päättyy, niin pisteisiin lasketaan hallittu alue, vallatut kivet ja komi. Tyypillinen Go peli kestää siirtoa. Tekoälyä tarvitaan siirron ennustamiseen. Go on vaikea peli tietokoneohjelmille kahdesta syystä. Ensimmäinen syy on sen kombinatoriikallinen kompleksisuus. Go-pelissä on arviolta 200 mahdollista siirtoa jokaisella vuorolla. Tämä saa aikaan sen, että pelin piirteitä on vaikea hankkia keinotekoisesti. Toisen syyn aiheuttaa siirtojen pitkäaikaisvaikutukset. Yksinkertaiset heuristiikat siirtojen arviointiin, kuten materiaaliedun laskeminen, eivät ole hyödyllisiä Go:ssa. (Zhao ym. 2018) 17
19 2.6 StarCraft StarCraft on reaaliaikainen strategiapeli, jonka on kehittänyt Blizzard Entertainment vuonna Peli luokitellaan RTS-peliksi, koska pelaajat voivat toteuttaa reaaliajassa toteutuvia toimintoja yhtäaikaisesti. Peli sijoittuu sci-fi-universumiin, jossa pelaaja valitsee kolmesta eri rodusta (Protoss, Terran, Zerg) haluamansa. Yksi pelin hienoimmista piirteistä on se, että kaikki kolme rotua ovat todella hyvin tasapainossa: Terran kansan yksiköt ovat monipuolisia ja joustavia; Protoss kansan yksiköt ovat hitaita ja kalliita tuottaa, mutta vahvoja ja kestäviä taistelussa; Zerg kansan yksiköt ovat halpoja ja heikkoja ja niiden tuottaminen on nopeaa. (Ontañón ym., 2013) Voittaakseen StarCraft pelin, pelaajan täytyy ensin kerätä resursseja (mineraaleja ja Vespene-kaasua). Kun resursseja on saatavilla, tulee pelaajien allokoida niitä uusiin rakennuksiin (jotka vahvistavat pelaajan ekonomiaa ja mahdollistavat voimakkaampien yksikköjen rakentamisen), uusien teknologioiden tutkimiseen (jotka avaavat uusia kykyjä ja vahvuuksia yksiköille) ja hyökkäysyksiköiden kouluttamiseen. Yksiköitä täytyy jakaa eri tehtäviin kuten tiedusteluun, puolustukseen ja hyökkäykseen. Näiden tehtävien ohella pelaajien täytyy samanaikaisesti strategisesti ymmärtää kartan geometriaa päättääkseen minne rakentaa uusia rakennuksia. (Ontañón ym. 2013) Kun kahden pelaajan hyökkäysyksiköt kohtaavat, täytyy molempien pelaajien nopeasti ohjata joukkojaan taistelussa, joka vaatii nopeaa ja reaktiivista yksiköiden hallintaa. Voittaja on se, kumpi tuhoaa vastustajan tukikohdan ensimmäisenä. Tyypillinen StarCraft-kartta on määritelty suorakulmaisena ruudukkona, jossa leveys ja korkeus on mitattu 32x32 pikselistä koostuvien neliöiden, toiselta nimeltään rakennustiilien, lukumääränä. Karttojen mitat vaihtelevat 64x64 rakennustiilen kokoisista aina 256x256 kokoisiin. Jokainen pelaaja voi kontrolloida maksimissaan 200 yksikköä (plus rajaton määrä rakennuksia). Jokaisella rodulla on erilaista yksikkö ja rakennusta, joilla useilla niistä on huomattava määrä erikoistoimintoja. (Ontañón ym., 2013) StarCraft tarjoaa mahdollisuuden tallentaa uusintoja peleistä myöhempää analyysiä varten. StarCraftista pidetään useita maailmanlaajuisia kilpailuita kuten World Cyber 18
20 Games, BlizzCon ja IeSF Invitational. Pelin suosio ja tallennusmahdollisuus on tuottanut laajan kokoelman pelilogeja, joita voidaan analysoida. Pelissä oleva teknologiapuu on suunnattu graafi ilman syklejä. Se määrittelee yksikkö- ja rakennustyypit, joita pelissä voidaan tuottaa. (Weber ym., 2009) Tärkeä elementti pelin strategiassa on rakennusjärjestys, joka määrittelee sen, missä järjestyksessä pelaaja etenee ja laajentaa teknologiapuutaan. Rakennusjärjestykset liittyvät vahvasti pelattuun strategiaan kuten pikahyökkäykseen tai ajoitettuun hyökkäykseen. Pikahyökkäyksessä pelaaja yrittää murskata vastustajansa halvoilla yksiköillä pelin alkuvaiheessa. Ajoitetuissa hyökkäyksissä hyökkäyksen käynnistäjänä toimii esimerkiksi jonkin parannuksen valmistuminen. (Weber ym., 2009) StarCraft-pelin mikromanagerointiin keskittyvä tekoäly koostuu Bayeslaisista yksiköistä (Bayesian unit). He määrittelevät toteuttamansa tekoälyn siten, että asetetut päämäärät syötetään Bayeslaiselle yksikölle sensorisena sisääntulona, joka vaikuttaa yksikön käyttäytymiseen riippuen tilasta tai tilanteesta, jossa yksikkö on kyseisellä ajanhetkellä. (Synnaeve & Bessière 2011) Bayeslaiset yksiköt ovat yksinkertaisia äärellisiä automaatteja (finite-state machines). Ainut kommunikaatio yksiköiden välillä tapahtuu yksiköiden ryhmätasolla (units group), jonka kautta yksiköt saavat myös päämääränsä (Kuva 1). Bayeslaisen yksikön toiminta koostuu tiloista, jotka ovat tiedustelu, hyökkäys ja liikkuminen. Hyökkäys sisältää lisäksi ampumisen, liikkumisen ja pakenemisen (Kuva 2). Bayeslaista ohjelmointia käytetään vaihtoehtona logiikalle muuntamalla tiedon epätäydellisyydet epävarmuuksiksi. Bayeslainen malli käyttää jakaumia ja päättelee niiden perusteella ennustuksien sijaan. Tämä menetelmä toimii suoraan epävarmuuksien kanssa. (Synnaeve & Bessière 2011) 19
21 Kuva 2. Bayeslaisia yksiköitä ohjaavan tekoälyn hierarkia (mukaillen Synnaeve & Bessière 2011) Kuva 3. Bayeslaisen yksikön toiminnan eri tilat (mukaillen Synnaeve & Bessière 2011) Mikromanagerointi on kontrolloitujen yksiköiden tehokkuuden maksimoimista, esimerkiksi tuotetun ja vastaanotetun vahingon määrien suhteen. Esimerkkinä vahingoitetun yksikön pelastamisen perääntymällä siten, että vihollisten on joko seurattava sitä ja täten joko voimistaa pelaajan tulivoimaa tai heikentää sitä viholliselta. Yksiköiden 20
22 hallinnan näkökulmasta mahdollisten toimintojen lukumäärä jokaisessa mikrovuorossa (1/24 sekuntia StarCraftissa) rajoittaa pelin tilasta tehtävän päättelyn eri tasoja sisältävään hierarkkiseen malliin. (Synnaeve & Bessière, 2011) Useimmissa RTS-peleissä yksikkö voi liikkua ainakin sen ympäröiviin 24 tiileen, pysyä paikoillaan, hyökätä tai joissakin tapauksissa käyttää erilaisia taitoja, eli yli 26 erilaista toimintoa jokaiselle mikrovuorolle. Vaikka käsittelyssä olisi vain kahdeksan (8) suuntaa, paikallaan pysyminen ja hyökkäys N yksiköillä, syntyy siitä 10 N erilaista kombinaatiota jokaista mikrovuoroa kohden. StarCraftissa suuret taistelut koostuvat vähintään 20 yksiköstä per pelaaja, joten optimaalinen yksiköiden hallinta muodostaa liian suuren tila-avaruuden, että sitä pystyisi tutkimaan reaaliajassa normaalilla laitteistolla, vaikka käsiteltäisiin vain yksi toiminto per yksikkö. (Synnaeve & Bessière 2011) Yksi merkittävimmistä haasteista pelien kehittäjille on pelaajien toimintoihin reagoivien mukautuvien tekoälyjen luonti. RTS-peleissä älykkään tekoälyvastustajan tulisi kyetä vastaamaan pelaajan strategiaan vastastrategialla, mitä suunnitelman tunnistamisen prosessiksi, jossa toimija tarkkailee toisen toimijan toimintoja tavoitteenaan vaikuttaa tämän tuleviin toimintoihin, aikomuksiin tai päämääriin. (Weber & Mateas, 2009) Strategiapeleissä tarvitaan korkean tason strategiaa eli makromanagerointia. StarCraftissa makromanagerointia on rakennusjärjestys, eli järjestys, jossa pelaaja tuottaa materiaalia pelissä, joka voidaan nähdä strategisena suunnitelmana, jota pelaaja noudattaa. Materiaalia voivat olla niin yksiköt, rakennukset, parannukset kuin teknologiat. Pelin aloituksessa tapahtuvan rakennusjärjestyksen lisäksi on yhtä tärkeää, että pelaaja mukautuu vastustajan strategiaan myöhemmin pelissä. Esimerkiksi, jos pelaaja saa selville, että vastustaja tuottaa lentäviä yksiköitä niin on huono idea tuottaa ainoastaan maahyökkäyksiin rajoittuneita yksiköitä. Pelaajien täytyy pystyä reagoimaan ja mukautumaan erilaisiin vastustajan tekemiin rakennusjärjestyksiin. StarCraftissa makromanagerointi on haastavaa useasta syystä, mutta pääasiassa siksi, että alueita, joissa ei ole pelaajan kontrolloimia yksiköitä ovat havaitsemattomissa. Tätä pelikentän osittain peittävää pelimekaniikkaa kutsutaan termillä fog-of-war. Tämän rajoituksen takia 21
23 pelaajan täytyy ohjata tiedustelijoina toimivia yksiköitä kartalla löytääkseen vihollisen tukikohtia. Näin kerätystä osittaisesta tiedosta pelaajan täytyy jatkuvasti tulkita vastustajan käyttämää strategiaa. (Justensen & Risi 2017) 2.7 Planet Wars Planet Wars on kahden pelaajan peli. Peli luokitellaan RTS-peliksi, koska pelitapahtumat toteutuvat reaaliaikaisesti ja pelaajat suorittavat toimintoja yhtäaikaisesti. Peli sijoittuu karttaan, joka sisältää useita planeettoja, joista jokaisella on tietty määrä aluksia. Planeetat voivat kuulua joko pelaajalle, vastustajalle tai olla neutraaleja. Jokainen pelaajan omistama planeetta kasvattaa aluksien lukumäärää planeetan omaaman kasvuvauhdin perusteella. Jokaisen vuoron alussa pelaaja saa tietoonsa pelin sen hetkisen tilanteen (esim. tietoja planeetoista ja laivastoista) ja voi tämän jälkeen tehdä yhden tyyppisen toiminnon: lähettää aluksista koostuvia laivastoja toiselle planeetalle. (Nogueira-Collazo ym. 2016) Laivastojen lähettämisen jälkeen jokainen pelaajan omistama planeetta kasvattaa jäljelle jääneiden alusten lukumäärää suhteessa kasvuvauhtiin. Laivastot, jotka lähetettiin edellisessä käskyssä, matkaavat tietyn määrän vuoroja päämääräänsä, joka riippuu planeettojen välisestä etäisyydestä. Jos päämääräplaneetta ja alukset kuuluvat samalle pelaajalle, niin planeetalla olevien alusten määrä saadaan laskemalla siellä valmiiksi olleiden ja sinne saapuneiden alusten summa. Mikäli planeetta, jolle alukset saapuvat on neutraali, niin siellä on kiinteä määrä aluksia (NS) ja pelaajan täytyy lähettää kyseiselle planeetalle NS + 1 alusta saadakseen sen hallintaansa. Jos pelaaja lähettää aluksensa vihollisen planeetalle (hyökkää vihollisen kimppuun) syttyy taistelu, jossa määritetään planeetan omistajuus. Vaikka pelaajat asettavat käskynsä vuoropohjaisesti, tapahtuvat niiden toteutukset silti aina samaan aikaan, joten peliä voidaan käsitellä reaaliaikaisena. Pelaaja, jolla on eniten aluksia pelin lopussa, voittaa. Peli voi loppua myös aiemmin, mikäli toinen pelaajista menettää kaikki aluksensa tai jos pelaaja ylittää aikarajan toteuttamatta käskyjään vuorolla ja täten luovuttaa pelin. Jos molemmat pelaajat omaavat saman määrän aluksia pelin lopussa, on pelin lopputulos tasapeli. (Nogueira-Collazo ym. 2016) 22
24 Tekoälymenetelmää tarvitaan sekä pelaajan taitoihin sopeutuvan tekoälyvastustajan kuin että pelin sisällön luontiin. Tekoälymenetelmiä hyödyntävää automaattista pelisisällön luontia kutsutaan proseduraaliseksi sisällön generoinniksi (PCG, Procedural Content Generation). Pelisisältö viittaa kaikkiin pelin aspekteihin, lukuun ottamatta tietokonepelaajia (NPC, Non-Player Character), kuten karttoihin, kenttiin, dialogeihin, hahmoihin, sääntöihin ja aseisiin. PCG kuvastaa yhtä kiinnostavinta ongelmaa pelikehityksessä, koska pelin sisältö on merkittävä tekijä pelaajien mielenkiinnon ylläpitämisessä. (Nogueira-Collazo ym. 2016) Pelaajien tyytyväisyyttä on vaikea mitata, koska se riippuu monesta muuttujasta kuten persoonallisuudesta, iästä, kulttuurista, taidoista, taipumuksista ja sukupuolesta. Tästä syystä yleisen mallin luonti, joka tyydyttäisi kaikkien vaatimukset on todella vaikea tehtävä. Peliteollisuudessa on tiedossa, että pelit, jotka ovat liian vaikeita tai liian helppoja, eivät menesty. Vaikeusasteen tasapainotus on vaikea tehtävä pelinkehittäjille, koska pelaajien taidot vaihtelevat aina noviisista eksperttitasolle. Tämän takia tekoälymenetelmä, joka kykenee muokkaamaan pelin vaikeutta niin tekoälyvastustajan kuin myös pelisisällön kannalta, on tärkeä osa tutkimustyötä. (Nogueira-Collazo ym. 2016) 2.8 Warcraft III Warcraft III sijoittuu miekkoja ja taikuutta sisältävään fantasiamaailmaan. Peli luokitellaan RTS-peliksi, koska pelaajat voivat toteuttaa reaaliajassa toteutuvia toimintoja yhtäaikaisesti. Pelissä taistellaan reaaliaikaisia taisteluita armeijoiden välillä 3D-kartassa. Armeijoita kontrolloivat sekä ihmis- että konepelaajat. Voittaja on se, joka tuhoaa vastustajien joukot. Armeijat koostuvat neljän (4) eri rodun yksilöistä, joista jokaisella rodulla on erilaisia vahvuuksia ja heikkouksia. Esimerkiksi Orc-kansan yksiköt kestävät enemmän vahinkoa kuin Night Elf -kansan, mutta jälkimmäisillä on paremmat hyökkäystaidot. (Tong ym. 2012) Pelin tekoäly on kriittinen osa pelattavuutta. Tämän lisäksi kehittäjien näkökulmasta tekoälyä hyödynnetään kontrolloimaan vastustajia ihmispelaajia vastaan. Tämän tehokas toteutuminen on kriittistä niin pelin viihdearvon kuin myös sen myynnillisyyden 23
25 kannalta. Tarvitaan joustavaa, pelaajan taitotasoon mukautuvaa ja pelin tuotannon kannalta kustannustehokasta tekoälyä. (Tong ym. 2012) Tärkeä ongelmakohta pelin tekoälyn suunnittelussa on se, että tekoälyn tulisi tuottaa vaihtelevia vaikeusasteita pelaajaa vastaan. Pelin täytyy tuntua pelaajalle aluksi haastavalle, mutta ei ylitsepääsemättömältä ja pelaajan taitojen kehittyessä tekoälyn tulisi kyetä paranemaan vastustajana samaa vauhtia. Tähän ongelmaan on peleissä yleisesti tarjolla helppo, keskitaso, vaikea tyyppisiä vaihtoehtoja vaikeusasteelle. Tällaisten tekoälykontrollereiden tuottaminen on kuitenkin haastavaa ja kallista. Tämä ongelmakohta muodostaa tarpeen tekoälykontrollerille, joka on kustannustehokas ja kykenee helpottamaan tätä prosessia. (Tong ym. 2012) 2.9 Wizard Wizard on kilpailullinen korttipeli, jota voi pelata 3-6 pelaajaa yhtäaikaisesti. Peli luokitellaan TBS-peliksi, koska pelaajat suorittavat toimintonsa vuorotellen. Korttipakka koostuu 60 kortista, joista 52 korttia kuuluu neljän perusvärin joukkoon ja joista kahdeksan (8) on erikoiskortteja. Erikoiskortit koostuvat neljästä velhosta, jotka ovat vahvimpia kortteja pelissä, ja neljästä jokerista, jotka ovat pelin heikoimpia kortteja. (Backhus ym. 2013) Yksi peli pelataan kierroksissa, joiden lukumäärä riippuu pelaajien lukumäärästä. Pelaajille jaettujen korttien lukumäärä kasvaa kierrosten edetessä, alkaen yhdestä kortista per pelaaja jatkuen aina siihen asti, että kaikki kortit on jaettu pelaajille. Viimeistä kierrosta lukuun ottamatta jokaisella kierroksella määritetään valttiväri jakamatta jääneistä korteista kääntämällä pakan päällimmäinen kortti auki. Jokaisen vuoron alussa, kun pelaaja on saanut omat korttinsa, tulee hänen ennustaa, kuinka monta temppua hän aikoo tehdä vuorossa. Jokainen pelaaja pelaa yhden kortin kädestään ja vahvimman kortin omistaja voittaa kaikki pelatut kortit. Pelattuja kortteja kutsutaan tempuiksi. Vain pelaajat, jotka täyttävät ennustuksensa voittamalla oikean määrän temppuja saavat positiivisen palkinnon, joka koostuu 20 peruspisteestä ja 10 pisteestä jokaista ennustettua temppua kohden. Esimerkiksi 0 ennustetun tempun tapauksessa pelaaja saa 24
26 20 pistettä, 1 ennustetun tempun tapauksessa 30 ja niin edelleen. Kaikki muut pelaajat, jotka eivät saaneet ennustettua määrää temppuja, saavat negatiivisen palkinnon, joka lasketaan ennusteen ja voitettujen temppujen lukumäärien erotuksesta. Pelin lopussa kaikki pelikierrosten aikana hankitut pisteet lasketaan yhteen ja pelaaja, jolla on eniten pisteitä voittaa. Täten pelin kulku voidaan jakaa kahteen vaiheeseen, ennustukseen ja pelaamiseen. Pelivaihe on sidoksissa ennustusvaiheeseen, koska pelivaiheessa tavoitteena on ennustuksen täyttäminen voittamalla oikea määrä temppuja positiivisen palkinnon saamiseksi. Tästä syystä pelin voittamiseksi tarvitaan sopiva strategia. (Backhus ym. 2013) Korttipelit mielletään monimutkaisemmiksi kuin esimerkiksi lautapelit Go tai shakki, koska ne ovat osittaisen informaation pelejä, eli pelaajalla ei ole kaikkea pelin informaatiota nähtävillään. Lisäksi monimutkaisuutta luo se, että niitä pelaa usea pelaaja kerrallaan. Pelin osittaisen informaation luonteen takia tekoälyn täytyy käsitellä tuntemattomia pelitiloja ja useiden pelaajien takia on mahdotonta käyttää hakualgoritmeja, joita käytetään useissa lautapeleissä. Tästä syystä korttipelit ovat ideaalisia testikenttiä mallintamaan oikean maailman tilanteita. (Backhus ym., 2013) Yksi tekoälytutkimuksen päämääristä on itseoppivien algoritmien luonti, jotka mallintavat tapaa, jolla ihmiset oppivat ja jotka voidaan yleistää useisiin muihin sovellutuksiin. Strategiapeleissä, kuten Wizardissa ja monissa muissa korttipeleissä, on tärkeää kehittää strategia, joka mukautuu varsinaiseen pelitilanteeseen - vahvistusoppiminen on sopiva ratkaisu tuottamaan tietokoneelle kyky omatoimiseen strategian oppimiseen ja pelitilan arviointiin. (Backhus ym., 2013) 25
27 3 Tekoälyratkaisut strategiapeleissä Strategiapelien tekoälyjä voidaan muokata ja tehostaa hyödyntämällä erilaisia tekoälytyökaluja. Työkaluja hyödyntämällä voidaan toteuttaa myös kokonaan uusia tekoälymenetelmiä tai integroida niitä jo olemassa oleviin tekoälyihin. Luvuissa on esitetty käytetyt tekoälytyökalut strategiapeleittäin 3.1 Balanced Annihilation MTAS (Micromanagement Task Allocation System), joka on tarkoitettu RTS-pelien mikromanageroinnin hallitsemiseen, muuntaa pelimaailman ja sen sisältämät päämäärät tehtävien joukoksi. Merkittävin piirre tässä menetelmässä on se, että jokainen yksittäinen tehtävä hallitsee siihen kuuluvia tekoäly-yksiköitä. Tämä tarkoittaa sitä, että hajautetun menetelmän sijaan, jossa jokainen tekoäly-yksikkö päättelisi itse, kuinka sille asetettu tehtävä toteutetaan tehtävä hallinnoi tekoäly-yksiköiden toimintaa keskitetysti. Tämä saa aikaan yhteistoiminnallista käytöstä tekoäly-yksiköiden välille, minimoi tuhoutuneiden yksiköiden vaikutuksia ja tehtävä säilyy, vaikka sille ei olisi asetettuna enää yhtään tekoäly-yksikköä. Tehtävien käyttö tekoälyn pohjana tekee myös implementaatiosta yksinkertaista ja joustavaa. (Rogers & Skabar, 2014) Toteutuksessa käytettiin Spring-pelimoottoria. Spring tukee useita eri RTS-pelejä, jotka kaikki jakavat saman tekoälykäyttöliittymän. Tämä mahdollistaa sen, että kehittäjät voivat luoda tekoälypelaajia usealla eri ohjelmointikielellä (esim. Java, C++, Python, Lua). MTAS integroitiin peliin valmiiksi luotuun E323AI:n hierarkkiseen tekoälyrakenteeseen tarkoituksena korvata tekoälyn alkuperäinen mikromanagerointimoduuli. Alkuperäinen tekoäly oli kirjoitettu avoimen lähdekoodin Spring-pelimoottorille, jota Balanced Annihilation käyttää. Vaikka E323AI-tekoälyn alkuperäinen mikromanagerointimoduuli oli ylivertainen muihin Balanced Annihilation-pelin tekoälyihin verrattuna, se perustui kuitenkin vain monimutkaiseen semi-hierarkkiseen if-thenelse komentojen verkostoon, jotka kehittäjät ovat yksittäin ohjelmoineet. Yhtä poikkeusta lukuun ottamatta integraatio toteutettiin muokkaamatta strategiatason liittymää 26
28 ryhmätason kanssa. Alkuperäisessä E323AI:n moduulissa yksikköjoukot saivat ohjeet ja jakoivat nämä kaikille ryhmän jäsenille. MTAS-menetelmässä nämä viestit otetaan käsittelyyn ja ryhmämoduuli ei enää anna suoria ohjeita yksiköille. Sen sijaan ohjeiden piirteiden perusteella muodostetaan tehtäviä, jotka asetetaan pääasiallisiksi tehtäviksi ryhmille. Ryhmien tila perustuu tämän tehtävän laatuun. Esimerkiksi, jos ryhmä saa ohjeet hyökätä yksikön X kimppuun, luo MTAS tehtävän yksikön X kimppuun hyökkäämiseksi ja tästä tehdään ryhmien päätehtävä, jolloin ne vaihtavat tilansa hyökkäystilaan. (Rogers & Skabar, 2014) MTAS-menetelmä on joustava, ymmärrettävä ja yleisesti hyödynnettävä malli, joka tarjoaa älykkään tehtävien jakamisen monikirjoisen joukon sisällä saavuttaakseen päämäärät, jotka ryhmälle on annettu strategiatasolta. Pääasiallinen etu, jonka MTAS tuo RTS-pelien tekoälyihin nykyisten tekniikoiden yli, on systeemi, joka voi mikromanageroida yksikköryhmiä, jotka ovat tarpeeksi joustavia voidakseen sisältää useita erilaisia joukkotyyppejä, saavuttaa sille asetettuja strategisia päämääriä, palauttaa arvokasta tietoa päämäärien toteutukseen liittyen ja käyttäytyy hyvin ilman eksplisiittisiä ohjeita. (Rogers & Skabar, 2014) Arvioidakseen MTAS-menetelmän suoriutumista järjestettiin sarja vastakkain taisteluita pelin alkuperäisen E323AI-tekoälyn ja MTAS-menetelmää hyödyntävän E323AI/MTAS-tekoälyn välillä. Taistelut käytiin viidessä eri kartassa, 800 taistelua per kartta ja yhteensä 4000 taistelua. E323AI/MTAS saavutti 4000 taistelun aikana 2469 voittoa. 61,7% voittoprosentin merkittävyys arvoitiin Z-testillä. Testin tuloksena arvoilla p = 0,602 ja Z = 1,96 saatiin 0,025 luotettavuustaso. Tämän testin perusteella voidaan 97,5% varmuudella sanoa, että E323AI/MTAS voittaa pelin alkuperäisen tekoälyn yli 60% ajasta. On hyvä huomioida, että kolmen ensimmäisen ja kahden viimeisen kartan välillä oli huomattava ero voittoprosenteissa. Tämä johtuu mitä todennäköisimmin siitä, että implementaatiossa käytettävä yksinkertainen tilallinen päättely ottaa huomioon matkan, mutta ei maaston jyrkkyyttä. Kolmessa ensimmäisessä kartassa on monia jyrkkiä rinteitä, jotka ovat kuljettavia, mutta hidastavat yksiköiden nopeutta huomattavasti. Viimeisessä kahdessa kartassa on paljon enemmän selkeitä mäkiä ja tasankoja, joilla ei ole mitään vaikutusta yksiköiden nopeuteen tai sulkevat reitin 27
29 kokonaan. Tämän huomion takia voidaan päätellä, että vaikka voidaan löytää joukko painotuksia, jotka parantavat suoriutumista kaikissa kartoissa niin yhdessä kartassa toimiva asetus ei saata toimia toisessa yhtä hyvin. (Rogers & Skabar, 2014) Vertailtaessa E323AI/MTAS- ja E323AI-tekoälyjen eroja voittotyyppien ja voiton syiden osalta voidaan huomata, että E323AI/MTAS-tekoälyllä oli enemmän puhtaasti sotajoukkoihin perustuvia voittoja, kun E323AI-tekoälyllä voitot perustuivat enimmäkseen tuotantopohjaisiin voittoihin. Tärkeä huomio tässä on se, että koska syy voittoon voi olla kumpi tahansa, saavuttamalla sotajoukkovoiton tarkoittaa, että häviäjällä oli itseasiassa parempi tuotanto ja toisinpäin. Tästä voidaan päätellä, että nykyiset tehtävät ja painotukset MTAS-menetelmässä osoittavat toimivansa parhaiten taisteluihin liittyvissä mikromanagerointitehtävissä. Riippumatta voittojen tyypeistä tai syistä MTAS osoitti paremmuutensa suoriutumisessaan, koska se tarjoaa ryhmille kyvyn suoriutua monesta asiasta yhtäaikaisesti. (Rogers & Skabar, 2014) Koska MTAS-menetelmä kyettiin implementoimaan suoraan Balanced Annihilationpelin E323AI-tekoälyyn muuttamatta strategian ja ryhmätason yhteyttä todistaa se, että se voidaan integroida tekoälyyn, joka noudattaa hierarkkista rakennetta. Siispä MTAS-menetelmää pitäisi pystyä käyttämään minkä tahansa strategiatason päättelykomponentin yhteydessä parantamaan RTS-pelin tekoälyn yleistä tehokkuutta riippumatta strategiatason sisäisistä implementaatioista. Nämä tulokset esittävät, että RTSpelien tekoälyn mikromanagerointia kehittämällä voidaan saavuttaa parannuksia ja että MTAS on tähän tarkoitukseen soveltuva malli. (Rogers & Skabar, 2014) 3.2 Boundary Suoraa simulaatiota hyödyntäessään tekoäly simuloi läpi kaikki kuusi strategiavaihtoehtoa ja päättelee mihin vastustaja liikkuisi, jos se käyttäisi jotakin näistä kuudesta strategiavaihtoehdosta. Tämän jälkeen se vertaa tuloksia siihen, mihin vastustaja todellisuudessa liikkui edellisellä vuorolla hyödyntäen pienimmän etäisyyden funktiota (minimum distance function). Lopuksi tekoäly valitsee vastustajan strategiamalliksi suurimman todennäköisyyden saaneen strategiavaihtoehdon. (Brown & Guinn, 2014) 28
SÄÄNNÖT. Language: English / Suomi
Rules of Coerceo by Coerceo Company Finnish translation by Janne Henriksson SÄÄNNÖT Language: English / Suomi Tekijänoikeus Mitään tämän dokumentin osaa ei saa jäljentää, kopioida tai välittää missään
Hyvä tekoäly reaaliaikaisissa strategiapeleissä
Aleksi Tamminen Hyvä tekoäly reaaliaikaisissa strategiapeleissä Tietotekniikan kandidaatintutkielma 26. toukokuuta 2018 Jyväskylän yliopisto Informaatioteknologian tiedekunta Tekijä: Aleksi Tamminen Yhteystiedot:
Board Game Lab. 7 Pelimekaniikat ja -systeemit. Materiaalit CC-BY 4.0 Mikko Lampi
Board Game Lab 7 Pelimekaniikat ja -systeemit Materiaalit CC-BY 4.0 Mikko Lampi Sisältö Alustus 1. Mekaniikat ja niiden tehtävät 2. Miten valitsen tai suunnittelen mekaniikkoja? 3. Pelimekaniikat ja -systeemit
Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo
Concurrency - Rinnakkaisuus Group: 9 Joni Laine Juho Vähätalo Sisällysluettelo 1. Johdanto... 3 2. C++ thread... 4 3. Python multiprocessing... 6 4. Java ExecutorService... 8 5. Yhteenveto... 9 6. Lähteet...
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
Peliteoria luento 1. May 25, 2015. Peliteoria luento 1
May 25, 2015 Tavoitteet Valmius muotoilla strategisesti ja yhteiskunnallisesti kiinnostavia tilanteita peleinä. Kyky ratkaista yksinkertaisia pelejä. Luentojen rakenne 1 Joitain pelejä ajanvietematematiikasta.
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
Antitammirobotti. Antti Meriläinen Martin Pärtel 29. toukokuuta 2009
Antitammirobotti Antti Meriläinen Martin Pärtel 29. toukokuuta 2009 Helsingin yliopisto Tietojenkäsittelytieteen laitos Robottiohjelmoinnin harjoitustyö
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
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
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,
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
Tilastotiede ottaa aivoon
Tilastotiede ottaa aivoon kuinka aivoja voidaan mallintaa todennäköisyyslaskennalla, ja mitä yllättävää hyötyä siitä voi olla Aapo Hyvärinen Laskennallisen data-analyysin professori Matematiikan ja tilastotieteen
Pelisuunnittelu Ronja 2014
Pelisuunnittelu Ronja 2014 Moodboard Avaruuspeli Yksinpeli, roolipeli Ihmisrodun viimeiset edustajat ovat kaikki tummaihoisia, koska maapallon otsonikerros on ohentunut ja planeetta on muutenkin huonossa
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ö
SPTL:N HALLITUKSEN SÄÄNTÖMUUTOSEHDOTUKSET KAUDELLE
SPTL HALLITUKSEN SÄÄNTÖMUUTOSEHDOTUKSET KAUDELLE 2018-19 sivu 1 (5) SPTL:N HALLITUKSEN SÄÄNTÖMUUTOSEHDOTUKSET KAUDELLE 2018-19 Muutettavaksi ehdotetut kohdat kursiivilla. 1) PELIN AIKANA NEUVOMINEN 3.6.1.1
Selainpelien pelimoottorit
Selainpelien pelimoottorit Teemu Salminen Helsinki 28.10.2017 Seminaaritutkielma Helsingin yliopisto Tietojenkäsittelytiede ! 1 HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta
Tilastotiede ottaa aivoon
Tilastotiede ottaa aivoon kuinka aivoja voidaan mallintaa todennäköisyyslaskennalla, ja mitä yllättävää hyötyä siitä voi olla Aapo Hyvärinen Laskennallisen data-analyysin professori Matematiikan ja tilastotieteen
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS PELIPUU ACTIVATOR 1 ACTIVATOR 2 PELIPUU ACTIVATOR 1 ACTIVATOR 2 -1 0 1 PELIPUU PELIPUU PELIPUU I -ARVO(Solmu) if LOPPUTILA(Solmu) return(arvo(solmu)) v = for each Lapsi in
http://www.nelostuote.fi/suomi/rummikubsaan.html
Sivu 1/5 Pelin sisältö 104 numeroitua laattaa (numeroitu 1-13) 2 laattaa kutakin neljää väriä (musta, oranssi, sininen ja punainen) 2 jokerilaattaa, 4 laattatelinettä, pelisäännöt Pelin tavoite Tavoitteena
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS NEUROVERKOT TURINGIN KONE (TAI TAVALLINEN OHJELMOINTI) VAIN YKSI LASKENNAN MALLI ELÄINTEN HERMOSTOSSA LASKENTA ERILAISTA: - RINNAKKAISUUS - STOKASTISUUS (SATUNNAISUUS) - MASSIIVINEN
SOTE-AKATEMIA TEKNOLOGISEN MURROKSEN JOHTAMINEN SOTE-ALALLA
SOTE-AKATEMIA TEKNOLOGISEN MURROKSEN JOHTAMINEN SOTE-ALALLA Tule oppimaan parhaat käytännöt teknologisen murroksen johtamiseen sekä digitalisaation ja uusimman teknologian hyödyntämiseen sosiaali- ja terveydenhuollossa!
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
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
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
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ä
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
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:
Tekoäly ja alustatalous. Miten voit hyödyntää niitä omassa liiketoiminnassasi
Tekoäly ja alustatalous Miten voit hyödyntää niitä omassa liiketoiminnassasi AI & Alustatalous AI Digitaalisuudessa on 1 ja 0, kumpia haluamme olla? Alustatalouden kasvuloikka Digitaalisen alustatalouden
ELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
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
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
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS PELIPUU -1 0 1 PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU I -ARVO(Solmu) if LOPPUTILA(Solmu) return(arvo(solmu))!
1 2 2/1 3/1 4/1 4/2 5/2 5/2/1 5/3/1 6/3/1 6/4/1 6/4/2 6/4/2/1 6/5/2/1 6/5/ 6/5/ 6/5/ 6/5/ 6/5/ 6/5/ d6 3/1 3/2 3/2/1 4/2/1 4/3/1 4/3/2
0.1 Johdanto Atlantis on 2-6 pelaajan melko nopea ja yksinkertainen seurapeli, jossa tarkoituksena on rakentaa Atlantiksen katoavan mantereen lopunajan voimakkain kulttuuri. 0.1.1 Varusteluettelo Arpakuutio.
Ohjeet ovat työn alla ja kirjaan niitä päivittäen ja edes takaisin lukien pari viikkoa.
( 1 ) Hannu Särön lautapelien ohjeita pelaajille - ( 1 ) - Sisältö. ( 2 ) - Jätkänshakki. ( 3 ) - Reversi. ( 4 ) - Tammi. ( 5 ) - Mylly. ( 6 ) - Shakki. ( 7 ) - Shakki, uudet napit ja uudet laudat. Ohjeet
Säännöt & Asetukset. Säännöt & Asetukset. Versio 1.00 /
Säännöt & Asetukset 1. Yleiset säännöt 1.1: Joukkueen koko: 6 pelaajaa. 1.2: Yksi pelaaja voi olla vain yhdessä joukkueessa turnauksen aikana. 1.3: Turnauksessa käytetään turnausjärjestäjän tarjoamia äänikanavia
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
Näkökulmia taidon oppimiseen: Kaaos kotoisaksi. Nuorisovalmennusseminaari, Susi Training Center
Näkökulmia taidon oppimiseen: Kaaos kotoisaksi Nuorisovalmennusseminaari, Susi Training Center 15.1.2016 @Jyri_Lohikoski Taidonoppiminen Mindset Työkalut Päätöks enteko 2 Oppimisalue Mukavuusalue Ahdistus
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
Viimeisimpänä aloitteenaan Peimari United haluaa esitellä maalivahdeille kohdennetun uuden turnausmuodon ensimmäisenä Suomessa: Goalkeeper Combat I
Johdanto Peimari United on jalkapallon erikoisseura, jonka tavoitteena tarjota hyvä jalkapalloharrastus, junioreille ja aina aikuispelaajille asti. Peimari Unitedin toiminnassa korostuu kaikessa tekemisessä
Ohjelmistojen mallintaminen, mallintaminen ja UML
582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti
Salasuhteita. esimerkiksi espanjaksi nimi tarkoittaa pientä pusua.
Salasuhteita Avioliittopeleistä kehiteltiin edelleen uusia pelejä, joissa varsinaisten avioliittojen lisäksi kohdataan sopimattomia suhteita kuningatarten ja sotilaiden välillä vieläpä maiden rajat ylittäen!
Sisällysluettelo. 1. Johdanto
Säännöt Sisällysluettelo 1. Johdanto 3 2. Sisältö 4 3. Alkuvalmistelut 5 4. Pelin aloitus ja kulku 6 5. Pelin lopetus 9 6. Vaikea peli ja muut pelimuunnelmat 10 1. Johdanto Pelilauta on 25 ruudusta muodostuva
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
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
xbox pelit need for speed underground 2 half life 2 luettelo xbox peleista grand theft auto san andreas run like hell max payne
DOWNLOAD OR READ : XBOX PELIT NEED FOR SPEED UNDERGROUND 2 HALF LIFE 2 LUETTELO XBOX PELEISTA GRAND THEFT AUTO SAN ANDREAS RUN LIKE HELL MAX PAYNE PDF EBOOK EPUB MOBI Page 1 Page 2 auto san andreas run
Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?
Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä? 2012-2013 Lasse Lensu 2 Ongelma 2: Milloin ongelmat muuttuvat oikeasti hankaliksi? 2012-2013 Lasse Lensu 3 Ongelma 3: Miten hankalia ongelmia
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
Laskut käyvät hermoille
Laskut käyvät hermoille - Miten ja miksi aivoissa lasketaan todennäköisyyksiä Aapo Hyvärinen Matematiikan ja tilastotieteen laitos & Tietojenkäsittelytieteen laitos Helsingin Yliopisto Tieteen päivät 13.1.2011
A/B Lohkojärjestelmä
A/B Lohkojärjestelmä Suomessa käytettään A/B lohkojärjestelmää suurimmassa osassa painikilpailuja, mukaan lukien kaikkien ikäryhmien SM-kilpailut sekä KLLpainit. A/B lohkojärjestelmässä noudatetaan seuraavia
Reaaliaikainen yli 2 pelaajan moninpeli mobiilille!
Reaaliaikainen yli 2 pelaajan moninpeli mobiilille! Mobiilipelaajat haluavat pelata toisia ihmisiä vastaan tai heidän kanssaan Kuten mm. nämä moninpelattavat menestyspelit osoittavat Clash of Clans Supercell
Tietorakenteet, laskuharjoitus 7, ratkaisuja
Tietorakenteet, laskuharjoitus, ratkaisuja. Seuraava kuvasarja näyttää B + -puun muutokset lisäysten jälkeen. Avaimet ja 5 mahtuvat lehtisolmuihin, joten niiden lisäys ei muuta puun rakennetta. Avain 9
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS NEUROVERKOT TURINGIN KONE (TAI TAVALLINEN OHJELMOINTI) VAIN YKSI LASKENNAN MALLI ELÄINTEN HERMOSTOSSA LASKENTA ERILAISTA: - RINNAKKAISUUS - STOKASTISUUS (SATUNNAISUUS) - MASSIIVINEN
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ä
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
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.
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
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
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,
Mitä mahdollisuuksia pelillisyys avaa vakavahenkisessä toiminnassa?
Mitä mahdollisuuksia pelillisyys avaa vakavahenkisessä toiminnassa? Antti Villberg Semantum Oy 22.5.2014 MOSAIC Pelityöpaja Ongelmanasettelu koulutus ja kehittäminen työelämässä Työympäristöt muuttuvat
Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?
Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä? 2013-2014 Lasse Lensu 2 Ongelma 2: Milloin ongelmat muuttuvat oikeasti hankaliksi? 2013-2014 Lasse Lensu 3 Ongelma 3: Miten hankalia ongelmia
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
Verkkopokerijärjestelmä. Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008
Verkkopokerijärjestelmä Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008 Projektiryhmä Samuli Aalto-Setälä Jukka Kekälainen Jarno Kyykkä Mika Mielonen Mårten Smeds Otto Waltari Ohjaaja
Tenniksen pistelaskusäännöt, lukio/ammatilliset oppilaitokset
Tenniksen pistelasku Useimmat meistä ovat joskus katsoneet TV:stä tennisottelua. Katsoja kokee jännitystä voidessaan seurata kuinka pisteden kertyminen johtaa ottelun päättymisen toisen pelaajan voittoon
11/20: Konepelti auki
Ohjelmointi 1 / syksy 2007 11/20: Konepelti auki Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/11 Tämän luennon
Σ!3674. Advanced Test Automation for Complex Software-Intensive Systems
Advanced Test Automation for Complex Software-Intensive Systems = Advanced Test Automation for Complex Software- Intensive Systems Pääteemana kompleksisten ja erittäin konfiguroitavien softaintensiivisten
Tee-se-itse -tekoäly
Tee-se-itse -tekoäly Avainsanat: koneoppiminen, tekoäly, neuroverkko Luokkataso: 6.-9. luokka, lukio, yliopisto Välineet: kynä, muistilappuja tai kertakäyttömukeja, herneitä tms. pieniä esineitä Kuvaus:
PELIOHJEET (suomeksi) Koira. Peli on kaksivaiheinen: Vaihe 1:
PELIOHJEET (suomeksi) Koira Peli on kaksivaiheinen: Vaihe 1: Jokaiselle osanottajalle/pelaajalle jaetaan kolme (3) korttia. Loput kortit asetetaan pelipöydälle pinoon, pakaksi. Huomattavaa on, että pakan
TURNAUSOHJEET. Turnauksen tavoite. Ennen aloitusta. Taistelukierroksen Pelaaminen. www.ninjago.com
Turnauksen tavoite Ennen aloitusta Haluatko Spinjitzumestariksi? Valitse vastustaja ja mittele taitojasi monella kierroksella. Voitat ottamalla vastustajaltasi kaikki aseet! Jokainen pelaaja tarvitsee
Matematiikan tukikurssi, kurssikerta 3
Matematiikan tukikurssi, kurssikerta 3 1 Epäyhtälöitä Aivan aluksi lienee syytä esittää luvun itseisarvon määritelmä: { x kun x 0 x = x kun x < 0 Siispä esimerkiksi 10 = 10 ja 10 = 10. Seuraavaksi listaus
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ä
OHJ-2710 Peliohjelmointi. Syksy 2012 Timo Kellomäki
OHJ-2710 Peliohjelmointi Syksy 2012 Timo Kellomäki timo.kellomaki@tut.fi Käytännön juttuja Kurssihenkilökunta koostuu Timo Kellomäestä Luennot torstaisin salissa TB223 klo 12-14 2. viikko harkkatyöinfo,
Kommunikaatio Visa Linkiö. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly
Kommunikaatio MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly 2.11.2016 Visa Linkiö The document can be stored and made available to the public on the open internet pages of Aalto University.
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS NEUROVERKOT TURINGIN KONE (TAI TAVALLINEN OHJELMOINTI) VAIN YKSI LASKENNAN MALLI ELÄINTEN HERMOSTOSSA LASKENTA ERILAISTA: - RINNAKKAISUUS - STOKASTISUUS (SATUNNAISUUS) - MASSIIVINEN
Johdatus tekoälyn taustalla olevaan matematiikkaan
Johdatus tekoälyn taustalla olevaan matematiikkaan Informaatioteknologian tiedekunta Jyväskylän yliopisto 3. luento 17.11.2017 Neuroverkon opettaminen (ohjattu oppiminen) Neuroverkkoa opetetaan syöte-tavoite-pareilla
Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen
Hävittäjälentokoneen reitin suunnittelussa käytettävän dynaamisen ja monitavoitteisen verkko-optimointitehtävän ratkaiseminen A*-algoritmilla (valmiin työn esittely) Joonas Haapala 8.6.2015 Ohjaaja: DI
Koululentistä ikäluokittain
Koululentistä ikäluokittain AT OK U L 56 MALLIOPPITUNNIT Välineet: vat lyhyempiä PALLOT EMPUT noin 15 min Heitot tehdään omalla pallolla tai vuorotellen parin kanssa: pomppua) Tehdään noin 1015 kertaa
Blackjack on korttipeli, jossa pelaajan tavoitteena on voittaa pelinhoitaja.
POHDIN projekti Blackjack Blackjack on pelinhoitajaa vastaan pelattava korttipeli mutta myös ns. uhkapeli 1. Kun kyseessä on ns. rahapeli, niin ikäraja Suomessa on tällaiselle pelille K-18. Blackjackissä
SEPA päiväkirja. BetaTeam. Juho Mäkinen, 57796V, Jari Leppä, 42710V, Versio Pvm Tekijä Kuvaus
SEPA päiväkirja BetaTeam Juho Mäkinen, 57796V, jvmakine@cc.hut.fi Jari Leppä, 42710V, jleppa@cc.hut.fi Versio Pvm Tekijä Kuvaus 0.1 10.11.2005 Juho Mäkinen Johdanto 1. 0.2 11.11.2005 J.Mäkinen, Käytäntöön
SKENAARION ERIKOISSÄÄNNÖT Deep Strike
Kumpikin osapuoli on saanut tehtäväkseen varmistaa ilmasillan planeetalle tulevia huoltotoimenpiteitä ja joukkojen siirtoja varten. Ensikosketuksen planeetalle ottaneiden yksiköiden tehtävä on ottaa alue
Tekoäly ja tietoturva Professori, laitosjohtaja Sasu Tarkoma Tietojenkäsittelytieteen laitos Helsingin yliopisto
Tekoäly ja tietoturva Professori, laitosjohtaja Sasu Tarkoma Tietojenkäsittelytieteen laitos Helsingin yliopisto www.cs.helsinki.fi Sisällys Johdanto Tekoäly Tekoäly ja tietoturva Tutkimusesimerkkejä www.cs.helsinki.fi
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
811312A Tietorakenteet ja algoritmit , Harjoitus 2 ratkaisu
811312A Tietorakenteet ja algoritmit 2017-2018, Harjoitus 2 ratkaisu Harjoituksen aiheena on algoritmien oikeellisuus. Tehtävä 2.1 Kahvipurkkiongelma. Kahvipurkissa P on valkoisia ja mustia kahvipapuja,
Hallisarjan uudistaminen
Hallisarjan uudistaminen Parin viimeisen vuoden aikana ollessani sarjavastaavana olen havainnut useita ongelmia hallisarjan järjestämiseen liittyen. Järjestämisongelmien lisäksi joukkueiden ja pelaajien
Tietotekniikan valintakoe
Jyväskylän yliopisto Tietotekniikan laitos Tietotekniikan valintakoe 2..22 Vastaa kahteen seuraavista kolmesta tehtävästä. Kukin tehtävä arvostellaan kokonaislukuasteikolla - 25. Jos vastaat useampaan
Tekoäly muuttaa arvoketjuja
Tekoäly muuttaa arvoketjuja Näin kartoitat tekoälyn mahdollisuuksia projektissasi Harri Puolitaival Harri Puolitaival Diplomi-insinööri ja yrittäjä Terveysteknologia-alan start-up: Likelle - lämpötilaherkkien
Z O K E R OHJEET REGLER PÅ SVENSKA XL 3 XL 3 M4 1 L4 1 XL 3 M 23 XL 1 XL 4 ML 4 M 41 L4 3 L 1 S4 1 XL 2 XL 1 2 1 M 14 M 4 XL 3 LS 4 XL 3 L 3 S L3
X3 X X X X X X X X 3 3 3 X X 3 X X 3X 3 3 3 X 3 3 X 3 X 3 X X X X X 3 3 3 3 3 3 X 3 3 X X X 3 X X X 3 3 REGER PÅ VENK 3 www.zoker.org/se/regler X X X X X X X 3 X X 3 3 X X X 3 3 3 X 3 X X 3 3 3 3 3 3 3
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
Kombinatorinen optimointi
Kombinatorinen optimointi Sallittujen pisteiden lukumäärä on äärellinen Periaatteessa ratkaisu löydetään käymällä läpi kaikki pisteet Käytännössä lukumäärä on niin suuri, että tämä on mahdotonta Usein
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
Pelivaihtoehtoja. Enemmän vaihtelua peliin saa käyttämällä erikoislaattoja. Jännittävimmillään Alfapet on, kun miinusruudut ovat mukana pelissä!
Pelivaihtoehtoja Yksinkertaisin vaihtoehto: lfapetia voi pelata monella eri tavalla. Yksinkertaisimmassa vaihtoehdossa käytetään ainoastaan kirjainlaattoja. Pelilaudan miinusruudut ovat tavallisia ruutuja,
JOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS PELIPUU PELIPUU -1 0 1 PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU PELIPUU I -ARVO(Solmu) if LOPPUTILA(Solmu) return(arvo(solmu))
Yhteistyötä sisältämätön peliteoria jatkuu
Yhteistyötä sisältämätön peliteoria jatkuu Tommi Lehtonen Optimointiopin seminaari - Syksy 2000 / 1 Bayesilainen tasapaino Täysi informaatio Vajaa informaatio Staattinen Nash Bayes Dynaaminen Täydellinen
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ä.
Tekoäly tänään , Vadim Kulikov (Helsingin Yliopisto)
Tekoäly tänään 6.6.2017, Vadim Kulikov (Helsingin Yliopisto) Lyhyesti: kehitys kognitiotieteessä Representationalismi, Kognitio on symbolien manipulointia. Symbolinen tekoäly. Sääntöpohjaiset järjestelmät
18 Komponentit, ulkoasu ja visuaalisuus. Materiaalit CC-BY 4.0 Mikko Lampi
18 Komponentit, ulkoasu ja visuaalisuus Materiaalit CC-BY 4.0 Mikko Lampi Sisältö Alustus 1. Pelikomponentit 2. Ulkoasu ja visuaalisuus 3. Esimerkkejä Työskentelyä Pelikomponenttien suunnittelu Visuaalisuuden
Integrointialgoritmit molekyylidynamiikassa
Integrointialgoritmit molekyylidynamiikassa Markus Ovaska 28.11.2008 Esitelmän kulku MD-simulaatiot yleisesti Integrointialgoritmit: mitä integroidaan ja miten? Esimerkkejä eri algoritmeista Hyvän algoritmin
- 4 aloituslaattaa pelaajien väreissä molemmille puolille on kuvattu vesialtaat, joista lähtee eri määrä akvedukteja.
AQUA ROMANA Vesi oli elintärkeä ja keskeinen edellytys Rooman imperiumin kehitykselle. Vedensaannin turvaamiseksi taitavimmat rakennusmestarit rakensivat valtavan pitkiä akvedukteja, joita pidetään antiikin
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.
Algoritmit 1. Luento 1 Ti Timo Männikkö
Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017