[强化学习实战]深度Q学习-DQN算法原理

深度Q学习

深度Q学习将深度学习和强化学习相结合,是第一个深度强化学习算法。深度Q学习的核心就是用一个人工神经网络 q ( s , a ; w ) , s ∈ S , a ∈ A q(s,a;w),s∈\mathcal{S} ,a∈\mathcal{A} q(s,a;w),sS,aA 来代替动作价值函数。由于神经网络具有强大的表达能力,能够自动寻找特征,所以采用神经网络有潜力比传统人工特征强大得多。最近基于深度Q网络的深度强化学习算法有了重大的进展,在目前学术界有非常大的影响力。
·经验回放(experience replay):将经验(即历史的状态、动作、奖励等)存储起来,再在存储的经验中按一定的规则采样。
·目标网络(target network):修改网络的更新方式,例如不把刚学习到的网络权重马上用于后续的自益过程。

经验回放

V.Mnih等在2013年发表文章《Playing Atari with deep reinforcement learning》,提出了基于经验回放的深度Q网络,标志着深度Q网络的诞生,也标志着深度强化学习的诞生。
采用批处理的模式能够提供稳定性。经验回放就是一种让经验的概率分布变得稳定的技术,它能提高训练的稳定性。经验回放主要有“存储”和“采样回放”两大关键步骤。

·存储:将轨迹以 ( S t , A t , R t + 1 , S t + 1 ) (S_t,A_t,R_{t+1},S_{t+1}) (St,At,Rt+1,St+1)等形式存储起来;

·采样回放:使用某种规则从存储的 ( S t , A t , R t + 1 , S t + 1 ) (S_t,A_t,R_{t+1},S_{t+1}) (St,At,Rt+1,St+1)中随机取出一条或多条经验。

算法9给出了带经验回放的Q学习最优策略求解算法。

算法9 带经验回放的Q学习最优策略求解
1.(初始化)任意初始化参数 w w w
2.逐回合执行以下操作。
2.1 (初始化状态动作对)选择状态 S S S
2.2 如果回合未结束,执行以下操作:
2.2.1 (采样)根据 q ( S , ⋅ ; w ) q(S,·;w) q(S,;w)选择动作A并执行,观测得到奖励R和新状态S’;
2.2.2 (存储)将经验 ( S , A , R , S ′ ) (S,A,R,S') (S,A,R,S)存入经验库中;
2.2.3 (回放)从经验库中选取经验 ( S i , A i , R i , S i ′ ) (S_i,A_i,R_i,S_i') (Si,Ai,Ri,Si)
2.2.4 (计算回报的估计值) U i ← R i + γ m a x a q ( S i ′ ,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值