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 (oftheir specified orientation) onto the board.
First player unable to play, loses.
Previous Work
Mathematicians have examineddomineering using combinatorial gametheory.
AI research has focused on general alpha-beta techniques such as transposition tablesand move ordering.
Why Study Domineering?
Large amount of room for improvementover previous work.
Nice mathematical properties.
Simple rule set.
Large search space.
Interest has been shown from both math andcomputer science researchers.
Our Contributions
A far superior evaluation function.
Improved move ordering.
Proof that we can ignore safe moves.
Improved transposition table replacementscheme.
Example 1Horizontal’s turn, who wins?
Safe moves forvertical = 3.
D:\May22\figs\ex1.gif
Total moves forhorizontal = 3.
Vertical wins.
D:\ppt\figs\ex1.2.gif
D:\ppt\figs\ex1.3.gif
D:\presentation\figs\pack1.1.gif
Example 2Horizontal’s turn, who wins?
D:\figs\pack0.2.gif
D:\figs\pack0.3.gif
Safe Area
2 x 1 unoccupiedregion of the board.
Opponent unable tooverlap with a tile.
D:\ppt\figs\safe.gif
D:\ppt\figs\protective.1.gif
Protective Area
2 x 2 unoccupiedregion of the board.
Placing a tile withincreates another safearea.
Two protective areascan not be adjacent.
D:\ppt\figs\protective.2.gif
D:\ppt\figs\vuln.1.gif
Vulnerable Area
2 x 1 unoccupiedregion of the board.
Type 1 vulnerableareas are not adjacentto any other area.
Type 2 can be adjacentto any other areas.
D:\ppt\figs\pack1.1.gif
Packing Example
D:\ppt\figs\pack1.2.gif
D:\ppt\figs\pack1.3.gif
D:\ppt\figs\pack1.4.gif
Calculating Lower Bound
Opponent’s Moves
Have good lower bound on number ofmoves for one player (moves(α)).
Need upper bound on number of moves forother player.
Count squares available for opponent toplay on divided by 2.
Unoccupied Squares
Count the number of unoccupied squares.
Subtract 2 • moves(α) squares.
Gives us total number of unoccupiedsquares after α has placed there tiles.
D:\ppt\figs\unavail.gif
Unavailable Squares
A 1 x 1 unoccupiedregion of the board.
Not included in α’sboard covering.
Not available to α’sopponent.
D:\ppt\figs\option.gif
Option Area
1 x 1 unoccupiedregion of the boardattached to a safe area.
Can not be adjacent toany other area.
By playing createsunavailable squaresfor opponent.
D:\ppt\figs\vuln_p.gif
Vulnerable Area With AProtected Square
Vulnerable area.
Contains a squarewhich is unavailablefor the opponent.
By not playing createsone more unavailablesquare for opponent.
Packing Example
D:\ppt\figs\pack1.gif
D:\ppt\figs\pack2.1.gif
D:\ppt\figs\pack2.2.gif
Calculating Upper Bound
Unplayable Squares
Calculating Upper Bound
D:\ppt\figs\pack2.2.gif
Packing Example
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 mustrun out of moves before vertical.
D:\figs\graph1.gif
Solving 8x8 Domineering
Solving 8x8 Domineering
Enhancements
Nodes
All Enhancements.
     2,023,031
All – protective areas.
     6,610,775
All – unavailable squares.
     2,566,004
All – vulnerable areas withprotected squares.
     4,045,384
All – vulnerable areas type 1.
     2,972,216
All – option areas.
     4,525,704
No enhancements to evaluation.
   84,034,856
Other Enhancements
Improved move ordering.
Proof that we can ignore safe moves.
Improved transposition table replacementscheme.
Comparisons to DOMI
Board Size
DOMI
Obsequi
5x5
              604
             259
5x9
       177,324
        11,669
6x6
         17,232
             908
7x7
       408,260
        31,440
8x8
441,990,070
   2,023,301
8x9
  70 trillion
 259 million
New Results
Board Size
Result
Nodes
4x19
H
          314,148,901
4x21
H
       3,390,074,758
6x14
H
       1,864,870,370
8x10
H
       4,125,516,739
10x10
1
3,541,685,253,370
Conclusion
Enhanced evaluation function reduced thetree size by a factor of 80 (best case).
All other improvements together createdanother 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 examinedboard positions.
Combining the benefits of the twotransposition table replacement schemes.