我想与我们志同道合的群体分享我们正在做的事情,希望其他人能够借鉴我们的方法,并从我们的错误中学习。
我们正在启动一个系统,让在家感染 COVID-19 的人可以订购非常实惠的餐食(每天两餐,仅需 10 美元),并由志愿者每日配送。
我们与多家餐厅达成协议,以每天 10 美元的价格提供“配给餐”(即晚餐加上次日午餐)。已在我们的 Discourse 实例上注册的消费者需致电餐厅,预订次日的配给餐并完成支付。每天,我们的司机将前往餐厅取餐并配送。
在湾区,以 10 美元的价格获得两餐,尤其是还能配送上门,几乎是不可能的。因此,这确实是一项非常划算的服务。
由于我们尚未正式推出,目前还无法提供链接。但我们正在使用 Discourse 平台,所有工作流程和沟通都在 Discourse 上进行。
我们正在开发一些自定义代码,用于提取客户信息、自动规划司机路线(旅行商问题)等。代码完成后,我们将全部开源至 GitHub。
我们还将公开分享我们的协议、流程以及经验教训,以便其他人也能开展类似的工作。
20 个赞
sam
(Sam Saffron)
2
感谢您告知我们,我们非常欢迎案例研究和能让 Discourse 更好地服务于该使用场景的创意。
如有需要,欢迎联系 Calling out for volunteer Community Managers 📣 页面中的人员寻求帮助。
16 个赞
Heliosurge
(Dan DeMontmorency)
3
看到人类的力量和精神的伟大,真是太棒了!
继续出色的工作!
6 个赞
Stephen
(Stephen)
4
很高兴看到其他人也在关注这个问题。我得知另一个团队被要求每天处理 26,000 份餐食,他们刚刚向我寻求解决方案。
期待看到结果,这或许能立即应用到那个项目中,从而为我省去不少麻烦。
9 个赞
每天配送 26,000 份餐食?
如此规模的配送物流极具挑战。我们假设我们的志愿者司机每次出车能处理 15 份配给(即 30 份餐食),并为每位司机提供优化后的驾驶路线。即便如此,完成一次配送任务仍需约 1.5 至 2 小时。我们认为,每周 2 到 3 天这样的频率对志愿者来说是可持续的。
对我们而言,26,000 份餐食相当于 13,000 份配给。我们预计这将意味着大约 7,000 个停靠点(每个停靠点约 2 份配给)。假设使用志愿者司机和普通私家车进行配送,这意味着我们需要每天出动 700 名司机;但实际上,考虑到志愿者不会每天都出车,我们大约需要 2,000 名司机。
如果您能控制餐食来源(我们并不制作食物,因此对我们来说难度更大),那么您只需将地址列表按司机进行划分,然后优化每条路线即可。我们的配送量远低于您(我们预计每天 2,000 至 3,000 份餐食,约为您的十分之一),因此我们尚未自动划分地址列表。每个配送地址会被分配到一个社区,我们的调度员会手动按社区划分配送列表(这只是一个简单的电子表格排序)。随后,我们通过运行在 AWS 上的 Web 服务器优化每位司机的路线,并为每位司机提供优化后的驾驶路线(采用简单的旅行商算法)。
我们曾考虑过自动划分完整的地址列表。但目前我们尚不需要这样做,而且资金有限,因此我们希望尽量降低 AWS 和 Google Maps API 的使用成本
对于通用的多车辆路径规划问题(VRP),存在一些简单的算法解决方案,例如:
不过,鉴于如此庞大的配送量,我推测您覆盖的地理区域非常广阔,因此可能还需要考虑司机的家庭住址,这将使问题超出常规 VRP 的范畴。或许可以通过简单的启发式方法,将司机群体和配送地址划分为若干子问题,确保每个子问题中的配送点和司机都位于同一地理区域内,这样您便可以再次使用现成的 VRP 解决方案。
顺便提一下,我们使用 Google 地图的行驶时长作为点对点距离的衡量标准。
5 个赞
Stephen
(Stephen)
6
谢天谢地,范围并不广,而是极其密集。不到两周前,大量工会成员迅速失业。他们连续多日运营食品救济站,但这甚至更加不切实际,因为这会将成千上万的人集中到狭小空间内,任何无症状感染者都可能引发大规模疫情扩散。大部分配送将直接送达家庭,但也会设立几个应急中心,以分批次接待人群。
8 个赞