Käytöspuut ja niiden käyttö taistelupelin tekoälyssä
Keronen, Marko (2013)
Keronen, Marko
Kajaanin ammattikorkeakoulu
2013
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2013112618275
https://urn.fi/URN:NBN:fi:amk-2013112618275
Tiivistelmä
Käytöspuut ovat vielä tuore, mutta suuren luokan kaupallisissakin peleissä käytetty tekoälytekniikka, jonka avulla hallitaan monimutkaisuutta. Tämän opinnäytetyön tavoitteena on esitellä käytöspuut tekniikkana, määritellä toimivan käytöspuujärjestelmän kehityksen periaatteita, ja tarkastella käytöspuiden soveltuvuutta taistelupelin tekoälyssä.
Tekoälyllä voidaan tarkoittaa laajasti erilaisia asioita, ja tekoälyillä voi alasta riippuen olla täysin toisistaan poikkeavia tavoitteita. Peleissä tekoälyn tavoitteena on kuitenkin aina viihdyttää pelaajaa. Hauskan tekoälyn luomiseen on useita keinoja, ja tekoälyn viihdyttävyys onkin tiukasti sidoksissa kaikkiin pelin ominaisuuksiin ja järjestelmiin. Taistelupelit ovat tekoälyn kannalta erityisen haastava peligenre, sillä suuret hahmomäärät ja hahmojen yksilölliset liikkeet vaativat, että tekoälyn toimintaa voidaan hallita aina pienintä yksityiskohtaa myöten.
Käytöspuujärjestelmän toteutukseen voidaan soveltaa perusperiaatteita, joiden avulla järjestelmästä saadaan selkeä ja toimiva. Täysin uudelleenkäytettävät perusosat, osien hallintaa auttava tukijärjestelmä ja sopivilla osilla toteutettu hierarkia tekevät tekoälyn käytösmallien luomisesta sujuvaa. Lisäämällä käytöspuujärjestelmän yhteyteen sen kehitystä tukevan seurantajärjestelmän, saadaan järjestelmässä piilevät virheet löydettyä helpommin ja nopeutettua itse kehitysprosessia.
Opinnäytetyössä toteutettiin yksinkertaisen tekoälyn pohjaksi käytöspuita käyttävä tekoälyjärjestelmä taistelupeliin. Tekoälyjärjestelmän rinnalle rakennettiin seurantajärjestelmä avustamaan kehitystä. Jo yksinkertaisenkin tekoälyn toteuttaminen on äärimmäisen työlästä, ja viihdyttävän ja virheettömän tekoälyn rakentaminen on vähillä resursseilla miltei mahdotonta. Käytöspuilla rakennettu tekoälyjärjestelmä on kuitenkin tehokas tapa hallita yksilöllistä logiikkaa, ja toimii pelityypistä riippumatta.
Tekoälyllä voidaan tarkoittaa laajasti erilaisia asioita, ja tekoälyillä voi alasta riippuen olla täysin toisistaan poikkeavia tavoitteita. Peleissä tekoälyn tavoitteena on kuitenkin aina viihdyttää pelaajaa. Hauskan tekoälyn luomiseen on useita keinoja, ja tekoälyn viihdyttävyys onkin tiukasti sidoksissa kaikkiin pelin ominaisuuksiin ja järjestelmiin. Taistelupelit ovat tekoälyn kannalta erityisen haastava peligenre, sillä suuret hahmomäärät ja hahmojen yksilölliset liikkeet vaativat, että tekoälyn toimintaa voidaan hallita aina pienintä yksityiskohtaa myöten.
Käytöspuujärjestelmän toteutukseen voidaan soveltaa perusperiaatteita, joiden avulla järjestelmästä saadaan selkeä ja toimiva. Täysin uudelleenkäytettävät perusosat, osien hallintaa auttava tukijärjestelmä ja sopivilla osilla toteutettu hierarkia tekevät tekoälyn käytösmallien luomisesta sujuvaa. Lisäämällä käytöspuujärjestelmän yhteyteen sen kehitystä tukevan seurantajärjestelmän, saadaan järjestelmässä piilevät virheet löydettyä helpommin ja nopeutettua itse kehitysprosessia.
Opinnäytetyössä toteutettiin yksinkertaisen tekoälyn pohjaksi käytöspuita käyttävä tekoälyjärjestelmä taistelupeliin. Tekoälyjärjestelmän rinnalle rakennettiin seurantajärjestelmä avustamaan kehitystä. Jo yksinkertaisenkin tekoälyn toteuttaminen on äärimmäisen työlästä, ja viihdyttävän ja virheettömän tekoälyn rakentaminen on vähillä resursseilla miltei mahdotonta. Käytöspuilla rakennettu tekoälyjärjestelmä on kuitenkin tehokas tapa hallita yksilöllistä logiikkaa, ja toimii pelityypistä riippumatta.