Checkers (Draughts) (early computer implementations)
The first checkers programs were developed in the early 1950s, and they were very simple by today’s standards. They used a variety of techniques to make decisions, including:
- Minimax: This is a recursive algorithm that searches for the best possible move for a player, given the current state of the game.
- Alpha-beta pruning: This is a technique that can speed up the minimax algorithm by eliminating some of the possible moves that are not worth considering.
- Heuristics: These are rules of thumb that can be used to make decisions quickly and efficiently.
The early checkers programs were not very good at playing checkers, but they were a significant step forward in the development of game-playing computer programs. They showed that it was possible to create programs that could make decisions based on the current state of the game, and they paved the way for the development of more sophisticated checkers programs in the years to come.
One of the most famous early checkers programs was the Samuel Checkers-playing Program, developed by Arthur Samuel at IBM in the 1950s. This program used a combination of minimax and heuristics to make its decisions, and it was able to beat human players at a fairly high level. Samuel’s program was a major breakthrough in the field of artificial intelligence, and it helped to pave the way for the development of even more sophisticated checkers programs in the years to come.
In the 1970s, a new checkers program called Chinook was developed by a team of researchers at the University of Alberta. Chinook was a much more sophisticated program than Samuel’s program, and it was able to beat the world champion checkers player in 1997. Chinook was able to achieve this level of play by using a variety of advanced techniques, including:
- Transposition tables: These are tables that store the results of previous searches, which can be used to speed up the search for the best move.
- Principal variation search: This is a technique that focuses on the most promising lines of play, rather than searching all possible moves.
- Monte Carlo tree search: This is a probabilistic technique that can be used to explore a large number of possible moves in a short amount of time.
Chinook’s victory over the world champion checkers player was a major milestone in the field of artificial intelligence, and it showed that computers could now play checkers at a superhuman level. Chinook’s techniques are still used in checkers programs today, and they have also been used to develop programs for other games, such as chess and Go.