Development of a Machine-Learning-Based AI For Go By Justin Park
In 1997, IBM’s Deep Blue defeated Grand Master Gary Kasparov.
The Future of AI Problem Solving: Artificial intelligence has been centered around Go Go is an ancient Board game developed in China from years ago 19x19 Board Size Players alternate with black and white stones Game ends with two consecutive passes
The Challenges of Go Large game set – possible moves –10,000,000,000 leaves in game tree Difficulty in creating a heuristic function Pattern analysis/abstract thinking
The Solution: (My Project) A machine-learning-based AI with a genetic algorithm for “learning” new moves A minimalist heuristic “guiding function” for learning basic moves Database storing of previously played games Recreation of “Roving Eye” techniques to further adaptation to larger size boards.
Development (Python) –Board rules: illegal moves and killing stones –Creation of heuristic function based on influence with respect to distance –Sort possible moves and corresponding score (as determined by evaluation function)
Development (continued) Creation of classes Game and Games to store boards. Search for best move algorithm –Comparison of boards with similar # of moves –Heuristic function = similarity + influence(board)
Results Machine Machine-Learning learns how to either win or lose Machine-Learning function degenerates when faced against its parent function Machine-Learning function improves with outside human intervention
Future Work Research with a larger pool of heuristic functions Increase depth of heuristic search Compare boards with 3x3 squares Compatibility with GMP.sgf reading and writing