Improving Positional Accuracy Using Relative Measurement between Android Smartphones

In this study, we propose a relative and clustering analysis correction (RCC) technique capable of improving the location accuracy of a smartphone global navigation satellite system (GNSS). The RCC technique improves the accuracy of the Android GNSS by eliminating common error components from pseudoscope measurements as well as noncommon errors through cluster analysis using Android GNSS signal attributes. Cluster analysis was applied to the RCC technique using the optimal clustering method among the hierarchical clustering, K-means clustering, and neural network clustering methods. As a result of verifying the RCC technique, the following results were obtained. The distance error of a zero-baseline experiment, which was performed to check the relative accuracy and precision between smartphone GNSSs, was 0.572 m for two sessions, which showed that the noise-causing error of the Android smartphone GNSS used in the experiment occurred similarly in each session. Positioning accuracy was much lower in a multipath environment than in an open environment due to the reflection and refraction of satellite signals by obstacles, such as buildings around the receiver and multipath generation due to low-elevation non-line-of-sight satellite signals. However, observations confirmed that applying the RCC technology to the Android smartphone GNSS with errors of more than 5 m in multipath environments can secure high location accuracy, even in multipath environments.


Introduction
The global navigation satellite system (GNSS) is a satellite-based positioning system developed in the early 1970s for determining a user's location with an accuracy of several meters by receiving signals from at least four satellites. For decades, the GNSS has been used by experts for military and scientific purposes. However, owing to the advent of robust and inexpensive processors in the early 2000s, the satellite navigation system has naturally expanded from the domain of experts to the general private sector.
Research on positioning accuracy using the Android GNSS has heralded research on positioning performance, signal processing algorithms, and signal characteristics through observation data of the smartphone GNSS. Realini et al. (15) used Google's Nexus 9 tablet to evaluate the relative positioning accuracy of a smart mobile device with respect to a base station (continuously operating reference station), confirmed the positioning accuracy of 10 cm order for the Nexus 9 tablet, and evaluated the GNSS observation quality and location accuracy of Android smartphones to evaluate the carrier-to-noise density, pseudorange ratio error, and carrier ratio error; the average carrier-to-noise density ratio (CNo) was approximately 10 dB-Hz less than the values obtained from the GNSS antenna and receiver used for surveying. Wu et al. (11) applied the PPP algorithm using the GPS L1/L5 signals and the Galileo E1/E5a dualfrequency satellite based on a real-time kinematic library and GNSS analysis software for multiconstellation and multifrequency precise positioning (GAMP); then, the positioning performance of the Xiaomi Mi8 dual-frequency smartphone in static and dynamic modes was studied. As a result, in static mode, after convergence to 1 within 102 min, the root-mean-square (RMS) position errors of the dual-frequency smartphone PPP algorithm in the E·N·U directions were ±0.218, ±0.041, and ±0.110 m, respectively. Li and Geng (16) showed that GNSS signals generated by smart devices have nonuniform signal strength, rapid CNo changes, and low CNo values at high elevations and that the pseudorange noise was 10 times greater than that of a survey receiver. Weng et al. (17) proposed a differential GNSS infrastructure that independently calibrates the GNSS position of a smartphone using a reference station calibration. Guo et al. (18) confirmed that the CNo of smart devices was 4-11 dB-Hz lower than that of surveying receivers through the analysis of stationary and moving positions in open space in studies on the dualfrequency GNSS observation data characteristics of the Xiaomi Mi8 in an urban environment. In addition, it was confirmed that the RMSs for the horizontal and vertical positions were ±1.0 and ±1.5 m or less, respectively, using a single difference filter at the stop position. Paziewski et al. (19) showed that a weighting system based on CNo in the Android GNSS was superior to one based on the satellite elevation adopted in the general GNSS. Smartphone GNSS analysis in multipath areas is mainly used for surveying GNSS equipment, low-cost GNSS equipment, the u-blox device, and other sensors; alternatively, a 3D terrain model has been studied to improve accuracy through visible satellite classification. (20) In response to market demand, the theory and algorithms of smartphone location estimation have become one of the most frequently investigated and controversial topics in the GNSS field. This progress is driven by two main factors. The first is the remarkable improvement in the performance of recent popular commercially available GNSS chipsets. Initially, a singlefrequency, single-constellation signal can be obtained using these devices. However, to meet user needs for improved accuracy, manufacturers now provide a multi-constant, dual-frequency chipset that can track modernized GNSS signals. A key milestone was the launch of Broadcom's first dual-frequency GNSS chipset, BCM47755, in September 2017. (9) This development was imitated by other producers such as u-blox, ST Microelectronics, and Qualcomm, who also have developed multifrequency, multi-conversion chipsets, i.e., F9, Teso, and Snapdragon X24 LTE.
A second factor that brought smartphone positioning to the attention of the scientific community was the ability to provide both users and developers with raw observations retrieved from the GNSS chipset of smart devices. As a result, carrier steps and Doppler GNSS measurements can now be accessed via Application Programming Interface 24 on devices running on Android NUGU 7.0 operating systems as well as code-like ranges. The availability of these smartphone-derived GNSS measurements has led to many studies of algorithm development and applications to improve the signal quality and positioning accuracy of massmarket devices. (21) In previous studies, smartphone GNSS accuracy analysis suggested a method with improved accuracy that used a smartphone and other sensors together or a 3D topographic model. Such a method may cause problems due to visual synchronization with other sensors or the construction of 3D topographic model data. In this study, since additional sensors or topographic data are not required when classifying satellite signals that cause errors in relative positioning and distance using only a smartphone GNSS, a simpler method of improving accuracy than that in previous research methods is proposed.

