• No results found

Real time tracking in truck fleet management

N/A
N/A
Protected

Academic year: 2021

Share "Real time tracking in truck fleet management"

Copied!
23
0
0

Loading.... (view fulltext now)

Full text

(1)

UPTEC F 17044

Examensarbete 30 hp

Augusti 2017

Real time tracking in truck

fleet management

(2)

Teknisk- naturvetenskaplig fakultet UTH-enheten Besöksadress: Ångströmlaboratoriet Lägerhyddsvägen 1 Hus 4, Plan 0 Postadress: Box 536 751 21 Uppsala Telefon: 018 – 471 30 03 Telefax: 018 – 471 30 00 Hemsida: http://www.teknat.uu.se/student

Abstract

Real time tracking in truck fleet management

Gustav Wiklander

This thesis researches Scania's challenge to display the position of trucks, with high accuracy and good user experience while with minimal position transfers from the truck. This thesis presents an event

triggered position update (ETPU) algorithm for sending positions from the truck along with real time estimation on the client. The key point with this system is that the truck computes the same estimation to evaluate its accuracy and sends a new position if the estimate is insufficient. This achieves a system in which position updates are

only done when needed to achieve a selected accuracy. Simulations were done and metrics for: accuracy, data consumption and user experience were applied for evaluation. Results are presented to inform the readers of the ETPU's potential.

(3)

1

Populärvetenskaplig sammanfattning

(4)

2

Acknowledgements

(5)

3

Abbreviations and definitions

Position-aware applications Position based service

FMS Fleet management system - IT system for managing a large set of vehicles in areas such as logistics, maintenance, driver manage-ment, fuel managemanage-ment, tracking and diagnostics.

FMP Fleet management portal - client services

on board Something that is permanently installed on the platform and is communicating through a cable or wireless connection with other nodes on the platform.

off board something deployed on a server or residing in some network part which is not on the platform.

device mobile device with a wireless connection to the platform or a mobile device with a cable connection to the platform which can be detached by the end user.

Data center Defined as middleware is defined in paper [2]. IoT Internet of Things

SOA Service-oriented architecture IT Information technology

DPUA Decisive Positional Updating Algorithm PDF Probability density function

(6)

Contents

1 Populärvetenskaplig sammanfattning 1

2 Acknowledgements 2

3 Abbreviations and definitions 3

4 Introduction 5

4.1 Background . . . 5

4.1.1 Internet of things and industrial companies . . . 5

4.1.2 Scanias Fleet Management System . . . 5

4.1.3 Scania’s current algorithm for position updates . . . 5

4.2 Purpose of the thesis . . . 5

4.2.1 System architecture . . . 6

4.2.2 Event based position update . . . 6

4.2.3 Real time estimation of the position . . . 6

4.2.4 Investigate position message latency . . . 6

5 System architecture 6 5.1 Architectural considerations . . . 6

5.2 The Architectural design . . . 7

6 Algorithm 7 6.1 Time interval based algorithm . . . 7

6.2 Event Triggered Position Update Algorithm . . . 8

6.2.1 Position estimation . . . 8

6.2.2 Trigger set for position update . . . 9

6.3 Delaying the estimated position . . . 9

6.4 Variable ETPU parameters . . . 10

6.5 Comparison metric system . . . 11

6.6 Position message latency . . . 11

7 Simulation methodology 12 7.1 Simulation data . . . 12 7.2 Simulation software . . . 12 7.2.1 Simulation design . . . 12 7.3 Simulation procedure . . . 13 7.4 Simulating latency . . . 13 8 Results 15 8.1 Data consumption and error distance . . . 15

8.2 Incorrect routes . . . 18

9 Discussion 20 9.1 Maximum error and time . . . 20

9.2 Average error distance and data consumption . . . 20

9.3 Latency . . . 20

9.4 User experience . . . 20

(7)

4

Introduction

4.1

Background

4.1.1 Internet of things and industrial companies

Internet of things (IoT) is becoming more relevant in the logistics and the trans-portation industry because it enables a new form of IT services that relies on real time data from end nodes such as vehicles. Tracking vehicle position, route, and predicting future position can all be provided by IoT technologies [4]. Scania, a world leading manufacturer of trucks has embraced IoT technologies. All trucks manufactured today by Scania have a 3G communication unit. This global ac-cess to truck status data has resulted in development of IT services under the umbrella named Connected Services to help customers improve efficiency and make strategic decisions. Scania describes its own benefits with providing these services as:

“Developing and/or sustaining competitiveness and revenue streams.“ [1]

