AI i ML w grach. Przegląd zagadnień i inspiracje systemów human-like

Podobne dokumenty
POŁĄCZENIE ALGORYTMÓW SYMULACYJNYCH ORAZ DZIEDZINOWYCH METOD HEURYSTYCZNYCH W ZAGADNIENIACH DYNAMICZNEGO PODEJMOWANIA DECYZJI

MAGICIAN. czyli General Game Playing w praktyce. General Game Playing

MAGICIAN: GUIDED UCT. Zastosowanie automatycznie generowanej funkcji oceny w GGP

Dwaj gracze na przemian kładą jednakowe monety na stole tak, aby na siebie nie nachodziły Przegrywa ten, kto nie może dołożyć monety

Narzędzia AI. Jakub Wróblewski Pokój SZTUCZNA INTELIGENCJA (ARTIFICIAL INTELLIGENCE)

Instytut Badań Systemowych Polskiej Akademii Nauk. Streszczenie rozprawy doktorskiej

Gry umysłowe: człowiek kontra maszyna

Ocena pozycji szachowych w oparciu o wzorce

Uczenie maszynowe end-to-end na przykładzie programu DeepChess. Stanisław Kaźmierczak

Metoda ewolucyjnego doboru współczynników funkcji oceniającej w antywarcabach

SPOTKANIE 11: Reinforcement learning

The game of NoGo. The state-of-art algorithms. Arkadiusz Nowakowski.

MAGICIAN: A GGP Agent. Analiza zależności w opisie reguł gier GGP

Sztuczna inteligencja

Zastosowanie sztucznej inteligencji w testowaniu oprogramowania

Jak oceniać, gdy nic nie wiemy?

Sztuczna inteligencja i uczenie maszynowe w robotyce i systemach autonomicznych: AI/ML w robotyce, robotyka w AI/ML

Alfa-beta Ulepszenie minimax Liczba wierzchołk ow w drzewie gry. maksymalnie wd. minimalnie wbd/2c + wdd/2e Algorytmy przeszukiwania drzewa gry 5

Kognitywne podejście do gry w szachy kontynuacja prac

Mixed-UCT: Zastosowanie metod symulacyjnych do poszukiwania równowagi Stackelberga w grach wielokrokowych

Kognitywne podejście do gry w szachy

Tworzenie gier na urządzenia mobilne

Technologie cyfrowe semestr letni 2018/2019

Wstęp do Sztucznej Inteligencji

Obliczenia równoległe w General Game Playing

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH

UCT. Wybrane modyfikacje i usprawnienia

Kurs z NetLogo - część 4.

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Zastosowanie metody UCT i drzewa strategii behawioralnej do aproksymacji stanu równowagowego Stackelberga w grach wielokrokowych

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Analiza stanów gry na potrzeby UCT w DVRP

Wprowadzenie do teorii systemów ekspertowych

Zastosowanie optymalizacji rojem cząstek (PSO) w procesie uczenia wielowarstwowej sieci neuronowej w problemie lokalizacyjnym, kontynuacja badań

Funkodowanie dla najmłodszych, czyli jak rozwijać myślenie komputacyjne poprzez zabawę i ruch w edukacji wczesnoszkolnej i wychowaniu przedszkolnym

Wyznaczanie strategii w grach

Porównanie rozwiązań równowagowych Stackelberga w grach z wynikami stosowania algorytmu UCT

Zastosowanie różnych teorii ludzkiej intuicji w szachach. Stanisław Kaźmierczak

Sztuczna Inteligencja i Systemy Doradcze

Deep Learning na przykładzie Deep Belief Networks

Inspiracje kognitywne w procesie analizy pozycji szachowej

Systems Research Institute Polish Academy of Sciences

Systemy Optymalizacji Oświetlenia Zewnętrznego Kontekst Informatyczny. Dr hab. Leszek Kotulski, prof. AGH Dr Adam Sędziwy KIS WEAIiIB AGH

Algorytm memetyczny w grach wielokryterialnych z odroczoną preferencją celów. Adam Żychowski

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Sztuczna inteligencja stan wiedzy, perspektywy rozwoju i problemy etyczne. Piotr Bilski Instytut Radioelektroniki i Technik Multimedialnych

CogGGP - kognitywnie inspirowany agent GGP - opis architektury

Uczenie ze wzmocnieniem aplikacje

Uczenie ze wzmocnieniem aplikacje

Historia sztucznej inteligencji. Przygotował: Konrad Słoniewski

