То, что вы действительно хотите знать, - это объезд во времени и на расстоянии. Нет простого способа определить это математически из простых координат. К счастью, это легко сделать с планировщиком маршрутов. Просто рассчитайте время с и без путевой точки.
Если у вас очень большой набор карпулеров, это поможет начать с тех, которые физически ближе всего. Как только вы получите автобуса с объездным движением N
километров, вы знаете, что вы можете исключить все другие пары начала / конца, где расстояние между конечным пользователем и конечным пользователем на прямой линии по крайней мере на N
километра больше, чем на лучшем маршруте. от начала до конца. Это логика A *; Начните с того, что выглядит лучше геометрически, так что вы быстро устанавливаете верхнюю границу и вам не нужно тратить много времени на длинные объезды.