CDR Based Trajectories: Tentative for Filtering Ping-pong Handover

by   Joonas Lomps, et al.
University of Tartu

Call Detail Records (CDRs) coupled with the coverage area locations provide the operator with an incredible amount of information on its customers' whereabouts and movement. Due to the non-static and overlapping nature of the antenna coverage area there commonly exist situations where cellphones geographically close to each other can be connected to different antennas due to handover rule - the operator hands over a certain cellphone to another antenna to spread the load between antennas. Hence, this aspect introduces a ping-pong handover phenomena in the trajectories extracted from the CDR data which can be misleading in understanding the mobility pattern. To reconstruct accurate trajectories it is a must to reduce the number of those handovers appearing in the dataset. This letter presents a novel approach for filtering ping-pong handovers from CDR based trajectories. Primarily, the approach is based on anchors model utilizing different features and parameters extracted from the coverage areas and reconstructed trajectories mined from the CDR data. Using this methodology we can significantly reduce the ping-pong handover noise in the trajectories, which gives a more accurate reconstruction of the customers' movement pattern.



page 1

page 2

page 3

page 4


Performance Analysis of Mobile Cellular-Connected Drones under Practical Antenna Configurations

Providing seamless connectivity to unmanned aerial vehicle user equipmen...

Semantic-based Anomalous Pattern Discovery in Moving Object Trajectories

In this work, we investigate a novel semantic approach for pattern disco...

A Study of the Spatio-Temporal Correlations in Mobile Calls Networks

For the last few years, the amount of data has significantly increased i...

Dynamic Standalone Drone-Mounted Small Cells

This paper investigates the feasibility of Dynamic Horizontal Opportunis...

Route Reconstruction from Traffic Flow via Representative Trajectories

Understanding human mobility is an important aspect of traffic analysis ...

Inferring Accurate Bus Trajectories from Noisy Estimated Arrival Time Records

Urban commuting data has long been a vital source of understanding popul...

Effects of Beamforming and Antenna Configurations on Mobility in 5G NR

The future 5G systems are getting closer to be a reality. It is envision...
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

In the last year, we witnessed an increase in the scientific research contribution concerning the usage of mobile data or call detail records (CDRs) in many applications related to mobility aspect and intelligent transportation systems such as trajectory reconstruction [1, 2], mobility hubs discovery[3], traffic monitoring [5], mobility episodes detection[4]

, travel time estimation

[6], etc. From this perspective, it is clear that mobile data has a great potential in depicting mobility patterns [8] from macroscopic perceptive and to some extent from microscopic level [7]. However, during the process of manipulating the CDR data and extracting trajectories from it, many researchers noticed that the handover phenomena, which is the process of transferring a connection from one cell to another without disrupting the session, create anomalies and misleading information about the movement of the mobile users which affect the quality of the mobility patterns [9]. In particular the frequent handovers between two cells also known as ”ping-pong handover” occurs to be the most troublesome. The phenomena are well known and are caused by fluctuations in signal strength of two cells covering the same area with subscriber located on the boundaries of both cells.
Numerous approaches have been proposed to reduce the “ping-pong handover” distortions appearing in the trajectories extracted from CDR data. In [10] the authors presented a time-dependent weight approach where they concluded that it was very difficult to have a reliable trajectory-based CDR data. Some studies used a more straightforward method by eliminating or disregarding all the events where the device has registered in a ping-pong manner (ABA is transformed to AB) [11] other researchers proposed a set of rules for different recurrent sequences and how to modify them to reflect a more reasonable traverse pattern of a mobile device during trips [12].
Another technique has been investigated in [13], the approach has two major steps the first is detecting the ping-pong handover and the second one is the replacement process. The detection is executed based on accumulating and spotting the repeated sequence of different cells in the trajectory throughout time. The replacement is performed based on three different approaches. The first one is a representative technique which focuses on replacing the whole ping-pong sequence by the cell symbol that has the highest number of visits recorded. However, the approach does not consider if the cells are neighbouring cells or not (coverage overlap between the cells). The second method is a limits technique that replaces the whole ping-pong sequence by the entry cell and the exits cell which solves the weakness of the previous methods to some extent. The last technique is a hybrid one where the two first approaches are mixed. The results demonstrated that the hybrid technique was the closest to reality.
Filtering ping-pong handover can be very challenging due to the topology and signal propagation within the network coverage since it has this tendency to fluctuate and change due to many factors such as weather and obstacles. In some case, as it was proposed in [14] the filtering process is done by focusing on the trajectories extracted from the CDR data and applying a split process when the sequences are not unique. Then, the middle cell is included in both sequences. This approach is also adopted by [15] with slight difference since it considers the time change in the occurrence of the events.
In [17], the authors presented a novel approach for detecting handover based on trajectory data mining. The idea is to build upon spotting the frequent patterns from a large historical dataset of moving objects. The algorithm performance was evaluated based on simulated data and demonstrated that the proposed methods were capable of reducing the ping-pong handover, especially, within the microcells in the mobile networks. A different approach was proposed in [16], to handle the ping-pong phenomena by care-of-address used in the previous access network when the device is connected. Then, to detect it is very simple is by discovering duplicated address and process validation of the new care-of-address to be sure. However, this method is developed based on additional information not only CDR data.
Hence, in this paper, we are proposing a new approach to filter ping-pong handover phenomena from trajectories extracted from CDR data. The proposed model is based on anchors that are defined in such a manner to consider a variety of features concerning CDR data and mobility patterns to discover and filter the ping-pong anomalies from the trajectories.

