Automatic Coupling Detection System

Background

Heavy duty transport fleets usually consist of trucks and trailers. Here, while trucks can move independently, any trailer can only move while being physically coupled to one of the fleets trucks. Further it can just rest parking either still being coupled or also independently while being decoupled. The coupling state, so the digital available information about which trailer is connected to which truck at any point in time is an enabler for further fleet optimization in the transport business.

Goal

Algorithmically at best effort, detect the coupling state of a telematically connected and observed fleet consisting of trucks and trailers for any historic point in time.

Basic Consideration

A typical approach to detect physical state in any IoT scenario is to deploy connected low energy smart sensors able to detect desired state changes and to communicate them via mobile networks to a backend server system for further computation. ​

Within the discussed scenario such application would come with major costs as such smart sensors would need to be highly resistant to environmental influence. Further they would either need to be regularly charged or connected to onboard power supply, which would present additional cost factors.​

On the other hand, being part of a telematically  managed truck and trailer fleet, regular position information is already gathered and transmitted to backend servers. With that, basically by proper comparison of the position information coming from trucks and trailers, the coupling state could be inferred from spatial locality of fleet entities without the need to deploy and maintain any additional connected sensor hardware.

Difficulties

Analyzing some of our connected fleet data, one of the insights we got is that on average trucks of the same fleet have a chance to start their trips synchronously (from the same place, at the same time) significantly higher than we expected.​

For example, the likelihood that two trucks start driving within 60s and 100m, according to our analysis, is ~5.7%.​

That indicates that the problem probably can´t be solved sufficiently with naive approaches or simple heuristics.

Approach

Given any telematically observed fleet of trucks and trailers, the regularly position information of all of these trucks and trailers resulting from satellite based global positions systems serves as input for our coupling detection algorithm.​

The coupling state, i.e., the information about which trailer was connected which what truck is the desired output.​

The input, mainly in the form of updated truck and trailer positions, is provided by an Apache Kafka event stream and hold within an Apache Ignite data grid to enable redundant on-line computation.​

The coupling detection algorithm is triggered by any input update to refresh the fleets coupling state within the ignite grid.​

Coupling Detection Algorithm

The algorithm aims to identify for any given track (which is the temporal sequence of received positions) of any trailer, the specific track of any truck which shows the biggest similarity. ​

In case the biggest computed similarity exceeds a defined threshold, the related truck and trailer are marked as “coupled”. Elsewise they are marked as “uncoupled”.

Computing track similarity

Track similarity is basically derived by averaging distances between pairs of related positions of the two tracks within a defined past time window.​

​Position sampling rate for trucks and trailers can heavily differ which limits the precision of the comparison. Therefore, as an intermediate step, extra virtual positions get calculated for the track with the smaller sampling rate based on position time stamps from positions in the track with the higher sampling rate.​

This allows then to calculate the spatial difference between positions of truck and trailer at the same time.​