Luku 9: Tekoäly. Tekoäly peleissä Agentit Tekniikoita Toimintapelit Taktiset pelit



Samankaltaiset tiedostot
Tekoäly ja dynamiikka tietokonepeleissä

Tekoäly tietokonepeleissä

Valmistelut: Aseta kartiot numerojärjestykseen pienimmästä suurimpaan (alkeisopiskelu) tai sekalaiseen järjestykseen (pidemmälle edenneet oppilaat).

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

Tarvikkeet: A5-kokoisia papereita, valmiiksi piirrettyjä yksinkertaisia kuvioita, kyniä

8/21/2013 TIE PELIOHJELMOINTI ANIMAATIO, AI, MAAILMAT, VERKKO ANIMAATIO SUORA JA KÄÄNTEINEN KINEMATIIKKA LUURANKOANIMAATIO

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Algoritmit 2. Luento 6 To Timo Männikkö

Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen

Strategiapelit ja Nashin tasapaino. Esitta ja : Sebastian Siikavirta

Tekoäly ja koneoppiminen metsävaratiedon apuna

Datatähti 2019 loppu

Seniorit ja tietokonepelit. Tietokonepelien pelaamisesta senioreiden näkökulmasta. Seniorien pelitapahtuma Enter ry

LUMATE-tiedekerhokerta, suunnitelma AIHE: PELIT JA TAKTIIKAT

Algoritmit 2. Luento 6 Ke Timo Männikkö

JOHDATUS TEKOÄLYYN TEEMU ROOS

Tietorakenteet, laskuharjoitus 7, ratkaisuja

Geneettiset algoritmit

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto

JOHDATUS TEKOÄLYYN TEEMU ROOS

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely)

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)

Matematiikan tukikurssi

Kognitiivinen mallintaminen Neuraalimallinnus, luento 1

JOHDATUS TEKOÄLYYN TEEMU ROOS

Verkot ja todennäköisyyslaskenta. Verkot ja todennäköisyyslaskenta. Verkot ja todennäköisyyslaskenta: Esitiedot

Epätäydellisen tiedon jatkuvat pelit. Mika Viljanen Peliteorian seminaari

Nollasummapelit ja bayesilaiset pelit

Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti

Peliohjelmointi: Kontrollilaitteet. Teppo Soininen

Algoritmit 1. Luento 13 Ti Timo Männikkö

Tiina Partanen. Koodaamassa Matikantunnilla

Ohjeet ovat työn alla ja kirjaan niitä päivittäen ja edes takaisin lukien pari viikkoa.

AS Automaation signaalinkäsittelymenetelmät. Tehtävä 1. Käynnistä fuzzy-toolboxi matlabin komentoikkunasta käskyllä fuzzy.

GA & robot path planning. Janne Haapsaari AUTO Geneettiset algoritmit

Ampumahiihto. Hiihto. Pelihahmon piirtäminen. Jos tahdot animoida hiihtämisen, Peli muodostuu kahdesta erilaisesta osasta: ensin

Harjoitus 6: Simulink - Säätöteoria. Syksy Mat Sovelletun matematiikan tietokonetyöt 1

Rubikin kuutio ja ryhmät. Johanna Rämö Helsingin yliopisto, Matematiikan ja tilastotieteen laitos

Peliteoria Strategiapelit ja Nashin tasapaino. Sebastian Siikavirta

Jypelin käyttöohjeet» Miten voin liittää törmäyksiin tapahtumia?

Algoritmit 1. Luento 1 Ti Timo Männikkö

Luku 8. Aluekyselyt. 8.1 Summataulukko

Turun Yliopisto Turun opettajankoulutuslaitos. MO Käsityö, muotoilu ja yrittäjyys. Projektityö Maidon tie. Kaija Korhonen & Nina Nylund

Kiinalaisen shakin esittely

KODU. Lumijoen peruskoulu

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

