Abstract: | The purpose of this work is to develop a machine learning model to improve the GNSS position usage when applying the GNSS position as a Kalman filter measurement update in a loosely coupled GNSS/IMU system. The motivation comes from a perplexing issue that it is difficult to determine the GNSS position quality in challenging urban areas. In a loosely coupled GNSS/IMU system, it is critical to filter out the bad GNSS positions before applying GNSS position as the measurement update to the Kalman filter. Although the Kalman filter itself is a process which can automatically weight the measurement quality based on the reported confidence level from the GNSS receiver, it still cannot solve the issue well. The reason is that the reported confidence level from the GNSS receiver could easily be either underestimated or overestimated in weak signal conditions. As a result, a low quality GNSS position might be thought as a benign measurement and it is then used in the Kalman filter measurement update. Consequently, a large positioning error occurs in the fused solution; and furthermore, the inertial sensor bias states could be wrongly estimated. On the other hand, a good quality GNSS position could be excluded from being a measurement update to the Kalman filter. This would lead to an unnecessary dead reckoning and thus the positioning error is accumulated. In summary, purely rely on the reported confidence level from the GNSS receiver cannot provide reliable results in fusing the GNSS with the IMU together. We propose a new method by applying the machine learning model for the GNSS position quality classification, which is proved to be effective and suitable for the integration with the traditional rule based methods. The learning based and rule based methods are complementary. The rule based method is deterministic and predictable, but having plenty of exceptions. It is hard to find a general rule which applies to all cases. A simple rule based method is a heuristic threshold to classify the good and bad GNSS outputs, according to the values of confidence level, C/N0, and GDOP. There are other advance methods such as fault detection and integrity monitoring to guarantee the GNSS output quality and reliability. However, these methods rely on redundant strong GNSS signals. In challenging urban area, the condition with plenty of strong signals is not practical. On the contrary, a machine learning based method is suitable for classifying the GNSS outputs given the invisible clues under weak signal conditions. In this work, the focus is to determine whether a GNSS position solution is good or bad for the step of positioning fusion with the inertial sensors. Thus, this is a classification problem. We set the GNSS position quality in three classes, excellent, normal, and poor. The position error in terms of 2-D distance error for the three classes are: < 3 m, 3~10 m, and > 10 m, respectively. Given the classification problem with the target classes, we then determine the features which are the input to the model. The features are GNSS signal conditions and positioning related parameters. For example, the features can be C/N0, the number of satellites used for position fix, the number of satellites tracked, the number of C/N0 higher than 35 dB-Hz, the horizontal position variance, the vertical position variance, the GDOP, and the correlation of derived velocity from consecutive position fixes with the direct velocity solution from the GNSS receiver. Furthermore, the above features are observed for a period of time. So we can calculate the mean, the standard deviation, the Quartile, the statistics in time domain, and the properties in frequency domain. As a result, we have hundreds of features as the inputs to the model. In the next step, we apply Linear Discriminant Analysis (LDA) and decreasing Gini index to do dimension reduction for the final model. In the model selection, we started from simple to complex models. For example, decision tree, random forest, support vector machine, bag of words were studied. To determine the best model, we used metrics such as sensitivity, precision, confusion matrix which is then used to derive the receiver operating characteristic (ROC) curve and the area under the curve of ROC (AUC). After the above process, we determined the best machine learning model for our system. With the aforementioned machine learning model built, we then combined the rule based method together with machine learning model to see the percentage of the bad GNSS position outputs can be classified. From the results of a database which composes of accumulated 800 km of driving, the true positive rate is 90%. This means that 90% of the bad GNSS position outputs were identified. We have implemented the rule based + machine learning based model in a loosely coupled GNSS/IMU system, together with vehicle’s speed (i.e., an automotive dead reckoning (ADR) system). The solution was implemented on an embedded system which was running in real time. In summary, we propose a machine learning model for GNSS position classification. We evaluated the important features for the model. We analyzed the best model to be used. We implemented the system in real time and concluded the final performance. We will present the final model selected, the features used, and the overall solution in the embedded system. |
Published in: |
Proceedings of the 32nd International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2019) September 16 - 20, 2019 Hyatt Regency Miami Miami, Florida |
Pages: | 154 - 174 |
Cite this article: | Chiou, Tsung-Yu, Tseng, Ting-En, Tao, An-Lin, "Performance of Machine Learning Models in Determining the GNSS Position Usage for a Loosely Coupled GNSS/IMU System," Proceedings of the 32nd International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2019), Miami, Florida, September 2019, pp. 154-174. https://doi.org/10.33012/2019.16898 |
Full Paper: |
ION Members/Non-Members: 1 Download Credit
Sign In |