离散粒子群优化应用到时间窗车辆调度问题(matlab+附github链接)
项目简介: 最近需要实现一篇论文的算法,讲的是将PSO(粒子群算法)应用到TSPTW问题(时间窗车辆调度问题)上,查询了一些资料,以往的资料大多是蚁群算法的应用,所以就试着自己一步步完成这个算法。 参考论文: [1]A Novel Set-Based Particle Swarm Optimization Method for Discrete Optimization Problems [2]Gong Y J, Zhang J, Liu O, et al. Optimizing the Vehicle Routing Problem With Time Windows: A Discrete Particle Swarm Optimization Approach[J]. IEEE Transactions on Systems Man & Cybernetics Part C, 2012, 42(2):254-267. 论文建议先阅读[1], 再阅读[2]会比较好理解,这个算法比较巧妙的地方在于我们将每一个可能的路线规划图作为一个粒子(注意是将整个规划图作为一个粒子而不是规划图中的节点,我们让粒子进行运动并且不断修改它的运动方向,其实就是调整规划图中连接节点各条边的指向,使得粒子位置被不断进行更新,新的粒子对应着各条边被调整后的整幅规划图)