Crescendo: An Infrastructure-free Ubiquitous Cellular Network-based Localization System

01/29/2019 ∙ by Rizanne Elbakly, et al. ∙ Egypt-Japan University of Science and Technology (E-JUST) 0

A ubiquitous outdoor localization system that is easy to deploy and works equally well for all mobile devices is highly-desirable. The GPS, despite its high accuracy, cannot be reliably used for this purpose since it is not available on low-end phones nor in areas with low satellite coverage. The application of classical fingerprinting approaches, on the other hand, is prohibited by excessive maintenance and deployment costs. In this paper, we propose Crescendo, a cellular network-based outdoor localization system that does not require calibration or infrastructure support. Crescendo builds on techniques borrowed from computational geometry to estimate the user's location. Specifically, given the network cells heard by the mobile device it leverages the Voronoi diagram of the network sites to provide an initial ambiguity area and incrementally reduces this area by leveraging pairwise site comparisons and visible cell information. Evaluation of Crescendo in both an urban and a rural area using real data shows median accuracies of 152m and 224m, respectively. This is an improvement over classical techniques by at least 18



There are no comments yet.


page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Nowadays, finding one’s location outdoors is usually based on the GPS [1]. Although the GPS can work virtually anywhere around the world, it is not available on all mobile devices, can fail to find a location (e.g. when the signals to the satellites are obstructed inside tunnels or because of the urban canyon effect [2]), and consumes a lot of power. Therefore, other techniques of outdoor localization need to be developed to cover scenarios such as energy-efficient localization or emergency response tracking (E911), where all users regardless of their devices’ capabilities need to be tracked. To address that, a number of approaches have been recently proposed, including fingerprinting-based [3, 4], sensor-based [5, 6, 7, 2, 8, 9, 10, 11, 12, 13, 14, 15], and cellular network-based [3, 16, 17, 18, 19, 20, 21, 22, 23]

. In addition, due to the availability of both computation resources as well as huge datasets, neural networks and deep learning have been recently leveraged for localization 

[24, 25, 26, 27, 28]. According to the experimental study in [21] probabilistic cellular network fingerprinting in [3] provides the highest accuracy for 2G networks. However, systems such as [3, 4] require an onerous and time-consuming wardriving phase either to collect a cellular signal fingerprint or to build a model based on the road network and typical driver behavior. Sensor-based systems use sensors available on high-end phones such as WiFi [7, 6] and inertial sensors [2, 14, 15]. These techniques do not work for low-end phones.

In contrast, cellular network-based techniques are by default available for all phones. The most basic approach is the Cell ID method [29], where the location is estimated as the longitude and latitude of the strongest visible network cell. Despite its simplicity, the Cell ID method has a coarse-grained accuracy. Cellular fingerprinting approaches [3, 17] provide superior accuracies, yet require time-consuming data collection. To completely avoid labeled dataset collection a propagation model is leveraged in [18] to generate the fingerprint. However, this significantly affects the accuracy of the system. In this paper, we propose Crescendo: a ubiquitous cellular network-based localization technique that does not require neither calibration nor any additional support from the already existing infrastructure (the cellular network). Crescendo starts its operation by building the Voronoi diagram of the area of interest with network sites as seeds. Since distance is typically inversely proportional to the Received Signal Strength (RSS), the user is assumed to be closest to the strongest visible network site and can hence be placed in the Voronoi polygon of the strongest site. Thereafter, signal information of cellular network cells visible to the user’s phone are used to incrementally narrow down this initial ambiguity region. Specifically, instead of using a propagation model or absolute RSS values as is commonly done in other approaches, the relative RSS between each pair of heard cells/sites at the device is used to constrain the user’s location and hence reduce her ambiguity region. Additionally, available information about the sector covered by each visible cell is used to improve the accuracy of the location estimate.

We have implemented and tested Crescendo in urban and rural areas with different network densities. The results show that Crescendo can achieve a median accuracy of 152m and 224m in the urban and rural areas, respectively. This accuracy is an improvement over classical infrastructure-free techniques by at least 18% and 15% and comes with no calibration overhead.

The rest of this paper is organized as follows: in Section II we briefly give a background on the structure of the cellular network and the terminology used throughout the paper as well as give an overview of the basic idea of Crescendo. The full system architecture and evaluation of the system are presented in Sections III and IV, respectively. Section V concludes the paper.

