来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现( 二 )


!git clone https://github.com/thu-ml/tianshou!pip3 install tianshouimport osos.chdir( tianshou )
该项目在 test 文件夹下提供了诸多算法的测试示例 , 下面我们在任务下逐个测试一番 。
!python test/discrete/test_pg.py

来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
!python test/discrete/test_ppo.py
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
!python test/discrete/test_a2c.py
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
!python test/discrete/test_dqn.py
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
以上分别为 VPG、PPO、A2C 与 DQN 在 P100 GPU 上的训练结果 。可以看到 , 我们的测试结果与项目提供的结果出入不大 。
由于任务在强化学习中相对简单 , 相当于图像识别中的 MNIST 。为更进一步测试该 RL 框架的性能 , 我们也在 -v0 任务中对其进行了测试 。
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
是环境中一个四足机器人运动控制任务 , 其观测值为该机器人的位置、姿态等 28 个状态信息 , 控制输入为电机的转矩(每条腿 2 个电机 , 总共 8 个电机) , 策略优化的目标为最大化机器人移动速度的同时最小化能量消耗 。也就是说 , agent 需要根据奖赏值自主地学习到由 28 个状态信息到 8 个控制输入的映射关系 。
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
使用 SAC 算法在任务中的训练结果如下图所示:
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图

来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
需要注意的是 , 天授的 SAC 实现在任务中仅训练了不到 200k 步即能获得以上控制策略 , 效果可以说是很不错的 。
项目作者 , 清华本科生
在中 , 其展示了该项目的主要作者是 Jiayi Weng 与Zhang , 他们都是清华的本科生 。其中 Jiayi Weng 今年 6 月份本科毕业 , 在此之前作为本科研究者与清华大学苏航、朱军等老师开展强化学习领域的相关研究 。Zhang 目前是清华大学软件学院的本科二年级学生 , 同时还修了数学专业 。
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
作为本科生 , 该项目的两位作者已经有了非常丰富的研究经验 , Jiayi Weng 去年夏季就作为访问学生到访 MILA 实验室 , 并与开展了关于意识先验相关的研究 。在 Jiayi Weng 的主页中 , 我们可以看到在本科期间已经发了 IJCAI 的 Oral 论文 。
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
Zhang 也有丰富的研究经验 , 之前他在软件学院 iMoon Lab 做关于 3D 视觉相关的研究 , 而后目前在清华交叉信息学院做研究助理 , 从事强化学习方面的研究 。尽管离毕业还有不短的时间 ,  Zhang 已经做出了自己的研究成果 。
来自本科生的暴击:清华开源「天授」强化学习平台,纯PyTorch实现

文章插图
所以综合来看 , 因为在本科已经有了丰富的科研经验 , 并且做过多个项目 , 那么在这个阶段能做一个非常不错的强化学习开源项目也就理所当然了 。