Kognitywne podejście do gry w szachy kontynuacja prac

Podobne dokumenty
Kognitywne podejście do gry w szachy

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

Ocena pozycji szachowych w oparciu o wzorce

Podstawowe zasady gry w szachy. Ustawienie bierek na szachownicy w pozycji wyjściowej.

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Grupa nowicjuszy (A) - 1 godz. w tygodniu (zajęcia pozalekcyjne)

Inspiracje kognitywne w procesie analizy pozycji szachowej

Tworzenie gier na urządzenia mobilne

3. MINIMAX. Rysunek 1: Drzewo obrazujące przebieg gry.

Szachy - Samouczek. Maciek Nowak

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

Partition Search i gry z niezupełną informacją

Multiwyszukiwarka EBSCO Discovery Service - przewodnik

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

Magiczny ogródek INSTRUKCJA GRA DLA 2 OSÓB WIEK DZIECKA 4+

Tadeusz Pankowski

Złożoność obliczeniowa zadania, zestaw 2


Heurystyczne metody przeszukiwania

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Szachy INSTRUKCJA. rekwizyty: 1) Bierki - 32 szt. 2) plansza - 1 szt.

SZACHY mini INSTRUKCJA. rekwizyty: 1) Bierki - 32 szt. 2) plansza - 1 szt.

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

REGULAMIN I MIĘDZYKLASOWEGO TURNIEJU W SCRABBLE 2016/2017

PG im. Tadeusza Kościuszki w Kościerzycach nadzór pedagogiczny nauczanie problemowe

WPROWADZENIE HISTORIA SZACHÓW. ABC szachów

Podstawy Informatyki. Metody dostępu do danych

Automatyczne Diagnozy Partii Szachowych nowa funkcja Zestawienie Ruchów.

Spis treści(aby przejść automatycznie do strony kliknij jej numer lub tytuł w spisie):

Hierarchiczna analiza skupień

Gra logiczna dla 2 5 osób Czas rozgrywki około 45 minut Wiek od 7 lat

T Z A A R G I P F. Kris Burm. Deutsch... 3 English... 7 Français Italiano Nederlands Español Polski... 27

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

SZACHY SOLO. Szachowa gra logiczna! Instrukcja, wskazówki i rozwiązania! 1 gracz

Karty pracy Matematyka

Algorytmy sztucznej inteligencji

Bazy danych. Andrzej Łachwa, UJ, /15

Szukając nazwy pola zaczynamy od litery strzałki pionowe potem dopisujemy cyfry strzałki poziome

ODSZUKANIE PRZELEWU ING BUSINESS

O badaniach nad SZTUCZNĄ INTELIGENCJĄ

Algorytmy wyznaczania centralności w sieci Szymon Szylko

ATOLL. Wykonali: Aleksandra Kuchta, Łukasz Wójcik, Sztuczna Inteligencja, Semestr trzeci, Kierunek Informatyka, Wydział Informatyki i Zarządzania,

PRZEDMIOTOWY SYSTEM OCENIANIA JĘZYK NIEMIECKI

Adam Meissner. SZTUCZNA INTELIGENCJA Gry dwuosobowe

PODSTAWY > Figury płaskie (1) KĄTY. Kąt składa się z ramion i wierzchołka. Jego wielkość jest mierzona w stopniach:

a) 7 b) 19 c) 21 d) 34

Metody przeszukiwania

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH

Innowacyjne narzędzia do zarządzania kompetencjami i ich rozwoju

REFERAT PRACY DYPLMOWEJ. Temat pracy: Projekt i realizacja warstwy serwerowej gry internetowej

PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

Wstęp do programowania

PRZEDMIOTOWE ZASADY OCENIANIA z zajęć komputerowych w klasie IV VI

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0

Wyznaczanie strategii w grach

Znajdowanie wyjścia z labiryntu

Polcode Code Contest PHP-10.09

I. WPROWADZENIE I PODSTAWOWE ZASADY GRY W SZACHY

Jednym z najprostszych sposobów porządkowania jest technika stosowana przy sortowaniu listów:

Metody numeryczne w przykładach

