Determining trajectories from mobile phone data

The method enhances the accuracy and efficiency of determining user mobility trajectories from mobile device signaling data by identifying static and mobile sessions, reducing oscillation noise, and reconstructing trajectories with high precision and reduced computational demands.

FR3125197B1Active Publication Date: 2026-01-02UNIV GUSTAVE EIFFEL +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
FR2021007437
Authority / Receiving Office
FR · FR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-07-08
Publication Date
2026-01-02
Estimated Expiration
2041-07-08

AI Technical Summary

Technical Problem

Existing mobile device signaling data lacks precision in geographic and temporal location, leading to inaccurate tracking of user mobility, and requires substantial computing resources due to sporadic data acquisition frequency and significant data volume.

Method used

A method to determine user trajectories using mobile device signaling data involves collecting data with timestamps, identifying static and mobile sessions, merging data series to reduce oscillation phenomena, and constructing moving series to detect mobility accurately, with steps including cumulative time thresholds, antenna merging, and trajectory reconstruction.

Benefits of technology

The method achieves accurate mobility detection with 80% reliability and 96% recall, determining user trajectories with an accuracy of approximately 190 meters, reducing computational resources and smoothing data noise.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000016_0000
    Figure 00000016_0000
  • Figure 00000017_0000
    Figure 00000017_0000
  • Figure 00000018_0000
    Figure 00000018_0000
Patent Text Reader

Abstract

This document describes a method for determining a set of trajectories of a user carrying a mobile device ( ) in a mobile telephone network, over a given territory, comprising a plurality of antennas ( ), the method essentially consisting of collecting signaling data ( ) of said mobile device ( ), each signaling data comprising a timestamp ( ) associated with coordinates ( ) of an antenna communicating with said mobile device, and determining at least one series of successive signaling data ( ) associated with a single common antenna, and calculating a cumulative time for each series of signaling data, and determining the set of trajectories from said set of mobile series ( ).
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: Determination of trajectories from mobile phone data technical field

[0001] This document relates to the field of trajectory determination from mobile telephony data. More specifically, the present invention relates to a method for determining a set of trajectories of a user wearing a mobile telephony device, to a data processing device enabling the implementation of this method, to a computer program comprising instructions that enable the implementation of the method, and to a computer-readable recording medium comprising instructions that enable a computer to implement the method. Previous technique

[0002] In order to understand and analyze population mobility in urban areas, household surveys have been the only source of data for determining the travel trajectories of individuals within the population. Other data sources exist today, such as smart cards, the Global Positioning System (GPS), geolocation-based social networks, and mobile phone records.

[0003] Among the new sources of mobility data, mobile device signaling data emitted by mobile network operators is a preferred option for tracking the trajectory of mobile devices connected to these mobile networks. Indeed, this signaling data is available to all subscribers of a network provider, which typically covers a large number of users, generally in the tens or hundreds of millions. This signaling data is collected continuously over long periods, enabling mobility studies spanning months or years. Furthermore, this signaling data is collected passively as part of user billing and therefore does not require any special equipment for collection. However, this signaling data lacks precision in terms of geographic and temporal location.Indeed, the location of the mobile device based on signaling data can only be correlated with the coverage area of ​​that mobile device or the position of the antennas with which it communicates. Furthermore, the data acquisition frequency is determined by the mobile device's communication frequency, whether it be phone calls, text messaging, or internet data usage, etc., which are all events. sporadic. Finally, the amount of signaling data collected is significant and requires substantial computing resources.

[0004] Consequently, signal data presents a promising source for tracking the mobility of people in urban areas, but there is a need for methods to deduce the location of people accurately and reliably from this signal data. Summary

