cts_density_model.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:tensorflow-rl 作者: steveKapturowski 项目源码 文件源码
def update(self, obs):
        obs = resize(obs, self.factors.shape, preserve_range=True)
        obs = np.floor((obs*self.num_bins)).astype(np.int32)

        context = [0, 0, 0, 0]
        log_prob = 0.0
        log_recoding_prob = 0.0
        for i in range(self.factors.shape[0]):
            for j in range(self.factors.shape[1]):
                context[3] = obs[i, j-1] if j > 0 else 0
                context[2] = obs[i-1, j] if i > 0 else 0
                context[1] = obs[i-1, j-1] if i > 0 and j > 0 else 0
                context[0] = obs[i-1, j+1] if i > 0 and j < self.factors.shape[1]-1 else 0

                log_prob += self.factors[i, j].update(context, obs[i, j])
                log_recoding_prob += self.factors[i, j].log_prob(context, obs[i, j])

        return self.exploration_bonus(log_prob, log_recoding_prob)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号