在 Q 学习中,我发现的所有资源似乎都说更新 Q 表的算法应该从某个初始状态开始,然后选择动作(有时是随机的)来探索状态空间。
但是,简单地遍历所有可能的状态不是更好/更快/更彻底吗?这将确保更新整个表,而不仅仅是我们碰巧访问的状态。像这样的东西(对于每个时代):
for state in range(NUM_STATES):
for action in range(NUM_ACTIONS):
next_state, reward = env.step(state, action)
update_q_table(state, action, next_state, reward)
这是一个可行的选择吗?我能想到的唯一缺点是它对于巨大的状态空间效率不高。