Esempio n. 1
0
    def _create_game(self) -> Game:
        """
        Create a TAC game.

        :return: a Game instance.
        """
        nb_agents = len(self.registered_agents)

        game = Game.generate_game(nb_agents, self.tac_parameters.nb_goods,
                                  self.tac_parameters.tx_fee,
                                  self.tac_parameters.money_endowment,
                                  self.tac_parameters.base_good_endowment,
                                  self.tac_parameters.lower_bound_factor,
                                  self.tac_parameters.upper_bound_factor,
                                  self.agent_pbk_to_name,
                                  self.good_pbk_to_name)

        return game
Esempio n. 2
0
    def test_generate_game(self):
        """Test the game generation algorithm."""
        nb_agents = 3
        nb_goods = 3
        money_endowment = 20
        tx_fee = 2.5
        base_amount = 2
        lower_bound_factor = 1
        upper_bound_factor = 3
        agent_pbk_to_name = {
            'tac_agent_0_pbk': 'tac_agent_0',
            'tac_agent_1_pbk': 'tac_agent_1',
            'tac_agent_2_pbk': 'tac_agent_2'
        }
        good_pbk_to_name = {
            'tac_good_0_pbk': 'tac_good_0',
            'tac_good_1_pbk': 'tac_good_1',
            'tac_good_2_pbk': 'tac_good_2'
        }

        _ = Game.generate_game(nb_agents, nb_goods, money_endowment, tx_fee,
                               base_amount, lower_bound_factor,
                               upper_bound_factor, agent_pbk_to_name,
                               good_pbk_to_name)