About Travel Time Estimation
A correct estimation of the average travel time is important to prevent over-booking and under-booking the activities. The travel time is estimated based on the actual activity records (started activities). This topic describes how travel time is estimated with examples.
-
The booking of a new activity (get_capacity function)
-
The calculation of “Used” value
-
The Calculation of “Other activities” value
-
Activities that needs to be booked (get_capacity function)
-
Activities in buckets
-
Not-scheduled activities
-
Not-ordered activities
Travel Time Estimation Algorithm:
- Travel key (based on configured Activity travel stats fields)
- Bucket to which the activity is assigned
The logic to estimating travel when there's no 'from' location, typically when activities are assigned to a bucket, is as follows:
- If enough data is present, travel estimation is based on the bucket and travel key combination. Only data reported for the activities in that particular bucket and with the same travel key is used to estimate travel. This estimate is arrived at, only if there are at least seven such valid reported travel durations.
- If not enough data is present for that bucket and travel key, reported durations for activities with that travel key within the parent bucket of the assigned bucket is used. If there are at least seven reported durations at the parent bucket level for the travel key, the travel is estimated based on those reported travels. If not, then this process continues by going further up in the bucket hierarchy, till the level where enough data exists. Only parent buckets are considered in such cases and not organization units.
- If still not enough data is present at the parent bucket levels for activities with the same travel key, the travel estimation is based on all the reported travel durations for the activities under the original bucket, irrespective of the travel keys of those activities. Here too, if there isn't enough data within a particular bucket, the reported durations of its parent bucket are used, if it has enough reported durations.
- If enough data isn't present even then, the default travel duration configured is used.
- For all the above cases, only the durations reported by mobile workers for whom Use data reported to enhance company-wide estimations is selected at the Resource Type level, is used as input data. Only valid reported data that look realistic based on the distance and speed is considered. Data from external data sources, or those based on location services aren't used. This is done so that only real travels completed are used for estimations at the bucket level.
- The same logic is followed for estimating travel for not-ordered activities in the mobile worker's queue. Here, the same data calculated for the bucket to which the field resource belongs, is used.
Examples: Let's say an activity with a Travel key value '12345' is assigned to Bucket A. Assume that the parent of Bucket 'A' is Bucket 'B' and the parent of bucket 'B' is an Org Unit (which doesn't have a parent).
Element | Value |
---|---|
Travel key | 12345 |
Bucket | A |
No. of valid reported durations within:
|
10 |
Learned Estimation:
|
18 minutes |
Estimated travel for the activity in Bucket 'A' | 18 minutes |
Use Learned estimation of Bucket 'A' for Travel key '12345'.
Element | Value |
---|---|
Travel key | 12345 |
Bucket | A |
No. of valid reported durations within:
|
|
Learned Estimation:
|
|
Estimated travel for the activity in Bucket 'A' | 16 minutes |
Use Learned estimation of Bucket 'B' for Travel key '12345'.
Element | Value |
---|---|
Travel key | 12345 |
Bucket | A |
No. of valid reported durations within:
|
|
Learned Estimation:
|
|
Estimated travel for the activity in Bucket 'A' | 22 minutes |
Use Learned estimation of Bucket 'A' without considering the value of Travel key.
Element | Value |
---|---|
Travel key | 12345 |
Bucket | A |
No. of valid reported durations within:
|
|
Learned Estimation:
|
|
Estimated travel for the activity in Bucket 'A' | 24 minutes |
Use Learned estimation Bucket 'B' without considering value of Travel key.
Element | Value |
---|---|
Travel key | 12345 |
Bucket | A |
No. of valid reported durations within:
|
|
Learned Estimation:
|
|
Configured default travel duration |
28 minutes |
Estimated travel for the activity in Bucket 'A' | 28 minutes |
Use the configured default travel duration.