Study Methods and Results
The novelty of this study is that only a smartphone GNSS is employed to improve accuracy in a multipath environment without a 3D terrain model. To improve the accuracy of the Android GNSS, an RCC technique was used. The RCC technique increases the Android GNSS positioning accuracy by removing the common error component that occurs in the pseudorange measurement through the Android GNSS relative positioning method as well as the noncommon error component through cluster analysis using the Android GNSS signal characteristic values. Therefore, our research methodology is as follows (Fig. 1).
First, GNSS signals were classified into normal signals and signals including multipath errors through the cluster analysis of signal characteristic values of the Android GNSS. Second, correction information was obtained from a reference point for which the exact coordinates are known using the classified GNSS signals. Afterward, the measurement point (unknown point) coordinates were corrected using the generated correction information. By comparing the corrected measurement point coordinates with the true measurement point coordinates, the effectiveness of the RCC technique for improving the accuracy of the smartphone GNSS was evaluated.

Strategies to improve accuracy using RCC techniques
We examined the API of the Android GNSS and a method for calculating the pseudorange using various field values provided by the API, identified the signal characteristics of the Android GNSS, and proposed a technique that can use them to improve location accuracy.
To improve the accuracy of the Android GNSS, we proposed an RCC technique to remove common error components from pseudodistance measurements through the Android GNSS counterparts as well as noncommon error components through cluster analysis using Android GNSS signal characteristics.
Android GNSS relative positioning is a technique that improves location accuracy by correcting various errors included in code observations at a reference point (known point) to a pseudodistance and applying the correction amount to a measurement point (unknown point). Code-based correction information is generated by calculating the error included in a signal observed at an Android GNSS reference point whose 3D location is known. The Android GNSS measurement point can be used to determine the precise location accuracy by combining the correction information generated at the reference point with the Android GNSS observation information.
The errors included in the distance can be divided into common errors, such as satellite orbit, satellite clock, convection layer, and ionization layer errors, and noncommon errors, such as receiver clock, receiver noise, and multipath errors; moreover, the pseudorange correction (PRC) can be calculated as follows: where PRC is the pseudorange distance correction information (m), P is the geometric distance between the satellite and receiver (m), PR is the distance between the satellite and receiver, δ sv and δ re are the satellite and receiver errors, respectively, δ gd is the group delay, and δ sys is the navigation system's time offset. This study aims to increase accuracy by eliminating common errors, such as satellite orbit, satellite clock error, convection layer delay, and ionosphere errors, using code-based correction information generated at the Android GNSS reference point.