Which is in accordance with research as to how IT services can enhance the core products for industrial manufacturers [3].

4.1.2 Scanias Fleet Management System

Scania’s fleet management system (FMS), consisting of: sensors installed in the trucks, CAN bus, driver interface units, a wireless communication unit, a data center to store sensor- and driver data, server processes, and client applications are in total Scania’s FMS. Vehicle position and tracking are the most used services at Scania’s fleet management portal (FMP). The position and vehicle tracking services represent more than 60% of FMS usage and about 65% of subscriptions. Thus the algorithm for sending position data and displaying truck positions has a significant impact on the value of Scania’s FMP platform.

4.1.3 Scania’s current algorithm for position updates

As of today Scania’s trucks send their positions to a data center with fixed intervals. The positions are used for many of the services in the FMP but mainly for displaying the truck’s latest transferred position and to track its route. The position data is also used for data-mining purposes internally by Scania to make strategic business decisions.

4.2

Purpose of the thesis

(8)

position updates occurring occasionally real time estimates could increase the accuracy. The quality of the estimate depends on the quality of the last available position. Quality in this case is not only a matter of time elapsed but also speed continuity and road equality. If the estimate is based on the assumptions that the truck continues at the same speed and along the current road, every time the truck invalidates this assumption the on-board system triggers a new position transfer to keep the quality of the estimate. The comparison naturally has to be done on-board, thus requiring the on-board to also implement the estimation algorithm for comparison with the actual position.

4.2.1 System architecture

One of the architectural challenges involving big data in the world of IoT is scalability. Scalability in this context refers to scaling capability of volume storage and data processing [2]. The thesis presents an architecture to handle the scalability issue regarding positional data processing on a large set of trucks.

4.2.2 Event based position update

As mentioned the truck will do the same estimation as the client to compare with the actual position. When an event occurs such as exiting a highway or turning left in an intersection the estimation algorithm will not only deviate from the actual position but also display an incorrect route. The algorithm then triggers a position update to prevent displaying an incorrect route in the client. The thesis presents the design and simulation results of a Event Triggered Position Update (ETPU) algorithm using real truck position data.

4.2.3 Real time estimation of the position

An ETPU that bases it’s decision to send on the inaccuracy of the estimate, can when one ignores latency guarantee an upper bound of inaccuracy which does not grow with time. The accuracy of the estimate it self will depend on how strict the on-board trigger set is configured. The thesis presents an algorithm for estimating truck position given an earlier position.

4.2.4 Investigate position message latency

As stated earlier, the quality of the estimate depends on the quality of the last available position. Latency when transferring positions wirelessly from on-board to a data center will cause the availability of the updated position to be delayed for client access and the prior position will be used as reference for an extended duration. The upper bound inaccuracy can no longer be guaranteed. The thesis presents a realistic latency probability distribution and robustness measures to reduce the latency impact.

5

System architecture

5.1

Architectural considerations

(9)

and insertion has to be done at a faster rate than the average rate of arrival [2]. Therefore, any data processing should if possible be delegated to the sensor nodes (truck) and the client nodes (client browser). The architecture proposed places all processing on the sensor and client nodes. The truck applies the ETPU algorithm and when it triggers sends a position to the data center. The client node retrieves the latest position from the data center and applies the same estimation algorithm. The data center is only used for storage and retrieval to improve the scalability.

5.2

The Architectural design

Figure 1: The proposed architectural design.

6

Algorithm

In this section Scania’s algorithm for the decision to send and sample positions is presented. The ETPU algorithm is presented and the design choices are explained. A metric system for evaluating the algorithms is also presented.

6.1

Time interval based algorithm

(10)

the sampling frequency depends on the velocity of the truck. Scania’s most premium position subscription provides position updates every minute. The intention is to provide accurate position data but still with reasonable data consumption. This thesis compares the ETPU algorithm with Scania’s most premium position service since both have similar goals as to accuracy and data consumption. Scania’s algorithm:

• Transfers current position every one minute.

• Also with every transfer a position buffer is also transfered. • Position buffer is sampled via:

– Speed < 2 km/h → sample position and wait until speed > 6 km/h and sample again.

– Speed < 30 km/h → sample next position after 60 seconds. – Speed > 30 km/h → sample next position after 2 ∗ speed h

km seconds.

6.2

Event Triggered Position Update Algorithm

6.2.1 Position estimation

Given a prior position with speed, heading and the time sampling. The real time estimation is done as follows:

1. Map position to a road.