[0005] To this end, according to a first aspect, the present document proposes a method for determining a set of trajectories of a user carrying a mobile device in a mobile telephone network, over a given territory, comprising a plurality of antennas, the method essentially consisting of: (a) collect signaling data from said mobile device, each signaling data including a timestamp associated with coordinates of an antenna communicating with said mobile device, (b) determine at least one series of successive signaling data associated with a single common antenna, and calculate a cumulative time for each series of signaling data, (c) for each signaling data series, when the cumulative time exceeds a first time threshold, label said signaling data series as a static series, (d) compare two successive static series, and where a first and a second successive static series are associated with the same antenna, and where intermediate signaling data located between the first and second static series are associated with other antennas, different from the common antenna; and where the number of antennas associated with the intermediate signaling data is less than a threshold of antennas, merge the first and second static series into a single static series, (f) construct a set of moving series comprising the signaling data excluded from the static series, and (g) determine the set of trajectories from said set of moving series.

[0006] Steps (c) and (d) enable the detection of static and mobile user sessions. In particular, step (d) enables the detection and smoothing of signaling data resulting from oscillation phenomena, which are inherent to mobile telephony communications. Indeed, the allocation of a mobile device to an antenna is governed by strategies specific to the mobile phone provider and is based on dynamic measurements such as the signal strength emitted by the mobile device or the availability level of surrounding antennas. This can result in the device switching between two or more antennas and therefore induces The phenomena of oscillation. Thus, the inventors observed that the process makes it possible to detect periods of mobility when the user is actually moving, with high reliability. Indeed, the inventors found that the determination of periods of mobility was accurate to 80% and recalled to 96%.

[0007] Mobile device signaling data can be collected for a period of time of one or more days.

[0008] In step (d), the intermediate signaling data can be deleted or stored in a separate series from the static series and the moving series.

[0009] Mobile device signaling data can be collected for various mobile device communication events, such as: - voice communications or the exchange of SMS text messages ("Short Message Service" in English), - intercellular transfers, - updates to location areas (LA, "location area" in English) and tracking areas (TA, "tracking area" in English), i.e. updates when there are cell or antenna changes in an LA area, generally covered by a 2G / 3G network and a TA area, generally covered by a 4G network, - periodic requests issued by the mobile phone network to update the location of the mobile device, - Connections and / or disconnections of the mobile phone network, i.e., when a mobile device joins or leaves the mobile phone network upon its activation or deactivation, - Internet data exchanges, which include, among other things, requests to allocate internet resources to mobile applications running on the mobile device.

[0010] According to one embodiment, step (g) may include the following substeps: (gl) construct a set of recurrent trajectories comprising the moving series corresponding to the same trajectory, (g2) determine an average duration of said trajectory from the set of recurring trajectories, (g3) for each moving series determined in step (gl), temporally scale said moving series to have a total duration equal to the average duration, (g4) for each moving series scaled in step (g3), sample said moving series according to a determined time step.

[0011] Determining recurring trajectories allows for the temporal enrichment of data for the same trajectory and the correction of spatial biases. The inventors have found that the method makes it possible to deduce the user's trajectories with an accuracy on the order of 190 m.

[0012] The determined time step can be between 0.5 and 2 minutes.

[0013] Step (gl) may include the following substeps: (gl 1) For each pair of moving series, determine the Hausdorff distance between said moving series, (g 12) determine the set of recurrent trajectories by partitioning the Hausdorff distances obtained in step (gl 1).

[0014] Step (g) may further include, after substep (g2), the following substeps: (g21) calculate the median duration of the trajectories of the set of recurring trajectories, (g22) filter from the set of recurring trajectories, the moving series having a trajectory duration greater than 50% of said calculated median.

[0015] Step (gl2) can be performed by the DBSCAN algorithm (“density-based spatial clustering of applications with noise”).

[0016] Each trajectory in the set of trajectories can include the averages of the antenna coordinates of the signaling data at each determined time step.

[0017] The process may include after step (d), for each static series, a step (e) consisting of removing the static label from said static series when the cumulative time for this static series is less than a second time threshold.