Wojciech Jaśkowski. 6 marca 2014

Sztuczna Inteligencja i Systemy Doradcze

Wykład 7 i 8. Przeszukiwanie z adwersarzem. w oparciu o: S. Russel, P. Norvig. Artificial Intelligence. A Modern Approach

Podstawy sztucznej inteligencji

General Game Playing. Aktualnie stosowane algorytmy i metody konstrukcji agentów

PRZEWODNIK PO PRZEDMIOCIE

JAKIEGO RODZAJU NAUKĄ JEST

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji.

Tomasz Pawlak. Zastosowania Metod Inteligencji Obliczeniowej

Czy gry komputerowe szkodzą naszym dzieciom?

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Heurystyki. Strategie poszukiwań

Przyrostowe uczenie sieci neuronowych w grze w go

TEORIA GIER DEFINICJA (VON NEUMANN, MORGENSTERN) GRA. jednostek (graczy) znajdujących się w sytuacji konfliktowej (konflikt interesów),w

Zastosowanie sieci neuronowych w problemie klasyfikacji wielokategorialnej. Adam Żychowski

MAGICIAN: GUIDED UCT. Ekstrakcja uniwersalnej funkcji ewaluacyjnej z rezultatów symulacji UCT

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Wrocław University of Technology. Wprowadzenie cz. I. Adam Gonczarek. Rozpoznawanie Obrazów, Lato 2015/2016

Metody selekcji cech

Opinia o pracy doktorskiej pt. On active disturbance rejection in robotic motion control autorstwa mgr inż. Rafała Madońskiego

Prof. Stanisław Jankowski

Festiwal Myśli Abstrakcyjnej, Warszawa, Czy SZTUCZNA INTELIGENCJA potrzebuje FILOZOFII?

MiNI-Player podsumowanie dotychczasowych badao

EFEKTY UCZENIA SIĘ DLA KIERUNKU INŻYNIERIA DANYCH W ODNIESIENIU DO EFEKTÓW UCZENIA SIĘ PRK POZIOM 6

Malware + Machine Learning (ML) - czy to ma sens? Kamil Frankowicz

Algorytmy ewolucyjne

Algorytmy genetyczne

Partition Search i gry z niezupełną informacją

SCENARIUSZ LEKCJI. Dzielenie wielomianów z wykorzystaniem schematu Hornera

KARTA MODUŁU KSZTAŁCENIA

Programowanie Funkcyjne. Prezentacja projektu, 7 stycznia 2008, Juliusz Sompolski

METODY SZTUCZNEJ INTELIGENCJI 2 Opis projektu

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD III: Problemy agenta

Podstawy sztucznej inteligencji

Metody Inteligencji Sztucznej i Obliczeniowej

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Sztuczna Inteligencja i Systemy Doradcze

CogGGP kognitywnie inspirowany agent GGP podejście nr 1 wyniki eksperymentalne

Mikołaj Kania Waldemar Korłub Jakub Krajewski

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Tadeusz Pankowski

Podstawy Sztucznej Inteligencji (PSZT)

Elementy kognitywistyki II: Sztuczna inteligencja

Plan. Sztuczne systemy immunologiczne. Podstawowy słownik. Odporność swoista. Architektura systemu naturalnego. Naturalny system immunologiczny

Wstęp do głębokich sieci neuronowych. Paweł Morawiecki IPI PAN

Planowanie drogi robota, algorytm A*

Sztuczna inteligencja - wprowadzenie

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

Transkrypt:

Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska AI i ML w grach. Przegląd zagadnień i inspiracje systemów human-like Jacek Mańdziuk PP-RAI 2018, Poznań, 18/10/2018

Gry a poważna nauka Rozrywka Testowanie algorytmów reprezentacji wiedzy oraz metod przeszukiwania Symulowanie sytuacji i zachowań rzeczywistych Funkcje społeczne realna, bezpośrednia interakcja z AI Metody human-like Granie ~ rozwiązywanie problemów

AlphaGo 16.03.2016 (Rozproszona wersja) AlphaGo vs Lee Sedol 4:1 (na gobanie 19x19) Othello, Warcaby, Szachy,, Go Dlaczego Go jest (było) grą trudną dla AI? Bardzo duży współczynnik rozgałęzienia Lokalne batalie przestrzenny charakter gry

