Я сгенерировал путь между местоположениями A и B с ограничением мест, которые я должен пройти, выбрасывая их или близко к ним, чтобы маршрут выглядел так: A -> c1 -> c2 - > B
, даже если это не самый короткий путь.
Я использовал for path in nx.all_shortest_paths(UG, source=l1_node_id, target=l2_node_id,weight = 'wgt'):
, когда 'wgt'
- это расстояние от края / скорости движения на этой дороге.
Я создал список списков, в котором каждый внутренний список является например, node_id:
l_list = [
[n11,n12,n13,n14....]
[n21,n22,n23,n24....]
..
]
и на карте это выглядит так: (маркеры - это начало каждого маршрута, и я также покрасил их в разные цвета)
Я хочу изменить его на один маршрут, но, как вы можете видеть, есть некоторые расщепления, такие как зеленый и красный, некоторые общие последовательности (которые я могу обработать), и вторая проблема - начало синего маршрута \ конец черного, который не имеет значения.
Я не могу просто удалить красный маршрут, потому что он должен быть обобщенным c алгоритмом, и я даже не знаю, где это произойдет снова во время этого маршрута.
У меня есть отметки времени каждого маркера, но это просто говорит о том, что я был близко к этой области. (это места расположения сотовых антенн)