[0018] The method may include, after step (e), a step consisting of determining a static position of the user, said step comprising: - calculate, for each static series, a centroid of the coordinates of the antennas associated with signaling data included in said static series, - partitioning of the centroids obtained into several partitions comprising the centroids as partitioned and the static series associated with said centroids, - calculate, for each partition, a barycenter of the centroids, - assign to each static series a static position, said static position being the barycenter of the partition comprising said static series.

[0019] The first time threshold may be between 5 and 60 minutes, in particular equal to 20 minutes. The second time threshold may be between 5 and 60 minutes, in particular equal to 20 minutes. The value of the second time threshold may be equal to the value of the first time threshold.

[0020] The antenna threshold can be between 1 and 10, in particular equal to 2.

[0021] According to another aspect, the present document relates to a method for characterizing the mobility of a population in an agglomeration, the method comprising the following steps: (1) determine sets of trajectories according to any one of the preceding claims for a plurality of users, (2) determine common trajectories for a specified number of users.

[0022] The method may include superimposing one or more common trajectories onto a map of the given territory.

[0023] According to another aspect of the invention, a data processing device is proposed comprising a centralized controller having a memory and enabling the implementation of the process according to the invention.

[0024] According to another aspect of the invention, a computer program is proposed comprising instructions which, once loaded and implemented on a computer, allow the implementation of the method according to the invention.

[0025] According to another aspect of the invention, a computer-readable recording medium is proposed comprising instructions which, when executed by a computer, lead the computer to implement the process according to the invention. Brief description of the drawings

[0026] Other features, details and advantages will become apparent upon reading the detailed description below, and upon analysis of the accompanying drawings, on which:

[0027] [Fig-1] Fig.1 schematically illustrates a trajectory, obtained by geolocation of a user wearing a mobile device connected to a mobile phone network;

[0028] [Fig.2] Fig.2 shows a block diagram of an example of the processing steps signaling data from the mobile device to determine a trajectory of the user carrying the mobile device;

[0029] [Fig.3] Fig.3 shows a block diagram of an example of the determination steps of the user's trajectory from the signal data after their processing by the steps of [Fig.2];

[0030] [Fig. 4] Figure 4a illustrates the raw signaling data for a user and these are the signaling data after their processing by the steps of [Fig.2],

[0031] [Fig. 5] Fig. 5 shows a set of recurrent trajectories obtained by the steps of the [Fig.3].

[0032] [Fig.6] Fig.6 shows a user trajectory determined according to the steps of [Fig.3] in comparison with the actual trajectory of the user obtained by geolocation. Detailed description

[0033] In the figures, the same references designate identical or analogous elements.

[0034] With reference to Figures 1 to 3, a user carrying a mobile device 1 moves within an urban area 10 along a trajectory 12 obtained by a geolocation system such as GPS (Global Positioning System). The mobile device 1 can communicate with a plurality of antennas c of a mobile telephone network covering the urban area 10. The communications of the mobile device with the mobile telephone network generate signaling data, where n is an integer, which is collected and stored in databases, for example by the mobile telephone network provider. Figures 2 and 3 illustrate the steps of an example of the method for determining one or more trajectories of the user using the signaling data.