AlphaGo Value network - ocena pozycji Policy network wybór ruchu Konwolucyjne sieci neuronowe Głębokie uczenie ze wzmocnieniem Miliony zaetykietowanych pozycji treningowych + gra przeciwko sobie Metoda przeszukiwania wariant MCTS / UCT D Silver et al., Mastering the game of Go with deep neural networks and tree search, Nature 529, 484 489 (2016)

UCB - Problem k jednorękich bandytów UCB = Upper Confidence Bounds (UCT = UCB applied to Trees) Problem k-jednorękich Bandytów Rozkłady niezmienne, nieznane, parami niezależne W jaki sposób można zmaksymalizować długoterminową wypłatę? Eksploracja vs. eksploatacja Zagraj raz na każdej maszynie Następnie wybieraj maszynę A* zgodnie z poniższym wzorem: A * ln( n) arg max Qi b i 1,..., k P( Ai, n 1) 5

UCT symulacje w oparciu o UCB Wykonuj symulacje z aktualnego stanu według następujących zasad: W każdym stanie wybieraj ruch (akcję) jeszcze nie wybraną (o ile istnieje) W p. p. wybierz ruch a Q(s,a) średni wynik dotychczasowych symulacji pary (stan, akcja) N(s) liczba dotychczasowych symulacji przechodzących przez stan s N(s,a) liczba symulalji, w których w stanie s wybrano akcję a Po zakończeniu symulacji propaguj wynik wzdłuż symulowanej ścieżki, aktualizując wskaźniki Q(s,a), N(s,a), N(s) 6

UCT / MCTS Ograniczenia pamięciowe: Aktualna postać drzewa jest trawersowana w oparciu o wzor UCB W każdej symulacji dodawany jest do drzewa jeden wierzchołek Losowa symulacja aż do liścia (pozycji końcowej w grze) Aktualizacja N(s,a), N(s), Q(s,a) w przechowywanym drzewie. Bjornsson, Finnsson, IEEE TCIAI G, 1(1), 2009 7

UCT / MCTS 4 fazy selection expansion simulation backpropagation Go, Havannah, Hex, systemy grające w wiele gier (GGP) Zalety metody MCTS / UCT aheurystyczna, anytime, asymetryczna (BFS) 8

MCTS poza obszarem gier Problemy realne: harmonogramowanie, problemy dynamiczne robotyka (znajdowanie trasy) MCTS jest metodą ogólną w istotnym stopniu niezależna od rozwiązywanego problemu Nie wymaga istotnej parametryzacji 9

AlphaGo Zero (2017) Siec neuronowa trenowana bez udziału wiedzy eksperckiej Uczenie od zera (learning from scratch / tabula rasa) Wyłącznie uczenie ze wzmocnieniem przez grę z samym sobą Sieć neuronowa wykorzystana do wyboru ruchu i oceny pozycji w algorytmie MCTS AlphaGo Zero vs AlphaGo 100:0 D Silver et al., Mastering the game of Go without human knowledge, Nature 550, 354 359 (2017)

Era post AlphaGo Praktycznie nie ma szans na dorównanie maszynom w szachach, warcabach, Othello czy Go Brydż - porównywalny z ludźmi poziom gry Poker do niedawna - przewaga ludzi już jedynie w wariancie No Limit już nie DeepStack: Expert-level artificial intelligence in heads-up no-limit poker, Science (Marzec 2017) Współdziałanie / Satysfakcja implementacja (specyficznych) umiejętności posiadanych przez ludzi wspólne człowiek AI podejmowanie decyzji funkcja trenera / nauczyciela gry terapeutyczne gry video / RTS / esport 11

Próba imitacji gry jak ludzie (HLI, AGI) Ograniczone korzystanie z wiedzy zewnętrznej (np. baz debiutów i baz końcówek) Autonomiczna budowa funkcji oceny Przeszukiwanie selektywne (Deep Blue vs. Kasparov) Ograniczona liczba rozważanych wariantów Przeliczanie jedynie wariantów najbardziej obiecujących Gra intuicyjna Wielozadaniowość (multigame playing)

Intuicja jak się przejawia? Natychmiastowy ranking dostępnych akcji Gra z bardzo selektywnym przeszukiwaniem Koncentracja na celach / planach gry (nie na indywidualnych akcjach) Umiejętność długofalowego poświęcenia pewnych wartości (np. materiału) w zamian za inne wartości (poprawa pozycji) - bez precyzyjnej weryfikacji / przeliczenia poprawności

Intuicja jak się przejawia? Trajektorie rozwiązań Geometria Lingwistyczna [Stilman / Botvinnik] A na szachownicy 100 x 100?

