• Ei tuloksia

Neuroverkkojen hyödyntäminen e-urheilun strategisen päätöksenteon valmennuksessa

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Neuroverkkojen hyödyntäminen e-urheilun strategisen päätöksenteon valmennuksessa"

Copied!
27
0
0

Kokoteksti

(1)

Lappeenrannan teknillinen yliopisto School of Engineering Sciences Tietotekniikan koulutusohjelma

Kandidaatintyö

Kuisma Närhi

Neuroverkkojen hyödyntäminen e-urheilun strategisen päätöksenteon valmennuksessa

Työn tarkastaja(t): D.Sc (Tech.) Ari Happonen

Työn ohjaaja(t): D.Sc (Tech.) Ari Happonen

(2)

ii

TIIVISTELMÄ

Lappeenrannan teknillinen yliopisto School of Engineering Sciences Tietotekniikan koulutusohjelma

Kuisma Närhi

Neuroverkkojen hyödyntäminen e-urheilun strategisen päätöksenteon valmennuksessa

Kandidaatintyö 2019

23 sivua (lasketaan sivujen lukumäärä kansilehdestä viimeiseen sivuun), 1 kuva, 1 taulukko, 1 liite

Työn tarkastajat: D.Sc (Tech.) Ari Happonen

Hakusanat: e-urheilu, tekoäly, koneoppiminen, neuroverkot, peliteoria, valmennus Keywords: e-sports, artificial intelligence, machine learning, neural networks, game theory, coaching

Työssä kartoitettiin tekoälyn käyttömahdollisuuksia e-urheilun valmennuksen kontekstissa.

Aihe valikoitui yrityksen toimeksiannon pohjalta Defence of the Ancients 2 (Dota 2)-pelin sisäisen strategisen päätöksenteon analysointiin. Tutkimuksen yhteydessä kehitettiin tekoälysovellus, joka analysoi ottelun datan ja antaa pelaajalle palautetta päätöksenteosta pelin kontekstissa vertaamalla pelaajan suoritusta korkeatasoisien pelaajien suorituksiin.

Kandidaatintyö keskittyy kehitystyössä esiin tulevista piirteistä, jotka tulee ottaa huomioon vastaavanlaisissa sovelluksissa toisaalta sovelluksen käyttötarkoituksen ja toisaalta koneoppimisen soveltamisen kontekstissa.

(3)

iii

ABSTRACT

Lappeenranta University of Technology School of Engineering Sciences

Degree Program in Computer Science

Kuisma Närhi

Applying neural networks to coaching strategic decision making in e-sports

Bachelor’s Thesis

23 pages, 1 figures, 1 tables, 1 appendices

Examiners: D.Sc (Tech.) Ari Happonen

Keywords: academic thesis, writing, instructions

This study explores the possibilities of using artificial intelligence in the context of e-sports coaching. The topic, analysing Defense of the Ancients 2 (Dota 2, or just Dota later on) videogames strategic decision making, was chosen due to an assignment given by a company. Alongside with the study an AI-application was created that analyses match data and gives a player feedback on his decision making in the context of the game by comparing his performance to highly skilled players performances in similar scenarios. The bachelor’s thesis focuses on the aspect of AI related software development that are particular to similar applications, on one hand due to the intended use of the app and on the other hand applying machine learning in this context.

(4)

iv

ALKUSANAT

“I need no introduction!”

- Monkey King introduction voiceline, DotA 2

Tämä kandityö aloitettiin välittömästi vuosi tekijän kandityökurssin ensimmäisen ilmoittautumiseni jälkeen. Ehkä jälkipolville voisi opettaa, että aiheen valintaan kannattaa käyttää aikaa, sillä vasta kiinnostava aihe sai allekirjoittaneen ottamaan itseään niskasta kiinni.

(5)

5

SISÄLLYSLUETTELO

TIIVISTELMÄ ... II ABSTRACT ... III ALKUSANAT ... IV

1 JOHDANTO ... 8

1.1 TAUSTA ... 8

1.2 DEFENCE OF THE ANCIENTS 2 ... 8

1.3 DOTA 2 E-URHEILUNA ... 9

1.4 TEKOÄLYN SOVELTUVUUS DOTA 2-VALMENNUSSOVELLUKSEEN, TAVOITTEET JA RAJAUS 10 1.5 TYÖN RAKENNE ... 11

2 MUU TUTKIMUS ... 12

2.1 PELITEORIA ... 12

2.2 E-URHEILU ... 12

3 TUTKIMUSMENETELMÄT ... 13

3.1 KÄYTÄNNÖN KEHITYSTYÖ ... 13

3.2 SOVELLETTAVA TUTKIMUS ... 13

4 TEKOÄLYSOVELLUKSEN KEHITYS... 14

4.1 TYÖKALUT ... 14

4.2 DATA ... 14

4.3 PARAMETRIEN VALINTA ... 14

4.3.1 Kulta ja kokemuspisteet ... 15

4.3.2 Joukkueiden hahmotappojen määrä ... 16

4.3.3 Pelikello ... 17

4.3.4 Pelikohteiden tila ... 17

4.3.5 Pelihahmojen valinnat ... 17

4.3.6 Tarvikevalinnat ... 17

4.3.7 Pelaajan toiminta ... 18

4.4 TEKOÄLYN ONNISTUMISEN MITTARI ... 19

4.5 DATAN GENEROINTI ... 21

(6)

6

5 TULOKSET ... 22 6 POHDINTAA JATKOSTA ... 23 7 YHTEENVETO ... 24

LIITTEET

LIITE 1.

Kehitystasojen XP-kertymävaatimukset ja intervallit Dota 2 patch 7.22:ssa

(7)

7

SYMBOLI- JA LYHENNELUETTELO

Dota 2 defense of the ancients 2

e-urheilu elektroninen urheilu, kilpailullista pelaamista videopeleissä e-sport electronic sport, competitive videogaming, e-urheilu englanniksi MOBA multiplayer online battle arena