Ii Problem Statement

Cellular networks or mobile networks are distributed over land areas through cells where each cell includes a fixed location transceiver known as a base station. Together, these cells provide radio coverage over larger geographical areas. The cellular networks are usually portrayed in a honeycomb pattern, which might be the case for larger rural areas where the network usage is limited due to the number of users, whereas for urban areas it commonly happens that the same geographical area is covered by multiple cells, all different sizes and capacity.

To enable users equipment to communicate even if the equipment itself is moving through cells during transmission, the networks use a crucial functionality called handover. This is a process in telecommunication and mobile communication in which an ongoing call or a data session is transferred to a new cell to keep the signal uninterrupted when a mobile user moves between different cells.
Unfortunately, moving from one cell to another is not the only reason the network can initiate a handover from one cell to another, it can also be caused by fluctuations of the cell coverage area, interference, weather, the load on the cell, users predicted usage of the service, tall buildings and other reasons. These reasons are most commonly the reason for ping-pong handover where the user is switched back or forth between some cells, causing irregularities in the data. We have also noticed several handovers to cells that according to the cell coverage plan should not be close to the area, but are on the receiving end of a handover, we call these cases hops. These hops are caused by cells over radiating and the fluctuations of the cell coverage area due to weather conditions and they insert fake movement into the trajectory of the user and need to be removed for correct trajectory estimation.
We propose a novel anchors model utilizing different features and parameters extracted from the coverage area and reconstructed trajectories mined from CDR data to filter out ping-pong handovers and hops from the sequential data.

Iii Proposed Methodology

As described in the previous section the methodology aims to filter out the cases of ping-pong handovers, as well as hops to cells that are for some reason radiating further than expected. To this end, we have devised these eight anchors that decide whether the destination event should be accepted or not.
The first event will be accepted by default, unless it is not present in the cell coverage plan, as we have nothing to compare it with after this we follow this logic, which is also described in figure 1:

