我正在尝试教一个人形特工如何在跌倒后站起来。这一集开始时特工躺在地板上,背部着地,其目标是在最短的时间内站起来。
但我在奖励塑造方面遇到了麻烦。我尝试了多种不同的奖励函数,但它们都以相同的方式结束:代理很快学会坐下(即抬起躯干),但随后永远停留在这个局部最优值上。
关于如何最好地为这种情况设计一个好的奖励函数的任何想法或建议?
到目前为止我尝试过的一些奖励功能:
- 当前高度/目标高度
- 当前高度/目标高度 - 1
- current_height / goal_height - reward_prev_timestep
- (current_height / goal_height)^N (尝试了多个不同的 N 值)
- ...