带聚合点的收货和交货VSP

2024-05-16 05:50:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图解决一个简单的皮卡和交付VRP的一辆车只使用或工具。 我一直在关注文档https://developers.google.com/optimization/routing/pickup_delivery,当所有的上车点和下车点彼此不同时,似乎一切都按照预期进行。pickups_deliveries数组如下所示:

data['pickups_deliveries'] = [
        [1, 6],
        [2, 10],
        [4, 3],
        [5, 9],
        [7, 8],
        [15, 11],
        [13, 12],
        [16, 14],
    ]

但是,我们假设存在聚合点,其中有多个包裹需要提取,而courier有无限的空间。我试图修改上述示例,以便在多个收货/发货对中使用相同的收货索引:

data['pickups_deliveries'] = [
        [1, 6],
        [2, 10],
        [2, 3],
        [2, 9],
        [1, 8],
        [1, 11],
        [2, 12],
        [2, 14],
    ]

我期望的结果是只有2个收货站和8个交货,但不幸的是,当我运行解算器时,它没有返回任何结果

solution = routing.SolveWithParameters(search_parameters) # returns None

有办法解决这个问题吗?还是我遗漏了更重要的东西?我对这个图书馆很陌生,所以如果有任何指示都将不胜感激


Tags: 工具文档httpscomdatagooglerouting收货