Assignment 2
Game Search & Constraint Satisfaction Problems
Problem 1
Max: [4308: 25 Points,
5360: 20 Points]
Draw the full Minmax tree for the game of TicTacToe starting from the
given game state. Calculate the minmax value of every node and what the
optimal action for the MAX player (X) to take is. (Note: Winning
results in a payoff
of +1 and losing a payoff of -1)
Figure 1: A TicTacToe Game State.
Problem 2
Max: [4308: 30 Points,
5360: 20 Points]
Figure 2. A game search tree.
a.
In the game search tree of Figure 2, indicate what nodes will be pruned
using alpha-beta search, and what the mimax values are for
the rest of the nodes. Assume that, when given a choice, alpha-beta
search expands nodes in a left-to-right order. Also incidcate which action the Minmax algorithm
will pick to exectute.
b. This question is also on
the game search tree
of Figure 2. Suppose we are given some additional knowledge about the
game: the maximum utility value is 15 and the minimum utility is 2,
i.e., it is not mathematically
possible for the MAX player to get an outcome greater than 10 or lesser
than -10. How can
this knowledge be used to further improve the efficiency of alpha-beta
search? Indicate the nodes that will be pruned using this improvement.
Again, assume that, when given a choice, alpha-beta search expands
nodes in a left-to-right order, and that the MAX player plays first.
c. If an agent uses this strategy against an optimal opponent what
is the highest and lowest payoff it can get? What if it used this
strategy against an opponent playing a random strategy?
Problem 3
Max: [4308: 20 Points,
5360: 20 Points]

Figure 3. A expectiminmax tree.
Find
the value of every non-terminal node in the expectiminmax tree given
above. Also indicate which action will be performed by the algoirithm.
What
does the MinMax value obtained by the root node represent. For a
particular game, what is the maximum and minmum actual payoff the MAX
player can get if MIN plays the optimal strategy (according to Expectiminmax). What if the opponent plays a random strategy?
Problem 4
Max: [4308: 25 Points (+5 EC),
5360: 20 Points (+5 EC)]
The following outline map needs to be colored. The task is to color the various sections such that no two sections
sharing a border have the same color. You are allowed to use the colors
(Red, Green, Blue).

Figure 4. A map to be colored.
Part a: Draw
the Constraint Graph for this problem. Can you use this information to
simplify the problem?
Part b:
Assuming you are using Backtracking search to solve the original version problem and
that you are using both MRV and Degree heuristic to select the
variable, Which variable will be selected at each level of the search
tree [You do not need to draw the tree. Just let me know which variable
will be selected and why (MRV and degree values)]. Note: Multiple
possible answers. You only have to give one.
Part c: If we assign the color Red to the Variable at the
first level of the backtracking search tree, show all the steps involved in checking
arc consistency to find out the remaining legal values for the other
variable
Part d: EC (5 points): Give one valid solution to this
problem.
Problem 5 (Extra Credit for 4308, Required for 5360)
Max: [4308: 20 Points EC,
5360: 20 Points]
Suppose that you want to implement an algorithm tht will compete on a
two-player deterministic game of perfect information. Your opponent is
a supercomputer called DeepGreen. You do not know what algorithm
DeepGreen uses. You
are given a library function DeepGreenMove(S), that takes any state S
as an argument, and returns the outcome of the move that DeepGreen will
choose for
that state S (more precisely, DeepGreenMove (S) returns the state
resulting from the opponent's move).
Write
an algorithm in pseudocode (following the style of the Minimax
pseudocode) that will always make an optimal decision given the
knowledge we have about DeepGreen. You are free to use the library
function DeepGreenMove(S) in your pseudocode. How does this compare to
Minimax wrt optimality of solution and the number of states explored.
How to submit
The assignment should be submitted via Canvas.
Scan or Type the solutions for all the other Tasks together and create a single pdf titled assignment2_<net-id>.pdf. If multiple files are required zip them together into an archive titled assignment2_<net-id>.zipSubmission checklist
Is the file titled assignment1_<net-id>.pdf or assignment1_<net-id>.zip? (where <net-id> is replaced with
your net id)
Did you upload the file on the submission page in Canvas and then click on 'Submit Assignment' to ensure that a submission is made?