ohjekortti #1 Tämä on ehto. Kun se täyttyy pelissä, seuraa tämän siirron sääntöjä.

JOHDATUS TEKOÄLYYN TEEMU ROOS

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

Algoritmit 2. Luento 10 To Timo Männikkö

58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia

Peliteoria luento 2. May 26, Peliteoria luento 2

Kuva 1. Jokaisen tavallisen kuvan tasotyökalussa näkyy vain yksi taso, tässä nimellä tausta.

OHJ-2710 Peliohjelmointi. Syksy 2012 Timo Kellomäki

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

811312A Tietorakenteet ja algoritmit V Verkkojen algoritmeja Osa 2 : Kruskalin ja Dijkstran algoritmit

Ehto- ja toistolauseet

4 Heuristinen haku. Eero Hyvönen Helsingin yliopisto

Kenguru 2012 Junior sivu 1 / 8 (lukion 1. vuosi)

Tietorakenteet ja algoritmit - syksy

Johdatus tekoälyn taustalla olevaan matematiikkaan

Algoritmit 2. Luento 11 Ti Timo Männikkö

Mittausjärjestelmän kalibrointi ja mittausepävarmuus

58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut

Puumenetelmät. Topi Sikanen. S ysteemianalyysin. Laboratorio Aalto-yliopiston teknillinen korkeakoulu

811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta

Tasohyppelypeli. Piirrä grafiikat. Toteuta pelihahmon putoaminen ja alustalle jääminen:

Strategiset suunnittelupelit: SimCity ja Civilization

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

Matematiikan peruskurssi 2

Kontrollilaitteet. Arsenaali

12. Hessen matriisi. Ääriarvoteoriaa

Käyttöopas yksityisautolle Android, ios ABAX MOBIILI

Venekilpailu! Esteiden väistely ja hahmon ohjaaminen

Esimerkkejä polynomisista ja ei-polynomisista ongelmista

