Software System for Road Condition Forecast Correction

03/22/2020 ∙ by Dmitrii Smolyakov, et al. ∙ 0

In this paper, we present a monitoring system that allows increasing road safety by predicting ice formation. The system consists of a network of road weather stations and intelligence data processing program module. The results were achieved by combining physical models for forecasting road conditions based on measurements from stations and machine learning models for detecting incorrect data and forecast correction.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Road safety is a complex issue that includes many aspects. Some of them depend on human behavior; others depend on infrastructure conditions. For example, in many regions of the Russian Federation, spring and autumn temperatures can fluctuate near 0°C, which in combination with rains and high humidity could lead to ice formation on the roads. Detection of these conditions is essential for road safety.

Online monitoring allows preventing road accidents by early maintenance; for example, we can use video monitoring of roads’ conditions. Machine learning techniques enable detecting ice formation automatically. For instance, in Zhao et al. (2017), the authors used data collected from stationary cameras to distinguish between five different conditions of the road pavement. In Roychowdhury et al. (2018)

, authors proposed to collect video from vehicle front cameras instead of static cameras, and to use a more accurate classification technique based on convolutional neural networks.

Despite all their advantages, video monitoring with ordinary cameras struggles with black ice detection. In order to fix this problem we can use multispectral cameras Gregoris et al. (2004), NIR cameras Jonsson et al. (2014), or measure depth with Kinect sensor Abdalla et al. (2017). These techniques are more expensive than ordinary cameras; however, they can provide better results.

A video monitoring system is costly. It can be reasonable to use sensors that collect other characteristics of road conditions like temperature, humidity, pressure, and others. Stations collecting this sort of data are called road weather information systems (RWIS). They can be located on the sides of roads or even inside the pavement Tabatabai and Aljuboori (2017).

By processing historical information on road conditions, we can predict ice formation. We can group forecasting algorithms into two major categories. The first category uses physical models Barber (1957); Sass (1997); Feng and Feng (2012); Dai et al. (2003) or their combinations like in Chunlei and Changyou (2009). The authors combine results of the physical models Common Land Model (CoLM) and BJ-RUC FAN et al. (2009), which allowed increasing the accuracy. Later in this paper, we take a closer look at the physical model METRo. It performs exceptionally well in countries like Czech Republic Sokol et al. (2014), Canada Crevier and Delage (2001), USA Rutz and Gibson (2013), China FAN et al. (2009).

Despite impressive track records, physical models have several problems. The main disadvantage is their computational complexity since they require the numerical solution of partial derivative equations. Another challenge is the deterministic nature of their forecasts. These algorithms provide forecast values but struggle with delivering a level of confidence. It is possible to solve this issue with the Mont-Carlo simulation Chapman (2012); Berrocal et al. (2010)

, but it significantly increases computational complexity. Another challenge for this kind of models is anthropogenic factors, which are extremely difficult to estimate. There are some approaches with an additional prior assumption about anthropogenic factor behaviour 

Khalifa et al. (2016), but still, they cannot deal with stochastic effects and increase already significant computational complexity.

Another big group of techniques uses machine learning and statistical approaches to road conditions forecast. Even a simple linear regression allows to get reasonable forecasting accuracy; however, usually, people use these methods as part of more complex solutions 

Diefenderfer et al. (2003); YANG et al. (2010); Liao et al. (2009). Using more sophisticated machine learning algorithms like deep neural networks allows getting even better forecast accuracy Zaytar and El Amrani (2016); Gensler et al. (2016). However, this family of methods is not a silver bullet and has its problems. For example, a lack of physical assumptions in modeling leads to a lack of interpretability and a constant need for additional refitting to work in a new environment.

It seems that both physical and machine-learning-based techniques have their problems; this is why we decide to build a hybrid system that would combine advantages of both types of models. Another challenge is the quality of the data in such big systems of sensors; it is pretty standard that some devices become malfunctioning, and it is crucial to detect these broken sensors as soon as possible.

