我想创建一个软件,为残疾儿童交通规划公共汽车路线(及其最佳装载)。
这些总线具有以下规格:
M座位(最大7 -有一个司机和援助)
轮椅的“座椅”(最大4)
最大负荷的固定量(在奥地利:9人或20人;9辆福特福特汽车;20辆梅赛德斯-奔驰短跑运动员)
线路规范:
去研究所的路程对一个孩子来说必须少于2小时(不是公共汽车)
对于优化:混合研究所可能是最优的
例子
algorithm - 平衡负载并确定总线路线的算法/逻辑-LMLPHP
最佳路线1是:
6, 1, 7,组(2, 3, 4,5),住院A(出口1, 2, 3,4, 5, 6),8, 9,住院B(出口7, 8, 9)或
1, 7, 6,组(2, 3, 4,5),住院A(出口1, 2, 3,4, 5, 6),8, 9,住院B(出口7, 8, 9)或
7, 1, 6,组(2, 3, 4,5),住院A(出口1, 2, 3,4, 5, 6),8, 9,住院B(出口7, 8, 9)或

取决于具体的道路(也称为三角形1-6-3和7-1-6的道路距离)
这是一个简单的例子。当它涉及到运输轮椅,这是更复杂的。
编辑:
注:有2个以上的学校,有9个以上的孩子这只是举个例子。在现实世界里有600个孩子和20个研究所…
我需要什么数据?
我的猜测是:坐标,点之间的距离(不是空中线路距离,而是道路距离),座椅使用类型(座椅或轮椅),某种程度上道路规范(可能由于距离而过时)
有谁能想出一些想法,算法,逻辑,反馈,(免费由于残疾儿童运输不是企业业务)软件我可以用来获得数据(如坐标,距离,…)。
哦,我得说。我不是学过的软件工程师,所以很难浏览科学文献,但我愿意弄脏我的手!

最佳答案

嗯,这就是我的谋生之道。基本上,我们使用带列生成的mip和路径模型来解决这个问题。考虑到问题很小,我认为您可以使用更简单的边流模型并得到合理的结果这将节省您进行列生成的时间,这是相当多的工作。我建议在考虑生成路由本身之前,先计算给定的已设置路由上的流量——事实上,我只需“手动”使用路由计算器和双重成本作为指导。
具体来说,您需要创建一个图,其中每个挑选和交付点是一个节点,每个总线路由是一组连接的注释。根据需要连接,这确实比书写更容易绘制:)然后,制作一个模拟流量的lp系统,将流量限制在公共汽车公司的范围内,或者要求所有乘客都被运送,或者因为不这样做而支付高昂的费用。
设置好后,为每条路线创建布尔变量并将其与容量相乘:这将使您能够打开和关闭公交路线。
根据需要询问细节,以上只是一个粗略的提纲。
编辑:
好吧,阅读这些回答,我想我必须说,要用我建议的方式解决这个问题,你至少需要一些关于线性规划和图论的知识。是的,这是一个非常困难的问题很难,我认为它是无法解决的,除了使用当前计算机技术的非常小的系统。看到这其实是一个很小的。我认为这是可能的,欢迎您联系我们公司寻求帮助(联系@ange.dk)。然而,专业的优化帮助并不便宜。
然而,一切都没有失去!有更简单的方法,尽管结果不会那么好当你不能建模,模拟写一个模拟,给出公交线路,乘客等显示乘客如何沿着公交线路移动做一个评分,你使用的每一辆巴士都要花一些钱,每公里都要花一些钱,而每一个没有被运送的乘客都要花很多钱然后看看结果,改变路线,朝着你能想到的最好(最便宜)的解决方案努力。这可能不是一个坏办法。
同样,对于不精通lp+mip+图论的人来说,创建一个能够从零开始为上述问题生成解决方案的程序并不是一个合适的企业。但也许做不到?
我将在下周左右休假。

10-06 14:48