MVP minimum viable product, tuotteen pelkistetty versio

MySQL avoimen lähdekoodin relaatiotietokantojen hallinnointijärjestelmä NPC non-player character, tietokoneen ohjaama hahmo pelissä

XP experience points, kokemuspisteet

(8)

8

1 JOHDANTO

Tässä kappaleessa esitellään työn taustat, työn aihe sekä työn rakenne. Aiheesta esitellään itse peli Dota 2, sen luonne e-urheilulajina sekä tekoälyn soveltuvuus tämän pelin kontekstissa.

1.1 Tausta

Työn aihe valikoitui Gamementor-nimisen yrityksen toiveesta kehittää e-urheiluun soveltuva valmennussovellus, joka hyödyntäisi tekoälyä henkilökohtaisen valmentajan korvaamiseen. Vastaavaa sovellusta ei työn alkaessa ole ollut olemassa. E-urheilu on ilmiönä uusi ja sen merkittävyys taloudellisena markkinana on noussut merkittävästi 2010-luvun aikana [1], joten on oletettavissa että uusia teknologioita hyödynnetään alalla. Teknologisen kehityksen ansiosta tekoälyn käyttö moniin uusiin tarkoituksiin tiedosta palveluihin perustuvissa sovelluksissa on lisääntynyt. [2] Vaikka kyseessä on vain yksi sovelluskohde, potentiaalinen hyöty tutkimuksesta on sovelluksille jotka työskentelevät pelien ja ihmisten rajapinnassa. Taloudellisesti katsottuna laskentatehon hinnan tippuminen on viime vuosina mahdollistanut tutkimuskohteen kaltaisten dataintensiivisten sovellusten kaupallisen sovellusten tuottamisen. [3]

1.2 Defence of the Ancients 2

Defence of the Ancients 2 (Dota 2, myöhemmin lyhyesti Dota) on Valve softwaren kehittämä videopeli, joka pohjautuu vanhaan Warcraft 3:n pelimoottoriin tehtyyn pelimoodiin. Peliä pelataan internetyhteyden välityksellä viiden hengen joukkueissa toista joukkuetta vastaan. Dota lukeutuu peligenreen multiplayer online battle arena (MOBA).

Pelin tavoitteena on tuhota vastustajan tukikohdan keskiössä oleva rakennus, Ancient. Kartta on neliön muotoinen ja tukikohdat sijaitsevat vastakkaisissa nurkissa (alavasen ja yläoikea).

Kartta on muodoltaan symmetrinen mutta yksityiskohdissa on suuriakin eroja puolittain.

Jokainen pelaaja hallitsee yhtä hahmoa, joka valitaan yli sadasta vaihtoehdosta. Kussakin ottelussa voi olla vain yksi kutakin hahmoa. Hahmot kehittyvät pelin edetessä riippuen useasta tekijästä, kuitenkin niin että hyvin pelaava joukkue tai yksilöt kehittyvät nopeammin

(9)

9

ja saavuttavat näin edun vastustajaansa nähden. Hahmoilla on suuria eroja keskenään ja niiden väliset dynamiikat vaihtelevat suuresti riippuen kaikista hahmovalinnoista, pelitavoista sekä pelaajien omista taidoista. Pelin kompleksisuutta lisää varustevalinnat, joita pelaaja voi tehdä otteluiden aikana. Varusteet muuttavat hahmojen ominaisuuksia ja kykyjä merkittävästi ja varustevalinnat saattaavat kääntää pelin kulun täysin. Tämän lisäksi peli muuttuu uusien päivitysten myötä, jotka saattavat tuoda uusia ominaisuuksia peliin, poistaa vanhoja tai muuttaa voimasuhteita pelin sisällä.

1.3 Dota 2 e-urheiluna

Perinteiseen urheiluun verrattuna e-urheilussa valmennus ja urheilupsykologia on vielä toistaiseksi varsin tuore ilmiö. Videopeleissä on kilpailtu jo vuosikymmeniä, mutta 2010- luvun alussa Dota nosti e-urheilun profiilia merkittävästi, kun pelin tekijä Valve software järjesti The International-turnauksen, jossa turnauksen pääpalkintona oli miljoonan dollarin palkintopotti. Summa oli moninkertainen aikaisempiin turnauksiin missään videopelissä ja nykyään turnausvoittojen kokonaissumman johtavan pelin Dotan, sekä toisena olevan Counter-Strike Global Offensiven välinen ero on yli 2,5-kertainen, rahallisesti yli sata miljoonaa dollaria [4], vaikka molemmat pelit ovat alle kymmenen vuotta vanhoja. (Kuva 1)

Kuva 1. Dota 2-pelaajamääriä, kuvakaappaus otettu 31.7.2019 steamcharts.com- palvelusta

(10)

10

Dotan huipputurnausten palkintorahat ovat nykyään suurempia kuin esimerkiksi golfissa.

Medianäkyvyys, palkintorahat sekä pelin kilpailuhenkinen luonne ovat merkittäviä tekijöitä pelin nousussa yhdeksi merkittävimmistä e-urheilun lajeista. Dotaa on enimmillään pelannut lähes 1,3 miljoonaa henkilöä yhtäaikaisesti sekä saavuttaa säännöllisesti yli puolen miljoonan keskimääräisen pelaajamäärän [5], mikä viittaa laajaan harrastajapohjan kokoon.Tällä hetkellä e-urheilun valmennuspalvelut ovat lähinnä datan tilastointipalveluita tai henkilökohtaista valmennusta korkeatasoisilta pelaajilta.

1.4 Tekoälyn soveltuvuus Dota 2-valmennussovellukseen, tavoitteet ja rajaus

