datawhalechina / easy-rl

强化学习中文教程(蘑菇书🍄),在线阅读地址:https://datawhalechina.github.io/easy-rl/
Other
9.09k stars 1.82k forks source link

68页的代码块缩进错误 #92

Closed xiaoqingsai closed 2 years ago

xiaoqingsai commented 2 years ago

3.5.2 强化学习基本接口 的最后一个代码块的最后两行的缩进应该有问题 屏幕截图 2022-04-21 160500

qiwang067 commented 2 years ago

3.5.2 强化学习基本接口 的最后一个代码块的最后两行的缩进应该有问题 屏幕截图 2022-04-21 160500

@xiaoqingsai 感谢您的纠错:thumbsup: ,下次 pdf 版更新时会修改这个错误,正确的代码缩进如下所示:

if ma_rewards:
    ma_rewards.append(ma_rewards[-1]*0.9+ep_reward*0.1)
else:
    ma_rewards.append(ep_reward)
qiwang067 commented 2 years ago

3.5.2 强化学习基本接口 的最后一个代码块的最后两行的缩进应该有问题 屏幕截图 2022-04-21 160500

@xiaoqingsai 感谢您的纠错👍 ,下次 pdf 版更新时会修改这个错误,正确的代码缩进如下所示:

if ma_rewards:
    ma_rewards.append(ma_rewards[-1]*0.9+ep_reward*0.1)
else:
    ma_rewards.append(ep_reward)

3.5.2 强化学习基本接口 的最后一个代码块还有一个缩进错误,完整正确代码为

rewards = []
ma_rewards = [] # 滑动平均奖励
for i_ep in range(cfg.train_eps):
    ep_reward = 0 # 记录每个回合的奖励
    state = env.reset() # 重置环境, 重新开始(开始一个新的回合)
    while True:
        action = agent.choose_action(state) # 根据算法选择一个动作
        next_state, reward, done, _ = env.step(action) # 与环境进行一次动作交互
        agent.update(state, action, reward, next_state, done) # Q学习算法更新
        state = next_state # 存储上一个观察值
        ep_reward += reward
        if done:
            break
    rewards.append(ep_reward)
    if ma_rewards:
        ma_rewards.append(ma_rewards[-1]*0.9+ep_reward*0.1)
    else:
        ma_rewards.append(ep_reward)