def test_make_game(self): game1 = ShapleyFactory.make_game(*self.args1) self.assertTrue( equalpayoffs(get_payoff(game1), [ np.array([[6., 6.], [2., 4.]]), np.array([[4., 4.], [2., 4.]]) ]))
def test_make_game(self): g1 = self.game1 game = CongestionFactory.make_game(**g1) self.assertTrue( equalpayoffs(get_payoff(game), [ np.array([[3., 3.], [1., 2.]]), np.array([[2., 2.], [1., 2.]]) ])) self.assertEqual(game.pcover([[0], [0, 1]]), [(0, [0, 1]), (1, [1])])
def test_players(self): players = self.game1.players self.assertEqual([p.name for p in players], ['0', '1']) self.assertEqual([a for p in players for a in p.actions], [0, 1, 0, 1]) self.assertTrue(equalpayoffs(get_payoff(self.game1), self.pay1)) for i in [0, 1]: for j in [0, 1]: self.assertEqual(self.game1.U_i(0, [i, j]), self.pay1[0][i, j]) self.assertEqual(self.game1.U_i(1, [i, j]), self.pay1[1][i, j])
def test_several_payoffs(self): pay2 = [ np.array([[2, 0, 1], [3, 1, 0]]), np.array([[2, 3, 1], [0, 1, 0]]) ] game2 = StrategicFactory.make_game(pay2) self.assertTrue( equalpayoffs(game2.payoffs, [ np.array([[2, 0, 1], [3, 1, 0]]), np.array([[2, 3, 1], [0, 1, 0]]) ])) self.assertTrue(equalpayoffs(get_payoff(game2), pay2)) self.assertTrue([ac.actions for ac in game2.actions] == [[0, 1], [0, 1, 2]]) pay3 = [ np.array([[2, 0, 1], [3, 1, 0], [2, 3, 4]]), np.array([[2, 3, 1], [0, 1, 0], [4, 3, 2]]) ] game3 = StrategicFactory.make_game(pay3) self.assertTrue(equalpayoffs(get_payoff(game3), pay3))
def test_make_game(self): g1 = self.game1 pay1 = [np.array([[5., 4.], [1., 2.]]), np.array([[4., 2.], [2., 2.]])] self.assertTrue(equalpayoffs(get_payoff(g1), pay1))
def test_make_game(self): g1 = self.game1 w1 = np.array([[3., 3.], [3., 1.]]) pay1 = [np.array([[5., 4.], [1., 2.]]), np.array([[4., 2.], [2., 2.]])] self.assertTrue((w1 == BrutePoA.game_to_welfare(g1)).all()) self.assertTrue(equalpayoffs(get_payoff(g1), pay1))