WYMAGANIA EDUKACYJNE Z INFORMATYKI dla klasy III gimnazjalnej, Szkoły Podstawowej w Rychtalu

PRZEDMIOTOWY SYSTEM OCENIANIA. z przedmiotu biologia. 1. Wymagania edukacyjne treści i umiejętności podlegające ocenie.

Sortowanie. Bartman Jacek Algorytmy i struktury

Multiwyszukiwarka EBSCO Discovery Service przewodnik

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0

PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE

Definicja pliku kratowego

Kryteria oceniania z matematyki w klasie pierwszej w roku szkolnym 2015/2016

B.VII USTALANIE KOLEJNOŚCI MIEJSC W TURNIEJACH PZSZACH. q Ustalanie kolejności miejsc (PZSzach) Część B.VII str. 1

Sortowanie przez wstawianie Insertion Sort

Dokumentacja projektu Makao karciana gra sieciowa

Podstawowe zagadnienia z zakresu baz danych

WYMAGANIA EDUKACYJNE

Arkusz kalkulacyjny Excel

GRY I ZABAWY UMYSŁOWO- LOGICZNE JAKO FORMA UPOWSZECHNIANIA KULTURY. Donata Fraś

FUNKCJA LINIOWA - WYKRES. y = ax + b. a i b to współczynniki funkcji, które mają wartości liczbowe

PRZEWODNIK PO PRZEDMIOCIE

XIX Mistrzostwa Polski w Łamigłówkach. Runda 1 29 minut NAME: pkt. 35 pkt. 20 pkt. 31 pkt. 36 pkt. 45 pkt. 45 pkt. 98 pkt. 60 pkt. 95 pkt.

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 3

Złożoność algorytmów. Wstęp do Informatyki

5.4. Tworzymy formularze

FUNKCJA LINIOWA - WYKRES

Kryteria oceniania z matematyki w klasie pierwszej w roku szkolnym 2015/2016

Wymagania edukacyjne na ocenę z informatyki klasa 3

Wymagania edukacyjne niezbędne do uzyskania poszczególnych ocen śródrocznych i rocznych ocen klasyfikacyjnych z matematyki klasa 1 gimnazjum

Uczeń otrzymuje ocenę z przedmiotu uzależnioną od opanowania przez niego wymagań edukacyjnych na określonym poziomie.

Kierunek i poziom studiów: matematyka, studia I stopnia, rok I. Sylabus modułu: Wstęp do matematyki (03-MO1S-12-WMat)

Multiwyszukiwarka EBSCO Discovery Service - przewodnik

System punktowania w systemie Warhammer 40k. By Rudzik & Chrupek

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

WZORU UŻYTKOWEGO (19) (11)

35 żetonów Leukocyt, 35 żetonów Lekarstwa, 84 żetony Globinka, 30 żetonów Hemo, 4 detektory odpowiedzi, 4 karty przelicznik, instrukcja gry.

Indeksy. Schematyczne ujęcie organizacji pamięci i wymiany danych systemu pamiętania.

Katalog wymagań programowych na poszczególne stopnie szkolne klasa 1

Przykłady szacha-mata

Podejmowanie decyzji - sztuka dobrego wyboru

Teoretyczne podstawy informatyki

Zastosowania Robotów Mobilnych

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

MatliX + MatliX MS. Urządzenie do wizyjnej kontroli wymiarów oraz kontroli defektów powierzchni

Transkrypt:

Kognitywne podejście do gry w szachy kontynuacja prac Stanisław Kaźmierczak Opiekun naukowy: prof. dr hab. Jacek Mańdziuk

2 Agenda Motywacja Kilka badań Faza nauki Wzorce Generowanie ruchów Przykłady Pomysły

3 Motywacja intuicyjne rozwiązywanie problemów jest cechą charakterystyczną ludzkiego myślenia zdolność ta jest nieosiągalna przez systemy AI celem projektu jest zmniejszenie przepaści pomiędzy człowiekiem i maszyną w tym obszarze: poszerzenie istniejącej wiedzy intuicyjnego rozwiązywania problemów przez maszyny, naśladowanie ludzkich zdolności poznawczych zaprojektowanie systemu bazującego na intuicji w dziedzinie szachów