Fig. 1: Overview of the algorithm to filter events
  1. Check that the source event is not from the same cell that the destination event. If they are not the same move on to the next anchor, otherwise accept the destination cell.

  2. We check if the destination cell is present in the cell coverage plan. If the destination cell is not present in the coverage plan we discard the event and compare the following event with the same source event. Reason being that the cell coverage plan is in constant change and unfortunately we do not have the resources and/or access to keep it up to date.

  3. We compare the times of the two events and if the then we move on to the next anchor, otherwise accept the event and move to the next event. For our data threshold of 5-10 minutes worked the best. The reasoning behind this is that in those 5-10 minutes person using a vehicle in a city can move up to 3-6 kilometres or on the freeway up to 6-11 kilometres, which would make the entropy of the new location too large to be compared with the anchor method.

  4. Next we make sure that the distance from the source cell to the destination cell divided the distance from the source cells centroid to the destination cell centroid is below the (20% in our case) we move to the next anchor, otherwise, we disregard the destination event. This anchor removes most of the hops too far away cells that are caught due to the fluctuations of the cells coverage area. Additionally, normal handovers from one cell to a neighbouring cell due to users movement do not get affected by this anchor.

  5. Followed by calculating the average speed needed to move from the source cell centroid to the destination cell centroid disregarding the topology in the given time between the two events. If the average speed

    we move to the next anchor, otherwise we disregard the destination event, as it should not be possible to move that fast, making it highly probable that it is a case of a hop or a ping-pong handover. We have chosen 90km/h as the


  6. Next the proportion of the coverage area of the two cells intersection to their union is compared to a threshold percentage. If it is below the set threshold ( = 50% in our case), we move on to the next anchor, otherwise discard the event. Doing this allows us to discover handover events where both of the cells cover a very similar area, making the handover needed on the networks side of the view, but not the trajectory wise, most commonly it happens where the user spends a lot of time, e.g. home or work.

  7. This is followed by the comparison of the area of the intersection of the two cells with source and destination cell areas. If either of them is percentually larger than a given threshold ( = 80% in our case) we disregard the destination event, otherwise, we move to the last anchor point. This removes the cases where there are handovers from a smaller cell to a larger cell that almost entirely covers the latter or vice versa.

  8. Finally, we check for the cell pattern ”ABA”, meaning if the event after the current destination event is from the same cell as the source event and that the time difference of the last two events is below the

    in anchor 3. If that is the case, we classify it as ping-pong and discard that event, otherwise, we accept the destination event.

These anchors let us filter out most of the ping-pong and hop handovers from the CDR data.

Iv Experiments, Results and Discussion

In order to test our developed methodology, we collected our own dataset using a mobile application to periodically log the GPS locations of the phone as well as all the location update events it receives. The GPS coordinates will be used as ground truth and the location update events will serve as the CDR data.
The phone was using a navigation application while travelling via car. It was also connected to all the usual social media applications commonly used by a large demographic of smartphone users e.g. Facebook, Messenger, Instagram. This setup will simulate a real-world use case and provide us with a close to real data since those applications periodically pull updates from the internet, which all generate a point of data at the operators’ side.
Our collection was split into two different trajectories in order to get a better understanding of the problematic locations on the highway: first started in Tartu city, used the main highway to go to Tallinn city and then some movement inside the town itself, another one was the way back from Tallinn to Tartu city. In total the two trajectories form a dataset spanning over 55 hours, has 1757 GPS locations and 1174 location update events from 252 unique cells.

Trajectory 1 2
Dataset Original Filtered Original Filtered
Location updates 898 296 276 76
Unique cells 203 131 90 54
Highest cell frequency 69 16 15 5
TABLE I: Comparisons of the statistics of the original and filtered trajectories

Using the proposed methodology on the collected datasets resulted in filtering 802 events which removed a total of 80 unique cells from the datasets. The most frequent cells blinked 69 and 62 times whereas for the filtered case they were only seen 16 and 15 times respectively. It is also worth to mention that these cells cover the areas where the user spent the most time with the application running. Statistics are also displayed in table I and table II reflects the number of events each anchor accepted or discarded.

Trajectory 1 Trajectory 2
Anchor Accepted Discarded Accepted Discarded
1 - 48 - 1
2 - 69 - 9
3 10 - 1 -
4 - 230 - 27
5 - 246 - 140
6 - 19 - 13
7 - 38 - 11
8 - 0 - 0
TABLE II: Number of events accepted or discarded by certain anchors with the following threshold values = 10 minutes (3), = 20% (4), = 90km/h (5), = 50% (6) and = 80% (7)