f(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0.

v 1 v 2 v 3 v 4 d lapsisolmua d 1 avainta lapsen v i alipuun avaimet k i 1 ja k i k 0 =, k d = Sisäsolmuissa vähint. yksi avain vähint.

Matinteko (1 / 10) Matinteko (2 / 10) Helpointa matin tekeminen on kahdella raskaalla upseerilla (esim. kuningattarella ja tornilla).

SÄÄNNÖT. Language: English / Suomi

Strateginen ketteryys

A. Huutokaupat ovat tärkeitä ainakin kolmesta syystä. 1. Valtava määrä taloudellisia transaktioita tapahtuu huutokauppojen välityksellä.

KUUDELLA PELAAMINEN. Kuudella pelaamisen opettelu. Pertti Honkanen

Automaatit. Muodolliset kielet

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. FT Ari Viinikainen

Harjoitus Nimi: Op.nro: Tavoite: Gradientin käsitteen sisäistäminen ja omaksuminen.

811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta

MS-C2105 Optimoinnin perusteet Malliratkaisut 5

Luento 6: Monitavoitteinen optimointi

Impedanssitomografia-peli

Kognitiivinen mallintaminen 1

Johdatus tekoälyyn. Luento : Koneoppiminen. Patrik Hoyer. [ Kysykää ja kommentoikaa luennon aikana! ]

Kognitiivinen mallintaminen. Nelli Salminen

Algoritmit 2. Luento 2 To Timo Männikkö

} {{ } kertaa jotain

Pelin tekoäly. Aleksi Vuorela IIO14S1. Tietorakenteet ja algoritmit harjoitustyö Joulukuu 2015

Johdatus tekoälyn taustalla olevaan matematiikkaan

Ongelma(t): Voiko älykkyyden määritellä ja voiko sitä mitata, myös objektiivisesti? Onko älykkyyttä ilman (näkyvää) toimintaa? Voiko kone olla älykäs

Oppiminen ja oivaltaminen

Oriveden kävelyn ja pyöräilyn kehittämisohjelma. Liite IV Päättäjätyöpajan tulokset

Transkriptio:

Tekoäly peleissä Agentit Tekniikoita Toimintapelit Taktiset pelit

Tekoäly Mitä on tekoäly? laskennallinen rationaalisuus nyt älykäs ei välttämättä ole sitä myöhemmin ajattelu vai toiminta ihmismäisyys vai rationaalisuus Poikkitieteellinen ala: filosofia, matematiikka, psykologia, tietotekniikka, lääketiede, robotiikka, kielitiede Paljon matemaattisia menetelmiä

Agentti Tekoälyllä varustettu olio usein ympäristöstään irrallinen toimija, jota kutsutaan agentiksi Agentin osat: sensorit, aktuaattorit, muisti, tiedonkäsittely Agentti toimii jossakin rajatussa ympäristössä Maailman luokittelua: havainnoitavuus, deterministisyys, episodisuus, dynaamisuus, diskreettisyys, agenttien määrä

Tekoäly peleissä Peleissä tekoälyn tavoitteina mm. luoda pelaajalle haastetta, elävöittää ja monipuolistaa maailmaa Vaatimukset hyvin erilaisia eri peleissä Tarvitaanko verkkopeleissä tekoälyä? kaikki haluavat olla sankareita, joten MMOpeleissäkin tarvitaan taviksia

Pelit vs. teknillistieteellinen Tekniikassa tekoälyllä pyritään ratkaisemaan ongelmia, peleissä luomaan illuusio järjestä Monissa peleissä tekoälyn on tarpeen tehdä tahallaan virheitä Peleissä maailma on hallittavissa ja omalla puolella : voidaan tarvittaessa huijata Peleissä usein kovemmat reaaliaikavaatimukset

Tekoäly peleissä Tekoälytutkimusta on tehty pitkään, mutta vain pieni osa siitä on hyötykäytössä peleissä Monet menetelmät vaativat paljon prosessoritehoa, mutta sitä ei usein haluta käyttää tekoälyyn Peliagentilta toivotaan luotettavuutta: aina vähintään kohtuullisia päätöksiä Oppivia järjestelmiä näkee silloin tällöin peleissä, mutta ennustettavuus on ongelma

Agentteja peleissä Ilmeisimmät tekoälyagentit peleissä sivuhahmot: vastustajat, apulaiset jne. Myös muita: kameran ohjaus, tutoriaalit, fysiikkaengine, avatarin automatiikka, ohjaaja Agentti: olio, joka tekee havaintoja pelimaailmasta ja suorittaa itsenäisesti niistä riippuvia toimintoja Tekoälyä eri tasolla: strategian suunnittelusta yksittäisten esineiden toimintaan

Agentteja peleissä Laird ja Lent luokittelevat pelitekoälyjä: taktiset vastustajat (esim. FPS-botit, autopelit) ystävät (roolipelit, urheilupelin joukkuekaverit) tukihahmot (opastavat pelaajaa, neuvonantajat) strategiset vastustajat (suunnittelee, strategiapelit) Muita: simulaatiohahmot, selostajat, dynamiikka (juoni, fysiikka, sää,...), pelaajan sijainen Toteutustekniikoita useita Tekniikoita voi yhdistellä ja luoda hierarkioita

Tekniikoita Peleissä käytettyjä perustekniikoita: Tilakoneet Päätöspuut Logiikka, sumea logiikka, sääntöjärjestelmät Tila-avaruushaku, polunetsintä Neuroverkot Geneettiset algoritmit Parveilualgoritmit Influence map

Tilakoneet Äärelliset tilakoneet (finite state machine, FSM) on ehkä eniten peleissä käytetty tekniikka Toiminta intuitiivista, joten myös pelisuunnittelijoiden käytössä Äärellinen määrä tiloja ja siirtymiä niiden välillä Tavoitteet määräytyvät sen mukaan, missä tilassa ollaan Havainnot maailmasta aiheuttavat tilasiirtymiä

Epädeterminismi Epädeterministisessä tilakoneessa sama syöte voi aiheuttaa eri tilasiirtymän Ilman tätä toiminta on aina samanlaista Käytännössä esim. tilasiirtymien todennäköisyydet todennäköisyyksiä voidaan päivittää agentin oppiessa

Rinnakkaisuus Samaakin agenttia voi ohjata useilla rinnakkaisilla tilakoneilla, joista kukin voi olla hyvinkin yksinkertainen Toimii parhaiten, jos tilakoneet ovat toisistaan riippumattomat Tilakoneita voi synkronisoida esim. jaetulla muistilla tai yhteisillä tilasiirtymillä Synkronisoiduilla tilakoneilla voi toteuttaa myös pienen tiimitekoälyn

Etuja ja haittoja Tilakoneiden hyviä puolia: paljon tutkimusta ja teoreettista taustaa helppo esittää ymmärrettävästi sopivat hyvin alimmalle, taktiselle tasolle Huonoja puolia: paisuvat nopeasti jos niillä yritetään mallintaa liikaa sellaisenaan rajoittuneita helposti liian ennalta-arvattavia, oppiminen vaikeaa

Päätöspuut Päätöspuut (decision trees) ovat yksinkertainen tapa aikaansaada rationaalista toimintaa Koostuvat kysymyksistä (usein binäärisiä), joiden vastaus määrää, mihin lapseen edetään Solmussa on haluttu toiminta (tai hierarkisen puun tapauksessa toinen päätöspuu) Oikeastaan siis vastaavat kasaa if-lauseita Yhdistäminen tilakoneisiin: suoritettava tilasiirtymä valitaan päätöspuun avulla

Päätöspuut Varsinaisesti hyödyllisiä päätöspuista tulee, kun niitä aletaan muodostaa saadun palautteen perusteella lennossa Hyvin yksinkertaisesti toteutettava oppiminen Esim. Black & White ja Quinlanin ID3-algoritmi Perustuu informaatioteoriaan: otetaan saadusta palautteesta maksimaalinen hyöty päätöspuun kysymyksillä Laajempi versio: behavior trees

Tila-avaruushaku Tila-avaruushaun idea on tutkia toimintojen mahdollisia seurauksia etukäteen ja löytää näin paras tai ainakin kelvollinen toiminto Maailma diskretisoidaan; tila-avaruuden tila vastaa maailman yhtä tilaa ja siirtymät niiden välillä mahdollisia toimintoja Tila-avaruus luodaan agentin saatavilla olevista tiedoista maailman toiminnasta (säännöistä) Syntyy puumainen rakenne, jonka juurena on tämänhetkinen tilanne

Tila-avaruushaku Tila-avaruus sisältää kaikki tilat, joita tästä tilasta voi sääntöjen mukaisesti seurata Pyritään valitsemaan toimintojen sarja, jonka seurauksena tila on agentille edullisin Useimmissa peleissä tila-avaruus on liian laaja edes rakennettavaksi kokonaan Lisäksi yleensä kaikki tekijät eivät ole agentin hallittavissa: viholliset, satunnaisuus Jako omiin siirtoihin ja muihin siirtoihin

Tila-avaruushaku Koska tila-avaruutta ei rakenneta pelin loppuun saakka, täytyy lehtisolmujen arvo määritellä Esim. shakissa voi kannattaa uhrata kuningatar, jos seuraavalla vuorolla saa matin; mutta jos puu katkeaa tässä välissä, voi uhraus näyttää erittäin huonolta idealta Käytännössä tila-avaruuden karsiminen jollakin menetelmällä on pakollista, ja tätä varten solmujen arvon arviointi on keskeistä Algoritmeja: A*, min-max, alfa-beta-karsinta

Tila-avaruushaku Tila-avaruushakua käytetään eniten lautapeleissä ja abstrakteissa strategiapeleissä lautapeleissä usein alfa-beta-karsintaa rubikin kuution ratkaisemiseen A* Modernien pelien tila-avaruudet olisivat hyvin laajoja ja diskretisointi hankalaa Moderneissa peleissä on silti joitakin osaalueita, joihin tila-avaruushaku sopii Polunetsintä (A* muunnelmineen)

Sääntöjärjestelmät Sääntöjärjestelmät (Rule-Based Systems) perustuvat loogiseen päättelyyn Säännöt ovat muotoa ehto reaktio Reaktio ei välttämättä ole toiminto, vaan se voi olla myös havainto tai päätelmä Sääntöjärjestelmän osat: säännöt, muisti, tulkki Käytetään paljon asiantuntijajärjestelmissä Säännöt voivat olla esim. propositio-, predikaatti- tai sumeaa logiikkaa

Sääntöjärjestelmät Esimerkki: näkyy(vihollinen) pakene() nälkä AND hallussa(ruoka) syö(ruoka), NOT hallussa(ruoka) nälkä AND näkyy(ruoka) poimi(ruoka), hallussa(ruoka) nälkä etsi(ruoka) TRUE nuku() Tässä valitaan ensimmäinen, jonka ehto toteutuu (voisi olla myös paras, tarkin,...)

Sääntöjärjestelmät Hyviä puolia: yksinkertainen ja luonnollinen modulaarinen (sääntöjä helppo lisätä ja poistaa) valmiita ratkaisuja olemassa Huonoja puolia: yksinkertaisuudesta johtuen arvattava hidas, jos sääntöjä on paljon ei sovellu pitkän tähtäimen suunnitteluun

Suunnittelu Loogista päättelyä voi käyttää myös pidemmälle suunnittelevien, tavoitteellisten agenttien toteutukseen Paljon tutkittu aihe sekä teknistieteellisellä alalla että peleissä Maailma kuvataan formaalisti, esim. logiikalla Agentilla käytössään sääntöjä, jotka koostuvat esiehdosta (milloin sääntöä voi käyttää), toiminnosta (mitä tehdään) ja jälkiehdosta (millainen maailma on toiminnon jälkeen)

Suunnittelu Agentti toimii seuraavasti (regression planning): Valitaan tavoite (voi olla kiinteä) Tutkitaan, minkä sääntöjen jälkeen tavoite voisi toteutua Niin edelleen etsitään, minkä sääntöjen avulla niiden esiehdot tulevat voimaan Jatketaan kunnes löydetään polku nykytilasta tavoitteeseen Yo. kuvaus on hyvin abstrakti, käytännössä menetelmiä on erilaisia

Suunnittelu Käytännön peleissä ei niin helppoa, koska sääntöjä ja faktoja on liikaa Esiehtojen määrä säännöissä voi olla valtava Esim. Matti haluaa leipää, jota saa kaupasta Esiehtoja: Matilla rahaa, kaupassa leipää, kauppa auki, kauppias elossa, ei zombieinvaasiota matkan varrella... Jos itsestäänselvä esiehto unohtuu mainita mallissa, koko suunnitelma voi epäonnistua Partial order planner, GOAP

Neuroverkot Neuroverkot jäljittelevät ihmisaivojen toimintaa Verkko koostuu neuroneista ja niiden välisistä yhteyksistä (Yleensä) järjestetään kerroksiksi: syötekerros, 0 tai useampia välikerroksia, ulostulokerros Jokaisesta neuronista yhteys jokaiseen seuraavan kerroksen neuroniin Toiminta koodattuna yhteyksien painokertoimiin Oppiminen on painokertoimien muuttamista

Neuroverkot Painokertoimia muutetaan opetusnäytteiden perusteella, yleisin algoritmi tähän on nimeltään back-propagation Neuroverkko lopultakin oppii vain jonkin funktion syötteen ja ulostulon välillä Oppiminen vaatii paljon laskemista Esim. autopelin kuski: syötteinä näkyvät esteet sijainteineen, ulostuloina kaasu/jarru, ohjaus Läpinäkyvyyden puute pahin ongelma

Geneettiset algoritmit Geneettisissä algoritmeissa (GA) matkitaan luonnonvalintaa Pidetään yllä populaatiota, jossa seuraava sukupolvi muodostetaan risteyttämällä (enimmäkseen) parhaiten menestyviä yksilöitä Risteytys esim. koodaamalla yksilöt bittijonoiksi ja ottamalla alkuosa toiselta, loppuosa toiselta vanhemmalta Yleensä lisäksi mutaatioita

Geneettiset algoritmit Mutaatioiden määrä täytyy valita niin, ettei kehitys jähmety, mutta populaatio pysyy kuitenkin elinkelpoisena Parhaiden valintaa varten täytyy suorittaa jonkinlainen evaluaatio, mikä voi olla vaikeaa tai ainakin työlästä Jos yksilöt esim. pelistrategioita, evaluaatio voi olla pelien pelaamista toisia yksilöitä vastaan Tuottaa kohtalaisia, mutta harvoin optimaalisia tuloksia

Geneettiset algoritmit Sukupolvia voidaan tarvita paljon, joten ei välttämättä sovi reaaliaikaiseen peliin Voidaan kuitenkin käyttää etukäteen vaikkapa pelistrategian optimoimiseen Joskus yksinkertainen hill climbing tms. voi olla helpompaa ja tuottaa nopeammin ratkaisuja GA usein pelkkä hypetermi Tosin evoluution seuraaminen sinänsä on hauskaa, joten joissakin peleissä GA:n toiminta ja hienovarainen ohjailu on osa itse sisältöä

Parveilu Parveilu (flocking) mallintaa yksinkertaisista olioista muodostuvien joukkojen käyttäytymistä Esimerkiksi linnut, kalat, muurahaiset Muurahaiset ja polunetsintä feromoneilla Käytetään etenkin sivuhahmojen kuten ihmismassojen liikkumisen luomiseen Boids: ero, suuntaus, yhtenäisyys ajateltavissa voimakenttien avulla, jolloin esteet ovat luotaantyöntäviä

A-life Keinoelämä (A-life, artificial life) viittaa elämän simuloimiseen keinotekoisessa ympäristössä Ei yksittäinen tekniikka, vaan laaja käsite, a- lifeä voi esiintyä monella tasolla Esim. ekosysteemit ja päämäärälliset ihmiset Peleissä voi olla yksinkertaisimmillaan vain sitä, että pelin hahmoja päivitetään vaikka ne eivät ole lähellä pelaajaa Sim-sarjan pelit, S.T.A.L.K.E.R.

Muita menetelmiä Sims ja fiksu maasto esineet osaavat kertoa hahmoille, mitä tarpeita ne tyydyttävät ja miten niitä käytetään mainostus, mitä lähempänä esine on, sitä enemmän se vaikuttaa hahmoon koska toiminnallisuus on esineissä eikä itse pelissä, pelistä tulee hyvin laajennettava Creatures ja kemialliset eritteet tunteet aiheuttavat hahmoille yhdisteiden eritystä muiden jättämät eritteet vaikuttavat hahmoon

Polunetsintä Polunetsintä on hyvin yleinen ongelma peleissä Lokaalit menetelmät ottavat huomioon van lähialueen: ihmismäisiä Globaalit menetelmät vastaavat ihmisen toimintaa, kun käytössä on kartta Jos maasto ei suoraan ruudukko, jaetaan konvekseihin soluihin ja portaaleihin Syntyy navigaatioverkko Algoritmeja: törmää ja käänny, Dijkstra, A* A*:stä erilaisia versioita: IDA* ym.

Toimintapelin AI Muutamia perusideoita, joita toimintapelin AI voi hyödyntää käytöksessään katsominen: käännytään kohti seuraaminen: katsotaan ja liikutaan eteenpäin ennakointi: kohteen tulevan sijainnin arviointi pakeneminen: katsotaan poispäin ja liikutaan välietapit (waypoints): vuorotellen kohteeksi ennalta määrättyjä pisteitä, joiden välillä partioidaan esim. käytetään välietappeja jos pelaajaa ei näy, muuten seurataan pelaajaa

Toimintapelin AI suojautuminen: etsitään lähin este, vedetään suora pelaajasta esteen keskipisteen kautta ja liikutaan mahdollisimman suoraan tämän suoran varrelle esteen taakse yllättäminen: suojan takaa voi hyökätä kun agentti ei enää ole pelaajan näköfrustumin alueella ampuminen: usein muistuttaa seuraamista (ennakoinnilla tai ilman), mutta esim. konekiväärillä voi olla erilaista joukkuetaktiikat: suojatuli, parit, piiritys tilakoneet yleisin tekniikka

Maaston piirteet Usein tekoälylle on avuksi, jos sille on etukäteen merkitty kenttään hyödyllisiä piirteitä polunetsinnän nopeutus: valmiit reitit, konveksi jako suojat, kyttäyspaikat, hyökkäyssuunnat, kapeikot autopeleissä optimaalinen ajolinja Näiden löytäminen automaattisesti on hankalaa tai ainakin aikaavievää Usein kenttäsuunnittelijan työtä, mutta silloin niitä täytyy päivittää kentän muuttuessa

Ryhmän liike Tekoäly liikuttaa usein joukkoa yksiköitä Esim. RTS:ien muodostelmat Synkronisoidut tilakoneet eivät välttämättä toimi, koska yksiköitä on helposti liikaa Parveilualgoritmit (boids) Sotilaallisessa muodostelmassa pysymiselle korkeampi painoarvo: voimakenttä, joka vetää kohti sotilaan oikeaa sijaintia muodostelmassa Avaruuden osittavat tietorakenteet avuksi

Influence map Ihminen näkee taistelukentästä heti, missä on kunkin puolen vahva alue ja missä on rintamia Tekoäly ratkoo ongelmaa influence mapilla Kartta jaetaan ruudukkoon Vaihtoehtoisesti käytetään navigaatioverkkoa, erityisesti jos pelimaailma on aidosti 3d Merkitään kartalle esim. omat (+) ja viholliset (-) Myös väliaikaiset uhat, esim. kranaatin räjähdys Yksikön tyyppi (kesto, vahinko) voi vaikuttaa kertoimena arvoihin

Influence map Vaikutus levitetään ympäristöön etäisyyden mukana vähenevän funktion avulla Vähenee nopeasti esteiden suuntaan Verkossa leviää vain yhteyksien suuntaan esim. eksponenttifunktio tai lineaarinen Kokonaisvaikutus summa yksiköiden kentistä Päivityksessä jätetään jokin osuus vanhasta arvosta voimaan (momentum) Päivitysväli esim. 0,2 s... 5 s pelistä riippuen

Influence map Kartasta voi tehdä monenlaisia analyysejä Positiiviset alueet omien hallussa, negatiiviset vihollisen Rintama on siellä, missä arvot ovat lähellä nollaa Jos kahden vahvan vihollisalueen välillä on heikko alue, isku sinne saattaa jakaa vihollisen kahtia Aikaderivaatan avulla näkee isot hyökkäykset Turvallisten reittien etsintä Suuri gradientti kuvaa kiisteltyä aluetta

Strateginen suunnittelu Esim. RTS-pelin tekoäly koostuu usein kahdesta kerroksesta: yksittäiset yksiköt kuten toimintapeleissä (tilakone tms.) Ylemmällä tasolla strateginen äly Vastaava äly myös strategiapeleissä, mutta hierarkiassa voi olla useampia kerroksia Käytettyjä tekniikoita sääntöpohjaiset järjestelmät, käsin tehdyt skriptit, suunnittelualgoritmit, influence mapit