4 Wstęp pomimo różnorodnych osiągnięć w tradycyjnym AI, przeniesienie nacisku na systemy poznawcze wydaje się być uzasadnione dodanie ludzkich umiejętności do istniejących systemów AI znacząco zwiększyłoby ich możliwości ludzka intuicja pozwala podejmować optymalne decyzje bez potrzeby analizy wszystkich możliwych działań stworzenie systemu AI (w dziedzinie szachów) pozwalającego podejmować dezycje bez eksploracji wszystkich możliwości może stanowić znaczący krok w kierunku naśladowania ludzkiego myślenia przez komputer w ogólności

Kilka badań mistrzowie szachowi używają wzorców (ang. chunk, template), które indeksują jako znaczące struktury w pamięci długotrwałej z każdym wzorcem skojarzony jest ruch, co znacznie redukuje liczbę ruchów potrzebnych do przeanalizowania podczas procesu szukania rozmiar biblioteki wzorców szacuje się u arcymistrzów na 300 500 tys. większy stopień uwagi na istotnych bierkach w przypadku zaawansowanych graczy silni gracze potrafią równolegle ekstrahować z pozycji kilka figur, które razem tworzą istotny wzorzec lub stanowią jego część 5

ogólne wnioski z badań: Założenia ludzka intuicja bazuje głównie na doświadczeniu oraz ekspertyzie, co pozwala na podejmowanie decyzji bez potrzeby szerokiej analizy wszystkich możliwości i ich potencjalnych skutków wiedza nabywana jest podczas różnorakich doświadczeń i gromadzona w postaci hierarchicznie uporządkowanych wzorców projekt ma na celu zweryfikować i zastosować powyższe wnioski w odniesieniu systemu AI w dziedzinie szachów program naśladujący człowieka nie ma szans w potyczce z programem bazującym na tradycyjnym AI, ale maksymalizacja siły gry nie jest jedynym celem 6

7 Różnica pomiędzy człowiekiem a maszyną Reti, 1921

8 Działanie systemu cele wyznacznikiem intuicyjnej siły gry systemu jest zdolność do wskazywania optymalnego ruchu z płytkim przeszukiwaniem (1 pełny ruch) lub bez żadnego przeszukiwania system powinien wskazywać kilka najbardziej obiecujących ruchów, wśród których przypuszczalnie znajduje się ruch optymalny tego typu wybór ruchów charakteryzuje silnych graczy branching factor = 35 pełne drzewo do głębokości 3 pełnych ruchów ma ponad miliard liści dla branching factor = 3 miliard liści osiągany jest po ponad 9 ruchach

9 Faza nauki 1000 partii Kasparova, ELO przeciwników > 2400 pozycje pomiędzy 15-tym a 40-tym ruchem 43000 wzorców Działanie: dla każdej pozycji z każdej partii znajdź kluczowe pola utwórz wzorzec wokół tego pola wraz ze skojarzonym z nim ruchem wzorce układane są hierarchicznie (partie zawierają sekwencje pozycji, pozycje zawierają wzorce)

10 Wyszukiwanie kluczowych pól Ocena pola tworzona jest z punktu widzenia gracza mającego wykonać ruch. Mają na nią wpływ następujące czynniki (z różnymi wagami): suma figur atakujących i broniących różnica figur atakujących i broniących kontrola pola odległość od króla przeciwnika odległość od hetmana przeciwnika

Algorytm kontroli pola Algorytm opiera się na pomyśle zaczerpniętym z artykułu: Kieran Greer, Computer chess move-ordering schemes using move influence, Artificial Intelligence, Vol. 120, No. 2. (July 2000), pp. 235-250. każde pole może być kontrolowane przez białe (1), przez czarne (-1) bądź być neutralne (0) dwa przypadki: pole jest puste bądź zajęte biała figura zajmuje pole i nie jest ono ani atakowane ani bronione => kontrola = 0 biała figura jest broniona i nie jest atakowana => kontrola = 1 sprawa staje się bardziej złożona, jeżeli figura jest zarówno atakowana, jak i broniona 11

