当前位置: 首页 > 知识库问答 >
问题:

谷歌OR-tools VRP-Pickup/Dropoff位于同一节点

谷梁云瀚
2023-03-14

由于一个地点有可能有更多的货物要取,而不是下降,我也需要明确检查这一点...但到目前为止我还找不到一种方法来做到这一点。

示例:假设我有一个仓库节点0和两个位置节点(A,B)。

  • 在A位置,我需要放下10个单位并取走11个。
  • 在B位置,我需要放下10个单位并取出9个。
    null

因此,为了考虑基本的下降容量约束,我有一个标准

routing.AddDimensionWithVehicleCapacity(
    dropoff_callback_index,
    0,  # null capacity slack
    data['vehicle_capacities'],  # vehicle maximum capacities
    True,  # start cumul to zero
    'Capacity')

然而,对于皮卡,我当然可以使用皮卡需求添加另一个。但显然这是不够的,但我需要将这两者结合起来。由于从技术上讲,该模型累加了节点上的体积,并且只知道一辆车在形成完整行程后从车辆段出发的容量,所以我不能建立这样一个维度,以便在通过节点时检查约束,而只能在他找到完整行程后检查约束。

因此,我认为这是一种可能的方法,在找到解决方案后进行检查,如果考虑到皮卡,车辆最初在车辆段装载的已知体积(即一条路线的下降总和)符合要求,并且不违反车辆容量。不过,不确定具体如何做到这一点。这里有人有主意吗?

我尝试搜索类似的问题(在这里,googlegroups,github),但没有找到任何有用的东西。

共有1个答案

孔宇
2023-03-14

IIRC,已经在邮件列表上回复了。
这里有一个要点和一个示例:mizux/vrp_collect_deliver.py

基本上你需要两个维度。

  • 只跟踪送货的
  • 跟踪总负载(取件和交付)
  • 对开始节点的一个约束,以使两个维度cumul vars相等。
 类似资料:
  • 在使用GoogleCalendarAPI(与python一起使用)时,我已经能够获得我想要的变量,因此我可以将事件导出到文本文件中。然而,一个变量(位置)触发了一个错误,我不知道为什么。 这直接来自google的开始代码,我还添加了我想要的变量: 它会打印一个即将到来的约会列表,包括地点,但它会停止并向我抛出这个错误 这是凭据/json的问题吗?我使用的是谷歌日历api的旧版本吗?我怎么检查?我的

  • 为了更熟悉Android编程,我一直在开发一款位置欺骗软件,我注意到我的应用程序似乎不会欺骗谷歌地图。它适用于Facebook和我测试过的其他一些应用程序,但即使关闭了Wifi和GPS,谷歌地图也知道我的确切位置,而不是我伪造的位置。我从Play Store(FakeLocation)下载了另一个欺骗应用,它似乎也没有欺骗谷歌。 这个人似乎也有同样的问题(Android Mock位置不适用于谷歌地

  • 使用App Engine Flexible环境,我准备部署Angular 4客户端,并研究云endpoint来处理我的节点。js/express微服务似乎简化了endpoint请求的安全保护和身份验证,我想澄清几件事: > 我是使用云endpoint作为API网关,将请求路由到各个微服务后端,还是应该将微服务本身构建为各个endpoint应用程序? 我是静态托管Angular 4应用程序(与服务器

  • 我正在尝试使用node。用于访问googleAPI的js客户端库(https://github.com/google/google-api-nodejs-client).我正在尝试使用谷歌云存储API插入bucket和object。我可以成功列出项目存储的存储桶。还可以从存储器中检索特定的存储桶。但无法插入桶或对象。 执行API调用的代码: 以下是日志中显示的内容: 任何指示什么是“必需的”,如何

  • 只用我的日历ID工作得很好. en.thai#holiday@group.v3.calendar.google.com |en.th#holiday@group.v3.calendar.google.com | 请帮忙谢谢你 calenderId:“me”或“primary………..output:”所有事件列表“ 日历Id:en.th#holiday@group.v3.calendar.googl

  • 我想让谷歌地图按地址搜索 下面是我的cari.java代码 我想要的是,当我在editText中写出一条街的名字(例如:第1大道1152号),然后按下搜索按钮,它就会在谷歌地图上显示该位置(第1大道1152号)。 当我运行这个程序时,,,它说 “java.lang.RuntimeException:无法实例化activity ComponentInfo{Udin.GoogleMap2/Udin.G

  • 当我点击地图上的某个地方,应用程序绘制当前位置和目的地之间的折线(点击)。我希望目标标记是点击自己所有的时间(每几秒钟),所以在用户移动新的折线是绘制(更新最后一个)。

  • 有没有办法在Google的Sankey图中使用样式角色更改目标节点文本的颜色?目前我的数据设置如下: 我可以改变节点和链接的颜色,但不能改变文本的颜色。 在这一点上,d3对我来说不是一个选择,整个想法是将节点动画化,使其在其位置一个接一个地出现 - 因此尝试更改样式并重新绘制图表。增大表不起作用,因为节点会更改位置。有什么想法吗?