Warcaby Samuela

Preview:

DESCRIPTION

Warcaby Samuela. Systemy uczące się. Andrzej Fałkowski. Arthur Lee Samuel (1901–1990). pionier nauczania maszynowego twórca pierwszego samouczącego się programu MIT, IBM, Stanford. Warcaby Samuela - założenia. początek lat 50. - PowerPoint PPT Presentation

Citation preview

WARCABY SAMUELA

Andrzej Fałkowski

SYSTEMY UCZĄCE SIĘ

Arthur Lee Samuel (1901–1990)• pionier nauczania

maszynowego• twórca pierwszego

samouczącego się programu• MIT, IBM, Stanford

Warcaby Samuela - założenia• początek lat 50.• stworzenie programu komputerowego realizującego

proces uczenia przypominający ten wystepujący w naturze

• “Write a program to play checkers [...] challenge the world champion and beat him.”

Warcaby angielskie (ang. checkers)• dwóch graczy wykonujących ruchy naprzemiennie• plansza 8x8 pól• dwa typy figur – pionki i króle

Warcaby angielskie - cechy• brak algorytmu gwarantującego wygraną lub remis

(przynajmniej w 1959)• ok. 5 × 1020 możliwych pozycji• ok. 1040 możliwych przebiegów gry• zdefiniowany cel gry – zbicie wszystkich figur przeciwnika• stan gry jawny dla wszystkich graczy• brak czynnika losowego• istniejący prosty program – Strachey, 1952

The Basic Checker-Playing Program• reprezentacja stanu gry – pozycje pionów na planszy jako

odpowiednie wartości w ciągu odpowiadającym liście wszystkich pól

• konieczność podjęcia decyzji odnośnie wykonania następnego ruchu

The Basic Checker-Playing Program• looking-ahead – rozważenie wszystkich możliwych

ruchów wychodzących z aktualnego stanu gry i uzyskanie nowych możliwych stanów gry.

The Basic Checker-Playing Program• looking-ahead – zbyt duży rozrost drzewa, by móc

rozważyć wszystkie możliwe kombinacje aż do zakończenia gry

• konieczność ograniczenia poziomów drzewa• idea oceny stanów gry – liści, i wyznaczenie pożądanej

sekwencji ruchów

Ocena stanu gry

• S(s,w) = w1 * x1(s) + w2 * x2(s) + … + wn * xn(s)

• xi – heurystyki Samuela• wi – wagi funkcji oceniającej

• uczenie polega na doborze wag

Ocena stanu gry• Sztywna – ustalana przez programistę – przykład:

• Wartość piona należacego do gracza: 1 pkt• x2 jeśli jest królem• x0.4 jeśli pion zagrożony przez pion przecwinika• x0.8 jeśli pion na linii bocznej• x1.3 jeśli pion zagraża pionowi przeciwnika• x1.2 jeśli pion jest broniony• +0.05 za każdą linię odległości od naszej linii końcowej• piony przeciwnika liczone ujemnie

• Czas oceny – liniowy

Ocena stanu gry• Doświadczenie pokazuje, że dobranie odpowiednich

parametrów funkcji ewaluującej jest czasochłonne i podatne na błędy.

• „A number of schemes of an abstract sort were tried for evaluating board positions without regard to the usual checker concepts, but none of these was successfuI.”

• idea dobrania parametrów korzystając z narzędzi dostarczonych przez sztuczną inteligencję

Ocena stanu gry• dynamiczna – wagi poszczególnych parametrów funkcji

ewaluującej stan gry dobierane na podstawie uczenia • arbitralne dobranie poczatkowych wartości parametrów• proces uczący – wielokrotne gry z klonami jak i

zewnętrznymi przeciwnikami

Temporal-difference learning• nauka na błędach – wsteczna rewaluacja pozycji na

podstawie następującego stanu gry (dobrze oceniany ruch w dalszej perpektywie mógł okazać się katastrofalny)

• cel – zmniejszenie różnicy ocen między kolejnymi ruchami gracza (błąd funkcji oceniającej)

• problem – dobór odległości wpływania ocen dwóch stanów – czy faktycznie dany ruch był gorszy niż wynikałoby z funkcji oceny, czy może błąd został popełniony w innym miejscu?