[0035] The method includes a step 102 of collecting signaling data over an acquisition period, for example several days or several months, during which the mobile device 2 is used. Each signaling data point^ includes a timestamp associated with coordinates of the antenna communicating with the mobile device 2 to generate said signaling data The coordinates antenna can be determined by the longitude and latitude of the antenna C^. The signaling data (¾ forms a mobile telephony trace fi.

[0036] Signaling data from the mobile device 2 can be collected for various communication events of the mobile device, for example for the following events: - voice communications or the exchange of SMS text messages ("Short Message Service" in English), - intercellular transfers, - updates to location areas (LA, "location area" in English) and tracking areas (TA, "tracking area" in English), i.e., updates during cell or antenna changes between an LA area, generally covered by a 2G / 3G network, and a TA area, generally covered by a 4G network, - periodic requests issued by the mobile phone network to update the location of the mobile device, - connections and / or disconnections from the mobile network, i.e., when the mobile device joins or leaves the mobile network upon activation or deactivation, and / or - Internet data exchanges, which include, among other things, requests to allocate internet resources to mobile applications running on the mobile device.

[0037] The method then includes a step 104 of calculating a cumulative time for a series of successive signaling data points generated in connection with a single antenna common to said signaling data points. Given the large number of signaling data points, this step 102 makes it possible to provide an estimate of the duration for which the mobile device 1 is associated with a given antenna while limiting the necessary computing resources. The cumulative time can be calculated for signaling data points (¾) collected for a given day.

[0038] For each series of multiple signaling data, the cumulative time calculated in the previous step is compared to a first time threshold TH. If the cumulative time is greater than the first time threshold Tw, the series is labeled as a static series a, where k is an integer. The first time threshold Tw is equal to 20 minutes but can take another value between 5 and 60 minutes. This step establishes a set of K static series. A1 = 5 . 3 r 1 1 k KJ

[0039] Signaling data is sensitive to the oscillation phenomena characteristic of the mobile telephone network. These phenomena result in antenna changes within a signaling data series even when the mobile device 1 has not moved. These phenomena can lead to the erroneous determination of a movement of the mobile device 2. Figure 4a shows signaling data collected over 7 days and represented by the coordinates ]i, 301, 302, 303, 304, 305, 306, and 307, of the antennas with which the mobile device communicated during that day. The signaling data surrounded by dashed circles in Figure 4a shows an antenna change that does not correspond to a movement of the mobile device. During a day of mobile device use, a user may have several static series, and each may be composed of one or more antennas.

[0040] To limit these oscillation phenomena, selection criteria are applied in step 108.

[0041] First, all successive static series an and an+1 that include at least one antenna common to said successive static series an and an+1 are determined. Then, the antennas Cn, with m an integer, that are associated with intermediate signaling data en, with n between k and k + 1, and that are different from said single common antenna are identified.

[0042] At step 110, if the number of antennas is less than an antenna threshold JVq, the signaling data of the successive static series a£ and a£+1 are merged into a single static series a£, which replaces the successive static series a£ and a£+1- The antenna threshold Nq is equal to 2, but can be between 1 and 10.

[0043] Intermediate signaling data, due to oscillation phenomena, are preferably removed from the mobile telephony trace fi to limit non-informative noise in the data.

[0044] In step 112, the remaining signaling data, which are not part of the set of static series, are added to moving series m^, where h is an integer, corresponding to user mobility sessions, i.e., continuous sequences over time of mobile events of the mobile device. The inventors found that the determination of the moving series exhibits an accuracy of 80% and a recall of 96%.

[0045] Figure 4b shows signaling data 301', 302', 303', 304', 305', 306' and 307' corresponding respectively to the signaling data 301-307 of Figure 4a at the end of step 108. The noise, corresponding to the signaling data 301-307 circled in Figure 4a, is smoothed by this step 108.

[0046] Step 112 allows a set of moving series to be constructed _ _ f : ji 1, with H. Each moving series includes M — । U1 p ... m jy .. >, Ul rl ni The signaling data that belong to the static series immediately preceding and following said moving series. In particular, each moving series includes the last signaling data that belongs to the static series preceding the moving series. In particular, each moving series includes the first signaling data that belongs to the static series following the moving series.

[0047] The method may include an additional step to filter the static series from the set obtained at the end of step 108, based on their durations. For this purpose, the cumulative time for each static series as is calculated, and only the static series as with a cumulative time greater than a second time threshold Ts are retained in the set. This second time threshold Ts corresponds to the estimated minimum duration of a static activity, so that short periods of immobility are not included in the set of static series, such as waiting times at traffic lights for pedestrians or vehicles, or times stop at stops for bus journeys. The second time threshold Ts is equal to 20 minutes, but can take another value between 5 and 60 minutes.