Fig. 1: Basic cellular network architecture.

Ii Crescendo Basic Idea

Ii-a Background

As shown in Fig. 1 the cellular network consists of multiple sites, which are distinct physical locations - also called towers. Each tower covers an area around it divided into multiple physical sectors. A sector represents a certain “slice” of the circle centered around the site, and is represented by two straight lines emanating from the site location at a specific inclination from north. Theoretically, the sector area can be considered extending to infinity. However, in practice due to signal attenuation it is finite as shown in Fig. 1. Multiple cells operating at different frequencies cover the same sector. A mobile unit (MU), i.e. a phone, can detect up to seven different cells at the same time instant and is associated to only one of them. The different visible cells can be from the same site or from different sites, and can be even covering the same sector. Information about the RSS of visible cells is available at the provider-side as well as at the device-side.

Ii-B Basic Idea

In this section we start by explaining the basic idea of the proposed algorithm and how it works under “ideal” conditions (Sections II-B1 and II-B2). Here, we assume a hypothetical ideal environment and cellular network, where a) the propagation environment is ideal, i.e. a cell is visible only within the area defined by its sector. Therefore, if a MU detects a cell , it has to be located within the area defined by its sector . Users outside cannot hear any cells covering ; and b) a MU can detect up to seven cells but only one cell per physical site/tower, i.e. cells visible in a single scan are located at distinct sites.

We relax these assumptions later in Section III.

(a) Voronoi diagram with sites as seeds.
(b) Initial ambiguity area.
(c) Pairwise Site/Cell Constraint.
Fig. 2: Step 1: Initial location estimation based on Voronoi diagram of strongest site and pairwise site comparisons.
(a) Cell contains the location.
(b) Cell contains the location.
(c) Cell contains the location.
Fig. 3: Step 2: Applying cell constraints. Sequential intersections of visible cell sectors’ areas further reduce the ambiguity region.
Fig. 4: For any pair of sites: if the RSS from site at the device is greater than the RSS from site , then the device must be closer to than . This maps to placing the device in the half-plane defined by the bisector line between and and containing site .

Ii-B1 Incremental Voronoi Tessellation

Crescendo starts by building the Voronoi diagram [30] of the area of interest with sites as seeds as shown in the example in Fig. 1(a), where the Voronoi diagram is built for the three towers , , and . A Voronoi diagram splits the area into non-overlapping polygons, where is the number of sites/seeds. Each Voronoi polygon is associated with a site/seed and contains all points in the area that are closer to than to any other site/seed. Since the general trend for RSS is to increase as distance decreases and vice versa, Crescendo initially places the user in the Voronoi polygon of the site with the strongest signal, which represents the points that are closest to this site compared to any other site. In our example cell is the strongest cell with , and hence the Voronoi polygon of site is the initial ambiguity area as shown in Fig. 1(b). However, this initial area can be very large, especially for a sparse cellular network where the sites/seeds are separated by larger distances. To refine this initial area the first step is to use Pairwise Site/Cell Constraints. For every pair of secondary sites, i.e. sites other than the strongest site, the area of interest can be split into two half-planes as shown in Fig. 4. Points in the half-plane of site are closer to site or receive a higher RSS from cells located at site as compared to site , and vice versa. This relation can be leveraged to reduce the ambiguity area. First of all, for every pair of visible sites/cells, their corresponding RSS can be used to determine in which half-planes the MU is situated. In total pairwise comparisons indicate in which half-planes the MU is located, where is the number of visible sites/cells. The intersections between the initial ambiguity area (the Voronoi polygon of the strongest site) and the half-planes resulting from pairwise comparisons of other different sites reduces the ambiguity area significantly. In our example , and only one half-plane resulting from the comparison between sites and can be used to refine the area as indicated by the arrow in Fig. 1(c). Specifically, since the RSS from cell is stronger than the RSS from cell , the MU is placed in the half-plane of site . Intersection with the initial Voronoi polygon results in the reduced area highlighted in Fig. 1(c).

Ii-B2 Leveraging Cell Information

The second step to further refine the remaining ambiguity area incorporates cell and sector information. Since a cell is only visible within its sector, the MU should be contained within sectors of all visible cells. Therefore, by calculating the intersection area between the remaining ambiguity area and sectors of all visible cells, the ambiguity area can be further reduced significantly. This is illustrated in Fig. 3, where intersection calculation between the ambiguity area after applying Pairwise Site Constraints, and sector areas of the three visible cells , and results in the reduced area shaded in Fig. 2(c), whose center of mass is deemed the location estimate.

