Homework Assignment 9, due April 27th

For this assignment you will write a Java program that finds a Nash equilibrium of a two-player potential game. Your program must use the iterative algorithm described in class. Namely,

  1. Start with strategy profile (0,0).
  2. Change Alice's strategy to the one that gives the maximal pay-off for Alice given current Bob's strategy. Print out the new strategy profile.
  3. Change Bob's strategy to the one that gives the maximal pay-off for Bob given current Alice's strategy. Print out the new strategy profile.
  4. Goto step 2.

Your program should terminate when neither Alice nor Bob can improve their respective payoffs. For example, if you are given game (defined, as usual, through table of pay-offs) 

3 3
1 1 2 7 -1 2
2 -3 1 1 2 0
3 1 -3 0 1 2

then your output should be

(0,0) (2,0) (2,2) (1,2) (1,1) (0,1)

Note that strategy profile (0,1) is indeed an equilibrium of the game above. Use the same submission instruction as before. Good luck!