Android GNSS signal characteristic cluster analysis and RCC technology experiment
Cluster analysis is a multivariate analysis technique that groups several clusters with similar characteristics from several variables observed for individuals, identifies the characteristics of the clusters, and analyzes the link between the clusters. In this study, hierarchical clustering (HC), K-means clustering (KMC), and neural network clustering (NNC), which are commonly used in cluster analysis, are compared to obtain the optimal method.
After cluster analysis, the proposed RCC methodology proceeds as follows.
Step 1. Good satellite signals are extracted through cluster analysis.
Step 2. Common satellite signals at the reference and measurement points are extracted using the good satellite signals extracted in Step 1.
Step 3. The reference point coordinates are calculated via a single measurement at the reference point using the common satellite signal. There were five study sites: two open environments (OP-1 and OP-2) and three multipath environments (MP-1, MP-2, and MP-3), and a zero-baseline experiment was performed on a building's roof where the reference and measurement points were selected. To employ relative measurements for all observation points, the same smartphone model (Galaxy S21 Ultra) was used to minimize errors due to noise in Android GNSS receivers; moreover, to minimize errors due to the antenna direction, the smartphones were erected.
The zero-baseline experiment was a quality analysis experiment on observational data of Android GNSS smartphones, and the accuracy and precision of the other party within the same session were confirmed by providing the same satellite reception environment. For the experiment, a reference point and a measurement point were selected with a distance of 6 m between them on a building's roof at a location hardly affected by surrounding obstacles, and observation experiments were performed for two sessions using the same smartphone. To determine the exact ground reference point coordinates, a VRS survey was separately conducted on the reference and measurement points, and the results were used for location accuracy analysis. Figure 3 depicts the experimental setup and observation images for the zero-baseline experiment, and Table 1 summarizes the observation sessions and times of the zero-baseline experiment.
Satellite signals can cause larger errors because the lower the elevation angle, the greater the thickness of the ionosphere and the convective layers that signals transmitted from the satellite must pass through before reaching the receiver. Setting signals transmitted from low-elevationangle satellites requires the setting of a threshold; in this study, the critical angle was set to 10° to reduce errors. In addition, the longer the observation time, the better the accuracy. In this study, the observation time was adopted as 7 min in consideration of the characteristic of the smartphone that the location was identified as the same place when the smartphone was not moved for a long time. Furthermore, since the orbiting cycle of GPS is 11 h 58 min in star time, if the time difference is 6 h, the satellite's arrangement will completely change. In this study, considering these matters, the time interval between each session was set to 3 h 30 min in consideration of the arrangement of satellites, such as different satellites being employed in different sessions. Figure 4 shows the satellite deployment status during Sessions 1 and 2. Satellites with a critical angle of less than 10° were excluded from the coordinate calculation. The satellites labeled were used for coordinate calculations and those labeled were excluded by the critical angle.   For Android GNSS smartphones, low-cost planar inverted-F antennas (PIFAs) are used, so even satellite signals received synchronously at similar locations show differences in signal intensity. The antennas mainly used in Android GNSS smartphones are inexpensive PIFAs and are generally microstrip antennas made using printed circuit boards. The characteristics of these antennas result in the loss of signal strength received due to the effects of linear polarization and radiation pattern directivity. In particular, directional effects may markedly reduce the intensity of other signals. From the statistical results of Table 2, the G08(L1) satellite signal showed a high average signal strength of 35 dB-Hz at the reference point, and the variance and standard deviation were less than 1, indicating that the change in signal intensity was small. However, the measurement point G08(L1) satellite signal measured at a similar location synchronously showed a relatively high average signal strength of 33 dB-Hz but had a large variance and standard deviation and a large change in signal intensity during the measurement time. At the reference point, the GLONASS R16 satellite signal of Session 1 showed an average signal intensity of 33 dB-Hz, and the variance and standard deviation were low, indicating that the change in signal intensity was small. However, R16 satellite signals at similar locations synchronously showed a relatively high average signal intensity of 31 dB-Hz, but the variance and standard deviation were larger than those of the R16 satellite signals at the reference point,  indicating that the change in signal intensity was relatively large during the measurement time.
For the BeiDou C13 satellite signal, the average signal intensities at the reference and measurement points showed a large difference of 8 dB-Hz (Table 2); the satellite signal intensity changed significantly at the reference point. The Galileo E24(E1a) satellite signal also showed similar differences in variance and standard deviation, whereas it showed similar patterns at the reference and measurement points. As a result of the zero-baseline experiment for relative positioning verification, in Session 1, when comparing the errors for VRSs of the single and relative positioning, the error was reduced from 0.770 to 0.644 m in the X direction. In addition, in Session 2, when comparing the errors for the VRSs of the single and relative positioning, it was confirmed that the errors were reduced from 0.770 to 0.460 m in the X direction and from −0.710 to −0.323 m in the Y direction. According to the result of the two session observations, the noise errors of Android GNSS receivers used in the experiment were similar owing to similar corrections and error values.

