论文部分内容阅读
旅行商问题是获得一位旅行商遍历所有地点的最短路径,是一个经典的NP-hard问题,在多项式时间的限制条件下,没有办法得到精确的解,并且需要大量的计算。随着计算机科技的发展,深度强化学习的出现,使得自主计算能力得到了极大的提升,解决复杂的旅行商问题变得相对简单。所以本文将深度学习与强化学习相结合,对旅行商系列问题展开讨论。我们考虑将旅行商遍历节点过程,使用强化学习中的马尔可夫决策过程建模。首先将旅行商问题的环境抽象成图结构,并利用深度学习对图例中的节点进行处理,随后马尔科夫决策过程中的状态由部分解决方案表示,动作由即将遍历的节点表示,作为对动作的响应,奖励值在遍历节点完成后模型反馈得到,并通过强化学习训练问题实例的预测过程,来调整深度学习的神经网络模型参数,进而找到旅行商系列问题的解决方案。针对上述过程我们提出以下三个模型。首先,我们提出了一种基于深度强化学习的经典旅行商问题计算模型RLSTsp(The model of classic traveling salesman problems based on the deep reinforcement learning)。为了更好地提取出实例图中的节点信息,首先我们使用图卷积神经网络得到所有节点的表征向量,之后根据节点的表征向量设置策略函数Q指导节点输出,并利用旅行商遍历节点过程中所得到的奖励值计算损失函数,最后利用强化学习网络对损失函数进行优化,目标是找到值得最优路径的路线。并且在这个过程中,我们使用集束搜索算法进一步优化了求解方法。结果表明,我们的模型性能通常与开源的高性能启发式算法一样好,并在不同规模的图上得到接近最优的结果。其次,我们提出了基于深度强化学习的动态旅行商问题计算模型RLSDTsp(The model of dynamic traveling salesman problems based on the deep reinforcement learning)。在原有网络基础之上融入时间因素,针对网络的动态性,我们使用图卷积技术对动态节点信息和其邻域进行处理,得到每个时刻的节点表征,之后利用循环神经网络对节点的时序信息进行学习与预测,最后结合节点表征向量与策略函数得到奖励值,并利用深度强化学习模型进行优化,以求获得最优解。RLSDTsp模型在输出节点序列时,只需要输入动态图信息,选择要处理的旅行商问题类型,就可以决策出对应问题的最优节点序列。通过将RLSDTsp模型与其他对比模型进行比对,发现学习启发式算法方面的有效性,这表明该框架是动态图规模的旅行商问题的一个非常有前途的工具。最后,我们提出了基于分布式强化学习的动态旅行商问题计算模型DRLSDTsp(The model of dynamic traveling salesman problems based on the distributed reinforcement learning)。首先我们对节点进行一维卷积简单处理,得到所有节点的表征向量,之后为了捕获输入序列不同程度的特征,引入多头注意力机制对节点的特征进行拟合,针对向量表示与不同步的输出进行处理,得到策略解决方案。最后,分布式强化学习网络使用n个不同的线程对节点的策略函数进行学习,探索环境并将游览的动作信息积累到经验缓存中,不同的训练网络从缓存中提取重要数据,异步更新策略,使得模型可以更快的预估每个节点被选择作为最优解的可能性。通过大量的实验评估,我们证明了该框架可以更好的学习动态旅行商问题,并且在不同节点数目的图上得到了良好的性能。