Upload
kelly-cox
View
41
Download
5
Embed Size (px)
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ę