[0048] The method may include a step of determining the static positions corresponding to positions where the user remained motionless for a time exceeding the second time threshold Ts. This step first involves calculating, for each static series in the entire centroid, the coordinates of the antennas associated with the signaling data of said static series a^. The centroid is equivalent to the center of gravity or the barycenter of the coordinates yA. Thus, each static series a£ is associated with a centroid. The set of static series is then partitioned on the basis of the centroids, for example by the DBSCAN algorithm ("density-based spatial clustering of applications with noise"). This results in several partitions of static series a£, each partition of static series a£ corresponding to a static activity session of the user.The position of the static series a£ belonging to the same partition is determined as the barycenter of the centroids of the static series of that partition.

[0049] At the end of step 112, the set of moving series zn^ is determined and includes all the user's movement sessions during the acquisition period. These movement sessions may correspond to the same trajectory followed by the user at different times, for example, on a daily basis. To determine the movement trajectories accurately, the signaling data corresponding to similar trajectories are pooled.

[0050] For this purpose, the process includes a step 202 to determine a set of recurrent trajectories comprising the moving series corresponding to a single trajectory.

[0051] Step 202 includes the calculation of a similarity parameter between each pair of moving series. Step 202 then includes the partitioning of moving series based on the similarity parameter.

[0052] In particular, step 202 includes, for each pair of moving series, the calculation of the Hausdorff distance according to the following formula:

[0053] d^m^, 123^),

[0054] [Math.l] sup inf

[0055] With d(*, • ) being the geodesic distance.

[0056] This calculation results in a matrix comprising pairwise moving series distances

[0057] Step 202 then involves applying the DBSCAN rationing algorithm to this matrix to obtain one or more partitions. Moving series are then distinguished in the set M2: (i) moving series belonging to one of the partitions, that is, which correspond to a recurring trajectory of the user's mobility, and which are included in the set NI of recurring trajectories, and (ii) moving series excluded from partitions that represent unique user movements, and that are included in a set = \

[0058] The method then includes a step 204, for each partition obtained by DBSCAN, of calculating the average duration of the moving series belonging to said partition. This average duration corresponds to the usual time it takes the user to traverse the path of said partition. The parameters of DBSCAN include a first maximum distance and a second maximum distance. The first maximum distance is between 0.1 and 0.2 km, in particular equal to 0.15 km. The second maximum distance is between 2 and 3 km, in particular equal to 2.5 km.

[0059] In step 206, moving series of said partition whose duration deviates from the median duration of said moving series by 50% or more are excluded. Indeed, these excluded moving series are not representative of the user's usual mobility.

[0060] Fig. 5 represents a partition corresponding to the same trajectory 12 and comprising the signaling data 301' to 305'.

[0061] In step 208, the moving series remaining from step 206 of filtration are temporally scaled, that is to say stretched or compressed, in time so as to correspond to the average duration of the moving series calculated in step 204.

[0062] The moving series, as scaled, are then sampled, in step 210, according to a predetermined time step. The predetermined time step is equal to 1 minute, but can be between 0.5 and 2 minutes.

[0063] Finally, in step 212, the spatial coordinates of all the different signaling data from the sampled moving series, for each time step, are averaged. These averages correspond to the positions 14 of the reconstructed trajectory at each time step, as shown in [Fig. 6]. The positions 14 of the reconstructed trajectory are obtained with an accuracy of approximately 190 m relative to the actual trajectory 12 as measured by GPS.

[0064] The method may include a step of determining a trajectory for each moving series of the partition from the trajectory reconstructed in step 212. For this, the reconstructed trajectory is brought back to the corresponding duration of the moving series by compression or stretching, in order to remain faithful to the initial travel time of the trajectory of said moving series m^.

Claims

Demands