Analysis of satellite signal characteristics
Satellite signals measured in each experimental area were organized and their characteristics were analyzed. In an open environment, two areas with little multipath effect were selected as subjects for the experiment, which were designated OP-1 and OP-2. OP-1, the first experimental area, was 486 m from the reference point and was a playground without obstacles around it [ Fig.  5(a)]. To analyze satellite signals received from OP-1, the characteristic factors of CNo intensity, a tracking and data relay satellite system (TD RSS), pseudorange correction standard deviation (PR Std), and a multipath indicator were identified for each satellite signal.
The experimental area OP-2 was located on a lawn with no obstacles around it, 284 m from the reference point on the roof of the building [ Fig. 5(b)]. The factors of CNo intensity, TD RSS, PR Std, and multipath indicator were identified for all satellite signals received from OP-2 to analyze the received satellite signals and standardized data to determine their correlation.
Areas with a high likelihood of multipath occurrence due to buildings and structures were selected as multipath environments. Three areas in Yeungnam University were tested, designated Buildings are located in the north and south directions of MP-2, which is the subject area and located close to the south building [ Fig. 6(b)]. It was 112 m from the roof of the building with the reference point. MP-2 had reduced satellite visibility due to buildings in the north and south according to the results of receivers, and the buildings in the north and south received signals only from satellites located at an elevation of 40° or higher. That is, a multipath error may have been caused by not only the NLOS signal being blocked in the building but also the LOS signal not being blocked in the building. For the analysis of satellite signals received at this point, the factors of CNo intensity, TD RSS, PR Std, and the multipath indicator were extracted for all satellite signals received at MP-2. As a result, it was shown that the C23, E03(E1a), E08(E1a), E08(E5a), E15(E1a), and E15(E5a) satellite signals were poor.
Finally, location MP-3 [ Fig. 6(c)] was surrounded by buildings in the east, west, north, and south directions. It was located 193 m from the reference point on the roof of the building. MP-3 was relatively close to the building to the north, so the elevations of the receivable satellites in the north were high. Meanwhile, the building located to the south was approximately 40 m from MP-3, enabling the reception of signals from low-elevation satellites in the south. Since MP-3 was surrounded by buildings, the satellite signals with low elevations probably included multiple multipath errors. A large number of signals from low-elevation satellites were received at MP-3. Not only multipaths by LOS signals but also those by NLOS signals often occurred. It was confirmed that the G03(L1), G04(L1), G12(L1), C22, C23, C25, C37, and E08(E5a) satellite signals were significantly far from the average.

