In [1]:
import numpy as np
In [2]:
from game_tools import Player, NormalFormGame
In [3]:
U = np.array([[[(3, 3, 3), (6, 4, 1)],
[(4, 1, 6), (2, 5, 0)]],
[[(1, 6, 4), (0, 2, 5)],
[(5, 0, 2), (7, 7, 7)]]])
In [4]:
g0 = NormalFormGame(U)
In [5]:
for i in range(3):
print 'player {0}'.format(i)
print g0.players[i].payoff_array
In [6]:
g0.players[i].payoff_array
Out[6]:
In [7]:
g0[0, 0, 0]
Out[7]:
In [8]:
g0[0, 0, 1]
Out[8]:
In [9]:
import itertools
actions_list = [range(player.num_actions) for player in g0.players]
for action_profile in itertools.product(*actions_list):
print 'payoff_profile{0} ='.format(action_profile), g0[action_profile]
In [10]:
p0 = Player(np.zeros((2*3*4)).reshape((2, 3, 4)))
p1 = Player(np.zeros((2*3*4)).reshape((3, 4, 2)))
p2 = Player(np.zeros((2*3*4)).reshape((4, 2, 3)))
In [11]:
g1 = NormalFormGame((p0, p1, p2))
In [12]:
for i in range(3):
print 'player {0}'.format(i)
print g1.players[i].payoff_array
In [13]:
import itertools
actions_list = [range(player.num_actions) for player in g1.players]
for action_profile in itertools.product(*actions_list):
print 'payoff_profile{0} ='.format(action_profile), g1[action_profile]
In [14]:
g2 = NormalFormGame((2, 3, 4))
In [15]:
for i in range(3):
print 'player {0}'.format(i)
print g2.players[i].payoff_array
In [16]:
g3 = NormalFormGame(3)
In [17]:
g3.N
Out[17]:
In [18]:
g3.players[0].payoff_array
Out[18]:
In [ ]: