我正在尝试提出一种快速且相对最优的算法来解决以下TSP /汉密尔顿路径类问题:
一个交货车需要执行多个装卸货物的任务:
每次交货时,取件必须在放件之前发生。
该车体积较小,包裹大小各异。总载重不能超过某个上限(例如1立方米)。每次交货都有截止日期。
规划师可以在途中运行,因此车辆将从已拾取的许多作业和已占用的一些挂载空间开始。
近似最优的解决方案应当将每个路标之间的总成本(为简单起见,距离)最小化。如果由于时间限制而不存在解决方案,则需要找到具有最少延迟交货的解决方案。这是一个例子问题和非最优但有效的解决方案的一些说明:
我目前正在使用贪心最佳优先搜索,限制回溯到100个分支。如果它无法找到及时交货的解决方案,我会在一秒钟内随机生成尽可能多的解决方案,并选择延迟交货最少的方案。我尝试了线性规划,但无法理解它 - 而且我认为它不适用于频繁运行的需求。我还尝试了需要变异巡游的算法,但问题是变异巡游几乎总是由于容量限制和优先级而使其无效。有没有人能想到更好的启发式方法来解决这个问题?非常感谢!
一个交货车需要执行多个装卸货物的任务:
每次交货时,取件必须在放件之前发生。
该车体积较小,包裹大小各异。总载重不能超过某个上限(例如1立方米)。每次交货都有截止日期。
规划师可以在途中运行,因此车辆将从已拾取的许多作业和已占用的一些挂载空间开始。
近似最优的解决方案应当将每个路标之间的总成本(为简单起见,距离)最小化。如果由于时间限制而不存在解决方案,则需要找到具有最少延迟交货的解决方案。这是一个例子问题和非最优但有效的解决方案的一些说明:
我目前正在使用贪心最佳优先搜索,限制回溯到100个分支。如果它无法找到及时交货的解决方案,我会在一秒钟内随机生成尽可能多的解决方案,并选择延迟交货最少的方案。我尝试了线性规划,但无法理解它 - 而且我认为它不适用于频繁运行的需求。我还尝试了需要变异巡游的算法,但问题是变异巡游几乎总是由于容量限制和优先级而使其无效。有没有人能想到更好的启发式方法来解决这个问题?非常感谢!