A lot of computers can play chess. [Matthew Lui’s] Giraffe is a chess playing computer, but unlike other common chess programs, Giraffe taught itself to play. It apparently learned pretty well, too, since it is rated as an International Master on the FIDE scale (putting it in the top 2.2% of players. The top chess playing computers clock in at super grandmaster level but they are not self-taught).
[Matthew] did the work as part of his Master’s degree program. His paper covers how Giraffe’s algorithm is different from conventional chess playing programs (see the video below for some of those techniques) using a neural network approach. Instead of coding rules about the relative merit of different board positions, [Matthew’s] neural network trains by starting from real board positions (modified from a database of moves) and playing both sides of the game. Over many iterations, the C++ neural network develops its own set of rules. This requires examining over 350 features of each position (for example, is castling permitted, or how far sliding pieces can move).
While chess games might be a niche item, neural networks that can deduce complex evaluation functions have wide applicability in fields ranging from computer vision, stock market prediction, and optimization. We’d like to hook Giraffe up to a chess playing robot, of course. No offense to previous posts, but we imagine Giraffe would mop up the floor with the PIC that plays chess.