LSTM RNN with variable length training data for the prediction of tire pressure in a TPMS system on over the road trucks

Over the road trucking handles the delivery of millions of products every day across the globe. Sometimes thes trucks handle the “last mile” and sometimes they are the complete logistics solution for shipping product to the end user. If you've ever driven on a major US highway, you've seen them, and you've likely seen or read about the results when things go wrong. Rollovers and blowouts are serious problems not only for the driver, but for those on the road around the truck.

What if we could predict a blowout? Would we be able to save lives if a driver was given sufficient warning of an impending tire failure to take corrective action, such as getting off the road?

At EquipmentShare, I investigated this possibility using data captured from the telematics system on a tractor trailer. This system collected tire pressure and temperature data from the tire pressure management system (TPMS) of the trailer approximately every 5 minutes and transmitted it back to our servers via the cellular network. Predicting a future over pressure incident seemed plausible as the current temperature and pressure of each tire was available, and there is a physical relationship between temperature and pressure in an enclosed system like a tire. As the temperature rises, it is expected to see pressure rise as well. The problem happens when an endothermic process accelerates (through absorption of heat from any number of sources like under-inflation, improperly adjusted brakes, or improper maintenance), leading to pyrolosis where temperature and pressure rise out of control from a chemical reaction in the rubber of the tire: https://www.youtube.com/watch?v=fNy9ogkWeBY

When deciding on an approach to solve this problem, one must consider the nature of the data received and the desired outputs. In this case, I was interested in using all available tire pressure and temperature data that was available. The ultimate goal would be a streaming model that could detect and alert a driver of a potentially developing blowout scenario due to excessive pressure. This data was variable length in nature (trips in between stops by a trucker can be very short or very long), so some of the obvious choices like rolling window regressions and generalized estimating equations wouldn't necessarily be a good fit. One approach that seemed promising was recurrent neural networks, but like statistical approaches, a standard RNN needs consistent fixed length data for training. Except, it doesn't…

Using TensorFlow it is possible to instruct the rnn to use dynamic length training data (using tf.nn.dynamic_rnn), and assuming the padded data beyond the last real value are zeroes, we can compute the length on the fly as part of the TF graph.

The data were trained on a sample obtained from one trucks over a 30 day period, containing about 35,000 samples. The goal of the classification was to predict an over pressure situation 10 minutes in the future using temperature and pressure data from each tire on the trailer.

The data retrieved from the TPMS included the pressure and temperature, as well as an alert flag of an over pressure condition triggered by the onboard trailer ECU. This data was preprocessed to give a leading classification of over pressure for each reading received.

The model was trained grid search style on a GPU with 1100 cores. The results were decent, but ultimately this model was never put into production. The maximum accuracy achieved by the LSTM model was around 85%, which was deemed not good enough (imagine being a truck driver and told to pull over so frequently for no reason that you begin to ignore and lose trust in the alert - alert fatuigue). In the future, when it becomes possible to gather more frequent data from the TPMS system, this approach could have better results.