Temporal-difference learning• Metoda Samuela

• α << 1

Temporal-difference learning• Metoda Widrowa-Hoffa

• = <0,1>

Rote-learning• zapamiętywanie pozycji na planszy wraz z obliczoną

wartością oceny• brak potrzeby ponownej rewaluacji – zyskana moc

obliczeniowa może posłużyć do pogłębienia pozostałych poddrzew

Uczenie ze wzmocnieniem• gra między kopią dynamiczną i statyczną• zmiana parametrów funkcji w sposób zbliżający wartość

oceny danej pozycji, do wartości pozycji osiągniętej kilka ruchów później

• gra klonów z różnymi parametrami – zwyciężca przekazuje swoje parametry do kolejnych rozgrywek

Wybór najlepszego ruchu• trudno oczekiwać, by przeciwnik pozwolił nam osiągnąć

najlepszą możliwą sytuację z dostępnych (prawdopodobnie będzie dążył do jak najgorszej dla nas)

• minimax na drzewie możliwych stanów gry• wybieramy ruch gwarantujący od końca uzyskanie

największego minimum

Dodatkowe techniki usprawniające• księga otwarć• alpha-beta pruning

Księga otwarć• początkowy stan gry wynika z jej zasad i jest

gwarantowany• węższy zbiór możliwych ruchów na poczatku partii• niektóre sekwencje otwarć mogą być ocenione jako

„lepsze” na podstawie wiedzy opartej o obserwację historycznych przebiegów gry

• np. szachy - otwarcie e4 e5

Księga otwarć• roszerzona księga otwarć (np. Deep Blue – 700 000 partii

arcymistrzowskich) – ocena uwzględniająca stosunek gier wygranych i przegranych z danej pozycji, częstość ruchu, klasę graczy i szereg innych czynników

• konieczność przechowywania i przeszukiwania ogromnego zbioru danych

• problem pozyskania

• analogicznie: księga zamknięć dla końcowej fazy rozgrywki

Alpha-beta pruning• Możliwość pominięcia węzła o bardzo niskiej ocenie

Rezultaty• 1962 – Robert Nealy przegrywa z programem;

kontrowersje• spadek zainteresowania problemem – warcaby zostają

niesłusznie uznane za „rozwiązane”• 1963 – rewanż – program nie wygrywa z Nealym żadnej

gry, podobnie w 1965 przeciwko Hellmanowi i Oldbury’emu – 8 przegranych

• program Samuela rozwijany do 1967 roku bez spektakularnych sukcesów

• wiele opracowanych technik używa się w sztucznej inteligencji do dziś

Chinook• kolejny program grający w warcaby, oparty o techniki

sztucznej inteligencji• 1987, Uniwersytet Alberty, zespół pod przewodnictwem

Jonathana Schaeffera• cechy: algorytm przeszukiwania drzewa, własna funkcja

ewaluacji (wagi dobrane przez programistów, nie sztuczną inteligencję), księga otwarć i zamknięć

Chinook• 1992 – mistrz świata Marion Tinsley vs. Chinook – 4/2/33• 1994 – Chinook zdobywa tytuł Man-Machine World

Champion• 2007, lipiec, Science – Checkers is Solved - warcaby

zostają uznane za rozwiązane „słabo”• „Artificial intelligence technology has been used to

generate strong heuristic-based game-playing programs, such as Deep Blue for chess. Solving a game takes this to the next level by replacing the heuristics with perfection.”

Bibliografia• Furnkranz, J.; Machine Learning in Games: A Survey• Samuel, A. L.; Some Studies in Machine Learning Using the

Game of Checkers, IBM Journal 3 (3): 210–229, 1959• Sardag, A.; Learning to Predict by the Methods of TD,

www.cmpe.boun.edu.tr/~akin/robsem/alp/webindex/ppt/Learning_to_Predict_by_the_Methods_of_TD.ppt

• Schaeffer, J.; Lake, R.; Solving the Game of Checkers - Games of No Chance, MSRI Publications, Volume 29, 1996

• Osman, D.; Zastosowanie metody Samuela doboru współczynników funkcji oceniającej w programie grającym w anty-warcaby, www.mini.pw.edu.pl/~mandziuk/15-10-03.pdf 

Dziękuję za uwagę

Recommended