7

SI obserwuje, uczy się grać i wygrywać — widziałem to na własne oczy

Sztuczna inteligencja i jej rozwój jest jednym z najbardziej chodliwych tematów ostatnich lat. Co rusz słyszymy o kolejnym kroku milowym, dziś na własne oczy widziałem, jak projekt DeepSense.ai radzi sobie z nauką. I jest to naprawdę imponujące!

Miałem dziś przyjemność uczestniczyć w spotkaniu, w którym ekipa DeepSense.ai i Intela pochwaliła się swoim projektem. Projektem niebanalnym, związanym ze sztuczną inteligencją i tym, jak takowa zaczyna obserwować i uczyć się na własnych błędach.

Eksperyment który obserwowaliśmy oparty był o jedną z prostych gier, które wielu z was może kojarzyć ze starych sprzętów Atari — Boxing. Sztuczna inteligencja odważyła się stawić czoła „komputerowi”, czyli znanemu od lat przeciwnikowi, który trafił do oryginalnej gry w 1980 roku. Pierwsze pojedynki w wykonaniu SI wypadały dość marnie. Zawodnik sterowany przez AI solidnie obrywał, jednocześnie obserwując rozwój sytuacji i wyciągając wnioski. My zaś na specjalnych wykresach śledziliśmy jego progres, przy okazji podglądając jak ma się sytuacja ma tablicy wyników.

Po kwadransie sytuacja wyglądała o wiele lepiej, a pół godziny po starcie nauki tracił on niewiele punktów. Zdarzyły się nawet pojedynki, w których nie został uderzony ani razu. Nie da się ukryć, że całość robiła wrażenie — chociaż jak opowiedzieli nam twórcy z DeepSense.ai wspierani przez ekipę Intela — cały projekt jest naprawdę skomplikowany i świetne wyniki w tym przypadku wcale nie oznaczają sukcesu w każdej produkcji. Póki co skupili się oni na prostych (w kontekście rozgrywki) tytułach, ale sam proces nauki nie jest czymś, co będziemy mogli obserwować na co dzień. A przynajmniej jeszcze nie. Jak sami jednak przyznają — gry wideo okazują się fantastycznym medium, na którym można łatwo zobrazować i pokazać, jak to właściwie działa i w jakim tempie sztuczna inteligencja potrafi przyswajać informacje i uczyć się na własnych błędach. W tym wszystkim jest jednak pewien haczyk, na który cały czas uczulali tamtejszych gości: potrzeba superkomputera.

Ta nauka wymaga ogromnej mocy

Pewnie część z was słyszała już o tym, że mistrz świata w GO przegrał ze sztuczną inteligencją, zaś najlepsi tego świata nie dali sobie rady z NaVi w DOTA2. Potężne algorytmy rozłożyły ich na łopatki, jest jednak pewna rzecz, o której raczej się nie wspomina. Aby takowa mogła wyuczyć się wszystkich sztuczek, potrzebna były nie tylko długie godziny pracy jej ojców, ale także niezwykle wydajne maszyny, które pomagają jej w treningach. Tych wspomnianych 30 minut na naukę gry w Boxing również nie jest zasługą żadnego komputera który organizatorzy spotkania wzięli ze sobą, wszystko działo się w tle na najpotężniejszym polskim komputerze — Prometheuszu.

Sztuczna inteligencja zaczyna się uczyć, ale na realia z filmów sci-fi jeszcze poczekamy

