This is a temporary, read-only recovery of the chessprogrammingwiki while a longer-term plan is worked out. Editing is not possible right now, but will be again soon.
Chess Programming Wiki All pages Other namespaces

Learning

Home * Learning

Learning 1Learning 1


  1. A depiction of the world's oldest continually operating university, the University of Bologna, Italy, by Laurentius de Voltolina, second half of 14th century, Learning from Wikipedia↩︎

Learning,
the process of acquiring new knowledge which involves synthesizing different types of information. Machine learning as aspect of computer chess programming deals with algorithms that allow the program to change its behavior based on data, which for instance occurs during game playing against a variety of opponents considering the final outcome and/or the game record for instance as history score chart indexed by ply. Related to Machine learning is evolutionary computation and its sub-areas of genetic algorithms, and genetic programming, that mimics the process of natural evolution, as further mentioned in automated tuning. The process of learning often implies understanding, perception or reasoning. So called Rote learning avoids understanding and focuses on memorization. Inductive learning takes examples and generalizes rather than starting with existing knowledge. Deductive learning takes abstract concepts to make sense of examples 1.

Contents
  1. Learning inside a Chess Program
  2. Learning Paradigms
    1. Supervised Learning
    2. Unsupervised Learning
    3. Reinforcement Learning
  3. Learning Topics
  4. Programs
  5. See also
  6. Selected Publications
    1. 1940 ...
    2. 1950 ...
    3. 1955 ...
    4. 1960 ...
    5. 1965 ...
    6. 1970 ...
    7. 1975 ...
    8. 1980 ...
    9. 1985 ...
    10. 1990 ...
    11. 1995 ...
    12. 2000 ...
    13. 2005 ...
    14. 2010 ...
    15. 2015 ...
    16. 2020 ...
  7. Forum Posts
    1. 1998 ...
    2. 2000 ...
    3. 2005 ...
    4. 2010 ...
    5. 2015 ...
  8. External Links
    1. Machine Learning
    2. AI
    3. Chess
    4. Supervised Learning
    5. Unsupervised Learning
    6. Reinforcement Learning
    7. TD Learning
    8. Statistics
    9. Markov Models
    10. NNs
    11. ANNs
    12. Courses
  9. References

Learning inside a Chess Program

Learning inside a chess program may address several disjoint issues. A persistent hash table remembers "important" positions from earlier games inside the search with its exact score 2. Worse positions may be avoided in advance. Learning opening book moves, that is appending successful novelties or modify the probability of already stored moves from the book based on the outcome of a game 3. Another application is learning evaluation weights of various features, f. i. piece- 4 or piece-square 5 values or mobility. Programs may also learn to control search 6 or time usage 7.

Learning Paradigms

There are three major learning paradigms, each corresponding to a particular abstract learning task. These are supervised learning, unsupervised learning and reinforcement learning. Usually any given type of neural network architecture can be employed in any of those tasks.

Supervised Learning

see main page Supervised Learning

Supervised learning is learning from examples provided by a knowledgable external supervisor. In machine learning, supervised learning is a technique for deducing a function from training data. The training data consist of pairs of input objects and desired outputs, f.i. in computer chess a sequence of positions associated with the outcome of a game 8 .

Unsupervised Learning

Unsupervised machine learning seems much harder: the goal is to have the computer learn how to do something that we don't tell it how to do. The learner is given only unlabeled examples, f. i. a sequence of positions of a running game but the final result (still) unknown. A form of reinforcement learning can be used for unsupervised learning, where an agent bases its actions on the previous rewards and punishments without necessarily even learning any information about the exact ways that its actions affect the world. Clustering is another method of unsupervised learning.

Reinforcement Learning

see main page Reinforcement Learning

Reinforcement learning is defined not by characterizing learning methods, but by characterizing a learning problem. Reinforcement learning is learning what to do - how to map situations to actions - so as to maximize a numerical reward signal. The learner is not told which actions to take, as in most forms of machine learning, but instead must discover which actions yield the most reward by trying them. The reinforcement learning problem is deeply indebted to the idea of Markov decision processes (MDPs) from the field of optimal control.

Learning Topics

Programs

See also

Selected Publications

9

1940 ...

1950 ...

Claude Shannon, John McCarthy (eds.) (1956). Automata Studies. Annals of Mathematics Studies, No. 34

Alan Turing, Jack Copeland (editor) (2004). The Essential Turing, Seminal Writings in Computing, Logic, Philosophy, Artificial Intelligence, and Artificial Life plus The Secrets of Enigma. Oxford University Press, amazon, google books

1955 ...

Claude Shannon, John McCarthy (eds.) (1956). Automata Studies. Annals of Mathematics Studies, No. 34, pdf

1960 ...

1965 ...

1970 ...

1975 ...

1980 ...

1985 ...

1986

1987

1988

1989

1990 ...

1991

1992

1993

1994

1995 ...

1996

1997

1998

Miroslav Kubat, Ivan Bratko, Ryszard Michalski (1998). A Review of Machine Learning Methods. pdf

1999

