jsprit 多次取货和送货

Posted

技术标签:

【中文标题】jsprit 多次取货和送货【英文标题】:jsprit multiple pickup and deliveries 【发布时间】:2016-05-22 12:34:30 【问题描述】:

我想模拟一个工作需要多次取货和多次交付的场景。装运只允许一个取件和交货地点。服务类可以帮助对此进行建模,但我想在属于同一工作的取货和交付之间建立亲和力。这将确保相同的车辆(一组车辆)为给定的工作(工作请求由客户提出)进行取货和交付。

问候, 阿米特

【问题讨论】:

您似乎在寻求数据建模方面的帮助,而不是编程方面的帮助。尝试交叉验证stats.stackexchange.com 你解决过这个问题吗?我的情况几乎一样 【参考方案1】:

我不太清楚你所说的一个需要多次取货和多次交付的工作是什么意思,但是如果你检查this *** post regarding related jobs in Jsprit,你会发现 Stefan (job 13 and 21 in same route AND 21 before 13) 给出的一个例子,其中两个工作应该在相同的路线和它们的顺序是确定的 - 就像取货及其相关的交付应该在相同的路线中并且该取货应该在该交付之前。

基本上,您需要定义一个软路由约束以在两个相关作业插入同一路由时进行奖励(或定义一个硬路由约束以禁止它们插入两个不同的路由)和相应的目标函数。另外,你需要一个状态更新器来记录每个作业在哪个路由,你可以再参考例子。

此外,它可以应用于多个相关工作(参见this *** post)。

【讨论】:

谢谢他。您提供的详细信息很有帮助,将帮助我解决问题。 我正在尝试解决单次取件和多次交付的问题。如果我必须使用“Shipment”类,那么对于具有一次取货和多次交付的给定订单,我最终将创建“Shipment”类的多个实例,每个实例代表共同的取货地点和不同的送货地点。我可以添加软/硬约束,以确保属于同一订单的所有货物都分配给同一组车辆。我想知道是否有一种开箱即用的方式来定义使用 Shipment 或等效类而不添加自定义约束的取件和多次交付问题。

以上是关于jsprit 多次取货和送货的主要内容,如果未能解决你的问题,请参考以下文章

根据取货和交付按钮显示或隐藏 WooCommerce 结帐字段

食品配送中堆叠订单的算法(取货和配送)

jsprit如何将取件添加到车辆

JSPRIT 中的 CapacityDimension 是啥?

如何在服务器上使用jsprit代码

使用 GraphHopper 和 jsprit 构建矩阵