osrm-backend/src
Michael Bell 9884684701 Fix generation of inefficient MLD partitions
Duplicate restriction nodes in the edge-based-graph are currently
not in included in a mapping (.osrm.cnbg_to_ebg) from
node-based-graph edges to edge-based-graph nodes.
This mapping is used by the MLD partitioner to assign EBG nodes
to partitions.

The omission from the mapping means all restriction nodes are
included in a special 'invalid' partition. This special partition
will break the geolocation properties of the multi-level hierarchy.
The partition and its super levels will have a large number of
border nodes and very few internal paths between them.

Given the partitioner is the only consumer of the mapping, we fix
the issue by including the duplicate restriction nodes in the mapping,
so that they are correctly assigned to a partition.

This has measurable improvement on MLD routing.
For a country-sized routing network, the fix reduces routing and table
request computation time by ~2% and ~6% respectively.
2021-09-03 22:48:10 +01:00
..
benchmarks Upgrade formatting to clang-format 10 (#5895) 2020-11-26 07:21:39 -08:00
contractor Merge branch 'master' into avoid_samelookup_in_heap_map 2020-11-26 21:29:27 +01:00
customize Upgrade formatting to clang-format 10 (#5895) 2020-11-26 07:21:39 -08:00
engine Avoid copying ManyToMany table results (#5923) 2021-01-04 08:46:51 -08:00
extractor Fix generation of inefficient MLD partitions 2021-09-03 22:48:10 +01:00
guidance Add support for multiple via-way restrictions (#5907) 2020-12-20 13:59:57 -08:00
nodejs Undo libosrm API break by adding old interface as method overload (#5861) 2021-01-27 09:14:44 -08:00
osrm Undo libosrm API break by adding old interface as method overload (#5861) 2021-01-27 09:14:44 -08:00
partitioner Fix generation of inefficient MLD partitions 2021-09-03 22:48:10 +01:00
server Update src/server/api/url_parser.cpp 2021-09-03 10:55:53 +02:00
storage Remove redundant loading of .osrm.cell_metrics 2021-04-24 21:19:27 +01:00
tools Upgrade formatting to clang-format 10 (#5895) 2020-11-26 07:21:39 -08:00
updater Upgrade formatting to clang-format 10 (#5895) 2020-11-26 07:21:39 -08:00
util Upgrade formatting to clang-format 10 (#5895) 2020-11-26 07:21:39 -08:00