Virtuaalisen luonteensa ansiosta Dota 2:sta saatava pelidata on suoremmin saatavissa kuin tosielämästä esimerkiksi kuvantunnistuksen kautta parsimalla. Luvussa 1.2 esitelty Dota 2:n kompleksisuus tuo perinteisen algoritmin luomiseen lukuisia muuttujia. Lisäksi inhimillinen elementti kuten trendit pelaajien keskuudessa, tekee yksiselitteisen algoritmin kehittämisestä vaikeaa. Tekoäly keskittyy suurien datamäärien osoittamiin tilastoihin todellisesta tilanteesta ja sen voi kouluttaa uudestaan päivitysten tai muun tarpeen mukaan. Näin voidaan osoittaa, mitkä valinnat ovat johtaneet parempaan voittotodennäköisyyteen korkeatasoisten pelaajien välisissä otteluissa. Neuroverkkojen perusajatus luoda kompleksisista parametreistä vastauksia kuvaa sovelluksen tavoitetta hyvin. Työn tavoitteena on selvittää yleiset neuroverkkojen soveltamisen muuttujat ja löytää e-urheilun kontekstin tuomat erityispiirteet, jotka tulee ottaa huomioon kehitysprosessissa. Ohessa on tavoitteena, mikäli mahdollista kouluttaa tekoälysovellus, joka antaa dataan pohjautuvaa palautetta pelaajan suorituksesta. Vaatimusmäärittely on tullut yrityksen kanssa käydyn keskustelun pohjalta, joten työssä keskitytään nimenomaan neuroverkon vaatimiin parametreihin, funktioihin ja lopputuloksen verifiointiin. Toisaalta datanlähteen ollessa videopeli, myös datan määrän tuomat taloudelliset tekijät sekä aika-, sekä prosessointi-intensiivisyys ovat tutkimuksen kohteena. Työn ohessa kehitettävä sovellus tulee olemaan keskittynyt vain yhden hahmon pelaamisen valmennukseen, eikä sovelluksen kehityksessä keskitytä muuhun kuin konseptin kehityskelpoisuuden toteamiseen. Käytettävyystekijät rajataan täysin ulos. Tekoälyn kouluttamiseen tarvittava data on parsittavissa peliin luotujen rajapintojen kautta, mutta kehitystyössä keskitytään vain tekoälyyn ja käytetään generoitua dataa. Koska

(11)

11

yhteistyöyrityksen tehtävänantona on pienin toimiva tuote (minimum viable product, MVP), päädyttiin keskustelun pohjalta toteuttamaan työssä yhteen hahmoon keskittyvä sovellus.

Tähän päädyttiin, koska tavoitteena oli ylipäätään testata konseptin toimivuutta. Lisäksi tämä rajaa tarvittavaa datamäärää ja sitä kautta myös tekoälyn koulutukseen tarvittavaa prosessointityötä ja koska pelissä on lukuisia hahmoja joiden ominaisuudet pelin sisällä vaihtelevat merkittävästi, olisi joka hahmon valmentamiseen luodun tekoälyn koulutus jo pelkästään hahmojen määrän perusteella yli satakertainen. Hahmoksi valikoitui yrityksen kanssa käytyjen keskusteluiden pohjalta Monkey King, joka on hahmona monipuolinen ja pelitapoja hahmolle on useita. Tavoitteena on todistaa, että verrattain monimutkaiselle hahmolle valmentajatekoälyn koulutus on mahdollista, joka johtaisi siihen että koulutus myös suoraviivaisemmille hahmoille on tehtävissä. Hahmovalintaa puolsi toimeksiantavan yrityksen suositus, hahmon suosio sekä roolituksen monipuolisuus, sillä hahmolla ei ole yksiselitteistä, vakiintunutta pelitapaa vaan se mukautuu roolituksen ja pelitilanteen mukaan verrattain paljon [6].

1.5 Työn rakenne

Luku 2 käsittelee aiheesta jo kirjoitettua tutkimusta. Luku 3 kuvaa tutkimuksen menetelmiä ja kehitystyöhön vaikuttavia perustavia teorioita. Itse kehitysprosessi, valitut parametrit ja valintojen perustelut käsitellään luvussa 4. Luvussa kuvataan myös syvällisemmin pelin mekaniikkoja sekä tekoälyn koulutettamiseen käytettävää dataa. Luku 5 pitää sisällään kehitystyön lopputuleman, kun taas luvussa 6 puhutaan yleisesti tuloksista, mahdollisuuksista jatkokehitykseen, konseptin toimivuudesta sekä eri pelien soveltuvuutta vastaavien sovellusten kehittämiseen.

(12)

12

2 MUU TUTKIMUS

Tässä Kappaleessa kuvataan aiheesta löytynyttä olemassa olevaa tutkimusta ja työn kannalta oleellista peliteoriaa.

2.1 Peliteoria

Sovelluskehityksen perustana on itse videopeli Dota 2 ja sen tieteelliseen analysoitiin peliteoria on soveltuva työväline. Tiivistettynä peliteorian mukaan pelaaja yrittää maksimoida oman hyötynsä todennäköisyydet [7], eli tehdä valintoja jotka todennäköisimmin johtavat suurimpaan hyötyyn. Koska Dota 2:ssa lopullinen hyöty mitataan binäärisesti voitoilla tai tappioilla, on luontevaa etsiä tekijöitä, jotka vaikuttavat voiton todennäköisyyteen.

2.2 E-urheilu

E-sport on tutkimusalueena hyvin tuore. Ruotsissa on tutkittu e-urheilijoiden ominaisuuksia urheilulääketieteen perspektiivistä[8], mutta tutkimus ei löytänyt merkittäviä eroja huippupelaajien ja harrastajien välillä. Testit olivat yleisiä kognitiivisia testejä sekä fyysisen suorituskyvyn mittauksia, mikä saattaa viitata siihen, että pelaajien pelikohtaiset taidot ja pelintuntemus ovat oleellisia tekijöitä huippupelaajien ja harrastelijoiden erottavissa ominaisuuksissa. Toisessa urheilijoihin keskittyvässä tutkimuksessa päädyttiin ehdottamaan perinteisen urheilupsykologian soveltamisen e-urheiluun tutkimista[9], mikä saattaisi johtaa tuloksiin jotka rinnastaisivat nämä kilpailun alat psykologisessa mielessä toisiinsa. Tämä tukisi käsitystä siitä, että valmennus ja harjoittelu ovat e-urheilussa hyödyllisiä siinä missä perinteisissäkin urheilulajeissa. Valmennusta e-urheilusta ei ole tutkittu laajemmin, mutta tosielämässä ammattilaisjoukkueissa on valmentajat [10] ja verkkovalmennuspalveluita on tarjolla harrastajille [11].

