PyGame Learning Environment
1.0.0
Pygame学习环境(PLE)是一个学习环境,模仿了街机学习环境界面,从而可以快速开始加强Python的学习。 PLE的目的是允许从业者专注于模型和实验的设计,而不是环境设计。
PLE希望最终建立一个广阔的游戏库。
接受游戏的PR。
该项目的文档可以在此处找到。他们目前是WIP。
可用的游戏可以在文档中找到。
PLE
实例需要一个游戏来揭示一组控制方法。要查看所需的方法,请查看ple/games/base.py
。
这是从PLE中的游戏库中导入乒乓球的一个示例:
from ple . games . pong import Pong
game = Pong ()
接下来,我们配置和初始化ple:
from ple import PLE
p = PLE ( game , fps = 30 , display_screen = True , force_fps = False )
p . init ()
上面的选项指示PLE使用display_screen
显示游戏屏幕,同时允许pygame选择帧之间的适当延迟时间,以确保使用force_fps
确保30fps。
您可以自由使用PLE的任何代理。在下面,我们创建一个虚构的代理并抓住有效的措施:
myAgent = MyAgent ( p . getActionSet ())
现在,在PLE的帮助下,我们可以通过一定数量的帧与游戏进行互动:
nb_frames = 1000
reward = 0.0
for f in range ( nb_frames ):
if p . game_over (): #check if the game is over
p . reset_game ()
obs = p . getScreenRGB ()
action = myAgent . pickAction ( reward , obs )
reward = p . act ( action )
就像这样,我们的代理商与游戏环境互动。
PLE需要以下依赖性:
克隆回购并与PIP安装。
git clone https://github.com/ntasfi/PyGame-Learning-Environment.git
cd PyGame-Learning-Environment/
pip install -e .
在使用之前,请在代码中设置以下内容:
os . putenv ( 'SDL_VIDEODRIVER' , 'fbcon' )
os . environ [ "SDL_VIDEODRIVER" ] = "dummy"
感谢@wooridle。
cd
进入PyGame-Learning-Environment
目录并运行以下内容:
git pull
如果PLE帮助您的研究,请在您的出版物中引用它。示例Bibtex条目:
@misc{tasfi2016PLE,
author = {Tasfi, Norman},
title = {PyGame Learning Environment},
year = {2016},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {url{https://github.com/ntasfi/PyGame-Learning-Environment}}
}