Queries about few attributes of PlanClusters

Deals with clustering based on locations but also on time regularity.
Post Reply
Prakash
Posts: 26
Joined: Mon Sep 14, 2015 5:21 am

Queries about few attributes of PlanClusters

Post by Prakash »

Hello,

I would like to know about two attributes - considerActivitiesAsServiceTimes and useTravelDistance of PlanClusters, explanation from the manual is unclear to me.

Does attribute "considerActivitiesAsServiceTimes" used to calculate/balance cluster considering driving time + service time to planning locations?
Planning locations Service timeDrivingTime to locationTotal time to serve location
Location110 min50 min60 min
Location215 min5 min20 min
Total touring/driving time of cluster80 min
Does this attribute have any relation with useTravelDistance ?

Regards,
Prakash
Prakash Kumar
Developer
Webdirekt India Pvt. Ltd.
User avatar
Bernd Welter
Site Admin
Posts: 2695
Joined: Mon Apr 14, 2014 10:28 am
Contact:

Re: Queries about few attributes of PlanClusters

Post by Bernd Welter »

Hi Prakash,

I prepared some screenshots - maybe they can help to get rid of the misunderstandings:
First lets start wir the basic scenario where I consider 50 customers/locations and 5 technicians/clusters. Furthermore each customer has an activity of 3600.
First lets start wir the basic scenario where I consider 50 customers/locations and 5 technicians/clusters. Furthermore each customer has an activity of 3600.
Now with considerActivitiesAsServiceTimes set to FALSE we simply treat the activities as pure double values and the expected perfect solution would be to have equal sum of activities for all customers within a cluster (10*3'600=36'000)
Now with considerActivitiesAsServiceTimes set to FALSE we simply treat the activities as pure double values and the expected perfect solution would be to have equal sum of activities for all customers within a cluster (10*3'600=36'000)
In this next step I set considerActivitiesAsServiceTimes==TRUE and the optimal solution now considers both driving time and service time contribution as part of the target function. So we create a single tour structure within each cluster. Therefore the tocal activity (=traveltime) in a cluster with 10 customers is not 36'000 (10:00:00) but a value which is a little bit bigger, e.g. 46'975 =  13:02:55 (=10 hours service period + 3:02 for driving).
In this next step I set considerActivitiesAsServiceTimes==TRUE and the optimal solution now considers both driving time and service time contribution as part of the target function. So we create a single tour structure within each cluster. Therefore the tocal activity (=traveltime) in a cluster with 10 customers is not 36'000 (10:00:00) but a value which is a little bit bigger, e.g. 46'975 = 13:02:55 (=10 hours service period + 3:02 for driving).
Now in the fourth example I also activated the switch "useTravelDistance" which means that the target function balances not the travel TIME (upper case with tours between 11:01 and 14:44) but the travel DISTANCE of the estimated tours (between 11:00 and 11:46)
Now in the fourth example I also activated the switch "useTravelDistance" which means that the target function balances not the travel TIME (upper case with tours between 11:01 and 14:44) but the travel DISTANCE of the estimated tours (between 11:00 and 11:46)
Does this answer the questions?

Bernd

PS: I used a CAR based distance matrix for the 2-4 screenshot
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:
Prakash
Posts: 26
Joined: Mon Sep 14, 2015 5:21 am

Re: Queries about few attributes of PlanClusters

Post by Prakash »

Hi Bernd,

I still have few doubts about "useTravelDistance". I did some test with useTravelDistance along with DIMA and got significant changes in result.
What is the impact/difference between using travel distances and not travel times for calculations?
Would it make sense to keep useTravelDistance always true while using distanceMode as "existingDistanceMatrix"? Could you please share your recommendation too?

Regards,
Prakash
Prakash Kumar
Developer
Webdirekt India Pvt. Ltd.
User avatar
Bernd Welter
Site Admin
Posts: 2695
Joined: Mon Apr 14, 2014 10:28 am
Contact:

Re: Queries about few attributes of PlanClusters

Post by Bernd Welter »

Hello Prakash,

the difference between "useTravelDistance=true" and "useTraveldistance=false" is whether you prefer
  • The travel time
  • The travel distance
Sometimes the underlying geometries arre completely different. Here's a typical example for a single relation:
shortest track (green) is not necessarily the fastest one. While the green track ist 73km andn therefore much shorter than the orange one (93km) the traveltimes are flipped: the green track requires much longer (+20minutes).
shortest track (green) is not necessarily the fastest one. While the green track ist 73km andn therefore much shorter than the orange one (93km) the traveltimes are flipped: the green track requires much longer (+20minutes).
Now here's a more concrete example for clustering based on 300 sample customers:
The sample positions (Germany)
The sample positions (Germany)
In the next step I computed two distance matrices with 0% and 80 weight between distance and time:
The 0% dima (default profile)
The 0% dima (default profile)
The 80% version of the dima
The 80% version of the dima
And finally I did the clustering based on these dima's which obviously produced different assignments:
The cluster output based on the 0% dima
The cluster output based on the 0% dima
The cluster output based on the 80% dima
The cluster output based on the 80% dima
Unfortunately there's no such thing as a "single KPI" that enables a user to gather the obvious distance as in my "single relation" sample above.
But nevertheless I hope you can see that there's an impact on the output.

Here's also an academic example:
Path over the mountain is short. If we don't care for the reduced driving speed (and the increased traveltime) the best assignment is shown here.
Path over the mountain is short. If we don't care for the reduced driving speed (and the increased traveltime) the best assignment is shown here.
But if we care about the traveltime (and distance doesn't matter) and the driving speed is fast within one of the two regions "east" and "west" the best assignment is the one displayed in this map.
But if we care about the traveltime (and distance doesn't matter) and the driving speed is fast within one of the two regions "east" and "west" the best assignment is the one displayed in this map.
In addition to that I really recommend to split the topics "what is the target criteria? Travel distance or travel time?" from "how do we determine the distance/time? Airline? Dima with shortest or fastest routes?"

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