High Performance Routing Country Codes

This forum deals with any kind of trip optimization based on xTour1, xTour2 and the Developer APIs "RouteOptimization" and "SequenceOptimization". No matter whether it is automatic planning or manual dispatching, refering to transport orders or service planning.
Attention: this does not refer to PTV Optiflow SaaS and PTV Developer RouteOptimization Optiflow.
Post Reply
User avatar
PaulBuechs
Posts: 21
Joined: Tue Mar 28, 2017 1:09 pm

High Performance Routing Country Codes

Post 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
User avatar
Bernd Welter
Site Admin
Posts: 2695
Joined: Mon Apr 14, 2014 10:28 am
Contact:

Re: High Performance Routing Country Codes

Post 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
Bernd Welter
Technical Partner Manager Developer Components
PTV Logistics - Germany

Bernd at... The Forum,LinkedIn, Youtube, StackOverflow
I like the smell of PTV Developer in the morning... :twisted:
User avatar
Bernd Welter
Site Admin
Posts: 2695
Joined: Mon Apr 14, 2014 10:28 am
Contact:

Re: High Performance Routing Country Codes

Post 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
Bernd Welter
Technical Partner Manager Developer Components
PTV Logistics - Germany

Bernd at... The Forum,LinkedIn, Youtube, StackOverflow
I like the smell of PTV Developer in the morning... :twisted:
Post Reply