2000 ...

2001

2002

2003

2004

2005 ...

2006

2007

2008

2009

2010 ...

2011

2012

István Szita (2012). Reinforcement Learning in Games. Chapter 17

2013

2014

2015 ...

2016

2017

2018

2019

2020 ...

Forum Posts

1998 ...

2000 ...

2005 ...

2010 ...

2015 ...

Machine Learning

Watch on YouTube

AI

Learning I

Learning II

Chess

Supervised Learning

Unsupervised Learning

Reinforcement Learning

TD Learning

Statistics

Markov Models

NNs

ANNs

Topics

RNNs

Courses

Watch on YouTube

References

Up one Level


  1. Inductive learning vs Deductive learning↩︎

  2. David Slate (1987). A Chess Program that uses its Transposition Table to Learn from Experience. ICCA Journal, Vol. 10, No. 2↩︎

  3. Robert Hyatt (1999). Book Learning - a Methodology to Tune an Opening Book Automatically. ICCA Journal, Vol. 22, No. 1↩︎

  4. Don Beal, Martin C. Smith (1997). Learning Piece Values Using Temporal Differences. ICCA Journal, Vol. 20, No. 3↩︎

  5. Don Beal, Martin C. Smith (1999). Learning Piece-Square Values using Temporal Differences. ICCA Journal, Vol. 22, No. 4↩︎

  6. Yngvi Björnsson, Tony Marsland (2001). Learning Search Control in Adversary Games. Advances in Computer Games 9, pdf↩︎

  7. Levente Kocsis, Jos Uiterwijk, Jaap van den Herik (2000). Learning Time Allocation using Neural Networks. CG 2000, postscript↩︎

  8. AI Horizon: Machine Learning, Part II: Supervised and Unsupervised Learning↩︎

  9. online papers from Machine Learning in Games by Jay Scott↩︎

  10. Rosenblatt's Contributions↩︎

  11. Ratio Club from Wikipedia↩︎

  12. Royal Radar Establishment from Wikipedia↩︎

  13. see Swap-off by Helmut Richter↩︎

  14. The abandonment of connectionism in 1969 - Wikipedia↩︎

  15. Frank Rosenblatt (1962). Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms. Spartan Books↩︎

  16. Long short term memory from Wikipedia↩︎

  17. Tsumego from Wikipedia↩︎

  18. Learnable Evolution Model from Wikipedia↩︎

  19. Jean Hayes Michie (2001). Machine Learning and Light Relief: A Review of Truth from Trash. AI Magazine, Vol. 22 No. 4, pdf↩︎

  20. University of Bristol - Department of Computer Science - Technical Reports↩︎

  21. Generalized Hebbian Algorithm from Wikipedia↩︎

  22. Dap Hartmann (2010). Mimicking the Black Box - Genetically evolving evaluation functions and search algorithms. Review on Omid David's Ph.D. Thesis, ICGA Journal, Vol 33, No. 1↩︎

  23. Monte-Carlo Simulation Balancing - videolectures.net by David Silver↩︎

  24. MATLAB from Wikipedia↩︎

  25. Weka (machine learning) from Wikipedia↩︎

  26. Ms. Pac-Man from Wikipedia↩︎

  27. Demystifying Deep Reinforcement Learning by Tambet Matiisen, Nervana, December 21, 2015↩︎

  28. Patent US20150100530 - Methods and apparatus for reinforcement learning - Google Patents↩︎

  29. 2048 (video game) from Wikipedia↩︎

  30. Teaching Deep Convolutional Neural Networks to Play Go by Hiroshi Yamashita, The Computer-go Archives, December 14, 2014↩︎

  31. Teaching Deep Convolutional Neural Networks to Play Go by Michel Van den Bergh, CCC, December 16, 2014↩︎

  32. Convolutional neural network from Wikipedia↩︎

  33. Best Paper Awards | TAAI 2014↩︎

  34. DeepChess: Another deep-learning based chess program by Matthew Lai, CCC, October 17, 2016↩︎

  35. ICANN 2016 | Recipients of the best paper awards↩︎

  36. Using GAN to play chess by Evgeniy Zheltonozhskiy, CCC, February 23, 2017↩︎

  37. New DeepMind paper by GregNeto, CCC, November 21, 2019↩︎

  38. MuZero: Mastering Go, chess, shogi and Atari without rules↩︎

  39. Naive Bayes classifier from Wikipedia↩︎

  40. Amir Ban (2012). Automatic Learning of Evaluation, with Applications to Computer Chess. Discussion Paper 613, The Hebrew University of Jerusalem - Center for the Study of Rationality, Givat Ram↩︎

  41. Christopher Clark, Amos Storkey (2014). Teaching Deep Convolutional Neural Networks to Play Go. arXiv:1412.3409↩︎

  42. Chris J. Maddison, Aja Huang, Ilya Sutskever, David Silver (2014). Move Evaluation in Go Using Deep Convolutional Neural Networks. arXiv:1412.6564v1↩︎

Categories: Videos

What links here

Contributors: GerdIsenberg.