Openai健身房环境适合多智能体游戏

时间:2017-06-05 13:19:47

标签: reinforcement-learning openai-gym

是否可以将openai gym environments用于多智能体游戏?具体来说,我想模拟一个有四个玩家(代理商)的纸牌游戏。得分转弯的球员在下一回合开始。我如何模拟玩家之间的必要协调(例如,接下来是谁)?最后,我想对四个相互对抗的特工使用强化学习。

3 个答案:

答案 0 :(得分:2)

是的,可以将OpenAI体育馆环境用于多主体游戏。尽管在多代理环境的OpenAI体育馆社区there is no standardized interface中,构建支持此功能的OpenAI体育馆很容易。例如,在OpenAI的recent work上的多主体粒子环境they make a multi-agent environment中,它继承自gym.Env,其格式如下:

class MultiAgentEnv(gym.Env):

    def step(self, action_n):
        obs_n    = list()
        reward_n = list()
        done_n   = list()
        info_n   = {'n': []}
        # ...
        return obs_n, reward_n, done_n, info_n

我们可以看到step函数采用一系列动作(每个代理一个),并在逐步推进环境的同时返回观察值清单,奖励清单,完成事项清单。此界面代表Markov Game,在该界面中,所有座席都同时采取行动,并且每个人都观察到自己随后的观察结果,奖励。

但是,这种Markov Game界面可能并不适合所有多代理环境。特别是,基于回合的游戏(例如纸牌游戏)可能更适合作为替代马尔可夫游戏,在该游戏中,特工一次轮流(即动作) 。对于这种环境,您可能需要在状态表示中包括轮到哪个代理,然后您的step函数将仅执行单个操作,并返回单个观察,奖励和完成。

答案 1 :(得分:0)

OpenAI团队已经实施了多智能体深度确定性策略梯度MADDPG方法。

这是开始的回购。 https://github.com/openai/multiagent-particle-envs

答案 2 :(得分:0)

有一个特定的多智能体环境可用于强化学习here。它支持使用任何编程语言编写的任意数量的代理。已经实现了一个恰好是纸牌游戏的示例游戏。