Intuicja jak ją implementować? Obserwacja procesu analizy pozycji realizowanego przez szachistów: Percepcja pozycji [de Groot] Percepcja [Chase and Simon] wewnętrzna reprezentacja pozycji szachowej w postaci wzorców (chunks of information / templates), którymi indeksowana jest pamięć (a w niej skojarzone ze wzorcem ruchy) Analiza ruchów sakadycznych [de Groot and Gobet] Detekcja ataku na króla [Reingold and Charness]

Intuicja przykłady implementacji PIONEER (Botvinnik, lata 70-te) SYLPH (Finkelstein and Markovitz, 1998); CHUMP (Gobet, 1993); System szachowy Andre Linarhes a (2005) Giraffe (Matthew Lai, 2015) AlphaGo / AlphaGo Zero (Deep Mind 2016, 2017) WYZWANIE: Przeniesienie rozwiązań łączących przeszukiwanie z aktywną nauką (np. wykorzystanych w AlphaGo czy AlphaGo Zero) poza domenę gier - do zagadnień świata rzeczywistego, w których nie dysponujemy precyzyjnym zestawem reguł definiujących problem i nie zawsze mamy możliwość przeprowadzenia milionów symulacji.

Wielozadaniowość Chinook, Logistello, Deep Blue, AlphaGo Niezbędne jest podejście wysokopoziomowe (autonomiczny proces analizy gry, umiejętność samodzielnej nauki gry) Uniwersalne (generyczne) podejścia AI / CI w miejsce specjalistycznych rozwiązań dedykowanych konkretnym grom: Abstrakcyjne rozumowanie Reprezentacja wiedzy Metoda uczenia niezależna od gry Transfer wiedzy (pomiędzy grami) Uczenie w pełnym horyzoncie czasowym (life-long learning)

Wielozadaniowość - GGP SAL (Gherrity, 1993) HOYLE (Epstein, 1991-2004) METAGAMER (Pell, 1992-1996) General Game Playing (2005-, Stanford University) WIELOSOBOWE, SKONCZONE, DETERMINISTYCZNE, SYNCHRONICZNE

Wielozadaniowość - GGP Gry opisane w języku GDL (podzbiór Prologa) (role xplayer) (role oplayer) (init (cell 1 1 b)) (init (cell 1 2 b)) (init (cell 3 3 b)) (init (control xplayer)) ;; Cell (<= (next (cell?m?n x)) (does xplayer (mark?m?n)) (true (cell?m?n b))) (<= (next (cell?m?n o)) (does oplayer (mark?m?n)) (true (cell?m?n b))) (<= (next (control xplayer)) (true (control oplayer))) (<= (next (control oplayer)) (true (control xplayer))) (<= (row?m?x) (true (cell?m 1?x)) (true (cell?m 2?x)) (true (cell?m 3?x))) (<= (column?n?x) (true (cell 1?n?x)) (true (cell 2?n?x)) (true (cell 3?n?x))) (<= (diagonal?x) (true (cell 1 1?x)) (true (cell 2 2?x)) (true (cell 3 3?x))) (<= (diagonal?x) (true (cell 1 3?x)) (true (cell 2 2?x)) (true (cell 3 1?x))) (<= (line?x) (row?m?x)) (<= (line?x) (column?m?x)) (<= (line?x) (diagonal?x)) (<= open (true (cell?m?n b))) (<= (legal?w (mark?x?y)) (true (cell?x?y b)) (true (control?w))) (<= (legal xplayer noop) (true (control oplayer))) (<= (legal oplayer noop) (true (control xplayer))) (<= (goal xplayer 100) (line x)) (<= (goal xplayer 50) (not (line x)) (not (line o)) (not open)) (<= (goal xplayer 0) (line o)) (<= (goal oplayer 100) (line o)) (<= (goal oplayer 50) (not (line x)) (not (line o)) (not open)) (<= (goal oplayer 0) (line x)) (<= terminal (line x)) (<= terminal (line o)) (<= terminal (not open)) role(r) init(p) true(p) legal (r,a) does(r,a) next(p) terminal 19 goal(r,value)