Algorytm kontroli pola tworzona jest symulacja wymian na danym polu jeżeli czarne mogą zdobyć pole, ale tracą przy tym materiał, wtedy pole jest pod kotrolą białych jeżeli czarne zyskują materiał podczas wymiany, wtedy pole jest pod ich kontrolą jeżeli czarne ani nie zyskują, ani nie tracą, wtedy pole jest neutralne analogiczne zasady dla pola zajmowanego przez czarną figurę jeżeli pole jest puste i białe mogą je zająć bez straty materiału cięższą figurą => kontrola = 1 jeżeli pole jest puste i czarne mogą je zająć bez straty materiału cięższą figurą => kontrola = -1 12

13 Algorytm kontroli pola pole jest neutralne jeżeli obie strony mogą zająć je bierką tej samej wagi bez straty materiału bądź żadna ze stron nie może zająć pola sekwencje wymian są wykonywane zgodnie z rosnącą wagą figur (pionek pierwszy, król ostatni) sekwencja wymian może być przerwana w trakcie jej wykonywania, jeżeli strona mająca wykonać ruch osiągnęła już zysk materialny podczas sprawdzania kontroli każde pole jest rozpatrywane oddzielnie, niezależnie od tego, jak sekwencja wymian na danym polu wpłynie na inne

Algorytm kontroli pola 14

Algorytm kontroli pola 15

16 Algorytm kontroli pola Greer projekt

Wzorzec pewna abstrakcja istotnych cech wzajemnego układu bierek wzorce tworzone są wokół pól, na które wywierany jest duży nacisk funkcja uogólniająca, która będzie dostawała wiele pozycji z tym samym motywem i tworzyła jeden uogólniony wzorzec wiedzę systemu stanowią tylko zasady i cel gry oraz aproksymowana waga figur wzorce odzwierciedlają: współdziałanie figur zdolność wywierania nacisku na konkretne części szachownicy 17

Wzorzec składa się z: pola P, wokół którego jest tworzony pól i figur na nich stojących atakujących pośrednio lub bezpośrednio pole P ruchu, który został wykonany w pozycji, z której wzorzec został zaczerpnięty (wybrane zostały tylko te wzorce, dla których ruch figury wykonany jest po trajektorii: pole, na którym stoi figura oraz pole P) położenie wzorca względem lewego dolnego rogu szachownicy (obecnie nieużywane) co najmniej 2 figury dany wzorzec może posiadać wiele różnych realizacji w konkretnych pozycjach szachowych 18

19 Wzorzec Dla progu równego 35 tworzone są wzorce wokół pól: d1, f1, a2, e2, d4, b5, e5

20 Równość wzorców Rodzaj 1: jeden wzorzec zawarty jest w drugim (w dowolną stronę) Rodzaj 2: możliwa różnica jednej figury Rodzaj 3: identyczność

21 Generowanie i sortowanie ruchów sposoby generowania ruchów: wokół wzorca wszystkie ruchy (i odpowiednie ich posortowanie) sortowanie po liczbie: nowopowstałych wzorców na szachownicy nowopowstałych wzorców będących w bazie odpowiadających sekwencji w bazie (2 warianty)

22 Wokół wzorca wyniki zbiór testowy: Kramnik 200 partii bliskie losowych dużym problemem jest liczba generowanych ruchów Rodzaj 1 Rodzaj 2 Rodzaj 3 61,46% trafionych 16,53 ruchów 61,83% trafionych 16,74 ruchów 53,98 % trafionych 14,87 ruchów

23 Sortowanie ruchów każdy ruch jest oceniany według 4 kryteriów (4 niezależne klasyfikacje) ruchy mogą być jednakowo ocenione Kryterium 1: liczba powstałych na szachownicy wzorców, które jednocześnie znajdują się w bazie Kryterium 2: liczba odniesień do bazy wśród nowopowstałych wzorców