(13)

13

3 TUTKIMUSMENETELMÄT

Tutkimusmenetelmistä esitellään työn sisällönluontiin käytetyt metodit, tässä tapauksessa käytännön kehitystyö josta kirjoitetaan sekä sovellettava tutkimus, joka ohjasi kehitystyötä.

3.1 Käytännön kehitystyö

Käytännön sovelluskehitystä tehdessä voidaan havaita kehittäjän omien kokemuksien kautta huomioita tekoälyn soveltamisessa uudenlaisessa kontekstissa, koska olemassa olevaa esimerkkiä tekoälysovelluksesta tai vastaavaa tutkimusta ei löytynyt. Dota 2:ta pelaava tekoäly OpenAI-projekti [12] on teknisesti läheinen neuroverkkojen sovellus, mutta valmennuskontekstissa projektista ei ole suoraan hyödynnettävää tietoa. Tiedon parsintaa Dota-otteluista on tehty esimerkiksi opendota- ja dotabuff-palveluissa.

3.2 Sovellettava tutkimus

E-urheilun kontekstissa on luontevaa kääntyä peliteoriaan, kun perustellaan tekoälyn kouluttamiseen käytetyn datan parametrien valintaa. Peliteorian sovittaminen Dota 2:een on toteutettu yrityksen edustajien kanssa käytyjen keskustelujen sekä kehittäjän oman pelintuntemuksen pohjalta. Myös sovelluksen käyttötarkoitus ja yrityksen antama tehtävänanto ohjaa kehitystyössä merkittävästi. Työn valmistumisen edellytyksenä on syvennytty neuroverkkojen toimintaperiaatteisiin.

(14)

14

4 TEKOÄLYSOVELLUKSEN KEHITYS

4.1 Työkalut

Sovellus toteutettiin Python-ohjelmointikielen 3-versiolla. Tekoälyn luomiseen käytettiin mysql-tietokantaa sekä numpy- lasagna- sekä theano-kirjastoja, jotka on tarkoitettu tekoälyohjelmointiin sekä matematiikkaan. Pythoniin päädyttiin toisaalta kielen yleisyyden ja tunnettavuuden puolesta. Python oli myös tehtävänantaneen yrityksen edustajille tuttu ja siten luonteva valinta MVP:n luomiseen. Lasagnan ja siihen kuuluvaa theanon ja numpyn käyttämiseen päädyttiin tekoälyyn tutustuneen tutkijan suosituksen kanssa käydyn keskustelun pohjalta, jossa tätä yhdistelmää suositeltiin aloittelevalle tekoälyohjelmoijalle.

[13] Lasagna on neuroverkkoihin tarkoitettu python-kirjasto, joka hyödyntää matemaattisissa funktioissa theano- ja numpy-kirjastoja. MySQL valittiin tietokannan suoritustavaksi, sillä sen käyttäminen python-sovelluksessa oli kehittäjälle tuttu ja sitä kautta nopeutti kehitysprosessia merkittävästi.

4.2 Data

Tekoälyn koulutukseen tarvitaan syötettäväksi dataa ja tuloksen tarkistamista. Dota 2:n rajapinta tarjoaa mahdollisuuden parsia koko pelin uusintatiedosto, joten teoriassa kaikki on mahdollista parsia dataksi. Koska kehitystyön tavoite on keskittyä tekoälyyn ja parserin toteuttaminen osoittautui kehitystyössä kohtuuttoman työlääksi, päätyi Gamementor ja kehittäjä generoimaan testidataa valituilla parametreilla, jotka noudattavat teennäisiä sääntöjä. Mikäli tekoäly pystytään kouluttamaan annetulla generoidulla datalla, pystytään se jatkossa kouluttamaan myös tosielämän otteludatalla.

4.3 Parametrien valinta

Sovelluksen tarkoituksena on kertoa pelin käännekohdan valintojen vaikutus voiton todennäköisyyteen. Parametrien tulee heijastaa tätä ja niiden tulee olla avainlukuja, jotka kertovat pelaajan tekemistä valinnoista ja niiden vaikutuksesta pelin kulkuun. Peliteoriaan tukien voidaan todeta, että pelaaja pyrkii tekemään valintansa maksimoiden oman voittonsa todennäköisyyden. Dotan kompleksisuuden vuoksi täysin yksiselitteisiä vastauksia on lähes mahdoton löytää, joten pelissä kannattaa keskittyä suuriin yksittäisiin päätöksiin. Luvussa 3.1. esitellyt parametrit ovat sinänsä hyviä indikaattoreita pelin etenemisestä, mutta niiden

(15)

15

väliset vaikutukset ja juuri aiemmin mainittu kompleksisuus vaatii sovellukselta syvempää analyysiä. Pelin avoin rajapinta antaa kaiken tarvittavan datan sovelluskehittäjän käyttöön, mutta aivan kaiken datan sisällyttäminen johtaisi prosessoitavan datan määrän ja neuroverkon vaatimien kerrosten määrän huomattavaan kasvuun, eikä läheskään kaikki data ole yhtä oleellista valmentamiseen vaadittavan tiedon kannalta.

4.3.1 Kulta ja kokemuspisteet

