2 Player Cellular Automata Games

Tic Tac Au-Toe-Mata
Mark Schiebel
Outline
I.
II.
III.
IV.
V.
Brief Cellular Automata Background
Tic-Tac Au-Toe-Mata Rules
Project Design
Computer Strategy
Conclusion
Cellular Automata Background
• A cellular automaton exists of a set of rules,
a neighborhood, a set of states, and a lattice
(or graph)
0
1
…
0
1
1
0
0
1
1
…
…
1
0
0
1
1
0
1
…
Left + Mid + Right Mod 2
2-D Cellular Automata
0
1
1
0
1
0
1
0
0
1
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
1
0
No-Wrap
?
Up + Left + Mid + Right + Down Mod 2
Wrap
Tic Tac Au-Toe-Mata Game
•
•
•
•
2-D Automata with no wrapping
Beginning state is a checkerboard pattern
Object is to get either 1s or 0s in a row
Players alternate turns changing any 1 to a 0
or 0 to a 1 – This also inverts each cell in its
neighborhood ={up, down, left, right}
Tic Tac Au-Toe-Mata
Initial position
After 1 move
(row 3 col 2)
Winning
Player 1 wins
Player 2 wins
Project Requirements
• Program represents a two-player cellular
automata game
• Program has an intelligent computer player
(non-optimal)
• The user can change the number of players
and the player names
• The user can see all previously made moves
and undo moves indefinitely.
Project Design
• The program is written in Java
• The program has an easy to use GUI
• The program is understandable by a general
user (inclusion of help menu)
Picture of Tic Tac Au-Toe-Mata
Optimum Strategies
• An optimum strategy is one that will either
win or produce the best possible result
• To find a good strategy, it is necessary to
determine if a move is “good” or “bad”
• This can be done by determining how
“good” a position is and how “good” the
position a certain move creates is
Strategy Implementation
• The strategy was implemented with a game
tree.
• The game tree checked for winning or
losing positions.
• A game tree requires a function to
determine how good any position is.
Game Tree Function
Notice that by moving
at position (3,3), player 1
can win the game with all
1s horizontally.
Therefore, it is not necessarily
good to optimize the number
of cells in a given row or
column.
A better strategy is to
maximize the total number of
cells on the entire board.
Game Tree
………….
Questions