如何在终端状态下处理可变长度剧集的奖励
How to handle rewards for variable length episodes with reward at terminal state
游戏objective是让兔子在很短的时间内在很大的田地里找到一颗白菜吃掉。动作space是离散的(up/down/right/left),状态space是连续的(一个非常大的场)。当兔子找到卷心菜或离开田地(以先发生者为准)跳 100 次后,情节结束。状态变量之一是到卷心菜的距离。由于场地非常大,我正在使用奖励整形(小 positive/negative 奖励离卷心菜更近 to/farther )。为了在最短时间内到达卷心菜,每次跳跃的奖励应为 0,找到卷心菜时应为 1。然而,塑造奖励打破了计划。在这个游戏中是否有一种优雅的方式来使用奖励塑造?如何?感谢您的任何建议。
经过一些研究,我发现基于势能的整形函数可能是一种解决方案。在这种情况下,每个状态 s 的潜在 F 是到卷心菜的距离。对于非终端状态,原始奖励 R 为 0,如果兔子离开场地,则为 -1,如果兔子找到卷心菜,则为 1-time/T,其中 T 是情节持续时间。终端状态正在找到卷心菜并离开田地。新的奖励 R'=R+(F(s')-F(s))/maxDist。如果有任何想法,我将不胜感激。
游戏objective是让兔子在很短的时间内在很大的田地里找到一颗白菜吃掉。动作space是离散的(up/down/right/left),状态space是连续的(一个非常大的场)。当兔子找到卷心菜或离开田地(以先发生者为准)跳 100 次后,情节结束。状态变量之一是到卷心菜的距离。由于场地非常大,我正在使用奖励整形(小 positive/negative 奖励离卷心菜更近 to/farther )。为了在最短时间内到达卷心菜,每次跳跃的奖励应为 0,找到卷心菜时应为 1。然而,塑造奖励打破了计划。在这个游戏中是否有一种优雅的方式来使用奖励塑造?如何?感谢您的任何建议。
经过一些研究,我发现基于势能的整形函数可能是一种解决方案。在这种情况下,每个状态 s 的潜在 F 是到卷心菜的距离。对于非终端状态,原始奖励 R 为 0,如果兔子离开场地,则为 -1,如果兔子找到卷心菜,则为 1-time/T,其中 T 是情节持续时间。终端状态正在找到卷心菜并离开田地。新的奖励 R'=R+(F(s')-F(s))/maxDist。如果有任何想法,我将不胜感激。