Pelin hahmot keräävät kahta resurssia jotka auttavat pelaajaa voittamaan vastustajansa: kulta (gold, otteluissa käytettävä valuutta) ja kokemuspisteet (experience points, xp). Kultaa kertyy passiivisesti pieni määrä mutta etulyöntiaseman voi saavuttaa keräämällä sitä muista lähteistä enemmän kuin vastustaja: areenalla olevien koneohjattujen yksiköiden (non-player controlled characters, NPC) tappamisesta, vihollisten tappamisessa tai siinä auttamisessa sekä vihollisen tukikohdan osien kuten tornien tai kasarmien tuhoamisella. Pelaaja voi käyttää kerryttämäänsä kultaa ostamalla esineitä hahmolleen, jotka parantavat hahmon kykyjä tai antavat uusia toimintoja pelaajan käyttöön. Etulyöntiaseman kannalta on oleellista huomioida, että pelaajan hahmon kuollessa hän menettää osan varoistaan. Menetys skaalaa pelaajan nettonykyarvon mukaan kaavalla 1. kullan menetys (L) on hahmon nettonykyarvo (N) jaettuna 40:llä.

(1) Kokemuspisteet kertyvät, kun pelaaja on 1300 pelinsisäisen etäisyysyksikön sisällä kuolevasta puolueettomasta tai vastustajajoukkoeen NPC:stä tai pelaajahahmosta, jonka tappo merkitään joukkoeelle. Pelaajat voivat “kieltää” (deny) omia joukkojaan, josta he saavat pienen kultamäärän ja mikä tärkeintä, vähentävät vastustajan saaman kokemuspisteiden määrää 60 prosentilla. Tietyissä tilanteissa pelaajan hahmon tai pelaajan hallitseman erillisen yksikön voi myös kieltää, jolloin vastustaja ei saa taposta yhtään

(16)

16

kokemuspisteitä. Eri NPC:t antavat eri määrät XP:tä ja kultaa, joten niiden tappamisen kertymä on vain suuntaa antava lukema. Kokemuspisteiden tietyillä väliajoilla hahmot saavat eri tasoja (Liite 1), jotka kukin antavat pelaajan valittavaksi rajatut hahmon kykyjen kehitysvaihtoehdot. Nämä valinnat muokkaavat hahmon pelityyliä ja saattavat vaihtua tilanteen ja pelaajan mukaan. Ne ovat näin ollen merkittävä muuttuja joka tulee ottaa huomioon. Tarkat kulta- ja xp-määrät ovatkin myös pelin sisäisesti yleisesti käytetyt mittarit jotka valikoituivat oleellisiksi parametreiksi. Koska pelissä pelataan vastustajaa vastaan, on myös oleellista tietää oman ja vastustajan kulta- ja xp-määrien erot. Näissä viiden hengen joukkueiden kokonaissummat ovat hyviä suunnanantajia sille, kumpi joukkue johtaa kussakin pelin vaiheessa.

4.3.2 Joukkueiden hahmotappojen määrä

Pelaajien tappojen määrä on hyvä indikaattori pelin kulusta. Mikäli toinen joukkue johtaa tässä luvussa merkittävästi, on oletettavissa, että pelaajien hahmojen väliset taistelut päättyvät pääosin toisen joukkueen eduksi. Tämäkään ei ole täysin varma mittari, sillä pelkillä tapoilla peliä ei voi voittaa. Kuitenkin peliteorian mukaan edun antava teko, tässä tapauksessa vihollishahmon tappaminen, parantaa voittotodennäköisyyttä ja tämä osoittautuu tilastojen valossa todeksi taulukossa 1, joka kuvaa ammattilaisotteluiden tappomäärien ja voittojen määriä [14].

Taulukko 1. Hahmojen tappojen määrät voitetuissa ammattilaisotteluissa aikavälillä 10.6.2019-10.7.2019

Tappojen määrä Otteluiden lukumäärä

voittajalla enemmän 8460 joukkueilla yhtä paljon 130 voittajalla vähemmän 790

(17)

17 4.3.3 Pelikello

Tähän mennessä esitetyt parametrit ovat kertymiä, joten kun tarkastellaan yksittäistä ottelun sisäistä päätöstä, on otettava huomioon, että lukemat tarkoittavat eri asioita eri pelin vaiheissa. Näin ollen on kriittistä, että ajankohta on yksi parametri data-alkioissa. DotA 2 pyörii 30 tickiä sekunnissa, eli peliaikaa voidaan mitata sekunnin kolmaskymmenesosina pelin alusta.

4.3.4 Pelikohteiden tila

Molemmilla joukkueilla on kartalla rakennuksia, jotka ovat heidän puolellaan. Näitä tuhoamalla joukkue saa merkittävän määrän resursseja ja eliminoi vastustajalta ylimääräistä kontrollia tietystä peliareenan osasta. Jotkut kohteista, kuten kasarmit aiheuttavat merkittävän ja pysyvän edun tuhoavalle joukkueelle. Kohteiden tila voidaan antaa yksittäisinä totuusarvoina parametreiksi.

4.3.5 Pelihahmojen valinnat

Dotan hahmojen eroavat toisistaan merkittävästi ja niiden väliset suhteet ovat kuin monimutkaisesta kivi-sakset-paperi-pelistä; tietyt hahmot ovat vahvoja toisia vastaan ja jotkut hahmot pelaavat hyvin yhteen samassa joukkueessa. [15] Hahmovalinnat on mahdollista parsia API:n tarjoamasta datasta ja merkittävissä yksittäisenä integerinä parametriksi.

4.3.6 Tarvikevalinnat

Pelihahmo voi kantaa kerrallaan kuutta aktiivista tarviketta ja kolmea epäaktiivista tarviketta. Aktiiviset tarvikkeet parantavat kantajansa kykyjä tai antavat uusia toimintoja pelaajan käyttöön. Tarvikevaihtoehtoja on lukuisia ja niiden käyttö on pelaajakohtaista.

Tilastollisesti voidaan kuitenkin todeta tiettyjen tarvikkeiden erityinen hyödyllisyys tietyillä hahmoilla tietyissä tilanteissa ja niiden muutokset trendien mukaan. [16] On myös huomioitava jokaisen hahmon valinnat, sillä tarvikkeilla on oma oleellinen osansa Dotan kivi-sakset-paperi-tyylisessä luonteessa.

