oss

You are currently browsing the archive for the oss category.

New preprint and accompanying software release: “Systematic biases in mobile phone mobility data from heterogeneous tower density,” with Erick Elejalde (L3S, Leibniz Universität Hannover).    

Mobile phone records (CDRs and the higher-resolution XDRs) are now standard inputs for human mobility, epidemic modelling, and disaster response, but the spatial distribution of cell towers introduces measurement biases that are rarely quantified. Towers cluster in cities and thin out in rural areas. The result is a spatially structured detection floor: short rural trips never cross a sector boundary and are invisible, rural users get misattributed to oversized Voronoi cells, and origin-destination matrices end up artificially urban-centric. The biases are correlated with the very variable (urbanicity) that researchers most often want to study.

We characterise the problem and propose a six-step correction pipeline:

1. Sector polygons inferred from antenna azimuth and height, replacing the standard tower-point Voronoi tessellation
2. Detection-floor modelling at the per-site level
3. Dasymetric redistribution of census population onto an H3 hexagonal grid
4. OD construction with intra-site sector-crossing recovery
5. Inverse probability weighting with a tower-density-aware inclusion probability          
6. Fay-Herriot small area smoothing toward a gravity prior

Applied to the Región Metropolitana de Santiago using a 63,832 antenna catalog, the 2024 Chilean census, and 6.5 weeks of XDR data:

– Sector polygons give a 3.0x gain in effective spatial resolution over tower-point Voronoi (median 299 m versus 894 m)
– The 50% detection threshold ranges from 16 m in the urban core to 2,542 m at the most isolated site
– Intra-site sector crossings recover roughly 100 million short-distance trips (median displacement 429 m) that are invisible at the tower level
– IPW uplifts rural comuna flows by 50 to 73%, while the urban core is slightly downweighted
– Fay-Herriot shrinkage weights vary from about 0.7 in the urban core to under 0.1 at the periphery, mirroring the tower-density gradient

The pipeline is implemented in mobilens, an MIT-licensed Python library that is operator- and country-agnostic. The minimum inputs are a tower catalog with azimuth and height, a census population layer at any administrative level, and a study area boundary polygon. Steps 1 to 3 (the spatial characterisation of the bias) can be carried out without any XDR data, which makes the library useful even where records are unavailable.

– Code: https://github.com/leoferres/mobilens
– Preprint: https://zenodo.org/records/19484460

Substantive feedback before journal submission is welcome!!

Tags: , ,