Peer-to-Peer Cooperative Positioning
Part I: GNSS-Aided Acquisition
Cooperative positioning allows for the sharing of key information across clusters of GNSS users, thus allowing for faster computation of positions with higher reliability. Performance is similar to that of assisted GNSS, but without any infrastructure requirement. So, peer-to-peer cooperative positioning could be a promising addition to fixed augmentation systems of the future.
Working Papers explore the
As part of an effort to find methods that improve the performance of GNSS receivers in hostile environments, this article examines a cooperative positioning, where receivers exchange data and information with their neighbors or peers. We focus on unstructured peer-topeer (P2P) networks, without a control or data fusion center.
Our discussion will show that a significant reduction of the acquisition time can indeed be achieved when GNSS aiding quantities like Doppler, satellite carrier-to-noise ratio (C/N0), and secondary code delay are provided by some aiding peers. The approach is clearly similar to that of assisted-GNSS (AGNSS), but does not require a fixed infrastructure and may better take into account the local environment.
As multi-standard devices will become more and more inter-connected in the near future, GNSS cooperative positioning may soon become an alternative or a complement to fixed augmentation systems.
The Cooperative Positioning Paradigm
The performance of a GNSS receiver is widely known to be very good in opensky conditions (at least four satellites in full view) but may strongly decrease in difficult situations, such as natural/ urban canyons, wooded areas, inside buildings, at high latitudes, or in the presence of electromagnetic interference. Such environments can adversely affect availability, time to first fix (TTFF), accuracy, and integrity.
Assuming a GNSS-hostile environment, in this article we want to give some answers to the question: Is it possible to improve GNSS receiver performance by allowing information exchange among users?
The basic idea that we examine here is how users in difficult conditions may receive and exploit aiding data from other nearby GNSS users, applying special techniques for computing their positions faster and with higher reliability. We then introduce the cooperative positioning (CP) paradigm, where data and information are shared within clusters of GNSS receivers to improve individual receiver performance.
Architecture: Centralized versus Peer-to-Peer
In this column, we focus on the latter approach in which each receiver can share data with its neighbors in an unstructured way.
Figure 3 depicts the logical scheme of this approach, called peer-to-peer cooperative positioning (P2P-CP). Even though the presence of a control center could obviously simplify data exchange and elaboration, the P2P approach has the great advantage of not requiring a fixed infrastructure, allows scalability, and fosters the creation of heterogeneous time-varying networks with different receivers. (In any case, a centralized network could also adopt many of the techniques presented in this article.)
Exchanged Data: GNSS-Only versus Hybrid
Cooperative Positioning versus Assisted GNSS
The improvements may take various forms, such as:
We can immediately see that most of these goals are the same as those of AGNSS (discussed in the book by F. van Diggelen listed in the Additional Resources section), although the latter method uses a fixed terrestrial infrastructure (typically, cellular network base-stations) to transmit GNSS aiding data to registered users.
AGNSS aiding may include, for example, GPS almanac (details on GPS constellation), GPS navigation model (mainly ephemeris to speed-up satellite position computation), integrity assistance (integrity information of the SIS of different satellites), satellite clock corrections, GPS acquisition assistance (ID of visible satellites, Doppler and code phase information), GPS ionosphere model (information on ionosphere delay), augmentation system assistance (differential corrections), reference time (to time-stamp the assistance messages), and reference position (a rough estimation estimation of the receiver estimation computed by the cellular network with a cell-ID approach).
Clearly, then AGNSS has many characteristics in common with P2P-CP and can be considered as a useful benchmark for addressing its performance. However, a comparison with AGNSS raises some important issues:
All these considerations suggest that P2P-CP may be viewed both as a possible integration with and an alternative to AGNSS aiding. With this in mind, we can analyze which aiding data are better suited for a P2P-CP scenario.
Physical versus Range Layers
With reference to these, the aiding quantities can also be divided into two classes:
In the following section, we focus on techniques exploiting GNSS aiding at the physical layer in order to improve the acquisition process. (Examples of range-layer aiding techniques may be found in the Politecnico di Torino report.)
CP Methods at the Physical Layer
Some of this information can be shared with a peer using a mass-market receiver that is just starting the acquisition phase in order to reduce the latter receiver’s acquisition time.
We assume that all the peers are equipped with both a GNSS receiver and a communication link that can send and receive data. The aided peer broadcasts a request for help and the aiding peer values. In this article we will focus on the following types of aiding data:
The definition of this code delay depends on the GNSS signal we are acquiring. In the case of the Galileo E1 band, the pilot signal can be used in the acquisition phase, and the code delay can be defined as the time difference between the initial instant for the first chip of the next secondary code period and the current time estimated by the mth peer, assuming a common time scale among all the peers in the cluster (synchronized clocks).
Let us denote by g(m) one of the aiding quantities received from the mth aiding peer (it could be fd, C/N0 or tS). The aided peer receives the messages from N aiding peers and must combine them in some way to exploit them during its acquisition phase.
We assume that the aided peer performs a weighted sum of the data coming from the N aiding peers, thus:
where the set of values αg(m) are proper weights for the quantity g(m).
The selection of these weights can be important. Some possible strategies are collected in Table 1, which we will now discuss.
Uniform weights. The simplest approach is to perform the arithmetic average of the aiding quantities received from the aiding peers, by using constant weights (see Table 1, row 1). This approach is reasonable if all the aiding peers have similar characteristics, or when no information is available on them.
Weights related to the aiding quality. Let us suppose that a reliability index, αg(m), can be computed for the aiding quantity g provided by the mth peer. For example, this could be the standard deviation of the estimated g(m). This number could be evaluated and sent by the same aiding peer, or directly evaluated by the aided peer by comparing a set of received aiding values.
Given the values, we can use weighting coefficients inversely proportional to them, as shown in Table 1, row 2. The coefficient x is used to obtain a unitary sum of all the weights:
As an alternative, a simplified approach would be to use some fixed weights for αg(m), depending on the quality of the corresponding aiding peer (e.g., mass-market receivers, low values; professional receivers, medium values; anchor peers, i.e., fixed GNSS receivers which know their position with very high precision).
Weights related to the distance. If the distance, d(m), between the aided peer and each mth aiding peer is known, we can define the weights as inversely proportional to the distance. (See Table 1, row 3.) Also, in this case the coefficient x is used to obtain a unitary sum of all the weights:
Closest peer approach. A simpler method for exploiting the knowledge of the distance between the peers is to select the closest peer and use only the aiding values provided by it, discarding all the other information. (See Table 1, row 4).
The first two weighting strategies can be easily implemented without a knowledge of the network topology. The last two, instead, require a rough knowledge of the topology of the cluster of peers, or at least an estimate of peers’ distance with respect to each other. (Other weighting strategies can be found in the Politecnico di Torino report cited previously.)
How to Exploit Doppler Aiding
In this way, the acquisition system can compute the cross ambiguity function (CAF) in a reduced number of frequency bins close to the expected value and thus speed up the required acquisition time. A key role is played in this by the frequency synchronization between the set of peers.
Peer clock synchronization. Due to typical inaccuracies of local oscillators in mass-market receivers, Doppler aiding requires a certain level of synchronization between peers. In fact, if the peers have clocks that are sufficiently synchronized, they can distinguish between the Doppler shift due to satellite and receiver mobility and the deviation of their internal local oscillators.
A number of algorithms have been developed for clock sync in a peer-to-peer network mostly in the field of wireless sensor networks and femtocell systems. Some analyses (to be discussed in a later section) show that peer synchronization is important, but conventional approaches with limited complexity well explored in the literature appear sufficient to guarantee the requested accuracy.
How to Exploit C/N0 Aiding
In this case, some care must be taken to properly choose the weighting parameters. In fact, by performing some experimental trials, we observed that the C/N0 values estimated under the same conditions by two commercial GPS receivers may differ by some decibels, i.e., the measurement variance may be large. If all the peers in the cluster are in an open-sky scenario, they are likely to estimate similar (high) C/N0 values. A simple arithmetic average of their values can then produce a reliable estimation, reducing the variance. In this case, the number of aiding peers should be as large as possible.
The situation is more complicated in indoor environments. If the aided peer is deep inside a building, there is no way to compute the position using GNSS alone. Only hybrid positioning using terrestrial ranging can help it (as will be shown in the companion article on Hybrid CP to appear in a later issue).
If the aided peer is in a “light” indoor environment (e.g., in an urban canyon, or under foliage, or inside a room but near to a window), only the closest peers are likely to be in a similar situation (e.g., experiencing attenuation or signal blockage of part of the sky). In that case, only the C/N0 values estimated by the neighboring peers should be taken into account. A limiting case could be to consider Approach 4 of Table 1 and use only the C/N0 estimated by the closest peer.
Especially in indoor situations, the aiding provided by the C/N0 is clearly more fragile when compared to the other ones (i.e., Doppler aiding and secondary code wipe off) that can still work without it. So, more research and development is needed to completely exploit this technique.
In any case, the alternative is to start with no information at all about the visible satellites. Then, at worst, C/N0 may not improve the acquisition performance, but in many situations it could be very useful.
One note of interest: P2P differs from AGNSS regarding the availability of C/N0 estimates. In fact, in 3GPP technical specifications for mobile communications (see Additional Resources), C/N0 measurements are transmitted from the receiver to the base-station only in the case of network-based positioning where a mobile user’s position is computed in the base station and then sent back to the user. These measurements are not, however, included in the information provided by the base-station to the receiver for AGNSS positioning.
How to Exploit Secondary Code Delay Aiding
Both channels include pseudorandom codes with a chip rate of 1.023 Mcps and are modulated using the composite binary offset carrier (CBOC) modulation scheme. The Galileo E1c channel features a tiered code structure, including a 4-millisecond primary code (with a length of 4,092 chips) overlaid by a 100-millisecond secondary code (25 chips) (For additional technical specifications, see the “European GNSS (Galileo) Open Service Signal In Space Interface Control Document” cited in Additional Resources).
The primary E1 OS code allows for fast acquisition approaches, exploiting its four-millisecond periodicity. However, the presence of the secondary code can lead to transitions at the end of each primary code period (an effect similar to that of navigation data transitions), impairing the correct code acquisition if not properly managed.
If an estimate of the secondary code delay is available to the aided peer with enough accuracy, it is possible to multiply the received signal samples by a local replica of the secondary code samples, in order to remove the secondary code transitions. Peer synchronization is again important, but in this case our analysis has again confirmed the feasibility of this aiding strategy in mass-market receivers.
Regarding the differences between P2P and AGNSS, we should point out that the secondary code delay aiding, focusing on the Galileo E1c secondary code, is not (yet) contained in the AGNSS standard. The base station can provide code phase and Doppler information for the visible satellites of the constellation. The code phase is provided to the receiver in terms of an integer number of milliseconds (integer code phase, expressed modulo 128 milliseconds) and fractions of a millisecond (code phase, ranging from 0 to 1 millisecond) with respect to a reference time.
Assistance data for Galileo signals in current 3GPP technical specifications are generally referred to as Galileo E1, E5a, E5b, E6, or E5a+E5b signals, without an explicit distinction between data and pilot channels. The secondary code delay for the Galileo E1c pilot channel is not explicitly mentioned in assistance information. Clearly, the peer synchronization plays a key role for both cooperative positioning and AGNSS.
The considered approaches have been compared in two different scenarios (light indoor and open-sky conditions) and assume pedestrian or vehicular mobility of the peers. Errors due to the communication channel have not been introduced.
Receivers setup. The following assumptions were made in order to simulate an AGNSS-aided acquisition phase:
We should note that these assumptions, especially the use of the same code delay search range (same accuracy for time synchronization), were made in order to have a fair comparison between the various approaches under consideration. In fact, such synchronization accuracy represents a favorable condition for the AGNSS case because asynchronous networks (like GSM and UMTS networks available in Europe) can only provide coarse-time assistance with a time synchronization accuracy no better than 2–3 seconds. Fine-time assistance (with an accuracy of 1-10 microseconds) can only be provided by synchronous networks (e.g., available in the United States).
Results. Figure 5, summarizes the obtained results in terms of MAT. These results compare the performance of unaided approaches, AGNSS-like approaches, and P2P approaches.
As can be observed, use of AGNSS clearly reduces the MAT with respect to the unaided approach (four to five times lower in open-sky conditions, and five to seven times lower in light indoor conditions). P2P techniques show further advantages in terms of MAT: almost half of the values corresponding to the AGNSS case in light indoor conditions, and a net advantage of almost 40 times faster MAT with respect to AGNSS in open-sky conditions.
Effects of aiding quantities. Different aiding quantities make different contributions to the overall acquisition performance, depending on how the aided acquisition algorithm is implemented and on the accuracy of the available aiding information (connected to the size of the search space).
The obtained results can be summarized as follows:
In fact, combining the last two bulleted items allows exploitation of a serial acquisition engine supporting partial correlations, where the coherent integration time (Tint) is fixed depending on the expected C/N0. This leads to a large reduction of the computational burden, decreasing Tint up to one millisecond in open-sky conditions.
On the other hand, if the C/N0 aiding is used without secondary code aiding, the results in terms of MAT are similar to the case without C/N0 aiding. These results are motivated by the fact that, without secondary code aiding, a full primary code search must be performed using the FFT-based approach, in which case Tint is then fixed to be at least eight milliseconds. This assumption proves to be a bottleneck, because Tint is fixed to a minimum value that is larger than the optimal values that can be computed exploiting the C/N0 aiding.
Aiding accuracy. We must point out that possible errors on the aiding quantities exchanged between the peers can impair the acquisition performance, thus degrading the receiver sensitivity, robustness, and/or the MAT. For example, time and frequency synchronization errors can reduce the benefits of secondary code delay and Doppler frequency aiding, whereas inaccuracies in C/N0 estimated values can lead to an incorrect setup Tint, slowing down the acquisition time.
In fact, multiple repetitions, doubling Tint, may be needed in case of an initial Tint too low with respect to the optimal value. On the other hand an excessive Tint results in a waste of computational resources, because the number of Doppler bins to be explored increases with Tint. (More details can be found in the Politecnico di Torino report.)
We can thus conclude that GNSS cooperative positioning is very promising and allows an aided peer to achieve performances, which are (1) certainly better than those of unaided acquisition, and (2) similar to those obtained with AGNSS aiding, but without requiring a fixed infrastructure. (Currently, two patents by R. Garello et alia, and M. Rao et alia are pending on P2P GNSS cooperative positioning. Other information on the developed techniques can be found in Additional Resources.)
Value Added by Professional Receivers
Moreover, some algorithms that are too complex for consumer receivers could be implemented on professional units. Within the cluster of peers with mixed types of receivers, “difficult” operations could be handed off to professional receivers that can then broadcast their results to the entire network, including mass-market user equipment.
Consider the challenge of interference mitigation. Interference detection and identification is known to be a computationally expensive task. As an example, detection may be based on different techniques (signal energy, cyclo-stationary properties, high order statistics, direction of arrival), but these typically require a computational power not available for mass-market receivers.
However, complex operations could be delegated to peers with professional quality equipment to perform, including such tasks as interference detection, estimation of interference parameters, and creation of an interference electromagnetic map.
This information could then be shared within the network and massmarket users could apply low complexity mitigation techniques (e.g., single sideband processing, interference excision, pulse blanking). This approach could make increased robustness against interference available for all network peers.
Conclusions and Issues for Real-Time Implementation
As a matter of fact, thanks to their limited complexity, all the presented techniques are already implementable on ad hoc devices that contain both a GNSS receiver and a communication system. Thus, GNSS cooperative positioning could already be adopted for some applications — wireless sensor networks, an “Internet of things,” and so forth — on properly programmed proprietary nodes.
Moreover, we can anticipate that this approach will soon become realizable for commercial low-end devices. It is true that mass-market GNSS receivers may not possess a communication system for sending/receiving data and have a small computational power. However, we can reasonably assume that these features will be available for such devices in the near future, as the next generation of multi-standard portable devices will be able to cover a number of GNSS and terrestrial wireless systems (with some of them suitable for ranging, too).
Furthermore, these future devices will be more and more interconnected. As an example, car devices are going to share mobility information. Car manufacturers are putting significant R&D into this topic. New protocols for Vehicular Ad-Hoc Networking (such as WAVE, a modified version of WiFi — see IEEE citation in Additional Resources) and for short-range communications have been developed and will soon be operative.
Within this flux of information, GNSS aiding data could also be shared. Portable devices will similarly move in this direction and users will exchange messages with their neighbors. Because GNSS cooperative positioning has performance similar to that of AGNSS but requires no infrastructure, we believe it could become an interesting alternative (or complement) to fixed augmentation systems.
Copyright © 2017 Gibbons Media & Research LLC, all rights reserved.