(18)

18

Kuva 2. Monkey Kingin tarvikkeiden esiintyminen otteluissa ja otteluiden voittoprosentit 31.7.2019 Dotabuff-palvelussa.

4.3.7 Pelaajan toiminta

Parametrina pelaajan toiminta tarkasteltavana hetkenä on koko sovelluksen keskiössä; onko toiminta strategisesti järkevää? Pelin uusinnan datasta on mahdollista parsia ja luokitella pelaajan toiminta peliyhteisön yleisesti käytössä oleviin kategorioihin. Nämä voidaan osoittaa tietyn muuttujan integer-arvoiksi.

Laning, kaistalla pelaaminen

Pelin kolmen pääkaistan varrelle ohjautuu jatkuva virta joukkoeiden NPC:itä, jotka tarjoavat kullan ja xp:n lähteitä tasaisesti. Tämä on pelin alkuvaiheessa yleisin tapa kerätä hahmolle resursseja.

Jungling

Pelikaistojen väleissä on alueita, joihin peli luo neutraaleja NPC:itä. Yleisesti ottaen resursseja ei ole tarjolla yhtä paljon kuin kaistoilla, mutta pelaaja on paremmassa turvassa vihollisilta.

Pushing, pelitavotteiden valtaus

Vihollisten karttapuoliskolla on kohteita, joita tuhoamalla pystyy kerryttämään omalle joukkueelle merkittävän määrän resursseja samalla rajaten vastustajan kartanhallintaa. Pelin

(19)

19

voittamiseksi tämä on viime kädessä tärkeintä, mutta puolustavalla joukkueella on lähtökohtaisesti merkittävä etu kohteiden läheisyydessä taisteltaessa.

Teamfight, joukkuetaistelu

Peli ajautuu edetessään usein tilanteeseen, jossa joukkueet kohtaavat ja taistelevat keskenään, esimerkiksi vastustajan kohteiden tuhoamisen yhteydessä. Koska hahmojen tapot ja kuolemat aiheuttavat merkittäviä muutoksia kulta- ja xp-kertymissä on onnistunut joukkuetaistelu suuri etu joukkueelle. Joukkue joka on vahvoilla, pyrkii usein pakottamaan vastustajat tilanteeseen, jossa he joko menettävät kohteen kartalta tai joutuvat joukkuetaisteluun joka ei ole heille suotuisa.

Gank, ylläkkö

Joukkueen pelaaja tai useampi pelaaja voi yrittää löytää ja yllättää vastapelaajia ja tappamalla näitä hankkia ylimääräistä etua resursseissa omalle puolelleen.

Roshan

Kartalla on erikois-NPC Roshan, jonka taso skaalaa pelikellon mukaan. Roshan pudottaa kuollessaan aegis of the immortal-esineen, joka palauttaa kantajansa takaisin henkiin mikäli hahmo kuolee. Roshanin tappo antaa myös merkittävän määrän resursseja joukkueelle, joka tekee kuolettavan hyökkäyksen Roshanille.

4.4 Tekoälyn onnistumisen mittari

Neuroverkkojen koulutus perustuu iteraatioiden tuloksien vertaamista haluttuun lopputulokseen. Dota-pelien yksittäisen päätöksen vaikutus saattaa olla moneen edellisessä kappaleessa esiteltyyn parametriin positiivinen yksittäin tarkasteluna, mutta ainoastaan pelin voittamisella on kilpailullisessa pelissä väliä; yksittäinen korkeatasoinen suoritus ei tuo lisäpisteitä. Tekoälyn päämääräinen koulutustavoite on arvioida pelitilanteen pohjalta voittaako vai häviääkö arvioitava pelaaja ottelun. Kun otteludataa on riittävästi, on odotettavissa että yksittäisten hyvien päätösten korrelaatio voittamiseen on tilastollisesti selkeä. Tätä tukee yleisesti saatavilla oleva otteludata, jossa esimerkiksi tiettyjen kykyjen valinnan priorisoimisella on korkeampi voittotodennäköisyys vaihtoehtoihin nähden. [17]

Alaluvun 3.3.7. vaihtoehtoja on näin koulutetun tekoälysovelluksen avulla mahdollista vertailla ja sovellus voi antaa arvionsa voittotodennäköisyyksistä toteutuneen valinnan ja vaihtoehtojen välillä. Kun parametrit ovat päätetty oikein, voidaan ottaa pelillinen tilanne

(20)

20

mahdollisimman hyvin huomioon, kun tekoälyllä on mahdollisimman paljon tosielämän dataa käytettävissä koulutukseen.

Kuva 3. Monkey Kingin kykyvalintojen tilastoja 31.7.2019 Dotabuff.com-palvelussa

(21)

21 4.5 Datan generointi

Tekoälyn koulutukseen käytettäviä data-alkioita generoitiin 10 000 kappaletta, jotka esittivät yksittäisen pelitilanteen poikkileikkausta esitetyillä parametreillä. Näiden lisäksi vastaavaa dataa generoitiin vielä 1000 alkiota, joilla verifioidaan koulutuksen onnistuminen.

Generointi toteutettiin yksinkertaisella python-skriptillä. Lukuihin päädyttiin prosessointitehon kohtuullistamiseksi, lisäksi vastaavan magnituudin datamäärää käytettiin myös lasagnan tutoriaalissa, joka saavutti uskottavan tarkkuuden (>90%) tuloksia. Generoitu data noudattaa tietyllä varianssilla ja satunnaisuudella ennaltamäärättyjä sääntöjä jotka mallintavat teennäisiä pelitilanteita, tuottaen sinänsä pelin kontekstissa realistisia lukuja jotka korreloivat voittamisen kanssa dataa varten tehtyjen funktioiden mukaisesti.

(22)

