显然,这是一个非常明显且基础的问题,因为我找不到任何相关的教程,但如何为Q学习环境设置状态空间呢?
如果我理解正确,每个状态都需要与一个单一的值相关联,对吗?如果是这样,如果我有多个输入变量,我该怎么办?本质上;
stateSpace = ???
一旦我有了状态空间,我如何改变一个状态?假设它基于三个变量,V1、V2 和 V3。Q学习算法只接收这个状态的单一数字表示,对吗?我如何使用这些变量和状态空间返回一个代表状态的单一值?
如果这是一个明显的/基础的问题,我很抱歉,感谢您的时间。
回答:
我认为您可能对Q学习中涉及的参数有些困惑。以下是我们所拥有的:
奖励:当代理进入一个状态时给予的奖励。这可以是正数或负数,但应该是一个单一的数字。
状态:关于游戏状态的所有相关信息。
观察:一个包含代理被允许知道的游戏状态信息的张量。
Q值:采取某一行动的“质量”。
我们可以通过比较我们期望某一行动的质量(它在长期内如何改善我们的奖励)和我们实际在采取该行动后发现的质量来训练网络。
在每个时间点,我们都在更新状态,然后代理进行新的观察,提供新的输入值供其使用。