1 Introduction
2 Literature data retrieval method
3 Results
3.1 Road profile reconstruction/estimation for vehicles dynamics control
3.1.1 Model-based methods (observers/estimators)
3.1.2 Data-driven methods/machine-learning techniques
3.1.3 Transfer functions and other techniques
3.1.4 Summary of methods for road profile reconstruction/estimation
System name/by | Model-based approach | Additional | Suspension | Vehicle model | Main parameter | ||||
---|---|---|---|---|---|---|---|---|---|
P | SA | A | Q | H | F | ||||
[16] | KF | ✔ | ✔ | body position and acc, suspension def | |||||
[17] | improved KF | ✔ | ✔ | sprung acc, suspension def | |||||
[18] | augmented KF | ✔ | ✔ | ✔ | suspension dis, unsprung, sprung acc | ||||
[19] | modified KF | ✔ | ✔ | ✔ | ✔ | ✔ | vertical dis of the tire-road contact points, longitudinal acc | ||
SM, second-order SM | ✔ | ✔ | wheels and chassis | ||||||
[6] | SM | PD | ✔ | ✔ | chassis | ||||
[24] | higher-order SM | ✔ | ✔ | sprung mass dis and velocity | |||||
[25] | higher-order SM | Tyre | ✔ | random road profile, the longitudinal friction force, and the engine friction | |||||
[26] | SM + AKF | Tyre | ✔ | ✔ | spring def, wheel acc, tire road contact acc | ||||
[27] | Q-parametrization | ✔ | ✔ | sprung mass position | |||||
[28] | Q-parametrization | ✔ | ✔(1/5) | ||||||
[29] | Q-parametrization | ✔ | ✔ | ||||||
Algebraic estimator, state observer | ✔ | ✔ | sprung mass and unsprung mass vertical dis, suspension def | ||||||
[31] | H∞ observer | ✔ | ✔(1/5) | sprung acc, suspension def, unsprung mass motion | |||||
[32] | Jump-diffusion estimator | PD | ✔ | ✔ | wheel excitation |
System name/by | Machine learnings | Additional | Suspension | Vehicle model | Main parameter | ||||
---|---|---|---|---|---|---|---|---|---|
P | SA | A | Q | H | F | ||||
ANN (NARX) | PD | ✔ | ✔ | sprung, axle, body | |||||
[36] | ANN | ✔ | ✔ | wheels and chassis | |||||
[8] | ANN + wavelet DWT) | RE(IRI) | ✔ | ✔ | sprung mass | ||||
[37] | ANN + ADV | ✔ | ✔ | ✔ | unsprung mass | ||||
[38] | ANN + image processing + PCA | Terrain | ✔ | ✔ | wheel acc, speed | ||||
SVM+ PCA, FWT, FFT | |||||||||
DNNs classifier [42] | Deep NNs | ✔ | ✔ | sprung, unsprung, rattle space | |||||
PNN classifier [43] | PNN + WPT | ✔ | ✔ | sprung, unsprung, rattle space | |||||
ANFIS classifier [44] | ANFIS | ✔ | ✔ | sprung mass | |||||
[45] | ANFIS, RLS, GMDH | ✔ | ✔ | sprung, unsprung, rattle space | |||||
ANFIS+AKF [21] | ANFIS + Kalman filter | ✔ | ✔ | sprung mass | |||||
AKF-ASTO [22] | PNN + Kalman filter | ✔ | sprung, unsprung | ||||||
[46] | ANFIS + MOOP + NSGA-II | ✔ | ✔ | sprung mass | |||||
[2] | RF + WPT | ✔ | ✔ | ✔ | sprung, unsprung, speed | ||||
SIRCS [47] | RF + TF, decision procedure | ✔ | ✔ | unsprung mass | |||||
[48] | Independent Component Analysis | ✔ | ✔ | ✔ | ✔ | chassis, suspension | |||
[49] | Various MLs + TF | PD | ✔ | ✔ | axle or body, speed |
System name/by | TF and others | Suspension | Vehicle model | Main parameter | ||||
---|---|---|---|---|---|---|---|---|
P | SA | A | Q | H | F | |||
[50] | TF | ✔ | ✔ | axle or body | ||||
[52] | TF | ✔ | ✔ | unsprung mass acceleration | ||||
[54] | TF | ✔ | tyre pressure | |||||
[53] | TF + time span | ✔ | ✔ | axle or body | ||||
[55] | Cross-entropy | ✔ | ✔ | sprung and unsprung acc | ||||
[56] | Control-constraints | ✔ | ✔ | tire dynamics | ||||
[58] | Bayesian parameter | rear wheel acc, veh response, speed | ||||||
[59] | Microphone | ✔ | ✔ | tyre noise and axle acc | ||||
[57] | Modulating function technique | ✔ | ✔ | accelerometer, spring dis and orientation |
3.2 Pothole detection and roughness index estimation
3.2.1 Threshold-based methods
3.2.2 Signal processing
3.2.3 Machine learning techniques
3.2.4 Summary of methods for pothole detection and road roughness estimation
System name/by | Thresholds | Function | Approach | |||
---|---|---|---|---|---|---|
PD | RE | C | F | S | ||
Z-thresh, Z-diff, Stdev(z), G-zero | ✔ | ✔ | ||||
BusNet [64] | std of filtered Z-acc | ✔ | ✔ | |||
Bump Recorder [65] | Z-acc, bump index | ✔ | ✔ | |||
[66] | Z-acc | ✔ | Relative | ✔ | ||
Smart Pune [67] | Z-acc, skid, accident, braking | ✔ | ✔ | |||
[68] | Z-acc for severity levels | ✔ | ✔ | |||
[69] | Z-acc pattern | ✔ | ✔ | |||
Cyber-physical system [71] | Z-jerk | ✔ | ✔ | |||
[135] | 0.1 g threshold | ✔ | ✔ | |||
PoDAS [70] | Z-acc, ultrasonic | ✔ | ✔ |
System name/by | Signal processing | Function | Approach | Additional | |||||
---|---|---|---|---|---|---|---|---|---|
PD | RE | C | F | S | GPS | Data | Crowd | ||
high-energy events | ✔ | ✔ | ✔ | ✔ | |||||
Smart patrolling [80] | filter + DTW (adaptive) | ✔ | ✔ | ✔ | ✔ | ||||
Smart Probe Car [81] | anomaly index heuristic (adaptive AI) | ✔ | ✔ | ✔ | ✔ | ✔ | |||
[72] | Z-acc, Gaussian model | ✔ | ✔ | ||||||
[73] | Z-thresh, G-zero combined | ✔ | ✔ | ✔ | |||||
[74] | Fuzzy logic | ✔ | ✔ | ||||||
time-frequency analysis | ✔ | ✔ | |||||||
[77] | Greedy heuristic algorithm | ✔ | ✔ | ✔ | ✔ | ||||
[90] | Maximum Likelihood-based | ✔ | ✔ | ||||||
PSD + empirical formula | IRI | ✔ | |||||||
[84] | RMS acceleration | IRI | ✔ | ||||||
[85] | RMS acceleration | IRI | ✔ | ||||||
STAMPER [86] | filter + IRI | IRI | ✔ | ||||||
Filter + FFT | IRI | ✔ | |||||||
IPEM [89] | Inverse pseudo-excitation method | IRI | ✔ | ||||||
[60] | IRI-proxy | ✔ | IRI-proxy | ✔ | ✔ | ✔ | |||
SmartRoadSense | PSD + Linear Predictive Coding | Relative | ✔ | ✔ | ✔ | ✔ | |||
[93] | Correlation-Averaging Algorithm | ✔ | ✔ | ✔ | ✔ | ✔ | |||
RIF-transform, TWIT | ✔ | New | ✔ | ✔ | ✔ |
System name/by | Machine learning | Function | Approach | Additional | |||||
---|---|---|---|---|---|---|---|---|---|
PD | RE | C | F | S | GPS | Data | Crowd | ||
Pothole Patrol [102] | Clustering + training detector | ✔ | ✔ | ||||||
Z-peak method/ Clustering + training detector | ✔ | ✔ | |||||||
PRISM [106] | Z-peak method + training detector | ✔ | ✔ | ✔ | |||||
[107] | supervised ML | ✔ | ✔ | ||||||
P3 [108] | Clustering + training detector | ✔ | ✔ | ✔ | |||||
PADS [111] | K-mean clustering | ✔ | ✔ | ||||||
BDS [112] | K-means clustering + RF | ✔ | ✔ | ||||||
[113] | Naive Bayes algorithm + K-nearest-neighbor | Relative | ✔ | ||||||
[114] | SVM + unsupervised ML | ✔ | Relative | ✔ | |||||
D&Sense [115] | SVM + DTW | ✔ | ✔ | ✔ | |||||
SVM, SVM + SWT | ✔ | ✔ | |||||||
[119] | SVM + FFT, cross validation | ✔ | ✔ | ✔ | |||||
[120] | SVM + WPD, feature selection | ✔ | ✔ | ||||||
Wolverine [121] | SVM + K-means clustering | ✔ | ✔ | ||||||
SVM + data filter, sliding window, greedy forward feature selection | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
VRNI [124] | SVM + filter, moving window, feature extraction | ✔ | ✔ | ||||||
various algorithms comparison | ✔ | Relative | ✔ | ||||||
various algorithms comparison | ✔ | Relative | ✔ | ✔ | ✔ | ||||
various algorithms comparison | ✔ | ✔ | ✔ | ||||||
[131] | various algorithms comparison | ✔ | ✔ | ||||||
[132] | various algorithms comparison | ✔ | ✔ | ✔ | |||||
iGMM clustering | ✔ | IRI | ✔ | ✔ | ✔ | ||||
[133] | SVM + WPD, Random forest | IRI | ✔ | ✔ | ✔ | ✔ | |||
[134] | ANN + feature selection | IRI | ✔ | ✔ | |||||
[7] | Fuzzy classifier | ✔ | Relative | ✔ | ✔ | ✔ |
4 Discussion, conclusion and outlook
Response-based methods | Advantages | Disadvantages |
---|---|---|
1. Road profile reconstruction | ||
1.1. Model-based approach | can deal with unforeseen situations that are not included in the data-driven training datasets. | - an accurate model is required - not all required response information is measurable - often only time domains |
1.2 Kalman filter/estimator | convenient, fast and simple | - a priori information about model errors - the tuning of the covariance matrix is usually done heuristically |
1.1.2 Observer | can include tyre dynamics | generally required knowledge of many vehicle parameters |
i. Sliding mode observer | - convergence of the errors | rather complicated for practical application |
ii. Q-parameterisation | - less computing cost and complexity for real-time implementation - better performance than KF | - the problem of extensive modelling - the sensitivity to speed variation in almost methods |
iii. Algebraic estimator iv. H∞ observer v. State observer vi. Jump-diffusion | - can work effectively in the framework of the active suspension system - overcome the drawbacks of KF | |
1.2 Data-driven approach (MLs) | - can use fewer parameters (e.g. only sprung or unsprung mass) - various ML techniques to be applied - does not require excessive system characterisation - required fewer analytical skills than parametric model | - impractical for an online road estimation due to computationally costly training datasets (e.g. 4655 s are required to train the ANN-based moded) |
1.2.1 Only MLs (e.g. ANN) | - able to detect potholes | - spatial frequency only - many vehicle parameters - not high accuracy and sensitivity to speed variation |
1.2.2 Combined MLs and others | - higher accuracy and performance - feasible for speed independent classifiers | |
i. with feature selection (e.g. WPT, FFT, PCA) | - can combine both time and frequency domains - able to classify terrain conditions | further complex modelling and understanding vehicle dynamics control mechanism |
ii. with KF | determination of the process noise variance before estimation | |
iii. with TF | - speed independent classifier with less training effort - able to detect potholes | |
1.3 Transfer function and others | required fewer parameters than the model-based approach | |
1.3.1 The transfer function (TF) | - easy, convenient and fast - frequency domain only | - not directly yield the expression of the excitation - limited to a constant speed (can be eliminated when combined TF with small time span) |
1.3.2 Others | ||
i. Cross-entropy | using only sprung and unsprung mass accelerations | too much computing time |
ii. Control-constraints | non-linear and complex models | remains costly |
iii. Bayesian parameter | low cost regardless of vehicle models | a priori information of the road is required |
iv. Microphone | feasible for the combination of techniques | the susceptibility to signal contaminations |
v. Modulating function | fulfil the real-time and noise suppression requirements | particularly for off-road vehicles |
2. Road roughness estimation and pothole detection | ||
2.1 Threshold-based methods | ||
2.1.1 Thresholds only | simplest methods (for PD purpose) with fix thresholds | threshold value varies with different types of smartphones, roads, vehicles, the condition of vehicles. |
2.1.2 Combined thresholds and others | overcome drawbacks of the threshold-based methods | |
i. with signal processing approaches | - able to detect the severity of potholes, differentiate potholes and humps | |
ii. with MLs to train detectors | - clustering of different road anomalies with simple algorithms | training datasets required which are not able to collect in some cases |
2.2 Signal processing | - able include both PD and RE in the same system - deal with GPS errors, data aggregation, device installation and orientation, crowdsourcing - higher performance and accuracy - suitable for data aggregation regardless of different configuration (e.g. velocity, orientation, suspension) | complicated analysis |
2.2.1 PSD and RMS acceleration | calculate IRI value | not able to detect a pothole |
2.2.2 RIF transformation | - feasible for connected vehicles - both PD and RE considering a fleet of vehicles | advanced signal processing |
2.2.3 Adaptive threshold (e.g. DWT) | less training effort as compared to MLs | |
2.3 Data-driven approach (MLs) | - various techniques to be applied to select the best alternative - easier to implement in the smartphone for crowdsourcing | a huge amount of training datasets required which are not able to collect in some cases |
2.3.1 Only MLs (e.g. ANN) | simple using of raw acceleration data and filter | |
2.3.2 Combined MLs and feature extraction | - able to eliminate speed dependence, suspension variation - higher accuracy |