1 / 27

Warcaby Samuela

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.

kelly-cox
Download Presentation

Warcaby Samuela

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Warcaby Samuela Systemy uczące się Andrzej Fałkowski

  2. Arthur Lee Samuel (1901–1990) • pionier nauczania maszynowego • twórca pierwszego samouczącego się programu • MIT, IBM, Stanford

  3. 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 theworld champion and beat him.”

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

  5. 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

  6. 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

  7. 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.

  8. 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

  9. 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

  10. 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

  11. 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 forevaluating board positions without regard to the usualchecker concepts, but none of these was successfuI.” • idea dobrania parametrów korzystając z narzędzi dostarczonych przez sztuczną inteligencję

  12. 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

  13. 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?

  14. Temporal-difference learning • Metoda Samuela • α << 1

  15. Temporal-difference learning • Metoda Widrowa-Hoffa •  = <0,1>

  16. 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

  17. 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

  18. 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

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

  20. 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

  21. 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

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

  23. 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ś

  24. 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ęć

  25. 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.”

  26. Bibliografia • Furnkranz, J.; Machine Learning in Games: A Survey • Samuel, A. L.; Some Studies in Machine LearningUsing 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 

  27. Dziękuję za uwagę

More Related