2. Estimate driving direction by comparing truck heading to road geometry. 3. Assume the truck continues along the same road.

4. Continue at the same speed.

5. If the prior position maps poorly to a road segment use the prior position as estimate. Such instances include being in a parking lot or off road and it will be very difficult to make a good estimate and certainly mapping to a road will definitely produce an incorrect route. Simply making it stand still is a safe fall back.

6. If the speed exceeds the speed limit plus an additional percentage: the speed of the estimate is lowered to the speed limit. The speed limit along a road is not necessarily constant and if the speed limit drops to a lower level the estimate will drive past the real truck and trigger a position update at some point. Being ahead is worse than being behind because of the risk of displaying an incorrect route since the estimate will have already passed the intersection or exit which might be taken.

7. If the speed falls below a minimum speed threshold: the estimate speed is set to zero. At low speeds setting the speed to zero will only lead to the error distance growing slowly. Secondly this will guarantee that the estimate is behind the real position and thus an incorrect route is impossible to display.

(11)

6.2.2 Trigger set for position update

After the estimation is done the trigger set is applied to potentially trigger a position update. To improve the reliability a trigger buffer is used, requiring one or more consecutive triggers to occur before an actual position update is fired. The trigger set is defined as:

• The distance between the real truck position and the estimated position exceeds a threshold. Applying a maximum allowed error distance keeps the error from growing indefinitely thus always gives a fixed estimation accuracy independent of time.

• If the real position maps well to a road segment:

– The estimate positions road mapping does not match the actual road and there is a slight heading difference. If the truck changes road a new position has to be transferred because the estimation will display an incorrect route.

– The estimate position and the real position map to the same road but with opposite headings (with some margin). This indicates that the estimate is driving in the opposite direction which is also an incorrect route.

– The estimate does poorly map to a road segment. When the truck for instance leaves a parking lot it is time to resume doing estimates.

6.3

Delaying the estimated position

One problem with estimating the position in real time is instances when the estimation is ahead of the real truck. It happens when the truck slows down relative to the last position update and thus the estimation will exceedingly be ahead of the real truck. It is only a problem in combination with an unexpected turn or exit because the estimation will for some duration travel on an incorrect route until a new position update is done to correct this error. The duration of an incorrect route should be reduced and preferably removed entirely.

(12)

maneuver because a position update has already taken place in the future rel-ative to the client’s delayed time. Thus instead of a normal position estimate using the past position update one can just make a route from the past position update to the future position update.

An additional benefit of adding a delay of N seconds to the client is its impact on position update rate. For instance, when a position update occurs by the on-board system the estimation in the client will have access to a position N seconds ahead of the client estimation. For the next N seconds the client can route from the past position to the future position. During that period any additional position updates will not improve the estimation during that period. After a position update occurs the on-board system can wait with sending a new position for the next N seconds even if the ETPU algorithm triggers a position update during that period. Therefore, adding a delay limits the minimum time between position updates and by doing that also improves the average position update rate.

6.4

Variable ETPU parameters

Name Type Function

Maximum error distance [m] If error distance exceeds ’Maximum er-ror distance’ a position update is trig-gered.

Delay [s] Amount of time the client estimation is delayed.

Minimum speed [km/h] If speed is less or equal then speed used for estimation is zero.

Consecutive triggers Number The ETPU algorithm has to trigger N times in a row for a position update to be fired.

Speed limit threshold % If speeds exceeds the speed limit by more the speed limit threshold the es-timation speed is lowered to the speed limit.

Incorrect road Degrees Not only has the estimation map to a different road heading must differ more than ’Incorrect road’.

Opposite direction Degrees In order for a opposite direction to be triggered the heading difference must exceed ’Opposite direction’.

Matching Threshold Number HEREs API (see section 7.2) to reverse geocode also produces a match quality of the mapping. If the matching qual-ity is not greater than the threshold the position is deemed as not on a road.

(13)

6.5

Comparison metric system

In order to evaluate the ETPU algorithm and Scania’s time interval based po-sition update algorithm, a metric system is required. The metric system has to reflect the points of interest in regard to data consumption rate and estimation accuracy. In the thesis three metrics were chosen to evaluate the algorithms:

1. Data consumption rate - The less the better because the cost of wireless data consumption.

2. Average error distance - Average error distance in the client in relation to the actual position.

3. Incorrect routing - Only occurs for the ETPU since it displays an estimate while the time interval displays the latest available position. An incorrect route, such as continuing forward in a intersection while the truck actually turned left, one could argue is a severe error since the fleet managers who observes the truck movement will first assume that the driver has made a mistake and later when the ETPU triggers an update will see that the driver actually turned left and will instead loose confidence in the FMP positioning service.

