更改

添加1,626字节 、 2025年5月11日 (日) 11:36
无编辑摘要
第114行: 第114行:  
====具体算法及其训练流程====
 
====具体算法及其训练流程====
 
[[文件:Algorithmdqn.jpg|缩略图|算法流程]]
 
[[文件:Algorithmdqn.jpg|缩略图|算法流程]]
 +
1. 初始化阶段
 +
回放记忆库(Replay Memory):创建容量为N的经验存储库D,用于缓存历史转移数据。
 +
动作-价值函数网络:
 +
主网络Q:随机初始化网络参数θ,负责实时动作选择和价值估计。
 +
目标网络Q<sup>−</sup>:初始参数θ<sup>−</sup>=θ,用于稳定化计算目标Q值。
 +
超参数设定:设置训练总回合数M、单回合最大步数T、目标网络同步频率C、折扣因子γ、探索率ϵ等。
 +
 +
2. 回合(Episode)循环
 +
对每个回合episode=1,2,...,M执行:
 +
状态预处理:初始化环境观测x<sub>1</sub>,通过预处理函数ϕ生成初始状态表征ϕ<sub>1</sub>=ϕ(s<sub>1</sub>)。
 +
 +
3. 时间步(Timestep)循环
 +
对每个时间步t=1,2,...,T执行:
 +
(1)动作选择:
 +
探索策略:以概率ϵ随机选择动作a<sub>t</sub>,促进环境探索。
 +
利用策略:否则,根据主网络选择最优动作:a<sub>t</sub>=arg max<sub>a</sub> Q(ϕ(s<sub>t</sub>),a;θ)
 +
(2)执行与环境交互​​:
 +
执行动作a<sub>t</sub>,获取奖励r<sub>t</sub>和下一帧图像x <sub>t+1</sub>。
 +
预处理下一状态ϕ<sub>t+1</sub>=ϕ(s<sub>t+1</sub>)。
 +
(3)​​存储转移数据​​:
 +
将转移元组(ϕ<sub>t</sub>,a<sub>t</sub>,r<sub>t</sub>,ϕ<sub>t+1</sub>)存入回放记忆库D。
 +
(4)经验回放与网络更新​​:
 +
随机采样​​:从D中均匀抽取小批量转移(ϕ<sub>j</sub>,a<sub>j</sub>,r<sub>j</sub>,ϕ<sub>j+1</sub>)。
 +
目标Q值计算​​:
 +
梯度下降​​:
 +
(5)目标网络同步​​:
 +
每隔C步将主网络参数θ复制至目标网络Q<sup>-</sup>即θ<sup>-</sup>←θ。
    
==Q-Learning 基础==
 
==Q-Learning 基础==
281

个编辑