Figures 2 and 3 show the effects of our anchors based filtering algorithm in trajectory wide view and a more detailed view of an urban city center scenario. It can be seen that on the freeway several cells that do not contain the GPS points are removed. Same can be noticed for the urban area. Additionally, there are two clusters on the highway that contain several cells that were excluded from the trajectory although covering the GPS points.
For evaluation, we created two ground truth sets using the GPS and location update events collected for the trajectories using the temporal plane to associate a GPS location to every event. Then, for each event, the distance from the cell centroid to the associated GPS location was calculated and compared to the cell radius. For the first ground truth, we used a strict rule that the GPS location has to be in the range of the cell radius. For the second one, we took into account the fact that the cells coverage area tend to fluctuate due to environmental conditions and allowed the distance from the centroid to be , where is the cell radius.

Trajectory 1 Trajectory 2
Groudtruth (GT) 1 2 1 2
Unique GT events 380 421 185 205
Unique Filter events 296 296 76 76
Unique GT cells 115 128 54 58
Unique Filter cells 131 131 54 54
Matching cells 95 106 41 43
Not in GT cells 36 25 16 11
Not in Filter cells 20 22 16 15
Precision 0.725 0.809 0.759 0.796
Recall 0.826 0.828 0.759 0.741
TABLE III: Evaluation paramaters and results

Table III reflects the results of the evaluation and event-based comparison can be seen on figure 5. Latter clearly shows cases where the GPS location distance from the cell centroid is a multiple of the cell radius. The evaluation shows that the precision of the anchor-based filtering increased when the cell coverage area fluctuation is taken into account. The overall difference between cells included by ground truth 1 and 2 can be seen in figure 4.
There are still cases where handover to a far away from cell happens that are not filtered but with further parameter tuning and investigation into those specific cases might give us a hint of how to remove those. Also, there exist some false positive cases where events of which its cell that covers the area of the GPS location are removed, but as the graph does not show the temporal aspect it could be an anomaly or not. Additionally, looking back at a previously discarded event when processing the current event might lead to the removal of false-positive cases.

Fig. 2: Filtering effect of the methodology. Red dots indicate the recorded GPS locations and the circles are the associated CDR based trajectory - red circles indicate the cells that disappeared from the trajectory due to filtering the events and black circles are the ones remaining after filtering.
Fig. 3: Filtering effect of the methodology in an urban area (Tallinn). Red dots indicate the recorded GPS locations and the circles are the cells associated to the CDR based trajectory - red circles indicate the cells that disappeared from the trajectory due to filtering the events and black circles are the ones remaining after filtering.
Fig. 4: Trajectory 1, ground truth 1 (left) vs ground truth 2 (right). Red dots indicate the recorded GPS locations and the circles are the cells associated to the CDR based trajectory - black circles indicate the cells that are present in both sets, the ground truth and filtered set, red circles indicate the cells that present only in the filtered set and blue ones only the ones in the ground truth.
Fig. 5: Comparison of the distances from events cell centroid to its associated ground truth GPS location (blue) and the cells’ radius (orange). Missing distances indicate cells for which there was no coverage information.

V Conclusion

The preliminary study focuses on presenting a new concept of filtering ping-pong handover events from CDR trajectory data. The proposed method uses anchors method with eight points, taking into account the time, intersection, speed, coverage, similarity, and sequence. Using these, it filters out events it decides that are either ping-pong handover or hops. The results show that our concept allows us to discover and remove a great proportion of events that are not intersecting with the ground truth path. We also propose additions to the methodology to increase the accuracy of the discarding of hop events and reduce the number of false-positive removals.


