300 likes | 422 Views
Domineering. Solving Large Combinatorial Search Spaces. Rules. 2 player game (horizontal and vertical). n x m game board (or subset of). Players take turns placing 2 x 1 tiles (of their specified orientation) onto the board. First player unable to play, loses. Previous Work.
E N D
Domineering Solving Large Combinatorial Search Spaces
Rules • 2 player game (horizontal and vertical). • n x m game board (or subset of). • Players take turns placing 2 x 1 tiles (of their specified orientation) onto the board. • First player unable to play, loses.
Previous Work • Mathematicians have examined domineering using combinatorial game theory. • AI research has focused on general alpha-beta techniques such as transposition tables and move ordering.
Why Study Domineering? • Large amount of room for improvement over previous work. • Nice mathematical properties. • Simple rule set. • Large search space. • Interest has been shown from both math and computer science researchers.
Our Contributions • A far superior evaluation function. • Improved move ordering. • Proof that we can ignore safe moves. • Improved transposition table replacement scheme.
Example 1Horizontal’s turn, who wins? • Safe moves for vertical = 3. • Total moves for horizontal = 3. • Vertical wins.
2 x 1 unoccupied region of the board. Opponent unable to overlap with a tile. Safe Area
2 x 2 unoccupied region of the board. Placing a tile within creates another safe area. Two protective areas can not be adjacent. Protective Area
2 x 1 unoccupied region of the board. Type 1 vulnerable areas are not adjacent to any other area. Type 2 can be adjacent to any other areas. Vulnerable Area
Opponent’s Moves • Have good lower bound on number of moves for one player (moves(α)). • Need upper bound on number of moves for other player. • Count squares available for opponent to play on divided by 2.
Unoccupied Squares • Count the number of unoccupied squares. • Subtract 2 • moves(α) squares. • Gives us total number of unoccupied squares after α has placed there tiles.
A 1 x 1 unoccupied region of the board. Not included in α’s board covering. Not available to α’s opponent. Unavailable Squares
1 x 1 unoccupied region of the board attached to a safe area. Can not be adjacent to any other area. By playing creates unavailable squares for opponent. Option Area
Vulnerable area. Contains a square which is unavailable for the opponent. By not playing creates one more unavailable square for opponent. Vulnerable Area With A Protected Square
Vertical Wins • Vertical can play at least 10 more tiles. • Horizontal can play at most 10 more tiles. • Since it is horizontal’s turn, horizontal must run out of moves before vertical.
Other Enhancements • Improved move ordering. • Proof that we can ignore safe moves. • Improved transposition table replacement scheme.
Conclusion • Enhanced evaluation function reduced the tree size by a factor of 80 (best case). • All other improvements together created another 3 to 4 times reduction in nodes.
Future Work • Further refinements to evaluation function. • Prove certain moves are always inferior. • Better board packing algorithm. • Directing the search to already examined board positions. • Combining the benefits of the two transposition table replacement schemes.