Application of clustering method to RCC technique
In this study, satellite signals were classified using HC, KMC, and NNC. It was determined which of the three clustering methods had the best accuracy in terms of classifying satellite signals, and this method was applied to the RCC technique. It was found that HC and NNC showed the same clustering results, whereas KMC showed different clustering results in MP-2 and MP-3 among the five experimental areas.
Then, an accuracy comparison among the clustering methods was performed. By comparing the clustered satellites for the three clustering methods, HC and NNC showed the same results, whereas KMC showed different clustering results in MP-2 and MP-3 among the five experimental areas. To check the accuracy of clustering for the experimental areas, excluding the areas showing the same clustering results, the satellites classified by HC and KMC were used to determine the coordinates using the RCC technique. The results shown in Table 3 were obtained by calculating the positional accuracy for the coordinate values.
As shown in Table 3, the location accuracy of the RCC technique using HC was higher than that of the RCC technique using KMC. Therefore, in this study, the satellite signals were classified using HC and the results were applied to the RCC technique.
The results of clustering for each experimental area by HC were confirmed with a dendrogram. To classify the good satellite signals and the satellite signals including a multipath error, signals were divided into two clusters in the final combined tree of the dendrogram. For OP-1, because of the wide-open environment, almost no multipath factors affected the satellite signals, so the satellite signals classified by HC were E31(E1a) and E33(E1a), i.e., only two of 29 satellite signals. OP-2 is also an open environment and was hardly affected by the multipath phenomenon. Two satellite signals, R18 and E07(E1a), of 28 satellite signals were classified by cluster analysis. Through HC, good satellite signals and satellite signals including multipath errors were classified. To understand the statistical characteristics of such a cluster classification, a statistical analysis of the satellite signals was performed before and after cluster analysis.
We obtained the statistical characteristics of the satellite signals before and after HC in the five areas, as shown in Table 4. As a result of cluster classification in OP-1, two signals, E31(E1a) and E33(E1a), were classified as satellite signals including multipath errors among 29 satellite signals. To understand the statistical characteristics, they were analyzed using standardized characteristic factors of the received satellite signals. By comparing the statistical data before and after cluster classification, PR Std significantly decreased from 3.587 to 0.220. PR Std seemed to significantly influence the cluster classification. The overall variance values showed a similar pattern before and after cluster analysis, but the variance of PR Std was significantly reduced.
Two satellite signals, R18 and E07(E1a), of 28 satellite signals measured in OP-2 were classified as satellite signals containing multipath errors. For the multipath indicator, the maximum value was reduced from 4.676 before clustering to 0.649 after clustering. It is considered that the multipath indicator significantly influenced the cluster classification. The overall variance values were reduced by clustering; in particular, the variance of the multipath indicator was significantly reduced from 1.0 to 0.041.
From Table 4, the maximum values of PR Std and the multipath indicator in MP-1, which may have significantly influenced the multipath error, were drastically reduced by classification. In addition, the variance was significantly decreased by HC; in particular, PR Std significantly decreased. Of the 31 satellite signals, six satellite signals, C23, E03(E1a), E08(E1a), E08(E5a), E15(E1a), and E15(E5a), were classified as satellite signals containing multipath errors. For MP-2, the changes in PR Std and the multipath indicator, which were expected to affect the multipath error, were significant. In particular, the dispersion of PR Std and the multipath indicator were drastically reduced. In MP-3, which was surrounded by buildings on all sides, several multipath errors were expected to occur due to low-elevation satellite signals. As shown in Table 4, CNo intensity, PR Std, and the multipath indicator, which were expected to significantly influence the multipath error, significantly increased. In addition, the overall variance decreased, and the variance of PR Std drastically decreased after cluster analysis.  Figure 7(b) shows the satellite signals observed at the reference point during the experimental observation time for OP-2. Satellites marked with and have the same meanings as above but for OP-2. Satellite signals common to OP-2 and the reference point, as classified by cluster analysis, were extracted. Among 31 satellite signals, 23 common satellite signals were applied to the RCC technique.