6.6

Position message latency

(14)

7

Simulation methodology

7.1

Simulation data

The simulation used an hour of sufficiently high resolution position data of a truck driving back and forth between Södertälje and Botkyra in Sweden. The route consist of to a large degree of high speed motorway but also of exits, circulations, turns and speed changes. The GPS positions had a one second resolution, speed had a higher resolution but was averaged down to one second resolution, heading for each position was calculated as the direction from the last position (with a successful heading calculation) to the current position, if the distance was greater than three meters, otherwise the last successful heading was used instead.

7.2

Simulation software

HERE provides a map and a navigation API made with the intent for city and vehicle navigation. HERE map was chosen as the navigation API as it provided the necessary functionality required by the ETPU algorithm and its visualization capabilities. The simulation was written in JavaScript to easily interface the HERE map API and because HERE map works well in web browsers.

• Displays a map in a browser with focus on street navigation.

• Reverse geocode a GPS coordinate to a street address and its matching quality (see section 6.2.2).

• Reverse geocode a GPS coordinate into a road segment with shape. It is needed when estimating the position since the truck continues along the road.

• Display custom markers on the map. Used in simulation to display the truck’s actual position, the ETPU algorithm’s estimated position and the positions transferred to the data center.

• Able to route between two GPS coordinates which is used in the client estimation when using delay as mentioned in section 6.3.

7.2.1 Simulation design

The code built to run the simulation was divided into objects resembling the architectural design described in figure 1.

• A truck object was designed which at each tick updates its position, speed, heading and ran the ETPU algorithm to check if a position update was necessary.

• A data center object to store all the positions sent from the truck. • A client object to retrieve the latest position from the data center applying

(15)

7.3

Simulation procedure

Simulations were done by replaying the one hour truck driving data, described in section 7.1, applying the ETPU algorithm every second and updating the client estimation every second. The metrics were calculated as follows:

1. Data consumption rate was represented by two figures: (a) Average time between position transf ers

= total time

total number of position transf ers (b) Average transf erred bytes per minute

= message size ∗total number positions transf ers total minutes

2. Average error distance

=

Ptotal time

t=0 Distance(T ruck position(t), Estimate position(t))

total time

3. Incorrect routing - Total number of incorrect routes.

Simulations were done with varying values of the parameters: maximum error distance and the amount of delay. The parameters described in table 1. were fixed throughout all simulations.

Maximum error distance [m] 50 75 100 125 250 500 1000

Delay [s] 0 5 10 15 20 30 45 60

Table 2: Parameter variations during simulation.

Name Value

Minimum speed [km/h] 6 Consecutive triggers 3 Street Match Quality Threshold 0.65 Speed limit threshold 10% Incorrect road 10◦ Opposite direction 120◦

Table 3: Parameters with fixed values during simulation.

7.4

Simulating latency

(16)

time of data base insertion represents the latency until available. A query was done on all position messages between 2015-01-01 up to present in order to produce a PDF for transmission latency. Latencies greater than three minutes were not included because disconnection scenarios are not part of the thesis investigation.

Figure 2: Latency distribution from message compilation until available. Pro-duced from a data set of more than 600 million.

For simulation purposes, probabilities and cumulative sums were derived from figure 2. in order to map a random number to a latency at each position update. Latency [s] Probability [%] < 1 2.4 < 2 61.3 < 3 87.3 < 4 91.7 < 5 93.5 < 10 96.1 < 15 96.8 < 20 97.1 < 30 97.5 < 60 99.1 < 180 100.0

(17)

8

Results

8.1

Data consumption and error distance

Figure 3: Average error distance where the clusters represent different values of the delay parameter and the columns within each cluster represent different values of the maximum error distance parameter. Latency according to table 4. was part of the simulation. The black horizontal line represents the average error distance of Scania’s algorithm.

(18)

Figure 4: Data consumption in relation to Scania’s algorithm. The clusters represent different values of the delay parameter and the columns within each cluster represent different values of the maximum error distance parameter.

Figure 5: Data consumption in bytes per minute. The clusters represent differ-ent values of the delay parameter and the columns within each cluster represdiffer-ent different values of the maximum error distance parameter. The black horizontal line represents the byte consumption of Scania’s algorithm.

(19)

