hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 420|回复: 6

公共自行车的调度算法

[复制链接]

481

主题

481

帖子

1465

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1465
发表于 2023-10-2 16:16:30 | 显示全部楼层 |阅读模式
公共自行车投入使用一段时间之后,

停放在每个停车点的自行车数量往往会出现不均衡的状况,

需要开一辆调度车把一些自行车从一个停车点搬运到另一个停车点,

使得每个停车点的自行车数量重新达到平衡状态。

假设该城市有n*n个正方形建筑,

建筑与建筑之间的空隙是道路,

这些道路一共有(n+1)*(n+1)个交叉点,

自行车的停车点都位于正方形的某条边的中点,

如下图所示:



其中正数表示该停车点停放的自行车过多(需要运走多少辆),

负数表示该停车点停放的自行车过少(需要补充多少辆),

所有正数和负数的总和为0。

红色圆圈表示调度车的起点和终点

(调度车工作完成后需要回到该点)。

假设调度车一开始是空的,

它能装下无限多辆自行车。

它每开到一个停车点,

就可以装载若干辆自行车,

或者卸下它已经装载过的若干辆自行车。

调度车必需在道路的右侧行驶,

驶到交叉点处才能调头或拐弯。

我们希望好好规划调度车的行进路线,

使得每个停车点的自行车数量全部达到平衡状态,

并且调度车走过的路程要尽可能少。

有什么比较好的算法去解决这个问题呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

153

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-10-2 16:16:58 | 显示全部楼层
负数点能否"借"车,最后再还回来?
回复

使用道具 举报

1

主题

163

帖子

64

积分

关内侯

Rank: 2

积分
64
发表于 2023-10-2 16:17:09 | 显示全部楼层
如果能的话,就转化成中国邮递员问题了。

我比较关注不能“借”的情况。
回复

使用道具 举报

0

主题

186

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-10-2 16:17:35 | 显示全部楼层
那就意味着先有正后有负,且从头开始的任意长连续累加和均为非负。能否先求出所有满足要求的排序,再找最短路径。
回复

使用道具 举报

1

主题

163

帖子

64

积分

关内侯

Rank: 2

积分
64
发表于 2023-10-2 16:17:55 | 显示全部楼层
或者先考虑正数的回路,再考虑如何插入负数,使得总路径尽可能短。
回复

使用道具 举报

0

主题

200

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2023-10-2 16:18:12 | 显示全部楼层
滴滴单车公司码农?哈哈
回复

使用道具 举报

0

主题

184

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2023-10-2 16:18:59 | 显示全部楼层
负数点不能向邻近点"借"车。即调度车不能搬运小于等于0的点的车。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2024-11-22 15:50 , Processed in 0.065494 second(s), 23 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

快速回复 返回顶部 返回列表