Spriteworld 是一个基于 python 的 RL 环境,由一个可以自由移动的简单形状的二维竞技场组成。该环境是为文章“COBRA:基于数据有效模型的 RL 通过无监督对象发现和好奇心驱动的探索”(Watters 等,2019)中介绍的 COBRA 代理开发的。环境的动机是为程序生成多对象场景提供尽可能多的灵活性,同时保留尽可能简单的界面。
Spriteworld 精灵有各种形状,可以在位置,大小,颜色,角度和速度上不断变化。环境有遮挡但没有物理,所以默认情况下 sprite 会相互传递,但不会以任何方式碰撞或交互。可以通过动作空间引入交互,动作空间可以每个时间步更新所有精灵。例如,DiscreteEmbodied 动作空间(请参阅 spriteworld/action_spaces.py 参考资料)实现了一种基本的物理形式,其中一个代理的身体精灵可以粘附并携带精灵。
有各种各样的动作空间,其中一些是连续的(如触摸屏),其他动作空间是离散的(就像一个采用不连续步骤的具体代理)。
GitHub 地址:https://github.com/deepmind/s…