在Fetch-task中HER不同奖励函数设置对成功率的影响探究实验

16 篇文章 8 订阅
13 篇文章 5 订阅

在Fetch-task中HER不同奖励函数设置对成功率的影响探究实验

前言:

因为我一直在做稀疏奖励相关的探索,所以对HER的稀疏奖励函数设置,充满了好奇,特别想知道,他的奖励函数非得设置成{-1, 0}吗?即任务没有完成的所有step奖励为-1,任务完成给奖励0.

设置成其他的,会不会也会有比较好的效果?这是当时OpenAI他们是随机选的,还是因为其他环境都是这样,所以老规矩也是这样。还是网格搜索出来的结果?

我没有查到他们是怎么确定的这个{-1, 0},我只是看到很多环境他们都是如此设置,难道说这个{-1, 0}本身就具有通用性?

但是架不住我的好奇,我实在是想知道,不同的奖励函数对结果的影响,由于之前我没有实现自动调参的功能,每次跑一组实验,需要手动点一次,对于这种大规模调参实验几乎是要命的事儿。

调用https://github.com/kaixindelele/DRLib/tree/main/tune_exps的脚本。

我测试了如下的参数组:

pos_list = [0.0, 0.1, 1.0, 2.5, 10.0]
nag_list = [0.0, -0.1, -1.0, -2.0, -10.0]

其中pos即positive的意思,替代原来的0,我们认为是正的奖励;
nag即nagtive的意思,替代原来-1的效果,可以简单认为是负的惩罚;

每组超参,分别在pick-and-place和push两个task中做了测试;

一共五十组实验。

超参数设置和原始HER论文的一致,唯一变化的是奖励函数;随机种子都是一样的!

最终衡量性能仍然用成功率success-rate来表示;

episode-reward-图:

批量plot了episode-reward图,发现实验太多了,根本无法看出什么规律。

pick-and-place:

在这里插入图片描述

push:

在这里插入图片描述

三维性能统计图:

为了更直观的对比不同的超参,对成功率的影响,我决定,将最终的成功率求平均后,画成一个柱状图!而且是3D的柱状图,一张图就可以展示5*5组实验结果;

pick-and-place:

在这里插入图片描述

push:

在这里插入图片描述
首先平面轴nag和pos是上面的定义;

纵轴是性能-成功率;

横轴的标签值是具体的标签,但是间距是被统一成了固定值(为了看起来舒服);

每一条横线,每一条竖线都是一组严格的对比实验。

简单的结论:

  1. 两个任务的超参结果并不一致;
  2. {0, 10}好像是比较好的一组超参;{-1, 0}不是最好的;{0, 1}和{-1, 0}差不太多;
  3. 不知道还能有什么其他有意思的发现,分享出来供大家参考;

plot的脚本需要的话,可以评论区见~

联系方式:

ps: 欢迎做强化的同学加群一起学习:

深度强化学习-DRL:799378128

欢迎关注知乎帐号:未入门的炼丹学徒

CSDN帐号:https://blog.csdn.net/hehedadaq

极简spinup+HER+PER代码实现:https://github.com/kaixindelele/DRLib

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hehedadaq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值