Umetna inteligenca pri nogometaških robotih
O umetni inteligenci v robotih za igranje nogometa
Poglejmo, kako so zgrajeni in kako danes delujejo »možgani« robotov, ki igrajo nogomet. Tako imenovane možgane robotov seveda predstavlja zelo zmogljiv računalnik, danes je to praviloma prenosni računalnik, ki ga robot vozi s seboj (razred srednje velikih robotov), ali pa si ekipa en računalnik deli (razred majhnih robotov).
Zelo pomembna sposobnost robota je, da mora na nogometnem igrišču znati določiti svoj položaj, položaj soigralcev in nasprotnih igralcev. Za določanje svojega položaja uporablja robot videokamero in merilnike sukanja koles. Z združevanjem informacij iz obeh vrst senzorjev robot dobi zanesljivejše informacije o svojem položaju. Za določanje položaja soigralcev, nasprotnih igralcev in žoge pa uporablja videokamero. Videokamera je glavni senzor robota. Robotski igralci nogometa se izogibajo ultrazvočnim in infrardečim senzorjem, ki aktivno zaznavajo okolico, saj tudi ljudje nimamo takih senzorjev.
Trenutno imajo robotski igralci le eno kamero, ki gleda navzgor v konično/kónično (stožčasto?) zrcalo. Tako ima robot pregled nad celotnim prostorom okoli sebe (vidi lahko vseh 360 stopinj). Do leta 2010 je bila barva žoge in igralcev robotov natančno predpisana zaradi lažjega razločevanja s kamero.
Robotski nogomet se je igral z oranžno žogo na igrišču z zeleno podlago. Črte na igrišču so bele, zato so na zeleni podlagi dobro vidne. Vsi roboti, ki igrajo nogomet, so črni. Robotski igralci se ločijo po oznakah, ki so roza (magenta) ali modre barve (cyan), da jih robotski vid lažje prepozna. Pri določanju svojega položaja v prostoru se robot orientira po belih črtah. Vsak igralec svoj položaj sporoči drugim robotom po brezžični komunikacijski povezavi.
Računalnik robota, ki igra nogomet, imenujemo krmilnik, saj robota krmili. Tako kot rečemo, da človeški možgani skrbijo za premikanje naših rok in nog, tako krmilnik robota skrbi za ustrezno vrtenje koles (na primer smer in hitrost vrtenja), kako daleč se robot premakne ipd. Krmilnik robota načrtuje za vsakega robota najugodnejšo pot gibanja po igrišču. Zato robotski krmilnik s pomočjo mreže razdeli celotno površino nogometnega igrišča na manjše kvadratne ali pravokotne enote (podobno kot mozaik). Vsak delec na igrišču predstavlja določen položaj in računalnik mu pripiše svojo številko. Ta številka pomeni, ali položaj na igrišču zaseda drug robot ali ne.
Na podlagi podobnosti med človeškim obnašanjem (odzivanjem na dražljaje iz okolice) tudi za igralce robotskega nogometa rečemo, da je njihovo obnašanje (odzivi) krmiljeno skladno s podatki, prejetimi iz senzorjev. Ti senzorji so lahko navidezni. Kot smo že omenili, je glavni senzor robota videokamera. V sliki, ki jo zajema videokamera, je veliko informacij, na primer položaj žoge, soigralcev, nasprotnih igralcev. Vsako informacijo v krmilniku zapisuje del programa, ki ga imenujemo navidezni senzor. Na primer senzor trkov nadzoruje, ali je robotu napoti kakšen drug robot lastne ali tuje ekipe. Če je tako, mora krmilnik sprožiti obnašanje robota (del programa), ki spremeni načrtovano pot robota, tako da se ta izogne trkom. Branje navideznih senzorjev robota se ponavlja v enakomernih časovnih intervalih. Navidezni senzorji, ki sporočajo nujne podatke, se berejo večkrat kot senzorji, ki sporočajo manj nujne podatke.
Vsak robotski igralec ima svojo vlogo in temu ustrezno vedenje, kot so vratar, napadalec ali obrambni igralec. V krmilniku robotskega igralca nogometa lahko vsako vedenje sproži ali zavre drugo vrsto vedenja.
Poglejmo primer: robot vratar 60-krat na sekundo preveri, ali se žoga kotali proti njemu v gol (navidezni senzor). Če je to res, potem se v robotskem krmilniku sproži vedenje (del programa) za ustavljanje žogice. Robot poskuša prestreči žogico, da ne pride v gol. Če pa se žogica ne kotali proti njegovemu golu, vratar poišče v golu najugodnejši položaj, s katerim čim bolj zmanjša kot streljanja napadalcev nasprotne ekipe na svoj gol.
Najnaprednejši roboti za igranje nogometa imajo v svoj krmilnik vgrajene tudi programe, ki omogočajo učenje igranja nogometa oziroma učenje, kako naj se robot v dani situaciji odzove. Ti programi pogosto temeljijo na umetnih nevronskih mrežah, ki omogočajo učenje. Problem trenutnega računalniškega učenja je, da potrebujejo za učenje zelo veliko število ponovitev, pogosto tako veliko, da to učenje ni izvedljivo na igrišču. Zato se v takih primerih robot uči igranja nogometa najprej s pomočjo računalniške simulacije, šele nato na igrišču.