In this paper, we describe algorithmic techniques and software system, which allows achieving the stated goal. To build an intelligence system for analyzing RWIS data, we create a software system that takes the data from the sensors, validate if this data correct. For the validated data, a forecasting model provides forecast of road conditions, and these predictions are used to decide on further maintenance actions. We concentrate on the correction of weather forecasting using machine learning and anomaly (outlier) detection. Also, we briefly describe the implementation of the software system.

In section 2

, we discuss an approach for weather forecasting. We propose an algorithm that combines classical energy balance based model and correction of residuals with Gradient Boosting on Decision Trees. In the section 

3 we present an approach for detecting broken RWIS sensors. In section 4, we demonstrate achieved performance on real-world data collected from RWIS. And finally, in section 5, we discuss some technical details about software system implementation.

2 Road Weather Condition Forecasting

In this section, we present a new approach for road weather condition forecasting based on a combination of an energy balance model and machine learning. Both of them have their pros and cons. So a combination of these techniques allows increasing the accuracy of forecasting.

2.1 METRo

We choose METRo (Model of the Environment and Temperature of Road) as a primary weather forecasting model Crevier and Delage (2001). This approach already demonstrated great performance in various cases around the globe. Initially, this model was tested on Canadian roads; climate similarity between Canada and Russia makes this model a good candidate for the final approach.

The core idea behind the model is to decompose temperature weave in several parts

here is an absorbed incoming radiation flux, is the absorbed incoming infrared radiation flux, is an emitted flux, is a turbulence flux, is the latent heat flux, is a water phase changing flux, finally is an anthropogenetic flux.

We skip the detailed explanation of calculating these parts and coefficients selection, see the original paper for details Crevier and Delage (2001). For us, the anthropogenic part is the most interesting. A partial derivative equation cannot model this component because it is highly non-deterministic and so it introduces additional forecasting error. However, we can fix the error produced by this factor by using a machine learning algorithm.

2.2 Forecast improvement with gradient boosting

To correct the METRo forecast, we predict the difference between its result and the real values of road parameters. Here we illustrate this approach using four parameters predicted by the METRo model: air, road, and under road temperatures and humidity.

Let be one of the target variables at time , be the value predicted by the METRo model. We build an approximation of the difference between the real value and predictions .

We construct an approximation function , where

is a feature vector that represents road condition at time

. These features can be grouped into three classes:

  1. Historical features collected from Road Weather Information Systems. They include information about air, road, and underground temperatures, etc.

  2. Information about year season and time of the day. Since these features have a cyclic nature, we encode them by using trigonometric functions. Number of days since the beginning of the year produces two values and or and in case of a leap year. Hour of the day is transformed into pair and .

  3. Previous predictions from METRo equations.

We build an approximation function

by minimizing a specified loss function

, which characterizes forecast accuracy:

To find this optimal , we use the Gradient Boosting algorithm Friedman (2002). Its main idea is to build a sequence of regression models, a combination of which provides a good approximation. At step , the approximation has the form:

where is a regression model with weight . On step we solve the optimization subproblem to get the model :

To get we solve the subproblem:

To find optimal value, we solve the following optimization problem by the linear search:

As a loss function we use the Mean Absolute Error:

For constructed the final prediction is:

We construct 12 different regression models to predict air, road, underground temperatures, and humidity for the forecast horizons of 1, 2, and 3 hours.

3 Broken Sensors Detection

Accuracy of road condition forecasting depends on the quality of the data. It is crucial to detect malfunction sensors as soon as possible. Wrong data could lead either to conducting maintenance actions for no reason or, even worse, to miss the dangerous road conditions.

Malfunctioning sensors generate abnormal data, and so we can detect broken sensors by detecting anomalies in data. By anomaly, we consider the observation that deviates from others so much that we could suspend that it came from another source Hawkins (1980). To find these values, we build an anomaly detector, i.e., the function such that:

To construct the anomaly detector we

  1. predict a future value of the target variable,

  2. compare it with the actual value of the target variable.

If the difference

is big, this could mean that something drastically has changed, and this could be a symptom of a broken sensor. The anomaly detection function takes the form


Accurate selection of threshold is very important: we have to reliably distinguish between cases of just random fluctuations and anomalies due to malfunctioning sensors.

