Page 1 of 1
High Performance Routing Country Codes
Posted: Thu Dec 14, 2017 3:54 pm
by PaulBuechs
Hi,
we start to using High Performance Routing to speed up our touring but for two our customers we run into an issue.
This customers have restricted country codes to not cross the border. To realize this we use profile snipptes in our Requests. We found in the documentation "The usage of profile snippets is not supported together with high-performance routing".
Currently we are thinking about an additional car profil for each customer with border restrictions, but this doesn't sound really dynamic for us and the borders change sometimes.
Questions:
1. Is it possible to restrict borders for high performance routing?
2. Is it possible to restrict borders after high performance creation is done?
kind regards,
Paul
Re: High Performance Routing Country Codes
Posted: Thu Dec 21, 2017 7:52 am
by Bernd Welter
Hello Paul,
CORRECTION
The consideration of the country codes within routing network generation is not working in xServer 1!
I think the statement wants to clarify that you can't use the snippets in the CallerContext on demand but it is possible to pre-process the profile (including the countries black/white list) based on the regular XML. The only difference is the "on demand" factor.
In other words: if your
profile file contains a block such as
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<Profile>
<Routing majorVersion="2" minorVersion="0">
<Algorithm>
<GeographicRestrictions>
<ForbiddenCountry countryCode="41"/>
</GeographicRestrictions>
</Algorithm>
</Routing>
</Profile>
the creation of the search graph will consider this restriction and each routing based on the output searchgraph will deal with it (including "failure" if any< of the waypoints is located in the forbidden country).
Question #2 - "Is it possible to restrict borders after high performance creation is done?": No, this is not possible: once the graph has been computed all the restrictions will be fixed in the search graph file.
I hope this answer enables you to solve your usecase. Otherwise get back to me 1:1.
Best regards,
Bernd
Re: High Performance Routing Country Codes
Posted: Fri Dec 29, 2017 10:18 am
by Bernd Welter
Here are some additional comments about the handling of searchgraphs in the context of xServer2:
- XDataServer.startCreateHighPerformanceRoutingNetwork is an API method which has to be used to create custom searchgraphs (you do no longer require an external tool as in xServer1)
- The complete management of the searchgraphs is handled in the API (create, delete, list)
- The usage of a searchgraph in the context of a DistanceMatrix is implicit. Just specify the profile: if a matching searchgraph is available it will be used . Otherwise we fall back to CONVENTIONAL (RoutingType.HIGH_PERFORMANCE_ROUTING_WITH_FALLBACK) or create an exception ((RoutingType.HIGH_PERFORMANCE_ROUTING). You do no longer have to specify the name of the network you want to use (to be more precise: you can't specify it anymore).
- XServer 2 invents the geographic restrictions which will reduce the size of search graphs (e.g. D-A-CH only...) and allow you to create searchgraphs based on maps that are to big to be used in xServer1 (e.g. World map). In xServer 1 this was resolved by manually removing integration units from a map.
Best regards and thanks to Ralf for the info,
Bernd