- Consider the game tic-tac-toe. Assume that the current state of the game is as shown below, and it is X's turn.
X | O | O
---------
| X |
---------
| | O
Draw the game tree starting from here, and show all of X's
possible immediate next moves.
- Consider the following static evaluator for tic-tac-toe.
"Xn" is the number of rows, columns, or diagonals with exactly n X's
and no O's. Similarly, "On" is the number of rows, columns, or
diagonals with exactly n O's and no X's. Here is one possible
evaluation function:
((3 * X2) + X1) - ((3 * O2) + O1)
Using this evaluation function, determine the score of all of the
leaves on the tree you created above.
- Using the minimax algorithm with a depth bound of 1, which move
would be selected?
- List all of the important features of a good static evaluation
function.
- How are static evaluators similar to heuristics? How are they
different?
- What type of traversal does minimax do on a game tree?
- Consider the following game tree, where P1 represents player1 and
P2 represents player2. Using alpha-beta pruning, show the values of
alpha and beta at each non-leaf node. Remember that MAX layers update
alpha and MIN layers update beta.
------ P1 -----
/ | \
--P2a P2b P2c--
/ | / | \ | \
P1d P1e P1f P1g P1h P1i P1j
/|\ |\ /| /|\ |\ /| /|\
3 6 5 7 2 4 7 9 2 3 8 4 4 5 7 3 8
- What move would be selected by alpha-beta pruning?