Algorthm大规模路口信号灯决策下的DQN |
1) 输入:初始化主网络 ,目标网络 ,设定相关超参数 2) 初始化经验回放D至容量N的经验池中 3) 随机权重 初始化动作价值函数Q的权重 ,设定相关超参数 4) 对于每个回合: 5) 初始化交通系统环境中交通流及每个智能体的状态 ; 6) 如果回合未结束: 7) 在 的情况下选择随机动作 进行决策; 8) 否则:根据环境 和主网络选择动作 进行信号灯决策继续保持当前相位还是切换下一相位; 根据得到动作在环境中执行相位;如果相位变化则先执行3s黄灯, 周期结束根据交通流状态 ,得到奖励 ,和新状态 ; 9) 将四元组 存入到经验池D中; 10) 从经验池D中随机采样出一小批经验; 11) 计算当前目标估计值 ; 12) 更新主网络 ,以 为目标值做梯度下降; 13) 将新的交通系统环境状态定义为当前状态 ; 14) 在一定步数后,用主网络的权重更新目标网络 ; 15) 直到迭代结束,当前交通系统环境 是终止状态 16) 输出:训练后的主神经网络 |