Umetna inteligence v računalniških igrah


Patricija Oven

Kaj je UI v računalniških igrah?

Umetna inteligenca v računalniških igrah služi temu, da za igro naredi bolj živahno in dinamično, ter poglobljeno izkušnjo igranja. Sestavljajo jo predvsem algoritmi in tehnike, ki se od igralca ne učijo, ampak delujejo na statistikah. V novejših in bolj razvitih računalniških igrah, pa se lahko pojavijo tudi vrste umetne inteligence, ki se od igralca učijo in se na tak način izboljšujejo.

UI se v računalniških igrah pojavi v obliki NPC-jev, oziroma Non-Playable-Characters, ki so liki, katerih igralec sam ne more upravljati. Programirani so tako, da odločitve, ki so potrebne da igra deluje, sprejemajo sami, se sami premikajo in razvijajo svoje strategije igranja. NPC-ji take vrste so značilni predvsem za strateške in strelske igre, na primer WarCraft in Fortnite.

Igre, ki se odvijajo na temo moderne tehnologije in umetne inteligence, ki pogosto predstavlja antagonista, so v zadnjih časih postale vse bolj popularne.

Slika 1: prikaz NPC-ja v videoigri, 2023, Superjump

Zakaj je razvoj UI pomemben za računalniške igre?

Pred dodatkom umetne inteligence v videoigre, je bil v le-teh pogost problem monotonosti in dolgočasenje igralcev, saj so bile igre vedno omejene s točno določeno kodo, ki se ni vlekla v neskončnost. Ko je igralec dosegel cilj igre, ni bilo dodatne vsebine, s katero bi se lahko zaposlil.

Z uvedbo umetne inteligence, so se odprle mnoge možnosti za izboljšavo in dodatno vsebino. UI je v računalniških igricah pomembna zato, da se prilagaja igralcu in mu na tak način vedno predstavlja nov izziv. Tako so igre postale bolj zanimive in pestre, saj so ustvarjalci lahko dodali nove težavnosti brez dolge in komplicirane kode.

Same interakcije v igri so tudi dobile nadgradnjo, saj se je umetna inteligenca naučila boljših in ne tako zelo robotskih načinov sporazumevanja od samih igralcev. Tako je tudi sama izkušnja igranja lahko bolj podobna vsakdanjemu življenju.

Kako UI lahko pomaga programerjem videoiger?

Umetna inteligenca ima pogosto tudi nalogo zbiranja podatkov. O igralcih se neprestano uči in zbira podatke o njihovih strategijah in obnašanju, nato pa jih sporoči samim ustvarjalcem igre, ki na osnovi le-teh podatkov lahko izboljšujejo igro.

Umetna inteligenca ima tudi na sam razvoj računalniških igric lahko velik vpliv. UI je pri kodiranju uporabno orodje, saj lahko zazna napake in jih popravi s predlogi, seveda pa pri popravkih rabi človeški nadzor, saj se pri kodi pogosto veliko stvari pokvari zelo hitro. Prav tako UI lahko pomaga tudi pri testiranju iger, ki je bolj učinkovito in hitrejše od ročnega testiranja. Po testiranju naredi poročilo napak in stvari, ki delujejo tako kot je treba, kar olajša delo programerjem.

Kakšne vrste iger z UI poznamo?

Umetno inteligenco v igrah razdelimo na šest kategorij.

Prva kategorija se imenuje Rule-based AI. Umetna inteligenca je v takem primeru programirana, da deluje omejeno z določenimi pravili, ki vplivajo na obnašanje NPC-jev. Kot primer lahko vzamemo situacijo, ko mimoidoči NPC zazna igralca, UI pa mu naroči, da naj obvesti stražarje.

Sledi kategorija Finite State Machines. FSM-ji skrbijo za prehode stanj NPC-jev. Kot primer, lahko vzamemo strateške igre, v katerih NPC preide iz nevtralnega stanja v stanje, ki je pripravljeno za boj, ko NPC zazna igralca.

Pathfinding AI je lahko najdemo povsod. Ta najde najbolj idealno, oziroma najkrajšo pot od točke A do točke B, ki se hkrati izogiba morebitnim oviram, zato da se NPC lahko prosto premika.

Machine learning AI je prav tako zelo pogosto uporabljen. V to kategorijo spada vsa umetna inteligenca, ki je programirana na način, da se uči od igralcev in okolice, da lahko sprejema odločitve, ki so neodvisne od igralca. Sem spadajo vse igre, kjer se soočita igralec in UI. Kot primer lahko vzamemo vse od računalniških verzij šaha in Go, do najnovejše verzije Call of Duty.

Slika 2: simboličen prikaz igranja šaha z UI, 2018, Smithsonian

Naslednja kategorija je vedenjsko omrežje. Ta omogoča UI prosto delovati s pomočjo smernic. To omrežje sestavljajo stanja, vedenja in dejanja, ki so že sprogramirana, umetna inteligenca pa se prosto odloča, kaj od naštetih možnosti bo prikazal NPC, ki ga upravlja.

Zadnja kategorija se imenuje Reinforcement learning. Umetna inteligenca je v tem primeru sprogramirana tako, da izbere primeren odziv na igralčeva dejanja. Če je igralec sledil določenim navodilom, ga NPC, ki ga nazdira UI nagradi, v nasprotnem primeru pa ne, sledijo pa lahko tudi druge posledice.

Slika 3: Reinforcement learning UI, 2023, Engati

Slika 3: Reinforcement learning UI, 2023, Engati
Umetna inteligenca je za razvoj računalniških igric zelo pomembna, saj se lahko na tak način doda več zanimive in zahtevne vsebine z malo truda s strani programerjev.

Pri pripravi seminarske naloge umetna inteligenca ni bila uporabljena.

BESEDILNI VIRI:

AI in Gaming; 2023, Engati, 24. februar 2024 ob 11:34, dostopno na spletnem naslovu: <https://www.engati.com/blog/ai-in-gaming>

How Artificial Intelligence (AI) Upends Game Development; 2021, Pixelplex, 24. februar 2024 ob 11:34, dostopno na spletnem naslovu:
<https://pixelplex.io/blog/how-ai-enhances-game-development/>

What is AI in Gaming?; 2023. Arm, 24. februar 2024 ob 11:34
<https://www.arm.com/glossary/ai-in-gaming>

SLIKOVNI VIRI:

Slika 1: Kasey (JX) Fu, 13. avgust 2023, Superjump, dostopno na spletnem naslovu:
<https://www.superjumpmagazine.com/the-future-of-ai-based-npcs-in-all-video-games/>

Slika 2: Katherine J. Wu NOVA, 10. december 2018, Smithsonian, dostopno na spletnem naslovu:
<https://www.smithsonianmag.com/innovation/google-ai-deepminds-alphazero-games-chess-and-go-180970981/>

Slika 3: Jeremy Dsouza, 9. november 2023, Engati, dostopno na spletnem naslovu:
<https://www.engati.com/blog/ai-in-gaming>