22

5 TULOKSET

Tekoäly saatiin koulutettua antamaan oikeat suositukset pelaajan suorituksen parantamiseksi generoidun datamallin mukaisten syötteiden pohjalta Gamementor-yrityksen kanssa sovitun onnistumisprosentin ylittävällä tarkkuudella (>90%), eli tekoäly antoi oikeita arvoja annetun datan pohjalta rajan ylittävällä tarkkuudella rajallisen prosessoinnin ollessa saatavilla.

Vastaus antaa pelaajan näkökulmasta oman pelitilanteessa tehdyn valinnan tilastollisen voittotodennäköisyyden muihin vaihtoehtoihin verrattuna ja sen ympärille on mahdollista rakentaa pitkälle hiottu kuluttajakäyttöön tarkoitettu sovellus. Tekoälyn tarkkuutta voidaan parantaa lisäämällä prosessointiresursseja tekoälyn koulutuksessa ja mahdollisesti todellisen datan analysoinnin pohjalta tehdyllä parametrien optimoinnilla. Yleisesti ottaen tämä työ on ollut todisteena konseptin toimivuudesta ja mahdollistaa muiden pelien avoimen datan hyödyntämisen valmennussovelluksissa. Kehitystyön haastavin osuus oli parametrien valitseminen, mikä vaati toisaalta peliteorian soveltamista myös syvällistä pelintuntemusta ja perehtymistä olemassaolevaan otteludataan. Neuroverkon itsensä koodaaminen oli suhteellisen suoraviivainen prosessi, kun neuroverkkojen koodaaminen lasagnalla ja pythonilla oli hallussa. Palautteen perusteella gamementor näki sovelluksen jatkokehittämisessä potentiaalia ja totesivat sen käyttökelpoiseksi. Työn selvityksen laajuus tyydytti yrityksen vaatimukset ja työstä pyydettiin esittelymateriaalia potentiaalisille sijoittajille.

(23)

23

6 POHDINTAA JATKOSTA

Sovelluksen toimivuus on osoitus kompleksin ongelman, tässä tapauksessa pelin sisäisen suorituksen analysoinnin, taipuvan hyvin neuroverkoille pureksittavaan muotoon.

Vastaavan projektin kehityksessä erityisen tärkeäksi nousi syvä ymmärrys pelistä itsestään.

Peliä pitkään pelanneilla ja/tai ammattilaista e-urheilua seuranneilla henkilöillä on kokemuksen tuoma näkemyksensä pelin lainalaisuuksista. Valmennuksen näkökulma tuo myös vaatimuksena erityisen ymmärryksen pelistä kokonaisvaltaisena e-urheilulajina.

Tekoälyn tuottaman datan tulee antaa pelin kontekstissa merkittäviä vastauksia joista pystyy koostamaan rakentavan palautteen pelaajan suorituksesta. Yleinen peliteorian ja tietokonepelien tuntemus auttaa tiedostamaan selvät resurssit ja parametrit, joita seuraamalla voi luoda syvempää ymmärrystä pelin tilasta. Pelien monimuotoisuus johtaa väistämättä siihen, että yhtä sovellusta ei voi sellaisenaan käyttää useassa pelissä, vaan parametrit ja mitattavat tulokset ovat mietittävä jokaisen pelin omassa kontekstissa. Tässä ensiarvoista on löytää pelin asiantuntija kehittämään sovellusta, mutta teoriapohjalta peliteoriaa soveltamalla voidaan saada syvempää ymmärrystä pelin mekaniikoista ja luonteesta. Dota 2 osoittautui erinomaiseksi valinnaksi lähestyttävänä pelinä erityisesti avoimen rajapintansa puolesta. Kokonaisen sovelluksen luonnissa parserin teko vaikuttaa erityisen työläältä näinkin hyvällä datan saatavuudella ja vaikeutukset tähän työvaiheeseen saattavat kaataa koko kehitystyön heti kättelyssä.

(24)

24

7 YHTEENVETO

Työn tavoitteena oli luoda MVP neuroverkkoihin pohjautuvan tekoälyn soveltuvuutta e- urheilun strategisen päätöksenteon valmentamisessa. Kohteeksi valittiin Dota 2-peli ja Monkey King-hahmo. Työssä tutkittiin neuroverkkojen vaatimien parametrien valintaa ja sovellustyötä yleisesti pelin kontekstissa. Työn aihe pohjautui Gamementor-yrityksen tehtävänantoon kehittää MVP tekoälyvalmennussovelluksesta. Valmennuksen ja e-urheilun välistä ei löytynyt vastaavaa tutkimusta ja e-urheilu yleisesti on uusi ja tutkimusta kaipaava ala. Perinteisten urheilulajien valmennuksesta on olemassa laajalti tutkimusta ja esimerkiksi konenäön luomaa dataa on jo pyritty hyödyntämään koneoppimisen kautta suoritusten analysoinnissa. Työn lopputulemana saatiin kehitettyä tekoäly, joka pystyi antamaan datan perusteella oikeellisia vastauksia. Vaadittava data on mahdollsita saada Dota:sta ulos ja se pystytään sovelluksessa pukemaan muotoon, joka antaa rakentavaa palautetta pelaajalle omasta suorituksestaan. Työn tulos on positiivinen merkki Gamementorille ja yleisesti siitä, että tekoälyä voidaan soveltaa valmennussovelluksissa. Kun tekoälyn viabiliteetti oli koko tutkimuksen ytimessä, voidaan todeta vastauksen olevan selkeä. Lopullinen tuote jääkin yrityksen tai kilpailijoiden omiin käsiin. Tämä työ on keskittynyt yhden pelin strategiseen päätöksentekoon, mutta vastaavaa dataa voi lähteä parsimaan syvällisemmin ja ottaa mukaan muutkin e-urheilun muuttujat: pelaajat inhimillisenä tekijänä myös fyysisinä datalähteinä:

henkinen kantti ja stressinsietokyky, joukkuekemiat ja riskinottokynnys.