1. A method for determining a set of trajectories of a user carrying a mobile device (J) in a mobile telephone network, over a given territory, comprising a plurality of antennas (C|7), the method essentially consisting of: (a) collecting signaling data (ey) of said mobile device (J), each signaling data comprising a timestamp (fj) associated with coordinates Qp of an antenna communicating with said mobile device, (b) determining at least one series of successive signaling data (ejj) associated with a single common antenna, and calculating a cumulative time for each series of signaling data, (c) for each series of signaling data (eÿ), when the cumulative time is greater than a first time threshold (Tw), labeling said series of signaling data as a static series (a£), (d) comparing two successive static series,and when a first static series (a) and a second static series (ap) are associated with the same antenna (cy, and when intermediate signaling data (e) located between the first static series (a) and the second static series (ap+1) are associated with other antennas, different from the common antenna; and the number of antennas associated with the intermediate signaling data is less than a threshold of antennas (Nq), merge the first static series (a) and the second static series (ap) into a single static series (a), (f) construct a set (MJ) of moving series (my) comprising the signaling data (e) excluded from the static series (a), and (g) determine the set (^) of trajectories from said set (MJ) of moving series, a method in which, at step (d), the intermediate signaling data are deleted or stored in a series separate from the static and moving series.

2. A method according to claim 1, wherein step (g) comprises the following substeps: (g1) construct a set (Mjd) of recurrent trajectories comprising the moving series corresponding to the same trajectory, (g2) determine an average duration of said trajectory from the set (jyfjp) of recurrent trajectories, (g3) for each moving series determined in step (g1), temporally scale said moving series to have a total duration equal to the average duration, (g4) for each moving series scaled in step (g3), sample said moving series according to a determined time step.

3. Method according to claim 2, wherein step (g1) comprises the following substeps: (g11) for each pair of moving series, m^Y determine the Hausdorff distance (d^m^, m)), between said moving series (g12) determine the set of recurrent trajectories by partitioning the Hausdorff distances (d^m^, m)) obtained in step (g11).

4. A method according to claim 2 or 3, wherein step (g) further comprises after substep (g2), the following substeps: (g21) calculate the median of the trajectory durations of the set (m£) of recurrent trajectories, (g22) filter from the set (MÛ) of recurrent trajectories, the moving series having a trajectory duration greater than 50% of said calculated median.

5. A method according to claim 2 to 4, wherein each trajectory of the set (j^7) of trajectories comprises the averages of the antenna coordinates Qp of the signaling data at each determined time step.

6. A method according to any one of the preceding claims, comprising, after step (d), for each static series (a£), a step (e) consisting of removing the static label from said static series when the cumulative time for this static series is less than a second time threshold (Ts).

7. A method according to the preceding claim, comprising, after step (e), a step consisting of determining a static position of the user (i), said step comprising: - calculating, for each static series (a£), a centroid of the coordinates ( û ) of the antennas associated with ■Lu signaling data (ey included in said static series, - partitioning the centroids obtained into several partitions comprising the centroids as partitioned and the static series associated with said centroids, - calculating, for each partition, a barycenter of the centroids, - assigning to each static series a static position, said static position being the barycenter of the partition comprising said static series.

8. A method according to any one of the preceding claims in combination with claim 6, wherein the first time threshold (Tw) and / or the second time threshold (Ts) is between 5 and 60 minutes.

9. A method according to any one of the preceding claims, wherein the antenna threshold (Nq) is between 1 and 10.

10. Method according to claim 3, wherein step (gl2) is carried out by the DBSCAN algorithm (“density-based spatial clustering of applications with noise”).

11. Method for characterizing the mobility of a population in an agglomeration, the method comprising the following steps: (1) determining sets (jÇj7) of trajectories according to any one of the preceding claims for a plurality of users, (2) determining common trajectories for a determined number of users (1).

12. A method according to the preceding claim, comprising the superimposition of one or more common trajectories onto a map of the given territory.

13. A data processing device comprising a centralized controller having memory and enabling the implementation of the method according to any one of claims 1 to 11 or of method 11 or

14. 1Z. A computer program comprising instructions which, when loaded and implemented on a computer, allow 15 the implementation of the process according to at least one of claims 1 to 11 or of process 11 or 12.

15. A computer-readable recording medium comprising instructions which, when executed by a computer, cause the computer to carry out the method according to at least one of claims 1 to 11 or of method 11 or 12.