Sztuczna inteligencja w grach komputerowych - My Social Seller

Chyba każdy z nas miał styczność, mniejszą lub większą z szeroko pojętymi „grami”. Od prekursorów tej formy rozrywki, jakimi są gry karciane i planszowe, po najnowsze gry wideo. Wraz z dynamicznym rozwojem technologii na przełomie ostatnich lat, właśnie gry video stały się najbardziej progresywną branżą rozrywki na całym świecie. Pisząc o grach wideo, nie sposób nie wspomnieć o e-sporcie, który gromadzi setki tysięcy osób nie tylko przed ekranami, jak i na stadionach. W większości gier można zetknąć się z modułami sztucznej inteligencji. W grach jednoosobowych, w których dużą wagę przykłada się do fabuły będą to inteligentne otoczenia, postacie czy rozbudowana linia fabularna, gdzie zakończenie jest wynikiem decyzji, które podjęliśmy podczas rozgrywki. Natomiast w grach wieloosobowych będą to tzw. boty, czyli mniej lub bardziej inteligentni przeciwnicy sterowani przez komputer, którzy w zależności od poziomu trudności prezentują wyższy poziom umiejętności podczas gry.

W tym artykule skupimy się na kilku algorytmach które są wykorzystywane w wyżej wspomnianych modułach:

  • Algorytm A* – jest algorytmem „pathfindingowym” (znajdowania ścieżek) przez agentów sztucznej inteligencji. Algorytm służy do przechodzenia przez postać z punktu A do punktu B za pomocą węzłów.
    Podczas poruszania się, przeciwnik nie szuka drogi na ślepo, lecz dzięki algorytmowi, który wylicza najszybszą i najefektywniejszą drogę do poruszania się pomiędzy lokacjami. Niestety algorytm jest bardzo przewidywalny, gracz który poświęcił na rozgrywkę kilka godzin jest w stanie już zauważyć podobieństwa w zachowaniu przeciwników wykorzystujących ten algorytm. Algorytm ten został wykorzystany w grach takich jak seria Hitman czy Age Of Empires II

  • Drzewa decyzyjne – wykorzystywane w systemach walki w różnego typu grach. Sprawdza się on w prostych logicznych sytuacjach jak „Jeśli widzisz przeciwnika to oddaj strzał”, oraz bardziej skomplikowanychdecyzjach „Jeśli masz mało punktów zdrowia, sprawdź, gdzie jest przeciwnik, jeśli przeciwnik Cię nie widzi, ulecz się, w przeciwnym wypadku, ucieknij w bezpieczne miejsce i się ulecz”.

    Drzewo decyzyjne prezentuje się jako graf decyzji i konsekwencji, a węzłami tego drzewa są stany gry. Węzły decyzyjne składają się w jedną z wielu możliwych do przejścia ścieżek zakończoną węzłem konsekwencji. Obiekt sztucznej inteligencji analizuje drzewo decyzyjne i sprawdza, która ze ścieżek będzie najlepsza w danej sytuacji, następnie przechodzi przez całą ścieżkę. Największe zastosowanie drzewa decyzyjne mają w grach RPG. Gdzie gracz walczy z grupą przeciwników lub steruje grupą towarzyszy, ale nie nad każdym chce sprawować manualnie kontrolę, wtedy sojusznicy zachowują się wedle stworzonych w algorytmie drzew. Przykładami zastosowań drzew decyzyjnych w grach są Dragon Age oraz klasyka gier cRPG seria Baldurs Gate.

  • Sieci neuronowe – głównie stosowane w grach wyścigowych, gdzie na bazie wejściowych (kształt drogi, stan nawierzchni, parametry pojazdu) sieć kieruje komputerowymi przeciwnikami podczas jazdy. Sieci neuronowe mają tutaj bardzo podobne zastosowanie jak w przypadku autonomicznych samochodów Tesli. W niektórych grach sieci neuronowe wykorzystywane są do nauki botów na podstawie zachowań gracza czy innych botów. Przy dobrej konstrukcji sieci i sporej ilości treningu sztuczny byt potrafi poradzić sobie nawet z najlepszymi graczami. Przykładem tego może być mecz jednego z najlepszych graczy DOTA2 na turnieju International 2017 z botem stworzonym przez organizację OpenAI. Jaki był tego wynik, możecie sami zobaczyć poniżej.

    autor:

    Mateusz Godlewski – AI Developer @ AI FORCE 1

Send a Message