Browse > Article

Design of Omok AI using Genetic Algorithm and Game Trees and Their Parallel Processing on the GPU  

Ahn, Il-Jun (한국과학기술원 전기및전자공학과)
Park, In-Kyu (인하대학교 정보통신공학부)
Abstract
This paper proposes an efficient method for design and implementation of the artificial intelligence (AI) of 'omok' game on the GPU. The proposed AI is designed on a cooperative structure using min-max game tree and genetic algorithm. Since the evaluation function needs intensive computation but is independently performed on a lot of candidates in the solution space, it is computed on the GPU in a massive parallel way. The implementation on NVIDIA CUDA and the experimental results show that it outperforms significantly over the CPU, in which parallel game tree and genetic algorithm on the GPU runs more than 400 times and 300 times faster than on the CPU. In the proposed cooperative AI, selective search using genetic algorithm is performed subsequently after the full search using game tree to search the solution space more efficiently as well as to avoid the thread overflow. Experimental results show that the proposed algorithm enhances the AI significantly and makes it run within the time limit given by the game's rule.
Keywords
GPU; Game tree; Genetic algorithm; Omok AI; NVIDIA CUDA; Full search; Selective search; cooperative AI;
Citations & Related Records
연도 인용수 순위
  • Reference
1 J. Lee and H. Ryu, "Current status and future prospect of personal supercomputer using GPU parallel computing," The Magazine of the IEEK, vol.36, no.5, pp.18-27, May 2009.
2 http://en.wikipedia.org/wiki/Deep_Blue_(chess_ computer)
3 R. Sutton and A. G. Barto, Reinforcement Learning: An Introduction, MIT Press, 1998.
4 N. J. van Eck and M. van Wezel, "Application of reinforcement learning to the game of Othello," Computers and Operations Research, vol.35, no.6, pp.1999-2017, June 2008.   DOI   ScienceOn
5 I. Ghory, "Reinforcement learning in board games," CSTR-04-004, Dept. of Computer Science, University of Bristol, May 2004.
6 M. Deloura, Game Programming Gems, Charles River Media, 2001.
7 B.-R. Moon, Easy-to-learn genetic algorithm : Evolutionary approach, Hanbit Media, 2008.
8 NVIDIA Corporation, $CUDA^{TM}$ Programming Guide, June 2008.
9 I. K. Park, N. Singhal, M. H. Lee, and S. Cho, "Efficient design and implementation of visual computing algorithms on the GPU," Proc. IEEE International Conference on Image Processing (ICIP 2009), pp.2321-2324, November 2009.
10 R. Rost, OpenGL Shading Language Second Edition, Addison-Wesley, 2006.
11 NVIDIA Corporation, Compute Unified Device Architecture (CUDA), http://developer.nvidia.com/object/ cuda.html
12 General Purpose GPU (GPGPU) Homepage, http:// www.gpgpu.org.
13 J. D. Owens, M. Houston, D. Luebke, S. Green, J. E. Stone, and J. C. Phillips, "GPU computing," Proceedings of the IEEE, vol.96, no.5, pp.879-899, May 2008.   DOI