Amending of TransportOrderAB to tour w.o. changing sequence

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

Amending of TransportOrderAB to tour w.o. changing sequence

Post by Bernd Welter »

Here's a little xtour1 challenge that I'd like to share with you - the solution is quite simple once you know the required parameters:
We have already planned tour with 5 TransportOrderAB in it.
All Orders starts at the same place A and making delivery to different places B1, B2, B3, B4 and B5.
Sequence of tour points: A, A, A, A, A, B1, B2, B3, B4, B5.
We are trying to amend TransportOrderAB from A to B6 and expecting result similar to A, A, A, A, A, B1, B2, B3, B6, B4, B5: original sequence not touched and point B6 inserted between 2 existing tour point.
Unfortunately, as response from xServer we receive reversed delivery tour points: A, A, A, A, A, B5, B4, B6, B3, B2, B1.
Could you take a look at our request, please, and tell us, how to keep original sequence of tour points untouched.
So in fact there are two requirements in this story:
  • All planned orders of the input tour are supposed to remain on the tour. To achieve this you have to set the Tour.TourPointFixation to
    NO_TOUR_POINT_OUT : All tour points of the related tour must stay in the tour, but additional tour points inserted in the tour are allowed.
  • Furthermore you have to apply proper TourSectionIDs on the TransportPoints to ensure that the given tour structure is not rearranged:
    tourSection : Position of the transport point in a tour (0 <= tourSection <= 1000). Within a tour the tourSection values != 0 of the transport points will be sorted ascending so that it is possible to pre-order the transport points. Transport points with tourSection 0 will be placed anywhere. TourSection 1 will be the first stop within a tour, and 1000 will be the last stop. There will be not more than one transport points within a tour with tourSection 1 or 1000, respectively.
    So in the example mentioned above you could set the tour section ids to
    • TransportPoint B1.tourSectionID = 1
    • TransportPoint B2.tourSectionID = 2
    • TransportPoint B3.tourSectionID = 3
    • TransportPoint B4.tourSectionID = 4
    • TransportPoint B5.tourSectionID = 5
    • TransportPoint B6.tourSectionID = 0
    This will allow the algorithm to place the B6 anywhere between the other stops while they have to remain in ascending order.
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