Przykłady gier Szachy IBM Deep Blue II Gracz GGP Chess Checkers Chinese Checkers (3,4,6) Connect Four Connect Five Connect Four Suicide Othello Quarto Pentago Pilgrimige Blocker Tic-Tac-Toe 9-Board Tic-Tac-Toe Numeric Tic-Tac-Toe Tic-Tac-Chess (3,4) Counterstrike (Simplified) Eight Puzzle (solving) Sudoku Puzzle (solving) Breakthrough Knight-through Free For All (2,3,4) Rock-Paper-Scissors Lights Out Cephalopod Chess and Othello (simultaneously) Farmers (3) Zhadu Nim Cylinder Checkers Nine Men's Morris Finding a Knight's Tour Flipping Pancakes... 20

Wielozadaniowość - GGP GDL II gry z niepełną informacją VGDL video GDL (arcade games) od 2014 r. Potencjanie duże możliwości wykorzystania ML / AI W praktyce wszyscy zwycięzcy od 2007 roku wykorzystają MCTS (odpowiednio sprofilowany) Silne ograniczenia opisu językiem logiki Silne ograniczenia turniejowe krótki czas na naukę gry

Alpha Zero (12.2017) Zmodyfikowane podejście AlphaGo Zero Rezygnacja ze sztuczek technicznych (np. rotacji planszy) Zmodyfikowany sposób aktualizacji sieci w trybie self-play Trzy instancje generycznego algorytmu zastosowane do SZACHÓW, SHOGI i GO ( z jednolitym zestawem parametrów) Pokonanie programów mistrzowskich w tych grach

Wielozadaniowość poza grami Powrót do źródeł: Strong AI / AGI AI UNIWERSALNE a NIE SPECYFICZNE WYZWANIE: Systemy uniwersalne łączące w sobie nie tylko rożne modalności danych czy rozwiązujące różne instancje problemów tego samego typu Potrafiące (w ramach WSPOLNEJ, JEDNOLITEJ ARCHITEKTURY) rozwiązywać RÓZNE RODZAJE problemów 23

Powrót do źródeł Poza uniwersalnością AI Współdziałanie AI z człowiekiem Wspólne podejmowanie decyzji / rozwiązywanie problemów

Człowiek + AI, a nie kontra Human-in-the-loop Iteracyjne rozwiązywanie problemów decyzyjnych Przykład: Algorytm MCTS/UCT sterowany przez człowieka (2016)

Człowiek + AI, co-learning W trakcie wspólnej gry (wielokrotnej) człowiek nabiera coraz większego doświadczenia i tym skuteczniej steruje metodą MCTS/UCT Kolejne epizody gry INTERPRETOWALNOŚĆ / WIZUALIZACJA

Człowiek + AI, co-learning IEEE SMC, Miyazaki, Japonia, 7-10.10.2018 Warsztaty: Human and Machine Smart Co-Learning Tokyo Metropolitan University oraz National University of Tainan; Nauka / doskonalenie gry w Go z wykorzystaniem robotów W planach nauka języków i nauka matematyki w szkołach podstawowych

Projekt SENSEI Spersonalizowany system doskonalenia graczy w grach wideo / esport

Gry czasu rzeczywistego Ogromna złożoność kombinatoryczna ; szacunkowy stopień rozgałęzienia w Starcraft II [30 50, 200 200 ] Mało czasu na obliczenia dla AI Wymóg dużej skalowalności obliczeniowej Często więcej niż jeden wymiar celu gry

Gry czasu rzeczywistego This War of Mine 30

Projekt GRAIL Projekt w ramach programu GameINN SilverBullet Labs, Dominik Ślęzak Zestaw narzędzi oraz know-how dla twórców gier Połączenie różnych technik AI Podział na dwa odrębne podejścia: Turowe gry kombinatoryczne Gry czasu rzeczywistego (typowe komercyjne) 31

Podsumowanie Wyzwania Uniwersalne systemy AI rozwiązujące różne rodzaje problemów w ramach jednolitej architektury, bez konieczności dodatkowego konfigurowania (bez udziału operatora zewnętrznego) Przeniesienie rozwiązań łączących przeszukiwanie z aktywną nauką (np. wykorzystanych w AlphaGo czy Alpha Zero) poza domenę gier - do zagadnień świata rzeczywistego, w których nie dysponujemy precyzyjnym zestawem reguł definiujących problem i nie zawsze mamy możliwość przeprowadzenia milionów symulacji.

Podsumowanie Interesujące obszary Rozwój systemów doradczych, wspomagających człowieka systemy CO-LEARNING AI w grach video / RTS Budowa skalowalnych wielokrokowych rozwiązań w obszarze bezpieczeństwa (Security Games)

Dziękuję za uwagę! 34

IEEE Congress on Evolutionary Computation June 28 July 01, 2021, Kraków