Ii-B3 Discussion

Note that Crescendo does not depend on any propagation model but leverages only the relative RSS information between each pair of cells as well as the sectorization to obtain a tight ambiguity area for the user’s location.

The only information required by Crescendo to function is the location of the different cell towers and the sectorization information. This is readily available if the system is implemented at the provider side or can be calculated from crowdsourced data [31, 32].

Area calculations are computationally expensive and might adversely affect the real-time response of the system. In the next section, we provide the details of the Crescendo system, relaxing the ideal assumptions and handling the computational efficiency aspects.

Iii The Crescendo System

In this section, we provide the Crescendo system architecture followed by the details of its modules that provide a calibration/infrastructure-free and ubiquitous localization system. We assume a network structure similar to that presented in Section II-A with the typical noisy RF propagation characteristics, therefore relaxing the ideal assumptions of the previous section. Specifically, the heard cells by the MU might be located at the same site or covering the same sector. Additionally, due to noise, cells might be visible outside their ideal sector area. We also describe how Crescendo can compute the area intersections efficiently.

Fig. 5: Crescendo system architecture.

Iii-a Overview

Fig. 5 shows the system architecture. The system works in two phases: an offline phase and an online tracking phase.

Iii-A1 Offline Phase

During the offline phase, the system administrator uses the User Interface module to import/enter the required network information (e.g. site IDs and locations, cell and sector information, etc.) A virtual grid is generated and superimposed over the area of interest during this phase using the Grid Generator module. This virtual grid is used to speed up calculations as well as handling the inherent noise in RF propagation. The Pre-Computation module finally calculates the “discrete” Voronoi diagram of the area of interest, which is used to determine the initial user ambiguity area. It also pre-calculates associated parameters with each grid point (e.g. Pairwise Site Constraints and Containing Cell Set). This information is used during the online phase by the Online Constraint Evaluator module to reduce the running time and handle noise.

Iii-A2 Online Tracking Phase

This is the main operational phase of Crescendo, where location estimates are generated based on the visible network cells. The Cell Clustering module starts by clustering visible cells based on their tower locations and using the strongest cell from each tower to represent this tower. In the Online Constraint Evaluator module, representative site RSS values obtained from the Cell Clustering module are used to create online Pairwise Site Constraints. Additionally, all visible cells are included in the online Containing Cell Set. Based on these constraints, it also assigns scores to the different grid points based on their likelihood of being the points where the MU is located. Finally, the Location Estimator module uses the grid points scores to estimate the final MU location.

Fig. 6: The proposed gridding approach. Grid points representing the “discrete” Voronoi polygon of each cell have the same color.

Iii-B Virtual Gridding

Area calculations are computationally expensive and might adversely affect the real-time response of the system. To overcome this issue, we use a grid-based discretization approach. First, a discrete grid with a certain step size (e.g. 50m) is super-imposed on the area of interest as shown in Fig. 6. Then, instead of performing area intersection computations, we compare the expected constraints at each location (based on the location of the grid point relative to each cell) with the actual constraint state at each location (based on the signal heard from the different cells).

In particular, Offline Pairwise Site Constraints are calculated for each grid point by comparing the distance of the grid point to each pair of sites and creating a constraint that indicates that e.g. “Site is closer than site if the distance of the grid point to site is less than that to site . For sites a total of constraints is created for each grid point. Additionally, the Containing Cell Set is calculated for each grid point. A cell is added to the Containing Cell Set of a grid point if the grid point lies within the area defined by the sector of the cell assuming the sector area extends to infinity. If a cell belongs to the Containing Cell Set of a grid point, then all cells covering the same sector also belong to this containing set. A grid point can naturally be contained in cells from different sites. These distance-based calculations are pre-calculated offline and stored to speed up computations during the online phase.

While the system is running in real-time, grid points are scanned and the actual constraint value based on the RSS by the user device from the two sites is compared to the expected constraint value stored for each grid point by the Online Constraint Evaluator module. Additionally, visible cells are compared to cells in the Containing Cell Set of the grid point. All grid points start with a score of zero and each matching constraint leads to increasing the grid point’s score by 1.

Iii-C Location Estimator

The Location Estimator module extracts the grid points with maximum matching scores. Then it calculates the final location estimate as the center of mass of these grid points.

