强化学习中的演员 - 评论家方法详解
1. 计算自我对弈中的优势
在强化学习里,优势能帮助我们判断哪些决策是重要的。为了计算优势,我们需要对之前定义的 ExperienceCollector 类进行更新。原本,经验缓冲区会跟踪三个并行数组,分别是状态(states)、动作(actions)和奖励(rewards)。现在,我们要添加第四个并行数组来跟踪优势(advantages)。
要填充这个数组,我们既需要每个状态的估计值,也需要游戏的最终结果。在游戏进行过程中,我们可以积累估计值,等游戏结束后,再将这些估计值转换为优势。以下是更新后的 ExperienceCollector 类代码:
class ExperienceCollector:
def __init__(self):
self.states = []
self.actions = []
self.rewards = []
self.advantages = []
self._current_episode_states = []
self._current_episode_actions = []
self._current_episode_estimated_values = []
def record_decision(self, state, action, estimated_value=0):
self._current_episode_stat
超级会员免费看
订阅专栏 解锁全文
1158

被折叠的 条评论
为什么被折叠?



