OpenAI基线的一个分支,强化学习算法的实现。

stable-baselines的Python项目详细描述


Build StatusDocumentation StatusCodacy BadgeCodacy Badge

稳定基线

稳定基线是一组基于openaiBaselines的强化学习算法的改进实现。

这些算法将使研究社区和行业更容易复制、改进和识别新的想法,并将创建良好的基线,在其上构建项目。我们希望这些工具将被用作新的想法的基础,并作为一种工具来比较新的方法与现有的方法。我们还希望这些工具的简单性将允许初学者使用更高级的工具集进行实验,而不必埋头于实现细节中。

与OpenAI基线的主要区别

这个工具集是openai基线的一个分支,具有主要的结构重构和代码清理功能:

  • 所有算法的统一结构
  • 符合PEP8(统一代码样式)
  • 记录的函数和类
  • 更多测试和更多代码覆盖率
  • 附加算法:sac和td3(她支持dqn、ddpg、sac和td3)

链接

存储库: https://github.com/hill-a/stable-baselines

中篇文章: https://medium.com/@araffin/df87c4b2fc82

文件: https://stable-baselines.readthedocs.io/en/master/

RL基线动物园: https://github.com/araffin/rl-baselines-zoo

快速示例

大多数库尝试使用类似sklearn的语法来使用gym来实现强化学习算法。

下面是一个如何在Cartpole环境中训练和运行PPO2的快速示例:

importgymfromstable_baselines.common.policiesimportMlpPolicyfromstable_baselines.common.vec_envimportDummyVecEnvfromstable_baselinesimportPPO2env=gym.make('CartPole-v1')env=DummyVecEnv([lambda:env])# The algorithms require a vectorized environment to runmodel=PPO2(MlpPolicy,env,verbose=1)model.learn(total_timesteps=10000)obs=env.reset()foriinrange(1000):action,_states=model.predict(obs)obs,rewards,dones,info=env.step(action)env.render()

如果the environment is registered in Gymthe policy is registered

fromstable_baselinesimportPPO2model=PPO2('MlpPolicy','CartPole-v1').learn(10000)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java ParsePushReceiver参数   java如何从设备读取完整数据?   java将java_设置为home,但忽略错误   java如何从歌曲中对专辑进行排序?   java libnaude+windows 10 x64+Eclipse   java如何将maven目标更改为如图所示的想法中的quickicon?   java swing布局中心面板,可滚动显示多个窗口窗格   使用MOSQUITO代理的mqtt中的java SSL   java如何通过属性值获取XML字符串   java在服务器每次启动时停止GWT编译   java如何让javac搜索类路径的子目录?   可以比较java中的两个不同类吗?   JAVAAndroid活动内部类中的lang.NoClassDefFoundError   java HttpServletRequest获取请求头参数块   C++socket与java客户端的连接   java如何在Apache commons http客户端上使用SSL客户端证书   使用预编译正则表达式模式提高java速度   JavaRhino将两个已编译脚本合并为一个脚本