Integer Programming Based Algorithms for Peg Solitaire Problems
暂无分享,去创建一个
Peg solitaire is a one player game using pegs and a board with some holes. The game is classical, and nowadays sold in many parts of the world under the trade name of Hi-Q.
In this paper, we dealt with the peg solitaire problem as an integer programming problem. We proposed algorithms based on the backtrack search method and relaxation methods for integer programming problem.
The algorithms first solve relaxed problems and get an upper bound of the number of jumps for each jump position. This upper bound saves much time at the next stage of backtrack searching. While solving the relaxed problems, we can prove many peg solitaire problems are infeasible. We proposed two types of backtrack searching, forward-only searching and forward-backward searching. The performance of these two methods highly depends on the symmetricity and the length of the sequence of required jumps. Our algorithm can solve all the peg solitaire problem instances we tried and the total computational time is less than 20 minutes on an ordinary notebook personal computer.
[1] P. Libby. The Scientific American , 1881, Nature.
[2] E. Berlekamp,et al. Winning Ways for Your Mathematical Plays , 1983 .
[3] de Ng Dick Bruijn. A Solitaire Game and Its Relation to a Finite Field , 2019, Mathematical Solitaires & Games.
[4] Ryuhei Uehara,et al. Generalized Hi-Q is NP-complete , 1990 .
[5] A. Phillips,et al. Turning a Surface Inside Out , 1966 .