Accuracy evaluation criterion
The evaluation criterion used in this study was the error ellipse. The error ellipse is advantageous in grasping the exact distribution characteristics of errors through the major and minor axes of errors, the degree of rotation of the coordinate system, and so forth. If the average of x = [x,y] T is μ x and the variance matrix is Σxx for x = [x,y] T , which is a 2D coordinate system in Euclidean space containing uncertainty, the error ellipse can be expressed as follows: where σ xy is ρ xy σ x σ y and ρ xy is the correlation coefficient. Therefore, the standard ellipse equation is The eigenvalues satisfying 2 x y x y x y x y λ σ σ σ σ σ σ σ λ The eigenvalues of the standard ellipse were used as an indicator of the degree of uncertainty in the measurement results.

Accuracy evaluation results
Satellite signals that generate multipath errors were removed using the characteristic values of satellite signals, and location accuracy experiments were performed in open and multipath environments through the RCC technique using the reference point located on the building's roof.  Fig. 8(b)]. For OP-1 and OP-2, when the RCC technique was applied rather than the single-position technique, the center of the error ellipse moved closer to the true VRS position, but the size of the error ellipse increased slightly. From the error ellipses for OP-1 and OP-2, it was confirmed that the accuracy improved but the precision deteriorated. Table 5 shows the statistics of the error ellipses calculated using the eigenvalues of the standard ellipses for OP-1 and OP-2 in an open environment. In the table, σ G represents the geometric mean of the standard deviation, representing the radius of the disk with the same area as the ellipse at the specified significance level, and σ H represents the average variance of the uncertainty of the point. According to the measurement result in an open environment, σ G and σ H of the RCC technique were slightly large for both OP-1 and OP-2; thus, this technique might be disadvantageous compared with the use of a single-position technique in terms of precision, although the difference was negligible in this study. When the RCC technique was applied to a multipath environment, the accuracy improved because the center of the error ellipse approached the VRS position. However, as the area and axis of the error ellipse increased, the accuracy decreased. This phenomenon was confirmed numerically by observing the statistics of the error ellipses (Table 6). Table 7 shows a comparison of the accuracy between the relative positioning and RCC technique. The accuracy in an open environment was approximately 0.5 m with respect to the accuracy for the relative potential, but the accuracy in a multipath environment was much higher for the RCC technique. According to these results, the RCC technique improved the accuracy in MP-1 to MP-3.

Conclusion
In this study, to improve the location accuracy of Android smartphones, an RCC technique using HC based on the characteristics of Android GNSS signals and a relative positioning correction method using classified satellite signals were proposed. Characteristic values of CNo, TD RSS, PR Std, and a multipath indicator were extracted and classified from raw data of Android GNSS smartphones, and the final measurement point coordinates were calculated using calibration information generated at the reference point using the classified normal satellite signals. By comparing the calculated position coordinates with the ground reference coordinates observed by a VRS, the following results were obtained.
In a zero-baseline experiment, which was performed to check the relative accuracy and precision between smartphones, correction information measured in two sessions of observations showed similar correction amounts of −0.838, −0.842, and 0.168 m for the X, Y, and Z directions, respectively. As a result of applying the relative potential in each session, an error of 0.572 m due to noise in the Android smartphone GNSS used in the experiment occurred in both sessions.
By comparing the accuracy between the relative positioning and RCC technique for each experimental site, it was judged that the RCC technique can effectively increase the accuracy in an environment where multipath errors occur rather than in an open environment. By applying the RCC technique to improve the location accuracy of the Android GNSS, the location accuracy improved in a multipath environment. If the RCC technique is applied to the Android smartphone GNSS, which has an error of more than 50 m in a multipath environment, high location accuracy can be secured, even in a multipath environment. Through this study, the overall location accuracy using the RCC technique was improved, which is judged to be due to the influence of low-cost antennas, an increase in the position dilution of precise values by optimal classification of the available satellite signals, and so forth. Therefore, further research is needed to accurately model the impact of Android GNSS satellite signals on accuracy, precision, and errors in multipath areas in the future.