Adaptiivinen ja reaktiivinen vihollistekoäly
Kojo, Aapo (2025)
Kojo, Aapo
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202504015404
https://urn.fi/URN:NBN:fi:amk-202504015404
Tiivistelmä
Opinnäytetyössä selvitettiin, mitä adaptiivinen ja reaktiivinen vihollistekoäly tarkoittavat ja miten ne vaikuttavat pelikokemukseen. Unreal Engine 5 - pelimoottoria käyttäen myös toteutettiin kyseinen tekoäly.
Aluksi opinnäytetyössä käytiin läpi esimerkein, mitä adaptiivinen ja reaktiivinen käyttäytyminen peleissä tarkoittaa. Adaptoituvan käyttäytymisen tekemiseen käytetään yleensä oppimisalgoritmeja, mutta tässä työssä se jätettiin pois ja tutkittiin, kuinka adaptoituvuutta voi tehdä muulla tavalla. Oppimisalgoritmit jätettiin pois käytettävissä olevien resurssien ja ajan takia. Vihollistekoälyn tekeminen ilman oppimisalgoritmiä oli myös yksi kiinnostuksen kohde. Vihollistekoälyn pohjan vaatimat osat, kuten käyttäytymispuu ja blackboard käytiin läpi, ja kerrottiin, mitä eri osia ne sisältävät ja vaativat toimiakseen.
Teko-osuudessa aloitettiin luomalla vihollistekoälylle modulaarinen pohja ja miten tekoälyn eri osat yhdistyvät. Pohjaa luotaessa otettiin huomioon sen lopputarkoitus ja se mielessä luotiin kohtia, joita pystyi myöhemmin jatkamaan tai kehittämään. Pohjan luonnin jälkeen tekoälylle luotiin kaksi reaktiivista ominaisuutta, jotka olivat etsintä ja puolustautuminen. Reaktiivisuuden etsintää kehitettiin pidemmälle seuraavassa osiossa eli adaptiivisuuden toteutuksessa. Se sisälsi myös tavan ohjata tekoäly pelaajan luo.
Lopputuloksena saatiin modulaarinen tekoälyn pohja, joka sisältää sekä reaktiivisia että adaptiivisia toteutuksia. Tekoälyn kehitysprosessista ja sen keskeisistä osa-alueista opittiin paljon. Jatkotyöstäminen on myös helppoa halutessaan.
Aluksi opinnäytetyössä käytiin läpi esimerkein, mitä adaptiivinen ja reaktiivinen käyttäytyminen peleissä tarkoittaa. Adaptoituvan käyttäytymisen tekemiseen käytetään yleensä oppimisalgoritmeja, mutta tässä työssä se jätettiin pois ja tutkittiin, kuinka adaptoituvuutta voi tehdä muulla tavalla. Oppimisalgoritmit jätettiin pois käytettävissä olevien resurssien ja ajan takia. Vihollistekoälyn tekeminen ilman oppimisalgoritmiä oli myös yksi kiinnostuksen kohde. Vihollistekoälyn pohjan vaatimat osat, kuten käyttäytymispuu ja blackboard käytiin läpi, ja kerrottiin, mitä eri osia ne sisältävät ja vaativat toimiakseen.
Teko-osuudessa aloitettiin luomalla vihollistekoälylle modulaarinen pohja ja miten tekoälyn eri osat yhdistyvät. Pohjaa luotaessa otettiin huomioon sen lopputarkoitus ja se mielessä luotiin kohtia, joita pystyi myöhemmin jatkamaan tai kehittämään. Pohjan luonnin jälkeen tekoälylle luotiin kaksi reaktiivista ominaisuutta, jotka olivat etsintä ja puolustautuminen. Reaktiivisuuden etsintää kehitettiin pidemmälle seuraavassa osiossa eli adaptiivisuuden toteutuksessa. Se sisälsi myös tavan ohjata tekoäly pelaajan luo.
Lopputuloksena saatiin modulaarinen tekoälyn pohja, joka sisältää sekä reaktiivisia että adaptiivisia toteutuksia. Tekoälyn kehitysprosessista ja sen keskeisistä osa-alueista opittiin paljon. Jatkotyöstäminen on myös helppoa halutessaan.