Road Roughness Level Identification Based on BiGRU Network

A new method of road roughness level identification based on the bidirectional gated recurrent unit (BiGRU) network and vehicle vibration responses is proposed, which is conducive to solving the problems of intelligent chassis technology such as suspension control. The vehicle vibration response data set is constructed through the ride comfort simulation experiment of the two-degree-of-freedom vehicle vibration model. The mapping relationship between the road roughness level and the vehicle vibration responses is determined, and the road roughness level identification model is established. The Adam algorithm and mini-batch gradient descent are utilized to improve the accuracy and increase the speed of the model training process. In order to verify the feasibility and practicability of the model, vehicle tests are carried out on asphalt and brick roads. The results show that the accuracy of the road roughness level identification model based on the BiGRU network reaches 95.83%, and the recognition result is reliable. Moreover, the experimental road level can be successfully identified through the road roughness level identification model, which has high engineering application value.


I. INTRODUCTION
When a car is driving, the road is the most important source of excitation for vehicle vibration. Accurate road excitation information is of great significance to vehicle dynamics control, especially suspension control. It is impossible to use the same set of suspension control parameters to meet the requirements of riding comfort and driving safety under roads with different roughness levels. Therefore, road roughness level information can provide a direct basis for parameter adjustment in suspension control. At present, the commonly used methods for obtaining road information are the measurement methods and the reverse analysis method.
Measurement methods include direct measurement method and non-contact measurement method. The direct measurement method refers to the use of a road roughness measuring instrument to directly measure the road roughness [1]. However, the direct measurement method cannot achieve real-time on-board measurement, so it is currently less applied. Non-contact measurement method refers to the use of laser radar, infrared, vehicle cameras and other equipment to directly extract road information to identify different roads. Ž. Vidas et al. [2] used image analysis and laser scanning methods to identify road types. M. A. Bekhti et al. [3] extracted the road features by collecting images of the road ahead. Established the relationship between the road and the vibration of the vehicle, and predicted the vibration of the vehicle passing the road ahead. Q. Liu et al. [4] established a road recognition model based on convolutional neural networks, which can accurately identify a variety of roads. S. Wang et al. [5] used image feature data fusion methods to identify non-urban roads, and used BP neural Network for classification. H. Xu [6] used millimeter-wave radar to study the radar scattering area and time-frequency map to identify the road. Although the non-contact measurement method obtains a wide range of roads, it is costly and sensitive to weather and other conditions.
The reverse analysis method refers to the installation of acceleration sensors and displacement sensors on the driving vehicle, and the reverse identification of the roads by obtaining the vehicle vibration response of different roads. H. M. Ngwangwa et al. [7]- [8] collected vehicle vibration response information and used neural network methods to identify Belgian roads. T. H. Nguyen et al. [9] detected the state of the road surfaces based on vehicle response and random forest methods, and then perform roads classification and identification. C. Lin et al. [10] established a road roughness prediction model based on NARX neural network and used vehicle responses to predict road roughness. J. Li et al. [11]- [12] predicted road roughness based on the reverse analysis of vehicle vibration response. By comparing four typical neural networks, namely BP neural network, RBF neural network, wavelet neural network and NARX neural network, it shows that NARX neural network has the best effect in predicting road roughness. Y. Wang et al. [13] used the intelligent tire road recognition algorithm based on support vector machine to study the road level recognition. The reverse analysis method indirectly measures the road roughness. Although the real-time performance is not as good as that of the measurement method, it is not easily affected by factors such as weather, light, dust, etc., and the cost is low and easy to implement.
With the gradual popularization of artificial intelligence, deep learning has become a research hotspot in recent years. Its advantage lies in the non-linear mapping of the data feature layer and the ability to automatically construct deep features. In addition, there is no need to manually select feature parameters, and it has good generalization ability. At present, deep learning has made certain developments in the field of intelligent transportation systems and vehicles, such as traffic flow prediction [14], environment perception [15]- [16] and driving behavior recognition [17]. L. Cheng et al. [18] proposed a convolutional neural network model with an improved activation function to classify road conditions. G. Liang et al. [19]identified the road roughness level in real time based on the LSTM network and time-series wheel center acceleration. The results show that the algorithm has high accuracy in identifying road roughness. Inspired by deep learning, this paper proposes to use BiGRU network to conduct reverse analysis of vehicle vibration responses and identify the road roughness level. Firstly, the road roughness level identification model is designed. Secondly, through the two-degree-of-freedom vehicle vibration model ride comfort simulation experiment, the vehicle vibration response signals of different levels of roads are obtained. Then, the vehicle vibration response data set is used to train and test the road roughness level identification model. Finally, in order to verify the feasibility and practicability of the model, vehicle tests are carried out on typical roads, and the road roughness level identification model is used to identify the experimental road.

