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程序运行时错误   JavaAndroidStudio:与往常一样,四舍五入到next.5或.0   apache使用Java以表单数据形式上载文件   带矢量的java Freeflight相机如何正确旋转?   java如何以编程方式检索有关当前项目的语言、操作系统、体系结构等信息   java Twitter4J tweet实体?   java PdfBox编码异常   java在拖动未装饰的舞台时,如何强制光标停留在窗口上   JavaSpring注释扫描优化   java无法通过IntelliJ Idea在tomcat上运行服务   java在生命周期中如何拦截请求?   java中的数组返回错误