我有4个人访问了22.000个地方。因此,我需要尽量减少访问的总时间。
我有地方的空间位置,我想要在它们之间或使用欧几里德距离或使用谷歌地图API。
使用OptaPlanner可以解决这个问题。
我想到使用车辆路径建模来解决。这是最好的选择吗? OptaPlanner会支持这么多的输入数据吗?
答案 0 :(得分:0)
OptaPlanner做过这样的案例,但你需要启用"附近的选择"明确是因为它超过了1k个位置。
由于它位于10k以上的位置,因此使用分区搜索进行基准测试(使用基准测试程序)可能会很有趣。例如,要加快构造启发式,您可能希望将其包装在分区搜索中。你可能无法将它全部包装起来,因为只有4个人。
至于使用Google Maps API,first read this blog。然后:10k位置需要2GB RAM IIRC以最有效的形式存储距离矩阵(32位双阵列) - 这与optaplanner无关。我怀疑22k会为你带来10GB的内存,只是为了加载内存。