强化学习--当游戏的输入只有像素时,我们如何决定对代理的奖励?

问题描述 投票:0回答:1

我是RL新手,我做得最好的是openAI gym中的CartPole。在CartPole中,API自动提供了给定动作的奖励。当我只有像素数据,而没有 "魔法函数 "可以告诉我某个动作的奖励时,我应该如何决定奖励。

比如说,我想在《GTA圣安地列斯》中制作一个自动驾驶机器人。我所能获得的输入是原始像素。我怎么才能算出它某一动作的奖励呢?

python machine-learning artificial-intelligence reinforcement-learning openai-gym
1个回答
2
投票

你需要编造一个奖励,代理你想要的行为--这其实不是小事。

如果在屏幕的固定部分有一些代表分数的数字,那么你可以用老式的图像处理技术来读取这些数字,让这些数字成为你的奖励函数。

如果在屏幕的固定部分有一个固定比例和方向的最小地图,那么你可以用减去你的角色到目标的距离作为奖励。

如果UI中没有固定的元素可以用来代理奖励,那么你的日子就不好过了,除非你能以某种方式访问控制台的内部变量来代理奖励(例如使用你的PC的位置坐标)。

© www.soinside.com 2019 - 2024. All rights reserved.