Projekt który miałem dziś szansę zobaczyć na własne oczy zrobił na mnie ogromne wrażenie. Jednak już w przypadku prostych gier sprzed lat taka operacja jest ogromnym przedsięwzięciem — dlatego autonomiczne samochody i spółka mają naprawdę grube tomiszcza treści do nauczenia, nim będą mogły wyjechać na ulicę. Do świata zbliża się kolejna rewolucja, ale sam jestem ciekawy, kiedy twórcy gier podchwycą temat i w nich będziemy mogli zmagać się ze sztuczną inteligencją. Wyobrażacie sobie te pełne emocji gry w FIFA czy kolejne bijatyki, które będą pojawiać się na rynku?

  • ᗪ ᒍ ᗩ K ᗪ E K I E ᒪ

    Przecież AI gra już w np starcraft ;)

    • Tomasz Grel

      Cześć, pracowałem nad opisanym wyżej AI w deepsense.ai. Co do starcrafta, to na tą chwilę ta gra jest jeszcze nie rozpracowana i nie ma rozwiązania, które pozwoliłoby AI nauczyć się grać w starcrafta od zera bez żadnych zaprogramowanych „na sztywno” zasad i podpowiedzi.

      Nie znaczy to, że jest to niemożliwe. Ostatnio bot OpenAI pokonał w Dota2 najlepszego ludzkiego gracza (Dota2 wydaje się jednak zadaniem znacznie prostszym od starcrafta). Moja osobista opinia jest taka, że z wystarczającym budżetem na taki projekt poradzilibyśmy sobie z tym zadaniem :)

    • ᗪ ᒍ ᗩ K ᗪ E K I E ᒪ

      O, śledzę was i podziwiam to co robicie! :)

  • skoro AI grał z komputerem to czym był komputer który grał po drugiej stronie? Tak naprawdę to nasuwa mi się jedno pytanie skąd AI wiedziało co robić, dlaczego ma grać, dlaczego ma wygrywać? I czy te informacje sam sobie „rozkmnił” czy zostały wprowadzone jako cel? I czy ktoś wprowadził dane o zasadach gry?

    • Darkherring

      Z tego co wiem to zazwyczaj jest tak, że jest założone jakieś kryterium zwycięstwa – zdobycie jak największej liczby punktów i tyle. AI wykorzystuje sterowanie tak, aby zdobyć ich jak największą ilość metodą prób i błędów.

    • Kamil

      „Komputer” to jakiś zakres zaprogramowanych zachowań z góry. Dlatego jeżeli grasz dłużej w jedną grę, dostrzegasz schematy i nagle okazuje się, że granie z komputerem nie ma sensu, kiedy stajesz się za dobry. Np. w bijatykach, nie bez powodu profesjonalni gracze ćwiczą na żywych zawodnikach. Ale taka nauka przez SI może to zmienić.

      AI obserwowało ekran — ekipa DeepSense mówi, że DOSŁOWNIE obserwowało. Ale zwraca uwagę też na tabelę wyników, wie co jego, no i walczy o swoje.

      To nie jest takie proste, dlatego póki co sprawdza się tylko w przypadku prostych gier. Zrobienie czegoś takiego na potrzeby np. współczesnej strzelaniny byłoby ogromnym wyzwaniem i chyba na ten moment jest jeszcze poza zasięgiem.

    • Tomasz Grel

      Hej, pracowałem nad tym projektem w deepsense.ai i chciałbym rozjaśnić wątpliwości. Czarny zawodnik na filmiku to oryginalnie zaprogramowana „AI” z lat siedemdziesiątych (która nie ma tak naprawdę nic wspólnego z tym co dzisiaj rozumiemy jako AI). Biały bokser w normalnej sytuacji reprezentuje ludzkiego zawodnika, ale tutaj ruchy kontrolera do atari zostały wpięte w inny (super)komputer tak żeby nasze AI mogło grać przeciwko temu oryginalnemu. Tak naprawdę jednak to co nas interesuje to porównanie wyników naszego AI z wynikami przeciętnego ludzkiego gracza w tej samej grze i to porównanie wypada zdecydowanie na korzyść opracowanego przez nas agenta.

      W tego typu rozwiązaniach (nazywanych czasami „Reinforcement Learning”) AI podczas nauki dostaje tylko dwie informacje: liczbę punktów w grze którą zdobywa oraz tablicę liczb reprezentującą aktualny stan ekranu gry. Na tej podstawie może wykonywać „akcje” w grze, w tym przypadku jest to naciśnięcie jednego z 18 przycisków kontrolera do gier atari.

      Jedyną zasadą gry która jest na sztywno zapisana w algortmie jest to, że należy zdobyć jak najwięcej punktów. Całym celem eksperymentu jest to, aby agent sam nauczył się, jakie sekwencje akcji są optymalne i statystycznie przyniosą najwyższy wynik w grze.