Strength of a Chess Playing Algorithm
The Objective
This project investigates improved computer algorithms to find good chess moves and limit the time spent examining poor moves, more specifically, an algorithm called alphabeta pruning. It was believed that alphabeta pruning would improve the playing strength of the algorithm due to its ability to cutoff nodes that could be assumed to be bad. The algorithm would then be able to spend more time analyzing more important chess boards. Therefore, playing strength should improve.
Methods/Materials
An original chess playing algorithm (minmax search) was modified so that it pruned certain nodes from the game tree that could be assumed to be bad.
Both of these algorithms were created in Visual Basic 6.
After this modification was completed, the enhanced alphabeta pruning algorithm and the original minmax algorithm were played against another chess playing algorithm on different levels of difficulty, and humans of varying playing strengths on an online chess site, FICS; all games were completed on the same computer.
Results
The algorithm with alphabeta pruning was able to defeat multiple opponents that the original algorithm had lost to.
Conclusions/Discussion
It was concluded that the algorithm with alphabeta pruning played significantly better than the original algorithm due to its ability to analyze boards to an extra depth. Future research should be done to determine the effects of other modifications on chess algorithms (such as an endgame database) on the playing strength of a chess playing algorithm.
This project investigates improved computer algorithms to find good chess moves and limit the time spent examining poor moves.
Science Fair Project done By Ryan P. Batterman
<<Back To Topics Page...................................................................................>>Next Topic
Related Projects :
Taking It to the Edge
Investigation into the Optimization of Control Systems
Added Complexity in Password Security
Tracking Down Methicillin
Optimal Wireless Networking
Content Based Image Retrieval