(25)

25

LÄHTEET

[1] Happonen A., Minshkina D., 2019 Professionalism in Esport: Benefits in Skills and Health & Possible Downsides, LUT Reports series, report number 90, ISBN 978-952-335- 374-9, p. 36, DOI: 10.13140/RG.2.2.28958.59208

[2] Kortelainen, H., Happonen, A., 2017, Digitalisaatio muokkaa tiedon hallintaan pohjautuvien palveluiden markkinoita, In VTT Blog, DOI: 10.13140/RG.2.2.10075.52006, Last visited (2019-07-31)

[3] Kortelainen, H., Happonen, A., Hanski, J., 2019, From Asset Provider to Knowledge Company—Transformation in the Digital Era., In: Asset Intelligence through Integration and Interoperability and Contemporary Vibration Engineering Technologies. Lecture Notes in Mechanical Engineering. Springer, Cham, ISBN: 978-3-319-95710-4, p. 333-341, DOI:

https://doi.org/10.1007/978-3-319-95711-1_33

[4] E-sports earnings, Top games awarding prize money [verkkodokumentti]. [Viitattu 30.7.2019]

https://www.esportsearnings.com/games

[5] steamcharts.com, Dota 2 steam charts. [verkkodokumentti]. [Viitattu 30.7.2019]

https://steamcharts.com/app/570

[6] Elo Entertainment LLC., Monkey King – Melee, Carry, Disabler, Escape, Initiator

[verkkodokumentti]. [Viitattu 15.7.2019]

https://www.dotabuff.com/heroes/monkey-king

[7] Heap, S. H. & Varoufakis, Y. (1995). Game theory: A critical introduction. London:

Routledge.

[8] Ferm A., Galle S. 2013 Testing e-sport athletes – A study on competitive gaming, The Swedish school of sport and health sciences, Bachelor degree project 157:2013 http://gih.diva-portal.org/smash/get/diva2:721155/FULLTEXT01.pdf

[9] Szasz R, 2014 Investigating e-Sport from a sport psychological perspective, Högskolan I Halmstad, Thesis

http://hh.diva-portal.org/smash/get/diva2:724198/FULLTEXT01.pdf

[10] Kennard S. 2018, JoinDota.com The coaches of Dota 2 [verkkodokumentti]. [Viitattu 16.7.2019]

https://www.joindota.com/en/news/76563-the-coaches-of-dota-2

(26)

26

[11] Gamer Sensei Dota 2 personal coaching service, [Verkkodokumentti]. [Viitattu 21.8.2019] https://www.gamersensei.com/games/dota-2-coaching

[12] OpenAi Five, 2019, [verkkodokumentti]. [Viitattu 9.9.2019]

[13] Haastattelu kuusijärven rannalla Laukaalla, 13.7.2018, FM L. Leppänen

[14] The OpenDota Project, 2019 Data Explorer – Professional Dota 2 Stats [verkkodokumentti]. [Viitattu 15.7.2019]

https://www.opendota.com/explorer

[15] The OpenDota Project, 2019 Monkey King Matchups[verkkodokumentti]. [Viitattu 15.7.2019]

https://www.opendota.com/heroes/114/matchups

[16] Elo Entertainment LLC. Monkey King – Items [verkkodokumentti]. [Viitattu 15.7.2019]

https://www.dotabuff.com/heroes/monkey-king/items

[17] Elo Entertainment LLC. Monkey King – Builds [verkkodokumentti]. [Viitattu 15.7.2019]

https://www.dotabuff.com/heroes/monkey-king/builds

(27)

LIITE 1.

Kehitystasojen XP-kertymävaatimukset ja intervallit Dota 2 patch 7.22:ssa Hahmon taso Vaadittu kokonais-xp seuraavaan tasoon

vaadittu xp

1 0 230

2 230 370

3 600 480

4 1080 580

5 1660 600

6 2260 720

7 2980 750

8 3730 780

9 4510 810

10 5320 840

11 6160 870

12 7030 900

13 7930 1225

14 9155 1250

15 10405 1275

16 11680 1300

17 12980 1325

18 14305 1500

19 15805 1590

20 17395 1600

21 18995 1850

22 20845 2100

23 22945 2350

24 25295 2600

25 27895 -

Viittaukset

LIITTYVÄT TIEDOSTOT

Pohjois-Savon TE-keskuksen lausunnon johdosta hakija lausuu, että pintavalutuksella puhdistettujen kuivatusvesien johtamisesta ei aiheudu noin 23 km:n päässä tuotantoalueen

Selostuksessa tulee tarvittavaa lannan varastointitilavuutta ja levitysalaa arvioitaessa ottaa huomioon hankkeesta vastaavan molempien..

• paikallisen talouden monipuolistaminen ja sen varmistaminen, että työntekijöillä, joihin siirtymä vaikuttaa, on tarvittavaa

Pelien harrastajat saattavat toisaalta pelata myös vastak- kaista sukupuolta edustavia hahmoja, monistakin syistä: hahmoilla saattaa olla hieman erilaiset toiminnallisuudet

Tämä tarkoittaa, että parannusten avulla hukkaa ja tarvittavaa työtä on saatu vähennettyä, kun taas lisäarvoa tuottavaa lisättyä.. Läpimenoaika väheni noin viisi

Samalla kuitenkin myös sekä systeemidynaaminen mallinnus että arviointi voivat tuottaa tarvittavaa tietoa muutostilanteeseen hahmottamiseksi.. Toinen ideaalityyppi voidaan

− valmistuksenohjaukseen tarvittavaa tietoa saadaan kumppanilta oikeaan aikaan ja tieto on hyödynnettävissä olevaa & päähankkija ja alihankkija kehittävät toimin-

Lisääntyvästä ohjelmisto- ja pal- velutarjonnasta huolimatta valtaosa kustantajista ymmärtää, että tekoälyn hyödyntäminen edellyttää myös oman organisaation