算法1 3DQN_MDAM算法训练流程

输入:采样时间步t交叉口的原始交通状态st

初始化:当前Q网络参数 Θ = { θ , β , ω } 、目标Q网络参数 Θ ¯ = { θ ¯ , β ¯ , ω ¯ } ( Θ ¯ = Θ );

for e { 1 , 2 , , e p i s o d e s } do

重置交叉口环境;

for t { 1 , 2 , , T / T g } do

智能体观测交叉口环境获得当前状态st

st经过嵌有MDAM的特征提取网络以构建状态特征图的通道依赖和空间依赖关系,利用式(18)获得隐藏状态 s ^ t

隐藏状态 s ^ t 经过策略评估网络,利用式(19)计算当前Q值 Q t

ε 的概率从动作空间A中随机选择一个动作 a t ,否则取 a t = arg max a Q t

智能体执行当前动作 a t 后,进入下一个状态 s t + 1 ,并由式(1)计算环境当前反馈的奖励 r t ,将序列 ( s t , a t , r t , s t + 1 ) 存放在经验回放缓冲区B中;

if | B | N B then 溢出旧的经验数据;

end for

for n { 1 , 2 , , N } do

从缓冲区B中随机抽取一小批量经验数据,利用式(20)计算损失函数 L ( Θ )

更新当前Q网络参数 Θ = Θ α × Θ L ( Θ )

if n % N c = = 0 then Θ ¯ = Θ ;

end for

end for

输出:更新后的Q网络参数 Θ