Figure 6: Correlation between data consumption and average error distance. By combining the data from figure 3. and figure 4 to produce the result set of both average error distance and data consumption. The trend line is the least square regression line of the result set. The data consumption and the average error distance is relative to the simulation results of Scania’s interval based algorithm.

As can be seen from figure 6. in order to reduce the data consumption an increase in the average error distance will generally be the trade off.

(20)

8.2

Incorrect routes

Figure 8: Total number of incorrect routes during a one hour simulation without latency. The clusters represent different values of the delay parameter and the columns within each cluster represent different values of the maximum error distance parameter.

Increasing the delay reduces the number of incorrect routes as seen in figure 8. Using a delay of 20 seconds or more removes 79-100% of all incorrect routes compared to using no delay in the simulation.

Figure 9: Total number of incorrect routes during a one hour simulation with latency. The clusters represent different values of the delay parameter and the columns within each cluster represent different values of the maximum error distance parameter. The black stacked columns are the additional incorrect routes caused by transfer latency.

(21)
(22)

9

Discussion

9.1

Maximum error and time

A major difference between a time interval based position update and the Event Triggered Position Update (ETPU) algorithm is the characteristics of the client error distance. For a time interval based position update the maximum error distance, assuming constant speed, grows linearly with time in proportion to speed. The circular area with a radius of maximum error distance thus grows exponentially with time. In the case of the ETPU algorithm the maximum error distance is fixed since a position update is triggered if the error distance exceeds this threshold. Thus, regardless of time since last position update the maximum error of the estimate is constant.

9.2

Average error distance and data consumption

The ETPU algorithm manages to improve on both the average error distance metric and the data consumption metric at the same time. For instance, an using a delay of 15 seconds and a max error distance of 250 meters reduced the average error distance with 55% and the data consumption with 47%. Due to the negative correlation between estimation accuracy and data consumption, i.e. improved the accuracy is compensated by worse data consumption and vice versa, further improvements in one of the metrics means less of an improvement in the other.

9.3

Latency

Latency has a major impact on the number of incorrect routes as seen in figure 9. The latency results in that the previous position is used for estimation an extended period even though the ETPU algorithm has triggered the need for a position update. This extended period increases the risk of incorrect routes. The proposed solution to handle latency is to further increase the delay parameter. The results in figure 9 show an increase in delay reduces the impact of latency on the incorrect routes metric.

9.4

User experience

(23)

10

Future work

Future projects which continue along this topic would suitably try to implement the ETPU model in hardware to test its capacity and limitations in the real world. It would also be interesting to understand how the ETPU algorithm works in different environments such as cities and highways.

• Cities - would involve a lot of stop signs, pedestrian crossing and turns, thus making it difficult to predict the truck movement for a duration longer than 30 seconds.

• Highways - are the most predictable because it is the environment where the speed is the most constant and one follows the same road for the longest period of time.

A third point of interest would be to investigate the different industries where this service would be of market value.

References

[1] Scania inline - connected services and solutions.

[2] C. Cecchinel, M. Jimenez, S. Mosser, and M. Riveill. An architecture to support the collection of big data in the internet of things. 2014 IEEE World Congress on Services, pages 442–449, June 2014.

[3] Anna Salonen. Service transition strategies of industrial manufacturers. In-dustrial Marketing Management, 40(5):683 – 690, 2011. Service and Solution Innovation.

References

Related documents

The purpose of this report is to try a method with the available equipment, to produce a prototype of a tool to previsualize computer generated graphics in real-time.. The

In regard to the first question, it was concluded that the subjective autonomy modeled within the museum space in isolation, lacks the capacity to address

Maria Jenmalm, Childhood Immune Maturation and Allergy Development: Regulation by Maternal Immunity and Microbial Exposure, 2011, AMERICAN JOURNAL OF

46 Konkreta exempel skulle kunna vara främjandeinsatser för affärsänglar/affärsängelnätverk, skapa arenor där aktörer från utbuds- och efterfrågesidan kan mötas eller

Figure 1: A sliding wall plowing through the accumulated snow (consisting of 75.6K particles) on the ground simulated using our method, supporting both physics and visualization

Motiverade lärare som inkluderar skolkuratorn och det sociala perspektivet i sitt dagliga arbete leder till god samverkan inom skolan och är en förutsättning för att

Rätt grovlek God kondition God kondition Enl instruktion God kondition God kondition Enl följekort/ ritning Enl följekort Mäts på minst tre punkter Enl följekorti ritning

Native Client (NaCl) Google’s open source project to create a secure, portable, platform independent and more integrated type of plug-ins by creating a new plug-in API,