The authors gratefully acknowledge the contribution of Tele2 Eesti for their help in providing the data through the project ”Population Movement Analytics, Monitoring and Prediction Algorithms”. This project and research is supported by Archimedes Foundation and Mooncascade OÜ under the Framework of Support for Applied Research in Smart Specialization Growth Areas.



  • [1] Vajakas, Toivo, Jaan Vajakas, and Rauni Lillemets. ”Trajectory reconstruction from mobile positioning data using cell-to-cell travel time information.” International Journal of Geographical Information Science 29.11 (2015): 1941-1954.
  • [2] Liu, Zhang, et al. ”Mapping hourly dynamics of urban population using trajectories reconstructed from mobile phone records.” Transactions in GIS 22.2 (2018): 494-513.
  • [3] Hadachi, Amnir ,Lind, Artjom, Lomps, Joonas, Piksarv, Peeter.” From Mobility Analysis to Mobility Hubs Discovery: A Concept based on Using CDR Data of the Mobile Networks”. 10th International Congress on Ultra Modern Telecommunications and Control Systems and Workshops (ICUMT), 2018
  • [4]

    Batrashev, Oleg; Hadachi, Amnir; Lind, Artjom; Vainikko, Eero, “Mobility Episode Detection from CDR’s Data using Switching Kalman Filter”, The 4th ACM SIGSPATIAL international Workshop on Mobile Geographic Information Systems, Seattle, Washington, USA, November, 2015.

  • [5] Janecek, Andreas, et al. ”The cellular network as a sensor: From mobile phone data to real-time road traffic monitoring.” IEEE Transactions on Intelligent Transportation Systems 16.5 (2015): 2551-2572.
  • [6] Bar-Gera, Hillel. ”Evaluation of a cellular phone-based system for measurements of traffic speeds and travel times: A case study from Israel.” Transportation Research Part C: Emerging Technologies 15.6 (2007): 380-391.
  • [7] Lind, Artjom, Amnir Hadachi, and Oleg Batrashev. ”A new approach for mobile positioning using the CDR data of cellular networks.” Models and Technologies for Intelligent Transportation Systems (MT-ITS), 2017 5th IEEE International Conference on. IEEE, 2017.
  • [8] Ricciato, Fabio, et al. ”Beyond the “single-operator, CDR-only” paradigm: An interoperable framework for mobile phone network data analyses and population density estimation.” Pervasive and Mobile Computing 35 (2017): 65-82.
  • [9] Demissie, Merkebe Getachew, Gonçalo Homem de Almeida Correia, and Carlos Bento. ”Exploring cellular network handover information for urban mobility analysis.” Journal of Transport Geography 31 (2013): 164-170.
  • [10] Burkhard, Oliver, et al. ”Extracting regular mobility patterns from sparse CDR data without a priori assumptions.” Journal of Location Based Services 11.2 (2017): 78-97.
  • [11] Fiadino, Pierdomenico, et al. ”Steps towards the extraction of vehicular mobility patterns from 3G signaling data.” International Workshop on Traffic Monitoring and Analysis. Springer, Berlin, Heidelberg, 2012.
  • [12] Schlaich, Johannes, Thomas Otterstätter, and Markus Friedrich. ”Generating trajectories from mobile phone data.” Proceedings of the 89th annual meeting compendium of papers, transportation research board of the national academies. 2010.
  • [13] Rodriguez-Carrion, Alicia, Carlos Garcia-Rubio, and Celeste Campo. ”Detecting and Reducing Biases in Cellular-Based Mobility Data Sets.” Entropy 20.10 (2018): 736.
  • [14]

    Hadachi, Amnir, et al. ”Cell phone subscribers mobility prediction using enhanced Markov Chain algorithm.” Intelligent Vehicles Symposium Proceedings, 2014 IEEE. IEEE, 2014.

  • [15] Ghanem, Kinan, et al. ”Reducing ping-pong handover effects in intra EUTRA networks.” Communication Systems, Networks & Digital Signal Processing (CSNDSP), 2012 8th International Symposium on. IEEE, 2012.
  • [16]

    Tao, Ming, et al. ”SmartHO: mobility pattern recognition assisted intelligent handoff in wireless overlay networks.” Soft Computing 20.10 (2016): 4121-4130.

  • [17] Han, Nan, et al. ”Handover detection approach based on trajectory data mining techniques.” The Journal of Engineering 2018.16 (2018): 1534-1537.
  • [18] Nguyen, Minh Thang, Sungoh Kwon, and Hongsoog Kim. ”Mobility Robustness Optimization for Handover Failure Reduction in LTE Small-Cell Networks.” IEEE Transactions on Vehicular Technology 67.5 (2018): 4672-4676.
  • [19] OpenCellID,