Usually, the value of is selected based on a holdout set or using the cross-validation procedure Friedman et al. (2001). However, for that we need labeled data. Since broken sensors are not frequent events, even such a significant amount of data like we have does not contain enough examples of anomalies. Moreover, labeling is a tedious task. Therefore, we propose to use artificially generated anomalies to select the threshold. We group all anomalies into three different categories:

  1. Single anomalies, which can result in some deviation. They are modeled with uniform distribution, see Fig.


  2. Short-term anomalies modeled as a Poisson noise with random parameters see Fig. 2.

  3. Long-term anomalies, which can be results of some significant dis-functioning in sensors or networks. They were modeled with a Gaussian noise, see Fig. 3.

To find threshold , we select a subset of data, add these artificial anomalies, and find the value of , which provides the optimal score:


where recall is the fraction of correctly identified anomalies, while precision is the fraction of anomalies we are able to find.

Figure 1: Single Anomaly
Figure 2: Short Term Anomaly
Figure 3: Long Term Anomaly

4 Results

4.1 Forecasting Correction

This section discusses the experimental results of road condition forecasting based on a combination of the METRo model and gradient boosting residual correction.

We collected data for seven years from 2012 till 2019 from 120 RWIS, located in different regions of Russia. This data was split into two parts. We fit the model based on data for the period 2012 – 2017 years. We also split data based on different RWIS locations. So, in the end, we have the test data from a later period of time, and from RWIS that were not used while building a model. We measured the Mean Average Error between the predicted value and the real one.

We compare our results with and without additional residual corrections. Example of prediction are presented in Fig. 4. Table 1 demonstrates that additional machine learning post-processing allows for increasing the accuracy of the final forecast.

Value Model 1 hour 2 hours 3 hours
Air Temperature °C METRo with anomalies 0.69 1.01 1.25
METRo only 0.63 0.97 1.18
METRo + Correction 0.53 0.78 0.93
Road Temperature °C METRo with anomalies 0.93 1.69 2.8
METRo only 0.84 1.66 2.41
METRo + Correction 0.48 0.89 1.28
Underground Temperature °C METRo with anomalies 1.45 1.7 1.94
METRo only 1.39 1.62 1.81
METRo + Correction 1.16 1.48 1.79
Table 1: Forecasting Improvements
Figure 4: Road Temperature Forecasting Example

4.2 Anomaly Detection

This section discusses experimental results of predicting broken sensors of RWIS. Let us consider experimental settings, metrics and final accuracy indicators.

We select 59 RWIS stations from various regions of the Russian Federation. We use data from 50 stations for training models and data from 9 stations for testing the quality of the resulting model. The training set was split into two parts. Data from 35 RWIS was used to build a model; data from another 15 RWIS was used to tune threshold value based on artificially generated anomalies.

We labeled data (normal/anomaly) from the 9 test stations manually. Final results were evaluated by using score.

We compare our approach with other anomaly detection techniques like Elliptic Envelope Butler et al. (1993), Isolation Forrest Liu et al. (2008), OneClassSVM with Gaussian kernel Schölkopf et al. (2000). We also test different regression algorithms to construct approximation

beside gradient boosting over regression trees, specifically ridge regression 

Marquardt and Snee (1975)

and multi-layer perceptron 

Murtagh (1991). Results of the comparison are presented in Table 2. We can see that the proposed approach based on gradient boosting outperforms all other algorithms in terms of the score, see formula 2. Table 1 demonstrates that if before making predictions with METRo model we remove anomalous data, we can significantly improve forecasting accuracy. Note that when detecting anomalies we did not use METRo model for estimating in formula 1.

Algorithm LOF Ell.Env OCSVM IForest Ridge MLP Boosting
Recall 0.513 0.719 0.904 0.395 0.668 0.637 0.753
Precision 0.502 0.482 0.130 0.252 0.758 0.738 0.797
-score 0.507 0.577 0.227 0.308 0.710 0.684 0.774
Table 2: Anomaly Detection Results

5 Implementation

Initially, company MinMax94111 has already installed a system for road condition forecasting, which consists of the METRo module and decision-making module connected to the MongoDB. We developed a system that could be easily added to this existed infrastructure.