24 Sortowanie ruchów kryterium 3 i 4 idea: nowopowstające wzorce maja potwierdzone 'uzasadnienie' w pozycji poprzedniej pozycja P 1 (poprzednik): wzorce {w 1,, w k } pozycja P 2 (następnik): wzorce {w 1,, w l } (l k) oraz nowopowstałe {v 1,, v m } punktowane jest takie wystąpienie sąsiednich wzorców w bazie, w których w pozycji poprzedzajacej wystepuje jeden z wzorcow {w 1,, w k }, a w drugiej pozycji jeden z nowych wzorcow {v 1,, v m }

25 Sortowanie ruchów kryterium 3 za każdą znalezioną parę stawiamy plus przykład: mamy dwa wzorce w 1 i w 2 oraz wykonujemy ruch, po którym otrzymujemy wzorce: w 1 i v 1 stawiamy plus za odnalezienie w bazie każdej pary pozycji, w której mamy w 1 w poprzedniku a v 1 w następniku oraz każdej pary, w której mamy w 2 w poprzedniku i v 1 następniku w szczególności jeżeli występują w 1 i w 2 jednocześnie to otrzymujemy dwa plusy w

26 Sortowanie ruchów kryterium 4 stawiamy plus za każdy wzorzec v i niezaleznie od tego, ile wzorców w j było w pozycji poprzedzającej (co najmniej jeden musi być) przykład: mamy dwa wzorce w 1 i w 2 oraz wykonujemy ruch, po którym otrzymujemy wzorce: w 1 i v 1 stawiamy plus za odnalezienie w bazie każdej pary pozycji, w której mamy w 1 lub w 2 w poprzedniku a v 1 w następniku w szczególności jeżeli występują w 1 i w 2 jednocześnie, to mamy jeden plus

Sortowanie wyniki duże zróżnicowanie w zależności od pozycji 4 kryteria sortowania, 3 rodzaje zawierania Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 Dowolna inkluzja Różnica jednej figury [13.6 21.6] [15.7 19.2] [15.5 19.3] [15.4 19.3] [10.1 23.6] [12.4 22.1] [11.5 21.4] [11.5 21.4] Identyczność [15.0 20.4] [16.6 18.5] [16.1 19.4] [16.1 19.4] 27

Przykład (dobry) 1 Whc8 Dowolna inkluzja Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 [1 1] [2 2] [1 1] [1 1] 28

Przykład (dobry) 2 Dowolna inkluzja Sd7 Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 [2 4] [2 2] [2 2] [2 2] 29

Przykład (dobry) 3 Dowolna inkluzja G:b4 Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 [1 3] [2 3] [2 2] [2 2] 30

Przykład (zły) 4 Dowolna inkluzja We8 Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 [30 41] [30 41] [30 41] [30 41] 31

Przykład (zły) 5 Dowolna inkluzja b:a4 Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 [37 41] [37 41] [37 41] [37 41] 32

Przykład (zły) 6 Dowolna inkluzja H:a2 Kryterium 1 Kryterium 2 Kryterium 3 Kryterium 4 [23 43] [23 43] [23 43] [23 43] 33

Pomysł hierarchiczna baza wiedzy wyekstrahowane wzorce stworzą wielopoziomową bazę, w której niskopoziomowe wzorce będą tworzyły większe wzorce i wyższe poziomy (warstwa pionowa) 2 4 poziomy o różnym stopniu dokładności reprezentowania wzorca (szukanie wzorców od góry do dołu) połączenia wzorców razem ze sobą występujących tworzy warstwę poziomą wagą ich połączenia będzie wzajemna korelacja branie pod uwagę wzorców występujących razem stanowi różnicę względem innych systemów z kognitywnym podejściem dodatkowo wszystkie wzorce występujące w jednej partii są połączone ze sobą, co być może pozwoliłoby na generowanie prostych planów taktycznych 34

Pomysł wzorce dwukolorowe 35

Pomysł sekwencje ruchów 36

37 Inne pomysły inaczej zdefiniować wzorzec (np. dołożyć odległości figur) więcej wzorców w bazie (zmniejsza przedział oceny ruchu) do wzorca dołączać informacje o np. szacunkowej sile pozycji, wyniku partii płytkie przeszukiwanie siła (ocena wzorca) badanie pokazały, że warto rozpatrywać tylko pozycje/ruchy strony, która wygrała

Dziękuję za uwagę 38