II. ROAD ROUGHNESS LEVEL IDENTIFICATION MODEL
This paper uses the vehicle vibration responses to reversely recognize the road level, so a road roughness level identification model based on the BiGRU network is established. The recognition process is shown in Fig. 1.

A. THE STRUCTURE OF THE ROAD ROUGHNESS LEVEL IDENTIFICATION MODEL
The road roughness level identification model is mainly composed of an input layer, a BiGRU layer, a fully connected layer, and an output layer. The structure of the identification mode is shown in Fig. 2. First, the vehicle vibration response signals are the input of the model, which are processed by the BiGRU network to extract their time series structural features. Then, the output vector of the BiGRU network is used as the input of the fully connected layer for classification. Finally, the output layer uses the Softmax function to output the road roughness levels, which are the recognition rates of the class A road, the class B road, the class C road, and the class D road.

B. INPUT LAYER
The input of the road roughness level identification model is: (1) where represents the model input vector at time; is the body acceleration; is the wheel acceleration. Each group of sample data is determined as 100 moments according to the size of the sliding window.

C. BIGRU LAYER
Long short-term memory network (LSTM) [20] adjusts the flow of information by introducing a gating mechanism to remember long-term timing information, and solves the problems of gradient disappearance and gradient explosion in traditional recurrent neural networks. However, the LSTM network model has a complex structure and a long training time. In 2014, K. Cho et al. [21] proposed GRU to optimize the structure of LSTM, and its structure is shown in Fig. 3. GRU is a variant of LSTM network. It retains all the advantages of LSTM. The performance of the two is equal, but the structure of GRU network is simpler. It replaces the input gate and forget gate of LSTM with an update gate, and retains the original reset gate. In addition, The input of the activation function is adjusted by the weight parameter to retain useful information and discard irrelevant information, which makes the GRU has a strong memory ability [22]. GRU is unmatched by other neural networks in dealing with issues that are highly related to timing. The GRU network update weight parameter formula is as follows: The function of the update gate is to determine the amount of historical moment information added to the current moment, which is conducive to the capture of long-term dependencies in time series data. The amount of information retained at the previous moment is proportional to the value of the update gate. ( where is the update gate of the GRU network ; is the input vector of the GRU network at time ; is the output of the GRU network at time ; and are the weight matrix of the update gate, is the deviation parameter of the update gate; is the sigmoid function. (2) Calculation of reset gate The function of the reset gate is to forget irrelevant information at the previous moment, which is conducive to the capture of short-term dependencies in time series data. The amount of information ignored at the previous moment is inversely proportional to the value of the reset gate.
where is the reset gate of the GRU network; and are the weight matrix of the reset gate; is the deviation parameter of the reset gate.
(3) Reset the current memory content Using the reset gate to reset the memory information, and using the activation function to limit the current memory content to (-1,1).
where is the memory content of the GRU network; and are the weight matrix; is the deviation parameter; is the element-wise multiplication.
(4) Calculate the output of the GRU network The output content of the GRU network is composed of the output information at the previous moment and the current memory content, and the update gate is used to control the inflow of these two types of information.
(5) where is the output of the GRU network at time .
The traditional GRU network transmits information in one direction along the time series, and can only obtain historical moment information, ignoring future moment information. Therefore, the BiGRU bidirectional network is adopted, and the number of GRU network units is 200, which fully considers the historical time and future time information of the vehicle vibration response sample data, and more accurately extracts road features of different levels. The structure of the BiGRU network is shown in Fig. 4. Here, GRU 1 represents a forward GRU, and GRU 2 represents a reverse GRU. The hidden layer state of BiGRU at time is jointly determined by the forward hidden layer output and the reverse hidden layer output .

D. FULLY CONNECTER LAYER
The fully connected neural network does not require the dimensions of the input data, and has high reliability and low latency. It is the simplest and most basic neural network. Therefore, the fully connected neural network is used to synthesize the feature information extracted by the BiGRU network to classify the road roughness level. The structure of the fully connected neural network is shown in Fig. 5. The output of the BiGRU network is used as the input of the fully connected neural network, and the number of output neurons is the same as the number of road level categories.

E. OUTPUT LAYER
In order to generate the recognition rate of each level of road, the output layer selects the Softmax function. The Softmax function can be continuously and differentiable, which can ensure that the neural network always maintains a continuous state of convergence, avoiding the occurrence of local optimal problems, and is suitable for dealing with multiclassification problems. The output vector of the fully connected layer is input into the Softmax function and mapped to the range of (0,1) to generate the probability of the road level categories, namely, class A road, class B road, class C road, and class D road. The output result is a 4dimensional column vector. The Softmax function is shown in (6).
where is the output vector of the fully connected layer, and is the recognition rate.

III. ACQUISITION OF VEHICLE VIBRATION RESPONSES
Deep learning requires a large amount of data for network training, and it is difficult to obtain a large amount of complete data for vehicle measurement. Therefore, the filtered white noise is used to generate a large number of different road roughness signals, and the network is trained by the vertical acceleration responses of the body and wheels obtained from the simulation of the suspension model.

A. RANDOM INPUT ROAD MODEL
Generally, the change of the height of the road surface relative to the reference plane and the road direction are called the road roughness function [23]. The road roughness function is a random function. It is often considered that its mean value is zero and obeys a normal distribution. In addition, the power spectrum density is usually used to express its characteristics. The expression is: where is the spatial frequency(m -1 ); is the frequency index, usually ; is the reference spatial frequency, the value is 0.1m -1 ; is the road roughness coefficient shown in Table 1. [24] In this paper, the filtered white noise method is used to generate the road time domain model. The equation of road surface input is: (8) where is low cut-off frequency, the value is approximately 0.01 Hz; is the road roughness coefficient; is a filtered white noise.

B. TWO-DEGREE-OF-FREEDOM VEHICLE VIBRATION MODEL
The two-degree-of-freedom vehicle vibration model has a simple structure and is widely used in studying the vertical dynamics of the suspension. The structure of the model is shown in Fig. 6: Here, are the body mass, wheel mass, suspension stiffness, suspension damping, tire stiffness, body vertical displacement, wheel vertical displacement, and road excitation.
According to Newton's second law, the dynamic differential equation is: The state vector, output vector and state space equation are as follows: where is white noise signal input, and the individual parameter matrices are as follows: ; ;

C. RANDOM INPUT ROAD MODEL SIMULATION OF A TWO-DEGREE-OF-FREEDOM VEHICLE VIBRATION MODEL AND RANDOM INPUT ROAD MODEL
Since vehicles running on different levels of roads will produce different vibration responses, the two-degree-offreedom vehicle vibration model and random road model built above are used for simulation based on MATLAB/Simulink. According to the difference of the road roughness coefficient, the road can be divided into 8 levels from A to H. [25] With the development of road construction in China, the domestic road levels are within the range of A, B, and C of the national standard. According to the actual road conditions of the driving vehicles, four types of roads, class A, B, C, and D, are selected as input incentives in this study. The classification of different types of roads is shown in Table 1. The road roughness classification standard is shown in Table 2.  This paper refers to the vehicle parameters of the Santana 3000, as shown in Table 3. The ride comfort simulation experiment is carried out on four types of roads, class A, B, C, and D. The speed is 20km/h, the simulation time is 60s, and the sampling frequency is 100Hz. Fig. 7 show the vehicle responses on class B road. (b) Wheel acceleration Table 4 shows the root-mean-square values of vehicle vibration response signals under different grades of roads. It can be seen from the table that as the road roughness level increases, the root-mean-square values of body acceleration and wheel acceleration increases, and the vibration amplitude increases.

A. VEHICLE VIBRATION RESPONSE DATA SET
In the reverse identification of the road roughness level based on the vehicle responses, if features are extracted directly from the vehicle response signals, the resulting features will be too large and inconvenient to calculate. Therefore, this paper uses the sliding window method, selects the sliding window as 1s, and intercepts the vehicle response data as an equal length sequence of 100. In order to preserve the continuity of the timing signal, there is a 50% overlap between the two time periods. The constructed vehicle vibration response data set is randomly divided into two groups, 80% is selected as the training set and 20% as the test set. The former is used for model training and the latter is used for model testing. The structure of the vehicle vibration response data set is shown in Table 5.

B. EXPERIMENTS ON THE IDENTIFICATION OF ROAD ROUGHNESS LEVEL
The software environment for this experiment is: Python language and Keras deep learning framework; hardware environment: Intel Core i5-4210U processor and graphics card AMD Radeon HD 8500M. Before the experiment, in order to improve the convergence speed and recognition accuracy of the road roughness level identification model, the vehicle vibration response data set is normalized, and the expression is shown in (14). (14) where and are the maximum and minimum values of scaling the original data; and are the maximum and minimum values of the vehicle response signals; is the original data; is the normalized data. In addition, the Adam (adaptive moment estimation) optimizer is selected to optimize the model parameters. The Adam optimizer replaces the traditional stochastic gradient descent. It can update the network weight value based on the training data to realize the error back propagation, so that the loss function values converge at the fastest speed and reach the optimum. In order to further improve the efficiency of the algorithm and make the objective function converge smoothly, the mini-batch gradient descent method is adopted, and only a part of the mini-batch samples are selected for each training. The loss function selects the cross-entropy loss function, and its expression is: (15) where is the true probability of a certain sample sequence corresponding to the road roughness level category; is the predicted probability of a certain sample sequence corresponding to the road roughness level category; is the batch size, and the value is 32 during the experiment.
In the process of training the model, the recognition accuracy and loss function are important indicators to evaluate the recognition effect of the model. The higher the recognition accuracy and the smaller the loss function, the better the model recognition effect and the higher the robustness. Fig. 8 shows the training process of the model.  It can be observed from Fig. 8(a) that the loss function of the model has been showing a downward trend, and the decline speed is relatively fast. As the number of iterations increases, the loss function value approaches 0. Moreover, it can be observed from Fig. 8(b) that the accuracy rate of the model shows an upward trend as a whole, and the degree of shock is small. It only takes less training time to reach a higher accuracy, and the accuracy approaches 100%. This shows that the model has good training effects and high accuracy.
The algorithm model is trained to determine the mapping relationship between the road level and the vehicle vibration responses, and then the test set is used to evaluate and test it. Because the test set is completely separated from the model during the training process, the test results can evaluate the performance of the model. The test result of the road roughness level identification model is shown in Fig. 9.
The confusion matrix of the test result is shown in Fig. 10. It can be seen from Fig. 10 that the prediction category of the road level by the identification model is very close to the real category distribution, and the recognition errors are mainly concentrated on the class A road and the class B road. That's probably because the vehicle vibration response characteristics corresponding to the two levels of roads are similar, which makes the model confuse them. As a result, the road roughness level of a small part of the data is incorrectly identified, which is consistent with the actual situation.  Table 6 shows the recognition accuracy of the road roughness level identification model, and the overall recognition rate is 95.83%. Experiments have proved that the model can achieve accurate classification for different road roughness levels.

C. THE IMPACT OF SPEED ON THE IDENTIFICATION RESULT
When the vehicle is moving, the speed is not constant. The above only tests the road roughness level identification model for the vehicle vibration response signals of different levels of roads at a speed of 20 km/h. Therefore, it is necessary to compare and analyze the recognition effect of the road roughness level identification model at other speeds. A quarter-vehicle vibration model ride comfort simulation experiment is carried out on four types of roads, class A, B, C, and D, to obtain vehicle vibration response signals. In the experiment, the speeds select 20km/h, 30km/h, 40km/h, 50km/h, 60km/h, 70km/h, and 80 km/h, the simulation time is 10s, and the simulation frequency is 100 Hz. The data is sampled through a 1s sliding window to form a standardized data sample for testing the model, and the influence of speeds on the results of the road roughness level identification model is analyzed. The overall recognition accuracy of the model varies with the speeds, as shown in Fig. 11.

FIGURE 11. Trend of overall recognition accuracy with speeds
It can be seen from Fig. 11 that the overall recognition accuracy of the model has been decreasing during the process of changing the speed from 20km/h to 80km/h. The speed is within the range of 20km/h-40km/h, and the recognition accuracy is above 80%, indicating that the road roughness level identification model has a good recognition effect at this speed. However, when the speed is higher than 40km/h, the recognition accuracy is reduced and the recognition effect becomes worse. That's because the road roughness level identification model is trained on vehicle vibration response signals collected at a speed of 20km/h. When the speed changes greatly, the acquired characteristic signal varies greatly. At this point, if the model is tested again, the recognition effect will be poor. Therefore, in actual engineering applications, the vehicle should keep the speed in the range of 20km/h-40km/h, and the model has the best recognition effect on road roughness levels.

A. COLLECTION OF EXPERIMENTAL DATA
In order to verify the feasibility of the road roughness level identification model, vehicle tests are carried out. The experimental equipment used in this experiment includes the experimental vehicle Santana 3000, CT1005LC accelerometers, NI USB-4431 data acquisition instrument, and computer, as shown in Fig. 12.  The body accelerometer is installed at the metal chassis and at the center of body mass, and the wheel accelerometer is installed at the suspension arm of the right front wheel of the vehicle. The installation position is shown in Fig. 13. The experimental roads are asphalt road and brick road, as shown in Fig. 14. The experimental vehicle drives on the selected roads at a constant speed of 20km/h for 10s, and the sampling frequency is 100Hz. The accelerometers are used to collect the vehicle vibration electrical signals, and then the data acquisition card is used for signals conversion. Finally, the voltage signals are converted into digital signals and transmitted to the computer for storage.

B. PROCESSING OF EXPERIMENTAL DATA
In the experiment, there are unavoidable interference signals such as noise, so the experimental data is processed for noise reduction. In this paper, wavelet denoising is used to process vehicle response signals [26], as shown in Fig. 15 to 16. Its advantage is that after denoising the data, it can successfully retain the signal characteristics. Therefore, its performance is better than traditional noise reduction methods.

C. ANALYSIS OF RESULTS
The denoising signals are used to form standardized data samples using the sliding window method, and input them into the road roughness level identification model after normalization to classify and identify the experimental road level, as shown in Fig. 17. The recognition accuracy of the experimental roads is shown in Table 7. The level recognition accuracy of asphalt road is 89.47%, and the level recognition accuracy of brick road is slightly worse than that of asphalt road, which is 73.68%. The reason is that the bricks of some experimental road sections are loose and the road is not in good condition, which leads to poor ride comfort of the vehicle. Because of the increase of uncertain factors in the actual driving environment, the recognition accuracy of the model for the actual road roughness level under the vehicle experiment is lower than that of the simulation data, which is in line with the objective law. The results show that the road roughness level identification model based on the BiGRU network can still effectively identify actual roads in practical applications. It shows good anti-interference and effectiveness, and has high engineering application value.

VI. CONCLUSION
This paper proposes a method to identify the level of road roughness, which is to use the BiGRU network to conduct a reverse analysis of the vehicle vibration responses. The recognition rate of the road roughness level identification model on the vehicle vibration response data set constructed by the two-degree-of-freedom vehicle vibration model ride comfort simulation experiment is as high as 95.83%. In order to verify the feasibility and practicability of the model, vehicle tests are carried out on asphalt roads and brick roads, and the identification model successfully recognizes the roughness levels of the experimental roads.
In fact, the vehicle may drive on more severe and complex roads, and the simulation data of the vehicle dynamics model cannot fully reflect the vibration response of the vehicle on different roads. In the future, further researches should combine a large number of vehicle tests to build a more complete data set, so that the road condition involved in the road roughness level identification model is more abundant, and the error of the recognition result is reduced.