There is the speed mode (Contraction Hierarchy) and then there are all these ‘normal’ graph exploration algorithms like Dijkstra or A* (and its bidirectional variants) which we call flexible mode. The flexible mode is able to solve nearly any requirements, the speed mode is extremely fast but comes with many limitations. It would be nice to have something in-between, feature rich as the flexible mode but much faster. I’m happy to announce that such a hybrid mode was merged into the master branch today and already successfully tested for world wide setup: https://github.com/graphhopper/graphhopper/pull/780
It allows nearly everything the flex mode allows but is faster for random requests within Germany. We can speed up alternative route requests, easily incorporate live traffic, support blocking areas, support heading and more. Read more in the PR.