To do this, we developed two web services based on python library Flask and put them into a docker container. They communicate with the outer world by HTTP requests.

The dataflow is presented in Fig. 5. So the whole work process can be descrived as follows: data from RWIS goes into the database, then the data is sent to the Anomaly Detection Module. The module generates labels (normal/anomaly) for each observation. If there are many anomalies, we don’t use information from these sensors before they would be checked and fixed. Information about which observations are anomalous is saved in the database.

If the data is normal we send it to the METRo module, which builds predictions. The results are sent to the Residuals Correction module. Results of this module are sent back to the database, and finally, they are passed into the decision-making module, which decides if the road needs maintenance or not.

Models for Anomaly Detection and Residuals Corrections are constructed in advance. We collect historical data in CSV format, as described in section 4. Then we use the lightgbm library Ke et al. (2017) to build these predictive models. The whole process takes around 30 minutes on a desktop computer with the Intel Core i7 processor and 32Gb RAM.

Figure 5: Data Flow

6 Conclusion

We proposed a novel approach to improve road surface condition forecasting. It allows for combining the advantages of both energy-balanced and machine learning-based models. Numerical results demonstrate that despite the very impressive accuracy of the METRo model, it is still possible to improve accuracy by correcting residuals of predictions. We describe details of the implementation of these algorithms as a part of the software system for road condition forecasting.


  • Y. E. Abdalla, M. Iqbal, and M. Shehata (2017) Black ice detection system using kinect. In 2017 IEEE 30th Canadian Conference on Electrical and Computer Engineering (CCECE), pp. 1–4. Cited by: §1.
  • E. S. Barber (1957) Calculation of maximum pavement temperatures from weather reports. Highway Research Board Bulletin (168). Cited by: §1.
  • V. J. Berrocal, A. E. Raftery, T. Gneiting, and R. C. Steed (2010) Probabilistic weather forecasting for winter road maintenance. Journal of the American Statistical Association 105 (490), pp. 522–537. Cited by: §1.
  • R. Butler, P. Davies, and M. Jhun (1993) Asymptotics for the minimum covariance determinant estimator. The Annals of Statistics, pp. 1385–1400. Cited by: §4.2.
  • L. Chapman (2012) Probabilistic road weather forecasting. In Proceedings of the Standing International Road Weather Conference (SIRWEC’12), Cited by: §1.
  • M. Chunlei and L. Changyou (2009) Summer road temperature disaster forecast of expressway in beijing [j]. Journal of Institute of Disaster-Prevention Science and Technology 3. Cited by: §1.
  • L. Crevier and Y. Delage (2001) METRo: a new model for road-condition forecasting in canada. Journal of applied meteorology 40 (11), pp. 2026–2037. Cited by: §1, §2.1, §2.1.
  • Y. Dai, X. Zeng, R. E. Dickinson, I. Baker, G. B. Bonan, M. G. Bosilovich, A. S. Denning, P. A. Dirmeyer, P. R. Houser, G. Niu, et al. (2003) The common land model. Bulletin of the American Meteorological Society 84 (8), pp. 1013–1024. Cited by: §1.
  • B. K. Diefenderfer, I. L. Al-Qadi, S. D. Reubush, and T. E. Freeman (2003) Development and validation of a model to predict pavement temperature profile. In TRB 2003 Annual Meeting, pp. 1–21. Cited by: §1.
  • S. FAN, M. CHEN, J. ZHONG, and Z. ZHENG (2009) Performance tests and evaluations of beijing local high-resolution rapid update cycle system [j]. Torrential Rain and Disasters 2. Cited by: §1.
  • T. Feng and S. Feng (2012) A numerical model for predicting road surface temperature in the highway. Procedia Engineering 37, pp. 137–142. Cited by: §1.
  • J. H. Friedman (2002) Stochastic gradient boosting. Computational statistics & data analysis 38 (4), pp. 367–378. Cited by: §2.2.
  • J. Friedman, T. Hastie, and R. Tibshirani (2001) The elements of statistical learning. Springer series in statistics New York. Cited by: §3.
  • A. Gensler, J. Henze, B. Sick, and N. Raabe (2016) Deep learning for solar power forecasting—an approach using autoencoder and lstm neural networks. In 2016 IEEE international conference on systems, man, and cybernetics (SMC), pp. 002858–002865. Cited by: §1.
  • D. Gregoris, S. Yu, and F. Teti (2004) Multispectral imaging of ice. In Canadian Conference on Electrical and Computer Engineering 2004 (IEEE Cat. No. 04CH37513), Vol. 4, pp. 2051–2056. Cited by: §1.
  • D. M. Hawkins (1980) Identification of outliers. Vol. 11, Springer. Cited by: §3.
  • P. Jonsson, J. Casselgren, and B. Thörnberg (2014) Road surface status classification using spectral analysis of nir camera images. IEEE Sensors Journal 15 (3), pp. 1641–1656. Cited by: §1.
  • G. Ke, Q. Meng, T. Finley, T. Wang, W. Chen, W. Ma, Q. Ye, and T. Liu (2017) Lightgbm: a highly efficient gradient boosting decision tree. In Advances in neural information processing systems, pp. 3146–3154. Cited by: §5.
  • A. Khalifa, M. Marchetti, L. Bouilloud, E. Martin, M. Bues, and K. Chancibault (2016) Accounting for anthropic energy flux of traffic in winter urban road surface temperature simulations with the teb model. Geoscientific Model Development 9 (2), pp. pp–547. Cited by: §1.
  • C. Liao, B. Chen, S. Chen, and W. Huang (2009) Temperature prediction model for flexible pavements in taiwan. In Performance Modeling and Evaluation of Pavement Systems and Materials: Selected Papers from the 2009 GeoHunan International Conference, pp. 82–89. Cited by: §1.
  • F. T. Liu, K. M. Ting, and Z. Zhou (2008) Isolation forest. In 2008 Eighth IEEE International Conference on Data Mining, pp. 413–422. Cited by: §4.2.
  • D. W. Marquardt and R. D. Snee (1975) Ridge regression in practice. The American Statistician 29 (1), pp. 3–20. Cited by: §4.2.
  • F. Murtagh (1991) Multilayer perceptrons for classification and regression. Neurocomputing 2 (5-6), pp. 183–197. Cited by: §4.2.
  • S. Roychowdhury, M. Zhao, A. Wallin, N. Ohlsson, and M. Jonasson (2018) Machine learning models for road surface and friction estimation using front-camera images. In 2018 International Joint Conference on Neural Networks (IJCNN), pp. 1–8. Cited by: §1.
  • J. J. Rutz and C. V. Gibson (2013) Integration of a road surface model into nws operations. Bulletin of the American Meteorological Society 94 (10), pp. 1495–1500. Cited by: §1.
  • B. H. Sass (1997) A numerical forecasting system for the prediction of slippery roads. Journal of Applied Meteorology 36 (6), pp. 801–817. Cited by: §1.
  • B. Schölkopf, A. J. Smola, R. C. Williamson, and P. L. Bartlett (2000) New support vector algorithms. Neural computation 12 (5), pp. 1207–1245. Cited by: §4.2.
  • Z. Sokol, P. Zacharov, P. Sedlák, J. Hošek, V. Bližňák, Z. Chládová, P. Pešice, and M. Škuthan (2014) First experience with the application of the metro model in the czech republic. Atmospheric research 143, pp. 1–16. Cited by: §1.
  • H. Tabatabai and M. Aljuboori (2017) A novel concrete-based sensor for detection of ice and water on roads and bridges. Sensors 17 (12), pp. 2912. Cited by: §1.
  • Q. YANG, J. PENG, and Y. LIU (2010) The atmospheric physical quantity and radar echo characteristic of a strong convective weather [j]. Journal of Arid Meteorology 3. Cited by: §1.
  • M. A. Zaytar and C. El Amrani (2016)

    Sequence to sequence weather forecasting with long short-term memory recurrent neural networks

    International Journal of Computer Applications 143 (11), pp. 7–11. Cited by: §1.
  • J. Zhao, H. Wu, and L. Chen (2017) Road surface state recognition based on svm optimization and image segmentation processing. Journal of Advanced Transportation 2017. Cited by: §1.