Iii-D Discussion

Note that the virtual gridding approach allows us to replace the expensive area computations by evaluations at discrete samples. These evaluations can be calculated offline and stored, significantly speeding up the online phase as we quantify in the evaluation section. This is further enhanced by the clustering performed by the strongest site/tower during the online phase.

In addition to reducing the computational complexity, the virtual gridding also allows us to better handle the noise in the RF signal. For example, in reality, when a cell is visible outside its sector area, this can lead to contradictions leading to an empty intersection when applying the basic idea without modification. The proposed virtual gridding approach solves this problem by assigning a score to each grid point based on its matching constraints. The MU estimated location is now based on the grid points that match the largest number of actual and expected constraints.

Iv Evaluation

In this section, we evaluate the proposed algorithm in two testbeds; an urban area of with a dense cellular network and a rural area of with a relatively sparse cellular network; using samples. Testbed properties are summarized in Table I. We first start by examining the effect of the different parameters on accuracy. Then, we compare our proposed algorithm to two of the most commonly used low-overhead outdoor localization algorithms, the Cell ID method and the Centroid method.

Property Testbed
Urban Rural
Area ()
Cell density (cells/) 224 100
Crescendo median error () 152 224
Cell ID median error () 187(-23%) 545(-143%)
Centroid median error () 214(-40.7%) 264(-17.8%)
TABLE I: Testbed Properties
Parameter Range Default value
Grid size (m) -
Cell density(cells/) -
Testbed Urban, rural Urban

TABLE II: Default parameter values used in evaluation

Iv-a Parameters Effect

We evaluate the effect of grid size and cell density on system performance. Table II shows the default parameter values used in evaluation.

Iv-A1 Grid Size

Fig. 7 shows the effect of changing the virtual grid size on system performance. The figure shows that increasing the grid size reduces the accuracy while significantly reducing the time required per location estimate due to the reduced number of virtual grid points.

Iv-A2 Cellular Network Density

Fig. 8 shows the effect of changing the cells density. This was obtained by uniformly dropping cells. The figure shows that, as expected, reducing the cells density leads to reducing the system’s accuracy due to the reduction of the available information. Nonetheless, using the default cell density, Crescendo can achieve accuracy of 152m. This also explains the higher accuracy of the system in urban areas compared to rural ones.

Fig. 7: Effect of changing the grid size.
Fig. 8: Effect of changing cell density.

Iv-B Comparison to Other Systems

We compare our proposed technique to two of the most commonly used infrastructure-free techniques: the Cell ID [29] and the Centroid method. In the Cell ID method, the location of the MU is estimated as the location of the strongest visible cell while in the Centroid method, the location is estimated as the center of mass of all visible sites. As shown in Fig. 9, Crescendo outperforms both methods by at least 18% and 15% in the urban and rural area, respectively. This is due to its novel incremental Voronoi tessellation technique and the use of sector information in addition to RSS.

(a) Urban area.
(b) Rural area.
Fig. 9: Comparison to other techniques.

V Conclusion

In this paper, we presented Crescendo, a ubiquitous low-overhead outdoor localization technique that works for all cell phones with no calibration and no additional infrastructure support. Crescendo depends on the Voronoi diagram of network sites, pairwise comparison between sites, as well as cell sector information to incrementally improve the localization accuracy without the need for data collection or special sensors.

We implemented and tested Crescendo in an urban and a rural area and compared its performance against existing techniques. Results show median accuracies of 152m and 224m in the urban and rural area, respectively, and an improvement over classical techniques of at least 18% and 15%, respectively.


