gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/krakow_24_04.pdf · szachy -...
TRANSCRIPT
![Page 1: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/1.jpg)
Gry umysłowe: człowiek kontra maszyna
Maciej Świechowski
Wykład przeprowadzony na Politechnice Krakowskiej 24 kwietnia 2013 w ramach projektu POKL-04.01.02-00-107/10,
studia zamawiane na kierunku Informatyka
Wydziału Inżynierii Elektrycznej i Komputerowej
![Page 2: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/2.jpg)
Plan
• Wprowadzenie
• Klasyfikacja gier
• Algorytmy wprowadzające
• Przegląd gier i pojedynków człowieka z komputerem
• Czego brakuje? Obecne trendy i wyzwania
• GGP
• Podsumowanie
![Page 3: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/3.jpg)
O czym nie opowiem
To nie jest wykład z programowania gier.
szkoda, to byłby ciekawy temat!
![Page 4: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/4.jpg)
Gra – pojęcie wieloznaczne
Wiele osób naukowo zajmuje się metodami sztucznej inteligencji w grach pracując w istocie w obrębie różnych obszarów
• słowo jest używane w wielu kontekstach
![Page 5: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/5.jpg)
Klasyfikacja
Teoria gier Gry komputerowe (gry video)
Gry jako symulacja sztucznego życia
Gry umysłowe
![Page 6: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/6.jpg)
Rozróżnienie typów na podstawie motywacji
• Teoria gier
• Gry komputerowe
• Symulacja sztucznego życia
• Gry umysłowe
![Page 7: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/7.jpg)
Teoria gier • silnie sformalizowane gry
• głównie zastosowania związane z ekonomią, gospodarką, prawami rynku
• często można całkowicie rozwiązać problem - dowodzić optymalnego zachowania
• celem jest bardziej wynik niż sama gra
np. ustalenie strategii postępowania lub znalezienie równowagi (por. Nash Equilibrium)
![Page 8: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/8.jpg)
Gry komputerowe
• celem jest dostarczenie rozrywki
• liczy się satysfakcjonująca gra AI - „efekt wizualny”
• brak silnych formalizmów, AI nawet nie musi grać na tych samych zasadach
• często stosowane są różnorakie sztuczki
• celem nie jest stworzenie niepokonanego gracza
– nie może być niepokonany,
– jednocześnie przekonujący (plausible)
![Page 9: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/9.jpg)
Gry komputerowe Stosowane metody:
• skrypty (predefiniowane zachowanie – brak AI)
• algorytmy wyszukiwania drogi
• mapy wpływów
• drzewa behawioralne i decyzyjne
• hierarchiczne automaty stanów
Badania w zakresie tworzenia botów dla wielu gier.
Przykłady:
Starcraft (bardzo dużo prac, głównie w Azji)
Unreal Tournament, Counter-Strike
![Page 10: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/10.jpg)
Gry typu symulacja życia
[Artificial Life]
• gry jako pewne zasady rządzące światem
• ciężko mówić o graczach i współzawodnictwie
• Np. Conway’s Game of Life, Framsticks
• celem jest opracowanie reguł symulacji
![Page 11: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/11.jpg)
Gry umysłowe
• abstrakcyjne gry takie jak np. Szachy czy Brydż
• programy grające mają dostarczyć rozrywki (wymagający przeciwnik) ale również grać najsilniej jak potrafią
• zwykle ogromna przestrzeń stanów (gry kombinatoryczne)
![Page 12: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/12.jpg)
Gry umysłowe
• szukanie nowych strategii dla gier
• środowisko testowe
– tanie
– deterministyczne
– powtarzalne
• testowanie algorytmów i metod przeszukiwania
![Page 13: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/13.jpg)
Metryki Ilość graczy:
Zwykle klasyczne gry umysłowe są 2-osobowe.
Gra synchroniczna (symultaniczna) lub turowa (sekwencyjna):
– w grach turowych gracze ruszają się na przemian
– w grach synchronicznych wszyscy gracze wykonują akcje jednocześnie, po czym następuje zmiana stanu gry
Złożoność: – długość
– wymiar przestrzeni stanów
– stopień rozgałęzienia
![Page 14: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/14.jpg)
Metryki Gry deterministyczne i niedeterministyczne:
– czy występuje element losowości np. rzut kostką lub tasowanie kart
Gry o pełnej lub niepełnej informacji: – w każdym kroku dana jest pełna informacja o stanie gry
– każdy gracz ma dostęp do tej informacji
Gry o pełnej informacji
np. Szachy, Warcaby
Gry o niepełnej informacji
np. Brydż, Magic The Gathering
![Page 15: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/15.jpg)
Metryki Gra o sumie zerowej (silnie konkurencyjna) lub nie:
Czy zysk gracza jest równoważny z równą co do wartości stratą pozostałych graczy?
Np. zdefiniowane wypłaty: [100, 0] [50,50] [0,100]
Jeśli wszystkie zyski i straty (zapisane z minusem) sumują się do 0, to gra jest o sumie zerowej
Wypłata ZYSK A STRATA A ZYSK B STRATA B SUMA
[100, 0] 100 0 0 -100 0
[50, 50] 50 -50 50 -50 0
[0, 100] 0 -100 100 0 0
![Page 16: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/16.jpg)
Metryki
Gra skończona lub nieskończona
1. Skończona liczba graczy
2. Skończona liczba możliwych stanów gry
3. Skończona liczba legalnych akcji do wyboru w każdym stanie
4. Skończona liczba kroków potrzebnych do przejścia ze stanu początkowego do terminalnego
(jeśli przynajmniej jeden warunek nie jest spełniony, to gra jest nieskończona)
![Page 17: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/17.jpg)
Metryki
Gra silnie wygrywalna (strongly winnable):
• Jeśli dla pewnego gracza istnieje sekwencja jego akcji, która prowadzi do stanu z maksymalną wypłatą (tego gracza).
Gra słabo wygrywalna (weakly winnable):
• Jeśli dla każdego gracza, istnieje sekwencja połączonych akcji graczy, która prowadzi do stanu z maksymalną wygraną (każdego z graczy)
![Page 18: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/18.jpg)
Początki… [rok 1770]
Wolfgang von Kempelen – maszyna zwana „The Turk”
![Page 19: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/19.jpg)
The Turk
Pisał o nim Edgar Allan Poe
![Page 20: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/20.jpg)
Podstawa większości programów grających
Drzewo gry
• Drzewo: acykliczny graf spójny
Graf (prosty): 𝐺 = 𝑉, 𝐸 , 𝐸 ⊆ 𝑉 × 𝑉
𝑉 > 0, V – niepusty zbiór wierzchołków
𝐸 ≥ 0, E ⊆ { 𝑢, 𝑣 : 𝑢, 𝑣 ∈ 𝑉 ∧ 𝑢 ≠ 𝑣} –zbiór krawędzi
![Page 21: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/21.jpg)
Drzewo gry
Pełny graf posiada 𝑉 ( 𝑉 −1)
2 krawędzi
Grafy można postrzegać kombinatorycznie, topologicznie, geometrycznie...
Graf skierowany:
krawędzie mają zwrot, czyli 𝑒 = (𝑢, 𝑣) ≠ (𝑣, 𝑢)
![Page 22: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/22.jpg)
Drzewo gry
Drzewo, w którym:
• wierzchołek oznacza kompletny opis stanu w grze
• korzeń oznacza stan początkowy
• krawędź (u,v) oznacza akcję w grze (prostą lub złożoną) powodującą przejście ze stanu u i v.
(stany połączone krawędzią to minimalne sąsiednie stany, które mogą wystąpić w grze)
![Page 23: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/23.jpg)
Drzewo gry
![Page 24: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/24.jpg)
Złożoność gry
Złożoność przestrzeni stanów
(state-space complexity) • liczba unikalnych stanów legalnie osiągalnych w grze
Stopień rozgałęzienia (BF, Branching Factor) • średnia liczba akcji dostępna w danym stanie gry
• czyli średnia liczba potomków każdego węzła nie-liścia
Długość gry • średnia długość ścieżki w drzewie od korzenia do liścia
![Page 25: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/25.jpg)
Złożoności przykładowych gier
Nazwa gry Przestrzeń stanów Branching Factor Długość
Kółko i krzyżyk 103 7 9
Connect-4 1013 4 36
Warcaby 1020 3 70
Szachy 1043 35 80
Backgammon 1020 400 55
Othello (Reversi) 1028 7 58
Go 10172 250 150
Arimaa 1043 16064 92
Szacunkowa liczba atomów w obserwowalnym wszechświecie: 1082 [źródło: NASA]
![Page 26: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/26.jpg)
Drzewo gry
Drzewo gry to abstrakcyjny matematyczny obiekt, który istnieje dla każdej gry
• mówi się, że drzewa gry się nie tworzy, a przeszukuje
Przy odpowiedniej złożoności gry, nie da się operować na pełnym drzewie:
– limit pamięci
– limit mocy obliczeniowej
![Page 27: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/27.jpg)
Rozwiązanie
Funkcja ewaluacyjna + algorytm przeszukiwania
![Page 28: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/28.jpg)
Funkcja ewaluacyjna
Zwana także funkcją oceny, f. heurystyczną lub heurystyczną funkcją ewaluacyjną.
Przybliżona ocena sytuacji – jak bardzo wygrywamy lub przegrywamy. Stosowana tam, gdzie trzeba odciąć drzewo na pewnej głębokości.
Im bardziej adekwatna funkcja oceny, tym lepiej.
![Page 29: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/29.jpg)
Algorytmy przeszukiwania
Różne algorytmy przeszukiwania drzewa.
• od lat ważna dziedzina informatyki, ze względu na uniwersalność: algorytmy stosuje się nie tylko do gier
Dobór algorytmu zależy od charakterystyki gry oraz wiedzy o niej dostępnej.
![Page 30: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/30.jpg)
Algorytmy przeszukiwania
• DFS, BFS
• IDFS
• A*, IDA*
• D*
• Min-Max
• Alfa-beta
• MTD(f)
• Negamax
• Nega-scout
• FSSS
• Hill climbing
• Tabele Transpozycji
• MCTS
• UCT
... lub wspomagające przeszukiwanie
![Page 31: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/31.jpg)
Min-Max
Johna von Neumann [1944]
• Intuicyjna zasada postępowania
• Założenie, że każdy gracz stara się maksymalizować swój zysk
• Podejmując decyzje staramy się maksymalizować minimalny zysk (minimalizować stratę)
W klasycznej definicji: tylko dla gier o sumie zerowej
![Page 32: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/32.jpg)
Min-max
![Page 33: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/33.jpg)
Min-max
Wiele zastosowań i uogólnień
– w statystycznej teorii decyzji (estymator minimax)
– na gry z uwzględnieniem niepewności
– na bardziej skomplikowane gry, z elementami współpracy
– na gry nie będące o sumie zerowej
![Page 34: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/34.jpg)
Alfa-beta (odcięcia)
Obserwacja, że nie wszystkie gałęzie muszą być sprawdzane.
Funkcja przyjmuje 2 dodatkowe parametry stanowiące okno przeszukiwań w poddrzewie danego wierzchołka:
– alfa (ograniczenie na minimalny wynik gracza MAX)
– beta (ograniczenie na maksymalny wynik gracza MIN)
![Page 35: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/35.jpg)
Alfa-beta (odcięcia)
![Page 36: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/36.jpg)
Alfa-beta (odcięcia)
![Page 37: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/37.jpg)
Algorytm MTD(f)
Memory-enhanced Test Driver with node n and value f
• Wstępne oszacowanie wartości beta
• Wywoływanie alfa-beta z pustymi oknami – na podstawie warunków określających, kiedy okno okazało
się niewłaściwe, alfa-beta uruchamiana jest ponownie z innym oknem
• Tabele Transpozycji – tablica haszująca przechowująca raz odwiedzone stany
![Page 38: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/38.jpg)
Algorytm A*
• Algorytm iteracyjny
Powszechnie stosowany do wyszukiwania drogi w grafie (szeroko stosowany w grach komputerowych).
W grach umysłowych pojawia się głównie w przypadku łamigłówek (gier jednoosobowych).
![Page 39: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/39.jpg)
Algorytm A*
• Budowana jest ścieżka od wierzchołka startowego (korzeń) do docelowego (wygrana)
• Przechowywane w każdym kroku:
– Kolejka priorytetowa najlepszych do tej pory fragmentów ścieżek
– Zbiór niesprawdzonych jeszcze wierzchołków OPEN
![Page 40: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/40.jpg)
Algorytm A*
Wybór kolejnego wierzchołka x z OPEN następuje tak, aby minimalizować wyrażenie:
𝒇 𝒙 = 𝒈 𝒙 + 𝒉(𝒙)
g(x) – długość (ważona) ścieżki od wierzchołka startowego do x
h(x) – heurystyczne oszacowanie ważonej długości ścieżki od x do wierzchołka końcowego
![Page 41: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/41.jpg)
Algorytm A*
A* jest kompletny – znajduje poprawne rozwiązanie w skończonym czasie dla
dowolnych danych wejściowych
A* jest optymalny z dokładnością do heurystyki, jeżeli heurystyka jest dopuszczalna. Warunek dopuszczalności heurystyki dla A*:
ℎ 𝑥 ≤ 𝑑 𝑥, 𝑦 + ℎ 𝑦
𝑥,𝑦
gdzie d(x,y) to faktyczna (nie znana apriori) odległość między x i y.
![Page 42: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/42.jpg)
Człowiek vs Maszyna
na przykładzie kilku gier
![Page 43: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/43.jpg)
Wybrane gry
• Warcaby
• Szachy
• Othello
• Backgammon
• Go
• Jeopardy
• Scrabble krótko
• Poker
![Page 44: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/44.jpg)
Warcaby
![Page 45: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/45.jpg)
Warcaby
ang. English Draughts/American Checkers
• plansza 8x8
• bicia pionami jedynie do przodu
• promocja na damkę (króla) umożliwia bicia i poruszanie się do tyłu
Istnieje polska odmiana: Polish draughts:
• plansza 10x10
• damki mają zasięg całej linii
![Page 46: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/46.jpg)
Warcaby
Pierwsza praca [A. L. Samuel, 1956]:
„Making a computer play Draughts”
Pierwszy program [Samuel, 1952-1956]:
• zademonstrowany w telewizji
• celem pokazanie, że po 8-10 godzinach nauki, program będzie grał lepiej niż jego twórca
1959: ulepszona wersja programu
• poziom przeciętnego amatora
![Page 47: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/47.jpg)
Warcaby, początki
Idea:
• Zaproponowanie 128-bitowego kodowania
• Uczenie poprzez rozgrywanie gier (rote learning)
• Przechowywanie wszystkich napotkanych w grach stanów plansz wraz z tzw. backed-up score
• backup-score obliczany na podstawie wielomianu liniowego wybranych cech na określonym poziomie ply (ruchów na przód)
![Page 48: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/48.jpg)
Warcaby, początki
Cechy funkcji w pierwszej wersji programu:
• ocena materiału (różnicy bierek) ze zwiększonymi wagami dla króli
• ocena potencjalnej równej wymiany materiału, oddzielnie w sytuacji wygrywającej (korzystnie) i przegrywającej (niekorzystnie)
• zakleszczenia – brak ruchów
![Page 49: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/49.jpg)
Warcaby, początki
• Zorganizowanie stanów plansz w formie drzewa gry
• Drzewo rosło wraz z kolejnymi grami
• Backup-score uaktualniany na zasadzie min-max
![Page 50: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/50.jpg)
Warcaby, początki
• Prekursor metody TD-learning (TD - ang. temporal difference)
• 1956: poziom średniego amatora
• 1959: zwiększenie ilości cech do 22, lepsza gra, ale wciąż nie mistrzowska
![Page 51: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/51.jpg)
Marion Tinsley vs Chinook [1992]
Chinook (1989-2007)
• Autorami naukowcy z Uniwesytetu w Albercie (Kanada)
• Rozwijany: 1989-2007
Dr Marion Tinsley (1927 – 1995)
• Mistrz świata w warcaby w latach 1955-1958 i 1975-1991
• W ciągu 40 lat przegrał tylko 7 partii!
![Page 52: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/52.jpg)
Tinsley vs Chinook - 4 : 33 : 2
• W ciągu 45 lat kariery, najwybitniejszy warcabista, przegrał 9
gier, w tym 2 z Chinookiem.
• Do rewanżu nie doszło, gdyż Tinsley zmarł na raka
• Od tego momentu, żaden inny gracz nie wygrał z Chinookiem
![Page 53: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/53.jpg)
Chinook
• 4 funkcje ewaluacyjne (w zależności od fazy gry)
• Każda funkcja złożona z 25 podstawowych cech
– ocena materiału
– układy bierek
– wzorce na planszy
– szczególne pola (narożniki)
– bicia z rozwidleniami (forks)
– Itd...
![Page 54: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/54.jpg)
Chinook
• 4 funkcje ewaluacyjne (w zależności od fazy gry)
• Głębokie przeszukiwanie drzewa (> 12ply)
• Baza danych końcówek:
1989: 0
1994: 7 092 774
2007: 34 778 882 769 216
• obliczenie rozproszone na wiele komputerów
![Page 55: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/55.jpg)
„Checkers is Solved”
Gra okazała się być remisowa przy optymalnej grze obu graczy
![Page 56: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/56.jpg)
Szachy
„Grand Challenge of AI” „The drosophilia of AI”
![Page 57: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/57.jpg)
Szachy - historia
• Za kolebkę szachów uznaje się Indie (VI wiek)
[ok. 1890] Torres y Quevedo:
maszyna grającą końcówki król + wieża vs król.
[1944] von Neumann, algorytm min-max
[1950] Claude Shannon:
„Programming a computer for playing chess”
[1953]
Alan Turing tworzy pierwszy program szachowy
![Page 58: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/58.jpg)
Szachy - historia
[1968] Mistrz Świata David Levy postawił zakład, że żaden komputer nie pokona go przez 10 lat.
![Page 59: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/59.jpg)
Szachy - historia
[1968] zakład Davida Levy’ego
• Wygrał zakład, ale przegrał w 1989 z ówcześnie najsilniejszym komputerem Deep Thought.
Ogromne zainteresowane programami szachowymi od lat 70 (do lat 2008-2009)
Na temat szachów prawdopodobnie napisano więcej prac niż o jakiejkolwiek innej grze.
![Page 60: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/60.jpg)
Garry Kasparov – Deep Blue [1997]
![Page 61: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/61.jpg)
Garry Kasparov vs Deep Blue – 2 : 1 : 3
![Page 62: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/62.jpg)
Deep Blue
• Przede wszystkim superkomputer
• 259 miejsce na ówczesnej liście top500
Dla porównania:
Ostatnie notowanie [11-2013], 259 miejsce:
19504 x Intel Xeon E5 8C – 109.9TFlops
• Klaster 30 węzłów x 480 specjalizowanych procesorów szachowych
• 200 000 000 pozycji na sekundę
![Page 63: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/63.jpg)
Deep Blue
• Funkcja oceny – 8000 cech, w tym:
– Materiał
– Wybrane wzorce pozycyjne
– Kontrola środka gry
– Układ pionów
– Ochrona króla
– Mobilność
• Efektywne reprezentacja planszy:
– szybkie manipulacje bitowe
![Page 64: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/64.jpg)
Deep Blue
• Baza debiutów: – 4000 unikalnych otwarć z gier arcymistrzów
• Baza końcówek: – Wszystkie możliwe zakończenia gry z 5 bierkami na
planszy
– Dużo zakończeń z 6 bierkami
• Przeszukiwanie: – Negascout + Iterative Search + Quiescence Search
![Page 65: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/65.jpg)
Szachy
• Widoczny rozwój maszyn szachowych do roku 2006.
Deep Fritz, Deep Junior, Hydra, Rybka, Pocket Fritz, Blue Gene, Houdini
• 3308 ELO – ranking szachowy maszyny (Houdini) • 2872 ELO – najwyższy ranking osiągnięty przez
człowieka (Magnus Carlsen)
• 6 graczy na świecie ma ranking powyżej 2800
![Page 66: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/66.jpg)
Szachy
Obecnie człowiek praktycznie nie ma szans pokonania topowych programów...
– nawet na maszynach klasy desktop PC
![Page 67: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/67.jpg)
Othello (Reversi)
![Page 68: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/68.jpg)
Othello
Znana od końca XVIII wieku, nowoczesna wersja sformalizowana w 1973 r. (Goro Hasegawa).
Wyjątkowo dobrze grają Polacy i Japończycy
– Plansza 8x8, kamienie białe/czerwone i czarne
– można dostawiać kamienie jedynie przyległe do kamieni przeciwnika
– należy zamykać linie, aby zdobywać kamienie wroga
– gra addytywna, lecz o bardzo dużej zmienności
![Page 69: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/69.jpg)
Murakami vs Logistello [1997]
Takeshi Murakami
• Mistrz świata, najlepszy gracz 1997 roku.
Logistello
• Program grający w Othello
• Stworzone w ramach pracy doktorskiej Michaela Buro
![Page 70: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/70.jpg)
Murakami vs Logistello – 0:6
Program nie był ani przez moment zagrożony.
Obecnie człowiek nie ma szans z Logistello i innymi najlepszymi programami.
![Page 71: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/71.jpg)
Logistello
Połączenie wielu pomysłów w jednym programie.
Funkcja ewaluacyjna:
– kombinacja liniowa cech związanych z grą
– dynamicznie zarządzane cegiełki
Wyróżnienie 13 faz gry w zależności od liczby dysków: 13-16, 17-20, ..., 61-64
– w każdej fazie oddzielna funkcja ewaluacyjna
![Page 72: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/72.jpg)
Logistello
• Elementy funkcji ewaluacyjnej:
– stabilność dysków
– bezpieczeństwo dysków
– maksymalizacja swojej mobilności
– minimalizacja mobilności przeciwnika
– parzystość
– siła poszczególnych pól
![Page 73: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/73.jpg)
Logistello
Dobór wag:
• statystycznie przy pomocy regresji liniowej
• próbka licząca 3 miliony pozycji
![Page 74: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/74.jpg)
Logistello
• Program w fazie nauki przeprowadzał gry ze samym sobą.
• Węzły w drzewie etykietowane były wynikami poprzednich partii
![Page 75: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/75.jpg)
Logistello
• Dynamicznie generowane bazy otwarć, dynamicznie uaktualniane na podstawie 23 000 gier
• Dostosowywanie się do przeciwnika – etykietowanie poprzednich gier
– nie przegrywanie gier pod rząd w taki sam sposób
– nie powtarzanie idealnie takich samych wygranych gier, jeśli przeciwnik zaczyna dobrze się bronić
– kopiowanie wygrywających ruchów przeciwnika po zmianie stron
![Page 76: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/76.jpg)
Logistello
Kilka metod przeszukiwania:
– ProbCUT (redukcja szerokości drzewa gry przez szybkie odrzucanie potencjalnie złych ruchów – na bazie estymacji)
– Przeszukiwanie od 10 do 23 ruchów w głąb drzewa przy standardowej 30 minutowej grze
– ItDeepening Negamax
– Standardowy min-max jako plan awaryjny
![Page 77: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/77.jpg)
Backgammon (pol. Tryktrak)
![Page 78: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/78.jpg)
Backgammon
Nietypowa plansza • w porównaniu do prostokątnych zestawów pól
Element losowości
• dwa rzuty kostką przed w każdej turze
W każdej turze gracz przesuwa swoje kamienie zgodnie z wartościami wylosowanymi na kostkach oraz regułami przemieszczania
Cel: pozbycie się swoich kamieni
![Page 79: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/79.jpg)
TD-Gammon
Najsłynniejszy program do gry w backgammona, rozwijany w latach 1992-1995. • Autor: G. Tesauro
Grał na poziomie odrobinę poniżej najwyżej sklasyfikowanych arcymistrzów. Podejście rodem z inteligencji obliczeniowej (Computational Intelligence)
![Page 80: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/80.jpg)
Inteligencja obliczeniowa
• Oparta na liczbach, a nie symbolach • Stosowana głównie do problemów, które nie są
efektywnie algorytmizowalne • Metody zwykle uniwersalne – czarne skrzynki – w
postaci modeli obliczeń. Przykłady: • Sztuczne sieci neuronowe • Algorytmy rojowe • Systemy rozmyte • Algorytmy genetyczne i ewolucyjne, memetyczne
![Page 81: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/81.jpg)
TD-Gammon
![Page 82: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/82.jpg)
TD-Gammon
• Reprezentacja planszy jako sieć neuronowa:
– 198 neuronów
24 lokacje x [4 kodowanie ułożenia białych w lokacji]
x [4 kodowanie ułożenia czarnych]
+ 2 neurony na zakodowanie liczby pionów w domu
+ 2 neurony na zakodowanie liczby pionów poza grą
+ 2 neurony na zakodowanie wyniku obu graczy
![Page 83: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/83.jpg)
TD-Gammon
• Sieć obserwuje sekwencje pozycji na planszy od początku gry do zakończenia w postaci zakodowanych wektorów X[1]….X[f].
• Dla każdego wzoru wejściowego sieć generuje sygnał wyjściowy Y[t] (int[4]).
• W każdym kroku czasowym t algorytm TD() zmienia tak wagi w sieci, aby ocena Y[t] była bliższa ocenie Y[t+1]
![Page 84: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/84.jpg)
TD-Gammon
• Jedno z najbardziej efektownych zastosowań algorytmu TD
• Gracz pokazał zupełnie nowe strategie gry – nie stosowane przez graczy do tej pory
• Silna gra była obserwowana od 200 000 symulacji uczących. Wyniki poprawiały się do osiągnięcia nasycenia przy 1500 000 symulacji.
![Page 85: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/85.jpg)
TD-Gammon
[D-Gammon's exclusive training through self-play (rather than tutelage) enabled it to explore strategies that humans previously hadn't considered or had ruled out erroneously. Its success with unorthodox strategies had a significant impact on the backgammon community – Tesauro 1995]
![Page 86: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/86.jpg)
Go
![Page 87: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/87.jpg)
Go
Chińska gra, której początki sięgają 2500 lat wstecz
• Trudna strategicznie gra
• Plansza 19x19 (goban)
• Wiele konkurujących ze sobą celów
• Potyczki lokalne i globalne
• 40 milionów zarejestrowanych graczy [2008]
![Page 88: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/88.jpg)
Go [1968] – początki prac nad programami grającymi [1998] - silni gracze pokonują najlepsze programy nawet z handicapem 25 kamieni. handicap: strata wyrównująca siły Ranking gry w Go [k – kyu; d – amatorski dan; p – profesjonalny dan]
30-20k: początkujący 19-10k: amator 9 – 1k: średnio-zaawansowany 1 – 8d : zaawansowany 1 – 9p: profesjonalista 10p: tytuł honorowy za specjalne osiągnięcia
![Page 89: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/89.jpg)
Go
[2012] – najlepsze programy MoGo, Zen19D i CrazyStone posiadają poziom około 5p
– na maszynie 28-procesorowej
– w wersji gry 15 sekund na ruch
Wciąż gorzej od mistrzów, ale nastąpił przełom.
![Page 90: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/90.jpg)
Go
Najważniejszym przełomem było zastosowanie symulacji Monte-Carlo i algorytmu UCT.
![Page 91: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/91.jpg)
Monte-Carlo Tree Search (MCTS)
Wykonujemy losowe symulacje i przechowujemy statystyki w węzłach:
• sumaryczny wynik gry każdego z graczy
• liczbę odwiedzin w węźle
• średni wynik – wyliczany na podstawie powyższych dwóch
Podejście typu knowledge-free:
brak jawnie stworzonej funkcji ewaluacyjnej
Wystarczy zaimplementować mechanikę gry
![Page 92: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/92.jpg)
Monte-Carlo Tree Search (MCTS)
![Page 93: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/93.jpg)
Monte-Carlo Tree Search (MCTS)
• Selekcja: w każdym węźle rozpoczynając od wierzchołka wybieramy najlepszego potomka do kontynuacji przeszukiwania
• Rozwinięcie: gdy jesteśmy w liściu to tworzymy nowy węzeł
• Symulacja: gramy losowo aż do osiągnięcia stanu terminalnego
• Propagacja wsteczna: uaktualniamy statystyki – średni wynik oraz liczbę odwiedzin w każdym węźle na ścieżce, którą wybraliśmy
![Page 94: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/94.jpg)
Monte-Carlo Tree Search (MCTS)
Podstawowy schemat MCTS.
– Każdą z faz można komplikować i optymalizować
![Page 95: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/95.jpg)
Monte-Carlo Tree Search (MCTS)
Symulacje Monte-Carlo pierwszy raz opisane jako propozycja gry w Go zostały ‚wyśmiane’ i zignorowane.
Pojawiło się jednak ulepszenie, które spowodowało przełomowy wręcz wzrost siły gry.
![Page 96: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/96.jpg)
Jednoręcy bandyci
Jesteśmy w kasynie, gdzie mamy rząd N jednorękich bandytów do wyboru do gry. • każdy automat ma swoją dystrybuantę wypłat (oczywiście nie jest nam znana) Cel: maksymalny zysk Pytanie: na których maszynach grać?
![Page 97: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/97.jpg)
UCB (Upper Confidence Bounds)
1. Najpierw próbujemy każdy automat raz 2. Następnie według wzoru:
𝑏∗ = 𝑎𝑟𝑔max𝑖𝑄𝑖 + 𝐶
ln(𝑛)
𝑇(𝑏𝑖 , 𝑛)
b* - bandyta, do wybrania Qi - średnia wypłata i-tego bandyty n - liczba gier do tej pory T(bi,n) - liczba gier na i-tym bandycie do tej pory C - współczynnik skalowania eksploracji
![Page 98: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/98.jpg)
UCT (UCB applied for Trees)
1. Najpierw próbujemy każdy automat raz
2. Następnie według wzoru:
𝑎∗ = 𝑎𝑟𝑔 max𝑎∈𝐴(𝑠)
𝑄(𝑠, 𝑎) + 𝐶ln𝑁(𝑠)
𝑁(𝑠, 𝑎)
a* - akcja do wybrania
s - bieżący stan
Q(s,a) - średni wynik gry przy wykonaniu akcji a w stanie s
N(s) - liczba dotychczasowych odwiedzin stanu s
N(s,a) - liczba dotychczasowych wyborów akcji a w stanie s
![Page 99: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/99.jpg)
UCT (UCB applied for Trees)
Połączenie MCTS/UCT jest asymptotycznie zbieżne do uogólnionego min-max. W programach Go oprócz MCTS/UCT także wiele optymalizacji takich jak np: • bardziej inteligentne symulacje losowe (quasi-losowe) • wykrywanie oczywistych silnych akcji • unikanie oczywistych poświęceń • optymalizacja kolejności testowania ruchów • heurystyki historyczne • baza otwarć
![Page 100: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/100.jpg)
Scrabble
![Page 101: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/101.jpg)
Scrabble
• Maven (Brian Sheppard, rozwijany od 1986), licencjonowany przez Hasbro
• Historyczny wynik: 65-21
• Podział gry na 3 fazy (mid, pre-end, end)
• Słownik wszystkich słów (American English)
• Algorytm GADDAG generowania słów na planszy
• Ponad 400 wzorców „synergii”
• Potrafi również przeszkadzać przeciwnikom
• Przeszukiwanie do 14 ruchów
![Page 102: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/102.jpg)
Jeopardy!
![Page 103: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/103.jpg)
Jeopardy!
Watson
• System zbudowany przez IBM
• Pierwszy taki projekt od czasów Deep Blue
• Rozpoczęcie prac: 2006
• W 2011 wygrał quiz Jeopardy! pokonując dwóch zwycięzców z lat poprzednich
(transmitowany w TV)
• Watson wygrał milion dolarów.
![Page 104: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/104.jpg)
Jeopardy!
Watson wygrał milion dolarów.
• czyli wg nieoficjalnych informacji od głównego projektanta (T. Pearson) zwrócił 1/3 swojego kosztu.
• Nie był podłączony do internetu
• Posiadał dużą bazę wiedzy offline np. całą wikipedię
• Szczegóły stosowanych rozwiązań są tajemnicą IBM.
![Page 105: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/105.jpg)
Watson
![Page 106: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/106.jpg)
Watson
Obecnie przeprogramowany jako doradca w Memorial Sloan-Kettering Cancer Center i powiązanym towarzystwie ubezpieczeń zdrowotnych WellPoint.
Oczekiwano, że Watson spróbuje zdać Test Turinga. Nigdy do jego zgłoszenia jednak nie doszło.
![Page 107: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/107.jpg)
Poker
![Page 108: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/108.jpg)
Poker
• Od 2006 roku rozgrywane są mistrzostwa komputerowych graczy.
• Autorami najsilniejszych programów: Poki, Polaris są pracownicy Uniwersytetu w Albercie - Poker Research Group
• Gra jest dochodowa, więc prace mają duże zainteresowanie
![Page 109: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/109.jpg)
Poker
• Prosta mechanika gry – jedynie 3 akcje do wyboru: – Fold, Check/Call, Raise [X]
• Baza danych:
– Siły układów pre-flop – Siły rąk – Siły pozycji
• Podręcznikowa teoria Pokera (ICM) • Modelowanie przeciwnika – tworzenie bazy danych
dotychczasowych zagrań • Niedeterministyczny element blefu
![Page 110: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/110.jpg)
Poker
W pojedynkach Heads-Up z profesjonalistami:
• Fixed Limit: poziom porównywalny z mistrzami
• No limit: człowiek ma lekką przewagę
W poker roomach, wiele gier z przypadkowymi graczami: programy bardzo dochodowe.
– Bazowanie na statystyce i błędach popełnianych przez ludzi
![Page 111: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/111.jpg)
Wynik potyczki dla 8 gier
Maszyna:
Warcaby
Szachy
Othello
Scrabble
Jeopardy
Remis:
Backgammon
Poker
Człowiek:
Go
![Page 112: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/112.jpg)
Wniosek
Tam, gdzie działają metody typu brute-force (można relatywnie dużo przeliczyć) lub silna gra jest łatwo algorytmizowana, komputer dzierży supremację.
![Page 113: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/113.jpg)
Wniosek
Tam, gdzie działają metody tybu brute-force (można relatywnie dużo przeliczyć) lub silna gra jest łatwo algorytmizowana, komputer dzierży supremację.
To wcale nie oznacza, że komputer gra inteligentnie albo że mało zostało do zrobienia.
![Page 114: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/114.jpg)
Obecne trendy
• Prace w obrębie gier „trudnych” takich jak Go czy Arimaa
Nowe nurty:
• Intuicja
• Kreatywność, podejścia kognitywistyczne
• Wielozadaniowość
![Page 115: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/115.jpg)
Wielozadaniowość
![Page 116: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/116.jpg)
„AI systems are dumb because Al researchers are too clever.”
Jaques Pitrat (1968)
![Page 117: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/117.jpg)
General Game Playing (GGP)
General Game Playing
• jako ogólny nurt
• jako nazwa własna konkursu wprowadzonego w 2005 roku
Idea, aby tworzyć programy zdolne grać w dowolne gry na wysokim poziomie.
– podobnie jak ludzie
![Page 118: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/118.jpg)
Idea GGP
Programy grające w konkretne gry są mocno wyspecjalizowane.
• metody siłowe
• czasem mało w nich klasycznie rozumianej sztucznej inteligencji
• „inteligencją” popisują się twórcy programów dokonując analizy gry i dobierając metody
• ciężko przenieść takie mechanizmy na inne dziedziny (brak uniwersalności)
![Page 119: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/119.jpg)
Idea GGP
Jeden program (agent GGP) do grania w wiele gier.
To program ma opracować metodę gry.
Powrót do korzeni AI. Takie programy muszą integrować wiele aspektów:
• reprezentacja wiedzy domenowej
• wnioskowanie i rozumowanie logiczne
• tworzenie abstrakcyjnych modeli
• nauka
• podejmowanie decyzji
• automatyczne dostosowywanie metod do problemu
![Page 120: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/120.jpg)
GGP Competition
http://games.stanford.edu/
http://www.general-game-playing.de/
Coroczne, ogólnoświatowe mistrzostwa: • Zewnętrznie organizowane i bezstronne środowisko testowe
dla agentów GGP
• Sława dla zwycięzcy i 10 000$
• Zwycięzcy są licznie cytowani
• 2005-2010; 2012 w ramach konferencji IAAA
• 2011- na konferencji IJCAI
![Page 121: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/121.jpg)
Game Manager (GameMaster)
![Page 122: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/122.jpg)
GameMaster
• Nadzoruje przebieg rozgrywki
• Technicznie jest klientem, a gracze są serwerami do których GM się podłącza
• Pośredniczy w komunikacji
• Wysyła reguły gry i parametry rozgrywki
• Zbiera legalne akcje od każdego gracza i odsyła pełny wektor akcji wykonanych przez graczy
• W przypadku nielegalnego ruchu lub braku odpowiedzi w przewidzianym czasie, GM wybiera za gracza ruch losowy
![Page 123: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/123.jpg)
Wymiana komunikatów
![Page 124: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/124.jpg)
Klasa dostępnych gier • Gracze muszą być w stanie „zrozumieć” reguły
• Do opisu został wybrany GDL (Game Description Language)
– wariacja Dataloga, będącego podzbiorem Prologa
Klasa gier opisywana przez GDL-I (w wersji pierwszej):
• skończone
• deterministyczne
• synchroniczne
![Page 125: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/125.jpg)
Game Description Language • Logika pierwszego rzędu (First-Order Logic)
• Opiera się na predykatach, regułach, faktach
• Wyróżnione słowa kluczowe: do sterowania przebiegiem gry:
role(r) init(p) true(p) does(r, a) legal (r, a) next(p) goal(r, v [0…100]) terminal distinct(v,w)
![Page 126: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/126.jpg)
Game Description Language
S – zestaw ‘stanów’ gry
r1, ..., rn – nazwy ról w n-osobowej grze
I1, ..., In – zestaw n akcji, jeden zestaw dla każdego gracza
a1, ..., an – zestaw legalnych akcji, ai ⊆ Ii x S
I1 x ... x In x S → S – funkcja uaktualnienia stanów
s1 – stan początkowy, element należący do S
g1, ..., gn – para [cel,wypłata], gi ⊆ S x [0...100]
T – zestaw stanów końcowych (terminalnych)
![Page 127: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/127.jpg)
GDL w praktyce 1. Fakty, które określają dynamiczny stan.
– początkowy zbiór realizacji zdefiniowany przy pomocy init
– po wykonanych akcjach następuje uaktualnienie (frame update) przy pomocy reguły next
2. Fakty stałe – jawnie podane w regułach
– można je interpretować jako prawa fizyki w danej grze
3. Reguły związane ze słowami kluczowymi – odpytywane w odpowiednich momentach symulacji rozgrywki
4. Pozostałe reguły – dowolnie definiowane dla gry (wystarczy, żeby nazwa nie kolidowała)
Reguły są w postaci implikacji – z warunków wynika pewien zbiór faktów.
Zbiór wszystkich implikacji danej reguły definiuje równoważność.
![Page 128: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/128.jpg)
...
(<= (legal xplayer (mark ?x ?y))
(true (cell ?x ?y b))
(true (control xplayer)))
(<= (legal oplayer (mark ?x ?y))
(true (cell ?x ?y b))
(true (control oplayer)))
(<= (legal ?player noop)
(role ?player)
(not
(true (control ?player)))
...
(<= (row ?m ?x)
(true (cell ?m 1 ?x))
(true (cell ?m 2 ?x))
(true (cell ?m 3 ?x)))
(<= (column ?m ?x)
(true (cell 1 ?m ?x))
(true (cell 2 ?m ?x))
(true (cell 3 ?m ?x)))
(<= (line ?x) (row ?m ?x))
(<= (line ?x) (column ?m ?x))
(<= (line ?x) (diagonal ?x))
(<= open (true (cell ?m ?n b)))
...
(<= (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))
(<= terminal
(line x))
(<= terminal
(line o))
(<= terminal
(not open))
![Page 129: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/129.jpg)
(<= (next (cell ?m ?n x))
(does xplayer (mark ?m ?n))
(true (cell ?m ?n b)))
(<= (next (cell ?m ?n x))
(does xplayer (mark ?m ?n))
(true (cell ?m ?n b)))
(<= (next (cell ?m ?n b))
(does ?w (mark ?j ?k))
(true (cell ?m ?n b))
(or (distinct ?m ?j)
(distinct ?n ?k)))
(role white)
(role black)
(init (cell 1 1 b))
(init (cell 1 2 b))
(init (cell 1 3 b))
(init (cell 2 1 b))
...
(init (cell 3 3 b))
(init (control xplayer))
![Page 130: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/130.jpg)
Zwycięzcy mistrzostw GGP
2005 – ClunePlayer, USA (UCLA)
2006 – FluxPlayer, Niemcy (Dresden University of Technology)
2007 – CadiaPlayer, Islandia (Reykjavik University)
2008 – CadiaPlayer, Islandia (Reykjavik University)
2009 – Ary, Francja (Paris 8)
2010 – Ary, Francja (Paris 8)
2011 – TurboTurtle, USA (absolwent Stanforda)
2012 – CadiaPlayer, Islandia (Reykjavik University),
7 miejsce mojego gracza
![Page 131: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/131.jpg)
Podsumowanie Gry i programy grające od lat są zarówno techniczną ciekawostką jak i przedmiotem badań naukowych.
W wielu grach maszyny osiągnęły poziom znacznie przewyższający możliwości gry człowieka.
Ale czy warto konkurować z dźwigiem w podnoszeniu ciężarów?
![Page 132: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/132.jpg)
Podsumowanie
Wciąż istnieją gry, dla których nie istnieją wydajne programy. Głównym powodem jest stopień rozgałęzienia eliminujący wydaje przeszukiwanie.
W rywalizacji „na równych zasadach” np. uczeniu się nowych gier, maszyna na razie nie jest w stanie konkurować z człowiekiem.
Czy maszyny mogą posiadać intuicję, kreatywność, inteligencję?
Czy są to jedynie cechy organizmów żywych?
![Page 133: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/133.jpg)
Oczekiwania
Prawdziwie uniwersalne systemy – Gracze co najmniej dorównujący ludziom w znacznej
większości gier
Przetwarzanie języka naturalnego – Podawanie zasad w języku “ludzkim”
Computer Vision – System obserwuje elementy gier, planszę, karty, figury
– posiada percepcję
Robotyka – Aby w gry fizycznie grały roboty, a nie tylko programy
![Page 134: Gry umysłowe: człowiek kontra maszynariad.pk.edu.pl/~lscislo/doc/Krakow_24_04.pdf · Szachy - historia [1968] zakład Davida Levy’ego •Wygrał zakład, ale przegrał w 1989](https://reader035.vdocuments.pub/reader035/viewer/2022062505/5edb6427ad6a402d66659729/html5/thumbnails/134.jpg)
Dziękuję za uwagę