This work has been supported by a grant from the Egyptian National Telecommunications Regulatory Authority (NTRA).


  • [1] P. Misra and P. Enge, “Special issue on global positioning system,” Proceedings of the IEEE, vol. 87, no. 1, pp. 3–15, 1999.
  • [2] H. Aly and M. Youssef, “Dejavu: an accurate energy-efficient outdoor localization system,” in ACM SIGSPATIAL GIS, 2013.
  • [3] M. Ibrahim and M. Youssef, “CellSense: An accurate energy-efficient GSM positioning system,” IEEE Trans. on Vehicular Technology, 2012.
  • [4] S. C. Ergen et al., “RSSI-fingerprinting-based mobile phone localization with route constraints.” IEEE Trans. Vehicular Technology, 2014.
  • [5] M. Ali et al., “SenseIO: Realistic ubiquitous indoor outdoor detection system using smartphones,” IEEE Sensors Journal, vol. 18, 2018.
  • [6] J. Wang et al., “WOLoc: WiFi-only outdoor localization using crowdsensed hotspot labels,” in IEEE INFOCOM, 2017.
  • [7] ——, “Learning-based outdoor localization exploiting crowd-labeled WiFi hotspots,” IEEE Transactions on Mobile Computing, 2018.
  • [8] M. Alzantot and M. Youssef, “UPTIME: Ubiquitous pedestrian tracking using mobile phones,” in IEEE WCNC, 2012.
  • [9] H. Aly et al., “Accurate and energy-efficient GPS-less outdoor localization,” ACM TSAS, 2017.
  • [10] ——, “LaneQuest: An accurate and energy-efficient lane detection system,” in IEEE PerCom, 2015.
  • [11] ——, “Robust and ubiquitous smartphone-based lane detection,” Pervasive and Mobile Computing, 2016.
  • [12] H. Aly and M. Youssef, “semMatch: Road semantics-based accurate map matching for challenging positioning data,” in ACM SIGSPATIAL GIS, 2015.
  • [13] H. Aly et al., “Map++: A crowd-sensing system for automatic map semantics identification,” in IEEE SECON, 2014.
  • [14] I. Constandache et al., “Towards mobile phone localization without war-driving,” in IEEE INFOCOM, 2010.
  • [15] M. Youssef et al., “GAC: energy-efficient hybrid gps-accelerometer-compass gsm localization,” in IEEE GLOBECOM, 2010.
  • [16] M. Ibrahim and M. Youssef, “Enabling wide deployment of GSM localization over heterogeneous phones,” in IEEE ICC, 2013.
  • [17] A. Chakraborty et al., “Network-side positioning of cellular-band devices with minimal effort,” in IEEE INFOCOM, 2015.
  • [18] H. Liu et al., “Mobile localization based on received signal strength and Pearson’s correlation coefficient,” International Journal of Distributed Sensor Networks, vol. 11, no. 8, p. 157046, 2015.
  • [19] R. Mohamed et al., “Accurate and efficient map matching for challenging environments,” in ACM SIGSPATIAL GIS, 2014.
  • [20] F. Zhu et al., “City-scale localization with telco big data,” in ACM International Conference on Information and Knowledge Management, 2016.
  • [21] Y. Huang et al., “Experimental study of telco localization methods,” in IEEE MDM, 2017.
  • [22] J. Paek et al., “Energy-efficient positioning for smartphones using cell-id sequence matching,” in ACM MobiSys, 2011.
  • [23] A. M. AbdelAziz and M. Youssef, “The diversity and scale matter: Ubiquitous transportation mode detection using single cell tower information,” in IEEE VTC, Spring 2015.
  • [24] M. Abbas et al., “WiDeep: WiFi-based accurate and robust indoor localization system using deep learning,” in IEEE PerCom, 2019.
  • [25] H. Rizk et al., “CellinDeep: Robust and accurate cellular-based indoor localization via deep learning,” IEEE Sensors Journal, 2018.
  • [26] R. Elbakly et al., “TrueStory: Accurate and robust RF-based floor estimation for challenging indoor environments,” IEEE Sensors Journal, vol. 18, 2018.
  • [27] A. Shokry et al., “DeepLoc: a ubiquitous accurate and low-overhead outdoor cellular localization system,” in ACM SIGSPATIAL GIS, 2018.
  • [28] H. Rizk et al., “Effectiveness of data augmentation in cellular-based localization using deep learning,” in IEEE WCNC, 2019.
  • [29] K. Dufková et al., “Active GSM cell-id tracking: where did you disappear?” in Proceedings of the first ACM international workshop on Mobile entity localization and tracking in GPS-less environments.   ACM, 2008.
  • [30] F. Aurenhammer, “Voronoi diagrams - a survey of a fundamental geometric data structure,” ACM Computing Surveys (CSUR), vol. 23, no. 3, pp. 345–405, 1991.
  • [31] (2018) OpenCelliD. [Online]. Available:
  • [32] Z. Li et al., “Identifying value in crowdsourced wireless signal measurements,” in Proceedings of the 26th International Conference on World Wide Web.   International World Wide Web Conferences Steering Committee, 2017.