User residence point identification method and device, electronic equipment and storage medium

By recursively calculating and weighting signaling durations on user signaling data, the dwell point is identified and calibrated, solving the problem of insufficient accuracy in user dwell point identification in existing technologies and achieving higher identification accuracy.

CN119521138BActive Publication Date: 2025-12-19CHINA MOBILE INFORMATION TECHNOLOGY CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411679064.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-12-19
Estimated Expiration
2044-11-21

AI Technical Summary

Technical Problem

Existing user dwell point identification technologies rely on fixed time and space thresholds, making it difficult to adapt to dynamic changes in user behavior. Furthermore, clustering-based algorithms suffer from insufficient accuracy when data is sparse or noisy.

Method used

By acquiring user signaling data, adding target signaling, and performing recursive calculations, the stationary segment is identified based on distance and time thresholds. Weights are assigned according to signaling duration, and offset calibration is performed using a recursive algorithm to identify the stationary point.

Benefits of technology

It improves the accuracy of user dwell state recognition, solves the inaccuracy of traditional algorithms based on the average position in geometric space, and enhances the accuracy of dwell point recognition.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119521138B_ABST
    Figure CN119521138B_ABST
Patent Text Reader

Abstract

The application discloses a user residence point identification method and device, electronic equipment and storage medium. Target signaling is added to each user in first user signaling data obtained, and second user signaling data is obtained. The target signaling is signaling with maximum time stamp for start time and end time and invalid values for longitude and latitude. Recursive calculation is performed on the second user signaling data through a recursive algorithm. A plurality of residence segments corresponding to each user are identified according to a distance threshold and a time threshold. The signaling length of each signaling in each residence segment is used to assign a corresponding weight to each signaling, and the offset calibration residence point of each residence segment is calculated. Finally, the offset calibration residence point of each residence segment and the second user signaling data are judged through the recursive algorithm, and the corresponding residence point of the plurality of residence segments of each user is output. Thus, the accuracy of identifying the residence state of the user can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application belongs to the field of information technology support, and particularly relates to a user stay point identification method and device, an electronic device and a storage medium. BACKGROUND

[0002] In recent years, mobile phone signaling data has become increasingly important in studying user behavior patterns and traffic surveys due to its large sample size, short sampling period, long observation period, wide coverage, and high information value. Studying traffic travel characteristics based on mobile phone signaling data can address the insufficient sample size, high labor cost, and other shortcomings of traditional urban traffic surveys, traffic development strategy formulation, and traffic scheme evaluation. Stay point identification, as an important part of converting user activity patterns into recognizable traffic semantics, is of great significance in using mobile phone signaling as spatiotemporal big data to analyze urban traffic travel and understand user behavior patterns.

[0003] Existing user stay point identification techniques have some common shortcomings. First, algorithms based on spatiotemporal rules rely on fixed time and space thresholds, which are difficult to adapt to dynamic changes in user behavior and may not meet the needs of all scenarios. Second, clustering-based algorithms are very sensitive to parameter selection when processing data, which can easily generate trajectory clusters with no practical significance, especially in cases of sparse data or high noise, which can affect the accuracy of stay point identification. Overall, these techniques have certain deficiencies in accuracy and need further improvement and optimization. SUMMARY

[0004] Embodiments of the present application provide a user stay point identification method, device, electronic device and storage medium, which can improve the accuracy and efficiency of network anomaly behavior detection by combining graph data models and graph computing techniques.

[0005] In a first aspect, embodiments of the present application provide a user stay point identification method, which can include:

[0006] Obtaining first user signaling data, the first user signaling data including at least one day of continuous signaling data of at least one user;

[0007] Adding target signaling to each user in the first user signaling data to obtain second user signaling data, the target signaling being a signaling with a maximum timestamp for both start time and end time and invalid values for both latitude and longitude;

[0008] Performing recursive calculation on the second user signaling data through a recursive algorithm, and identifying a plurality of stay segments corresponding to each user according to a distance threshold and a time threshold;

[0009] According to the signaling duration of each signaling in each of the residence segments, a corresponding weight is allocated to each signaling, and offset calibration residence points of each of the residence segments are calculated;

[0010] The offset calibration residence points of each of the residence segments and the second user signaling data are judged by a recursive algorithm, and corresponding residence points of the multiple residence segments of each of the users are output.

[0011] In one of the embodiments, the above-mentioned adding target signaling to each of the users in the first user signaling data to obtain second user signaling data includes:

[0012] The first user signaling data is sorted according to user order and signaling start time to obtain sorted first user signaling data;

[0013] Based on a preset field in the signaling data, the sorted first user signaling data is cleaned and removed to obtain third user signaling data;

[0014] The above-mentioned adding target signaling to each of the users in the first user signaling data to obtain second user signaling data includes:

[0015] Target signaling is added to each of the users in the third user signaling data to obtain second user signaling data.

[0016] In one of the embodiments, the above-mentioned recursive calculation of the second user signaling data by a recursive algorithm, and the identification of multiple residence segments corresponding to each of the users according to a distance threshold and a time threshold includes:

[0017] According to the second user signaling data, the spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data is calculated;

[0018] According to the distance threshold, the spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data is compared in the order of the signaling start time of the user, and multiple possible residence segments satisfying the distance threshold are divided;

[0019] According to the time threshold, the multiple possible residence segments are judged to obtain multiple residence segments corresponding to each of the users.

[0020] In one of the embodiments, the above-mentioned calculation of the spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data according to the second user signaling data includes:

[0021] The spherical distance of each adjacent two signaling corresponding to the base station of each user in the second user signaling data is calculated by formula 1 and formula 2.

[0022]

[0023] Wherein, lat i The latitude of the base station position associated with the i-th signaling of the user, distance is the distance between the i-th signaling record and the j-th signaling record of the base station position of the user, the unit of distance is km, and 6371000 is the radius of the earth.

[0024] In one of the embodiments, the above-mentioned bias calibration residence point of each residence segment is calculated according to the signaling duration of each signaling in the residence segment, and each signaling is assigned a corresponding weight, including:

[0025] The signaling duration of each signaling in the target residence segment is calculated according to the target residence segment and the signaling data of the target user, the target residence segment is any one of the plurality of residence segments, and the target user is the user corresponding to the target residence segment;

[0026] The time weight of each signaling is calculated according to the signaling duration of each signaling in the target residence segment and the signaling data of the target user;

[0027] The bias calibration residence point of the target user in the target residence segment is calculated according to the signaling data of the target user, the signaling duration of each signaling in the target residence segment and the time weight.

[0028] In one of the embodiments, the above-mentioned bias calibration residence point of each residence segment is calculated according to the signaling duration of each signaling in the residence segment, and each signaling is assigned a corresponding weight, including:

[0029] The user signaling data set is obtained by sorting and arranging the signaling time, the bias calibration residence point of each user to each residence segment and the second user signaling data.

[0030] The user signaling data set is input into the recursive algorithm, and the corresponding residence point of each residence segment of each user is identified according to the distance threshold and the time threshold.

[0031] In a second aspect, the embodiments of the present application provide a user residence point identification device, which can include:

[0032] The acquisition module is configured to acquire first user signaling data, the first user signaling data including at least one day of continuous signaling data of at least one user.

[0033] adding module, configured to add target signaling to each of the users in the first user signaling data to obtain second user signaling data, the target signaling being signaling with maximum time stamp as start time and end time and invalid value as longitude and latitude;

[0034] a first calculation module, configured to perform recursive calculation on the second user signaling data by using a recursive algorithm, and identify a plurality of stay segments corresponding to each of the users according to a distance threshold and a time threshold;

[0035] a second calculation module, configured to assign a corresponding weight to each signaling in each of the stay segments according to a signaling duration of the signaling, and calculate an offset calibration stay point of each of the stay segments;

[0036] a judgment module, configured to perform judgment on the offset calibration stay point of each of the stay segments and the second user signaling data by using the recursive algorithm, and output corresponding stay points of the plurality of stay segments of each of the users.

[0037] In a third aspect, an embodiment of the present application provides an electronic device, which comprises:

[0038] a processor;

[0039] a memory for storing processor-executable instructions;

[0040] The processor is configured to execute the instructions to implement the user stay point identification method shown in any one of the embodiments of the first aspect.

[0041] In a fourth aspect, an embodiment of the present application provides a computer storage medium, which stores a computer program. The computer program is executed by a processor to implement the user stay point identification method shown in any one of the embodiments of the first aspect.

[0042] In a fifth aspect, an embodiment of the present application further provides a computer program product, which comprises a computer program stored in a readable storage medium. At least one processor of a device reads and executes the computer program from the storage medium, so that the device executes the user stay point identification method shown in any one of the embodiments of the first aspect.

[0043] The embodiments of the present application provide a user stay point identification method, device, electronic device and storage medium. Compared with the prior art, the present application has the following beneficial effects:

[0044] A user residence point identification method, device, electronic equipment and storage medium provided by an embodiment of the present application add target signaling to each user in the obtained first user signaling data to obtain second user signaling data, the target signaling is signaling with maximum time stamps for start time and end time and invalid values for longitude and latitude, recursively calculate the second user signaling data through a recursive algorithm, and identify a plurality of residence segments corresponding to each user according to distance threshold and time threshold. According to the signaling duration of each signaling in each residence segment, the corresponding weight of each signaling is allocated, and the offset calibration residence point of each residence segment is calculated. Finally, the offset calibration residence point of each residence segment and the second user signaling data are judged through a recursive algorithm, and the corresponding residence point of each residence segment of each user is output.

[0045] Therefore, different weights of longitudes and latitudes of different signaling points are allocated by using residence segment signaling duration, and the longer the signaling time is, the closer the actual residence point of the user is to the target base station, which solves the inaccuracy of the conventional algorithm based on the geometric space average position as the residence point, and can improve the accuracy of identifying the user residence state. BRIEF DESCRIPTION OF DRAWINGS

[0046] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required to be used in the embodiments of the present application will be briefly introduced below. Those skilled in the art can also obtain other drawings according to these drawings without creative labor.

[0047] Figure 1 is a flowchart of a user residence point identification method provided by an embodiment of the present application;

[0048] Figure 2 is a flowchart of another user residence point identification method provided by an embodiment of the present application;

[0049] Figure 3 is a user residence point offset calibration schematic diagram provided by an embodiment of the present application;

[0050] Figure 4 is a structural schematic diagram of a user residence point identification device provided by an embodiment of the present application;

[0051] Figure 5 is a structural schematic diagram of an electronic equipment provided by an embodiment of the present application. DETAILED DESCRIPTION

[0052] The features and exemplary embodiments of the various aspects of the present application will be described in detail below with reference to the drawings. To make the purpose, technical solutions and advantages of the present application more clear, the present application will be further described in detail below with reference to the drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, but not to limit the present application. The present application can be implemented without some of these specific details for those skilled in the art. The following description of the embodiments is only to provide a better understanding of the present application by showing examples of the present application.

[0053] It should be noted that, in this paper, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is any such actual relationship or order between these entities or operations. Moreover, the terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or equipment including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or equipment. Without more limitations, the elements defined by the statement "include" do not exclude the presence of other identical elements in the process, method, article or equipment including the elements.

[0054] Based on the background section, it can be known that the existing technical solutions have some common shortcomings. First, the algorithm based on space-time rules relies on fixed time and space thresholds, which are difficult to adapt to the dynamic changes of user behavior, and the rule setting may not meet the needs of all scenarios. Second, the clustering-based algorithm is very sensitive to parameter selection when processing data, and is prone to generate trajectory clusters without actual meaning, especially in the case of sparse data or large noise, which will affect the accuracy of stay point identification.

[0055] In order to solve the problems existing in the prior art, the embodiments of the present application provide a user stay point identification method and device, electronic equipment and storage medium. The target signaling is added to each user in the first user signaling data obtained, to obtain second user signaling data. The target signaling is a signaling with maximum time stamp for both start time and end time, and invalid values for both latitude and longitude. The second user signaling data is calculated by a recursive algorithm. According to the distance threshold and the time threshold, a plurality of stay segments corresponding to each user are identified. According to the signaling duration of each signaling in each stay segment, a corresponding weight is allocated to each signaling, and the offset calibration stay point of each stay segment is calculated. Finally, the offset calibration stay point of each stay segment and the second user signaling data are judged by a recursive algorithm, and the corresponding stay points of the plurality of stay segments of each user are output.

[0056] Thus, different weights of different signaling points are assigned by using the resident segment signaling duration, and the longer the signaling time represents that the actual resident point of the user is closer to the target base station, solving the inaccuracy of the traditional algorithm based on the geometric space average position as the resident point, and the accuracy of identifying the user resident state can be improved.

[0057] Embodiments of the present application provide a user resident point identification method, device, electronic equipment and storage medium. First, the user resident point identification method provided by the embodiments of the present application is introduced as follows. Figure 1 As shown in the figure, the user resident point identification method provided by the embodiments of the present application includes the following steps:

[0058] S101: Obtain first user signaling data, the first user signaling data including at least one day of continuous signaling data of at least one user;

[0059] S102: Add target signaling to each user in the first user signaling data to obtain second user signaling data, the target signaling being a signaling with maximum time stamp for both start time and end time and invalid values for both longitude and latitude;

[0060] S103: Recursively calculate the second user signaling data by using a recursive algorithm, and identify a plurality of resident segments corresponding to each user according to a distance threshold and a time threshold;

[0061] S104: Assign a corresponding weight to each signaling in each resident segment according to the signaling duration of the signaling, and calculate an offset calibration resident point of each resident segment;

[0062] S105: Judge the offset calibration resident point of each resident segment and the second user signaling data by using a recursive algorithm, and output a corresponding resident point of each resident segment of each user.

[0063] The embodiments of the present application provide a user resident point identification method, device, electronic equipment and storage medium. Target signaling is added to each user in the obtained first user signaling data to obtain second user signaling data, the target signaling being a signaling with maximum time stamp for both start time and end time and invalid values for both longitude and latitude. The second user signaling data is recursively calculated by using a recursive algorithm, and a plurality of resident segments corresponding to each user are identified according to a distance threshold and a time threshold. A corresponding weight is assigned to each signaling in each resident segment according to the signaling duration of the signaling, and an offset calibration resident point of each resident segment is calculated. Finally, the offset calibration resident point of each resident segment and the second user signaling data are judged by using a recursive algorithm, and a corresponding resident point of each resident segment of each user is output.

[0064] In S101, user signaling data is acquired and grouped and sorted. The signaling data of a single day or multiple consecutive days of a user is acquired, and the detailed information of the signaling data is shown in Table 1.

[0065] Table 1: Detailed information of signaling data

[0066]

[0067]

[0068] In one example, the adding of target signaling to each of the users in the first user signaling data to obtain second user signaling data includes:

[0069] The first user signaling data is sorted according to user sorting and signaling start time to obtain sorted first user signaling data.

[0070] The sorted first user signaling data is cleaned and removed based on a preset field in the signaling data to obtain third user signaling data.

[0071] The adding of target signaling to each of the users in the first user signaling data to obtain second user signaling data includes:

[0072] The adding of target signaling to each of the users in the third user signaling data to obtain second user signaling data.

[0073] In the above embodiment, each user is first sorted according to user sorting and then sorted according to signaling start time to obtain sorted first user signaling data. The sorted first user signaling data is then cleaned. This can include screening samples with invalid values in the “UID”, “longitude”, and “latitude” fields in the signaling record, and manually removing these as abnormal values in the first user signaling data to obtain third user signaling data.

[0074] In S102, a row of signaling is added for each user in the first user signaling data, with the signaling start time and end time being the maximum timestamp (e.g. the maximum time that the system can represent), and the latitude and longitude being invalid values. This solves the problem that the recursive algorithm cannot identify the continuity or discontinuity of the last signaling in the original signaling of the user. It should be noted that the invalid value here can be -1, indicating that this is an invalid geographic location and the algorithm will not process it as an actual geographic location. This ensures that the target signaling is always at the end of all signaling. The target signaling mainly has the following effects: when the algorithm processes the last valid signaling of the user, due to the existence of this virtual signaling, the algorithm can continue to execute without worrying about the end condition of the stay segment because there is no next signaling. Through this virtual signaling, the algorithm can forcibly trigger the judgment of the last valid signaling, ensuring that any possible stay segment will not be missed because of the lack of subsequent signaling.

[0075] In S103, the second user signaling data obtained is first sorted according to the signaling time, and then a recursive algorithm is used to traverse the user's signaling data according to the distance threshold and the time threshold, to calculate the distance between the signaling and the stay time one by one, to determine whether the distance threshold and the time threshold are met. It should be noted that the distance threshold and the time threshold can be set according to actual needs, and are not limited here. For example, assume that the distance threshold is set to 0.5 kilometers. This means that if the distance between two signaling records is less than 0.5 kilometers, the system will consider them to belong to the same stay segment. Similarly, assume that the time threshold is set to 30 minutes. This means that if the user stays at a certain location for more than 30 minutes, the location is identified as a stay point.

[0076] The logic of the recursive algorithm can include: after grouping by user, sequentially sorting by the signaling start time of the user, sequentially retrieving the subsequent signaling, and when the first signaling exceeding the distance threshold (0.5 km) is retrieved, the previous signaling of this signaling is within the distance threshold (0.5 km), thereby achieving the goal of dividing the maximum possible residence segment while controlling the distance threshold; when the distance threshold is met, it is judged whether the residence duration meets the time threshold (30 min), that is, whether the end time of the signaling - the start time of the first signaling is greater than or equal to 30 min. It should be noted that due to the possible discontinuity of the signaling, even if the next signaling duration exceeds the time threshold, its previous signaling may not meet the time threshold, and this feature is more obvious in the tail signaling. For example, according to the activity rule of the user, the last signaling of the user is generally within the range of 23:00-0:00 at night, and when the last signaling is a residence segment, the residence duration of some users may not meet the time threshold of 30 min, so it is necessary to supplement the judgment of whether the previous signaling of the detected residence segment meets the residence duration of 30 min.

[0077] In one example, the recursive calculation of the second user signaling data by the recursive algorithm includes:

[0078] According to the second user signaling data, the spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data is calculated;

[0079] According to the distance threshold, the spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data is compared in sequence according to the signaling start time of the user, and a plurality of possible residence segments meeting the distance threshold are divided;

[0080] According to the time threshold, the plurality of possible residence segments are judged to obtain a plurality of residence segments corresponding to each user.

[0081] In the above embodiment, according to the second user signaling data, the spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data is calculated, which can include:

[0082] The spherical distance of the base station corresponding to each adjacent two signalings corresponding to each user in the second user signaling data is calculated by formula 1 and formula 2;

[0083]

[0084] wherein, lat ilatitude is the latitude of the base station associated with the i-th signaling record of the user, distance is the distance between the i-th and j-th base station location of the user, the unit of distance is km, and 6371000 is the radius of the earth.

[0085] Then, the algorithm logic of the recursive algorithm for defining the residence segment is as follows:

[0086] Input parameters: signaling data bs of the user i = {countyId i , latitude i , longitude i , procedureStartTime i , procedureEndTime geohash i}, distance threshold distThreh (0.5 km), and time threshold timeThreh (30 min).

[0087] Output parameters: a set SP = {S} of residence points, where S i = {UID, countyId i , orderedStart i , orderedEnd i , latitude_loc i , longitude_loc i , arriveTime i , leaveTime i}, and the detailed information of the residence data is shown in Table 2.

[0088] Table 2: Detailed information of the residence data

[0089]

[0090]

[0091] Recursive logic: after grouping by user, the signaling start time of the user is sequentially sorted, and the subsequent signaling is retrieved in turn until the first signaling beyond the distance threshold (0.5 km) is retrieved, at which time the previous signaling of the signaling is within the distance threshold (0.5 km). In this way, the goal of dividing the maximum possible residence segment is achieved while controlling the distance threshold. When the distance threshold is met, it is determined whether the residence duration meets the time threshold (30 min), i.e., whether the end time of the signaling - the start time of the first signaling is greater than or equal to 30 min.

[0092] Supplement logic: It should be noted that due to the possible discontinuity of signaling, when judging the time threshold, even if the next signaling duration exceeds the time threshold, its last signaling may not meet the time threshold. This feature is more obvious in the tail signaling. For example, according to the user's activity rule, the user's last signaling is generally in the range of 23:00-0:00 at night. When the last signaling is a camping segment, the camping duration of some users may not meet the 30min time threshold. Therefore, it is necessary to supplement the judgment of whether the last signaling of the detected camping segment possible end signaling meets the 30min camping duration.

[0093] In S104, according to the signaling data of each user, the signaling duration of each signaling, the time weight of each signaling and the predicted camping point (i.e. offset calibration camping point) of the user in the camping segment between the signalings are calculated to obtain the latitude and longitude of the camping segment. That is, by the signaling duration of different signalings between the first signaling to the tail signaling in the camping segment, different weights are assigned to the longitude and latitude of each signaling, the camping point of the camping segment is calculated, and the offset calibration of the camping point is realized.

[0094] In one example, the corresponding weight is assigned to each signaling according to the signaling duration of each signaling in each camping segment, and the offset calibration camping point of each camping segment is calculated, including:

[0095] According to the signaling data of the target user and the target camping segment, the signaling duration of each signaling in the target camping segment is calculated, the target camping segment is any one of the plurality of camping segments, and the target user is the user corresponding to the target camping segment;

[0096] According to the signaling duration of each signaling in the target camping segment and the signaling data of the target user, the time weight of each signaling is calculated;

[0097] According to the signaling data of the target user, the signaling duration and the time weight of each signaling in the target camping segment, the offset calibration camping point of the target user in the target camping segment is calculated.

[0098] In the above embodiment, in the above recursive step, the possible signaling start index i and end index j of the camping segment have been obtained through the distance threshold (0.5km) and the time threshold (30min). In such a camping segment interval, according to the signaling data bS i ={countyId i ,latitude i ,longitude i ,procedureStartTime i

[0099] ,procedureEndTime i}, calculate the following three indicators:

[0100] 1. The signaling duration of each signaling, the calculation formula is as follows:

[0101] duration k =procedureStartTime k -procedureEndTime k

[0102] Add it to the user's signaling data bS i , then

[0103] bS i ={countyId i ,latitude i ,longitude i ,procedureStartTime i ,

[0104] procedureEndTime i ,duration i}

[0105] 2. The time weight of each signaling, the calculation formula is as follows:

[0106]

[0107] Where bS k [5] represents the signaling duration of the kth signaling;

[0108] 3. The predicted residence point of the user in the residence segment between signaling i and j-1:

[0109]

[0110] According to bS i ={countyId i ,latitude i ,longitude i ,procedureStartTime i ,procedureEndTime i ,duration i}, wherein bS k [1], bS k [2] represent the latitude and longitude of the signaling respectively; S i ={UID,countyIdi ,orderedStart i ,orderedEnd i latitude_loc i ,longitude_loc i ,arriveTime i leaveTime i}, S i {[4],[5]} represent the stationing segment S respectively. i The latitude and longitude. That is, the signaling duration W of different signaling messages between the first and last signaling messages within the dwell segment. k For each signaling message, the latitude and longitude {bS k [1],bS k [2] Assign different weights and calculate the dwell point S of the dwell segment. i {[4],[5]}, to achieve offset calibration of the dwelling point. By using the time weighting method, the dwelling point can be shifted further towards the actual dwelling location, thereby achieving offset calibration of the dwelling point within the dwelling area.

[0111] In step S105, signaling data for each user is retrieved from the system. This data includes daily base station communication records. Each record contains information such as base station ID, latitude and longitude, and signaling start and end times. The signaling records for each user are sorted according to the signaling start time to ensure data is arranged chronologically for easy subsequent processing. The sorted signaling data is then fed into a recursive algorithm. This algorithm identifies camping segments based on preset distance and time thresholds. The algorithm checks each signaling record to determine if the distance and time conditions are met to identify the camping segment. After processing by the recursive algorithm, the identification result for each user is output, containing information on multiple camping segments for that user. This information includes the time range and camping point for each camping segment.

[0112] In one embodiment, the step of determining the offset calibration dwell point and the second user signaling data of each dwell segment using a recursive algorithm and outputting the user dwell point result includes:

[0113] Based on the signaling time, the user's offset calibration dwell point for each dwell segment, and the second user's signaling data, the user signaling data set is sorted and organized to obtain the user signaling data set.

[0114] The user signaling data set is input into the recursive algorithm, and the corresponding dwell points of multiple dwell segments of each user are identified according to the distance threshold and the time threshold.

[0115] In the above embodiment, the signaling data of the user is transmitted. Each user communicates with the base station daily, therefore, the set of communication base stations for each user daily is... where u e UID, UID indexes users, t e T, T is the distribution date of user signaling data, N {u,t} represents the number of handovers of the user u with the base station in the target time interval on date t, bs i (1≤i≤N) represents the base station information of each handover, and the information bs i ={countyId i ,latitude i ,longitude i ,procedureStartTime i ,procedureEndTimegeohash i}. The sorted signaling data of each user (i.e., the user signaling data set) is input into a recursive algorithm for identifying the residence section to obtain the identified residence result.

[0116] To better illustrate the method provided by the embodiments of the present application, the following is introduced based on a specific embodiment. Referring to the flowchart of the user residence point identification method shown in FIG. 1, the scheme includes the following steps. Figure 2

[0117] Step one: Obtain user signaling data and group sorting. Obtain the continuous signaling data of a user in a single day or multiple days, and sort the signaling start time after sorting each user. The detailed information of the signaling data is shown in Table 2.

[0118] Step two: Data cleaning. Filter the samples in which the “UID”, “longitude”, and “latitude” fields in the signaling record are all invalid values, and manually remove these as abnormal values in the user signaling data.

[0119] Step three: Data processing. Add a row of signaling to each user, in which the signaling start time and end time are both the maximum timestamp, and the latitude and longitude are both -1, to solve the problem that the recursive algorithm cannot identify the continuity or discontinuity of the last signaling in the original signaling of the user.

[0120] Step four: Define a function for calculating the spherical distance between two points, and the calculation formula is as follows:

[0121]

[0122] (unit: km)

[0123] where lat i ​latitude is the latitude of the base station associated with the i-th signaling record of the user, distance is the distance between the i-th and j-th signaling record of the user, and 6371000 is the radius of the earth.

[0124] Step five: define a recursive algorithm to identify the stay segments, the algorithm logic is as follows:

[0125] Input parameters: signaling data bs of the user i = {countyId i , latitude i , longitude i , procedureStartTime i , procedureEndTime geohash i}, distance threshold distThreh (0.5km), time threshold timeThreh (30min);

[0126] Output parameters: the set of stay points SP = {S} formed, where S i = {UID, countyId i , orderedStart i , orderedEnd i , latitude_loc i , longitude_loc i , arriveTime i , leaveTime i}, the detailed information of the stay data is shown in Table 2 above.

[0127] Recursive logic: after grouping by user, the signaling start time of the user is sequentially sorted, and the subsequent signaling is retrieved in turn until the first signaling beyond the distance threshold (0.5km) is retrieved, at which time the previous signaling of the signaling is within the distance threshold (0.5km). In this way, the goal of dividing the maximum possible stay segment is achieved while controlling the distance threshold; when the distance threshold is met, it is judged whether the stay duration meets the time threshold (30min), i.e. whether the end time of the signaling - the start time of the first signaling is greater than or equal to 30min.

[0128] Additional Logic: It's important to note that due to the potential discontinuity of signaling, when determining the time threshold, even if the duration of the next signaling message exceeds the time threshold, the duration of its preceding signaling message may not meet the time threshold. This characteristic has a more pronounced impact on end-of-line signaling. For example, based on user activity patterns, a user's last signaling message typically occurs between 11 PM and midnight. When the last signaling message constitutes a dwell period, some users' possible dwell times may not meet the 30-minute time threshold. Therefore, it's necessary to additionally determine whether the preceding signaling message of the detected potential end-of-line dwell period meets the 30-minute dwell time requirement. The pseudocode for the recursive algorithm is as follows:

[0129]

[0130]

[0131] Offset calibration logic: In the above recursive steps, the possible signaling start index i and end index j of the dwell segment have been obtained through the distance threshold (0.5km) and time threshold (30min). Within such a dwell segment interval, based on the signaling data bS of each user... i ={countyId i latitude i longitude i procedureStartTime i

[0132] ,procedureEndTime i} Calculate the following three indicators:

[0133] 1. The signaling duration for each signaling message is calculated using the following formula:

[0134] duration k =procedureStartTime k -procedureEndTime k

[0135] Add it to the user's signaling data bS i In the middle, then

[0136] bS i ={countyId i latitude i longitude i procedureStartTime i ,

[0137] procedureEndTime iduration i}

[0138] 2、Each signaling time weight, the formula is as follows:

[0139]

[0140] Where bS k [5] represents the signaling duration of the kth signaling;

[0141] 3、The user stays in the predicted residence point between the signaling i to j-1:

[0142]

[0143] According to bS i ={countyId i ,latitude i ,longitude i ,procedureStartTime i ,procedureEndTime i ,duration i}, where bS k [1], bS k [2] represent the latitude and longitude of the signaling respectively; S i ={UID,countyId i ,orderedStart i ,orderedEnd i ,latitude_loc i ,longitude_loc i ,arriveTime i ,leaveTime i}, S i {[4],[5]} represent the latitude and longitude of the residence segment S i respectively. That is, by the signaling duration W k between the first signaling and the tail signaling in the residence segment, different weights are assigned to the latitude and longitude {bS k [1], bS k [2]} of each signaling, and the residence point S i {[4],[5]} of the residence segment is calculated, so as to realize the offset calibration of the residence point. Through the time weighting method, the residence point can be more offset to the actual residence location, so as to realize the offset calibration of the residence point in the residence area.

[0144] See Figure 3It can be known that the residence point is more offset to the actual residence location by the time weighting method, so as to realize the offset calibration of the residence point in the residence area.

[0145] Step six: signaling data of incoming users. Each user communicates with the base station every day, so the set of communication base stations of each user every day Wherein u∈UID, index the user, t∈T, T is the distribution date of the user signaling data, N {u,t} bs represents the number of handovers of the user u in the target time interval with the base station on date t, bs i (1≤i≤N) represents the base station information of each handover, and the information bs i ={countyId i ,latitude i ,longitude i ,procedureStartTime i ,procedureEndTimegeohash i}. The sorted signaling data of each user is input into the recursive algorithm for identifying the residence section to obtain the identified residence result.

[0146] Based on the user residence point identification method provided in the above embodiment, accordingly, as Figure 4 shown, the embodiment of the application provides a user residence point identification device 400, which can include:

[0147] The acquisition module 401 is configured to acquire first user signaling data, and the first user signaling data includes at least one day of continuous signaling data of at least one user;

[0148] The adding module 402 is configured to add target signaling to each user in the first user signaling data to obtain second user signaling data, and the target signaling is signaling with the maximum timestamp as the start time and the end time and with invalid values as the latitude and the longitude;

[0149] The first calculation module 403 is configured to perform recursive calculation on the second user signaling data by using a recursive algorithm, and to identify a plurality of residence sections corresponding to each user according to a distance threshold and a time threshold;

[0150] The second calculation module 404 is configured to allocate a corresponding weight to each signaling in each residence section according to the signaling duration of the signaling, and to calculate offset calibration residence points of each residence section;

[0151] The judgment module 405 is configured to judge the offset calibration residence point and the second user signaling data of each residence segment by using a recursive algorithm, and output corresponding residence points of the plurality of residence segments of each user.

[0152] In an embodiment, the adding module can include:

[0153] The sorting module is configured to sort the first user signaling data according to user sorting and signaling start time, and obtain sorted first user signaling data.

[0154] The cleaning module is configured to clean and remove the sorted first user signaling data based on a preset field in the signaling data, and obtain third user signaling data.

[0155] The adding module can be specifically configured to:

[0156] Add target signaling to each user in the third user signaling data to obtain second user signaling data.

[0157] In an embodiment, the first calculating module can include:

[0158] The first calculating unit is configured to calculate spherical distances of base stations corresponding to each adjacent two signaling according to the second user signaling data.

[0159] The first comparison unit is configured to compare the spherical distances of the base stations corresponding to each adjacent two signaling of each user in the second user signaling data according to the distance threshold value in the order of the signaling start time of the user, and divide to obtain a plurality of possible residence segments satisfying the distance threshold value.

[0160] The first judgment unit is configured to judge the plurality of possible residence segments according to the time threshold value, and obtain a plurality of residence segments corresponding to each user.

[0161] In an embodiment, the first calculating unit can be specifically configured to:

[0162] The spherical distances of the base stations corresponding to each adjacent two signaling of each user in the second user signaling data are calculated by using formula 1 and formula 2.

[0163]

[0164] Wherein, lat i is the latitude of the base station position associated with the i th signaling of the user, distance is the distance between the base station positions of the i th signaling record and / or the j th signaling record of the user, the unit of distance is km, and 6371000 is the radius of the earth.

[0165] In one embodiment, the second computing module may be specifically used for:

[0166] Based on the signaling data of the target camp segment and the target user, the signaling duration of each signaling in the target camp segment is calculated. The target camp segment is any one of the multiple camp segments, and the target user is the user corresponding to the target camp segment.

[0167] The time weight of each signaling is calculated based on the signaling duration of each signaling in the target camp segment and the signaling data of the target user.

[0168] Based on the signaling data of the target user, the signaling duration and time weight of each signaling message in the target camp segment, the offset calibration camp point of the target user in the target camp segment is calculated.

[0169] In one embodiment, the determination module can be specifically used for:

[0170] Based on the signaling time, the user's offset calibration dwell point for each dwell segment, and the second user's signaling data, the user signaling data set is sorted and organized to obtain the user signaling data set.

[0171] The user signaling data set is input into the recursive algorithm, and the corresponding dwell points of multiple dwell segments of each user are identified according to the distance threshold and the time threshold.

[0172] Based on the user residency point identification method and apparatus provided in the above embodiments, this application also provides an electronic device 500, such as... Figure 5 As shown:

[0173] It includes a processor 501, a memory 502, and a computer program stored in the memory 502 and executable on the processor 501. When the computer program is executed by the processor 501, it implements the various processes of the above-described user residence point identification method embodiment and achieves the same technical effect.

[0174] Specifically, the processor 501 may include a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0175] The memory 502 can include mass storage for data or instructions. As an example and not by way of limitation, the memory 502 can include a hard disk drive (HDD), a floppy disk drive, flash memory, an optical disc (e.g., a compact disc (CD) or a digital versatile disc (DVD)), a solid-state drive (SSD), a USB drive, or a combination of two or more of these. Where appropriate, the memory 502 can include removable or non-removable (or fixed) media. Where appropriate, the memory 502 can be internal or external to the integrated gateway disaster recovery appliance. In particular embodiments, the memory 502 is non-volatile, solid-state memory.

[0176] In particular embodiments, the memory can include read-only memory (ROM), random access memory (RAM), magnetic disk storage mediums, optical storage mediums, flash memory devices, electrical, optical, or other physical / tangible memory storage devices. Thus, in general, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., a memory device) encoded with software that, when executed (by one or more processors), is operable to

[0177] The processor 501 implements any of the user residence point identification methods in the above embodiments by reading and executing computer program instructions stored in the memory 502.

[0178] In one example, the electronic device can further include a communication interface 503 and a bus 510. As an example, as shown in Figure 5 The processor 501, the memory 502, and the communication interface 503 are connected through the bus 510 and complete communication between each other.

[0179] The communication interface 503 is mainly used to realize the communication between the modules, devices, units and / or equipment in the embodiments of the application.

[0180] Bus 510 includes hardware, software, or both, to couple components of the online data traffic metering device to each other and to couple components to other components within the network. While bus 510 is shown for the sake of clarity as a single bus, it can comprise one or more buses operating together. Bus 510 can be implemented using any suitable type of bus or buses, including, but not limited to, an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an InfiniBand™ interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association local (VLB) bus, or any other suitable bus or interconnect, or a combination of two or more of these. Where appropriate, bus 510 can be implemented as a system-wide interconnect or a combination of busses.

[0181] The embodiment of the present application further provides a computer readable storage medium, and the computer readable storage medium stores a computer program. The computer program is executed by a processor to realize each process of the user residence point identification method embodiment and achieve the same technical effects. To avoid repetition, details are not described herein. The computer readable storage medium includes a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, etc.

[0182] It should be noted that the present application is not limited to the specific configurations and processes described above and illustrated in the drawings. For the sake of brevity, detailed descriptions of well-known methods are omitted. In the above embodiments, several specific steps are described and illustrated as examples. However, the method processes of the present application are not limited to the specific steps described and illustrated, and those skilled in the art can make various changes, modifications and additions, or change the order of the steps, after understanding the spirit of the present application.

[0183] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0184] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0185] The aspects of this application have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus, and computer program products according to embodiments of this application. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by dedicated hardware performing the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions.

[0186] The above are merely specific embodiments of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.

Claims

1. A user residence point identification method, characterized by, The method comprises: obtaining first user signaling data, the first user signaling data comprising at least one day of continuous signaling data of at least one user; adding target signaling to each of the users in the first user signaling data to obtain second user signaling data, the target signaling being signaling with maximum time stamps for both start time and end time and invalid values for both longitude and latitude; recursively calculating the second user signaling data by a recursive algorithm to identify a plurality of residence segments corresponding to each of the users according to a distance threshold and a time threshold; allocating a corresponding weight to each signaling in each of the residence segments according to a signaling duration of the signaling to calculate offset calibration residence points of each of the residence segments; judging the offset calibration residence points of each of the residence segments and the second user signaling data by the recursive algorithm to output corresponding residence points of the plurality of residence segments of each of the users.

2. The method of claim 1, wherein, The method further comprises: sorting the first user signaling data according to user order and signaling start time to obtain sorted first user signaling data; cleaning and removing the sorted first user signaling data based on a preset field in the signaling data to obtain third user signaling data; The method further comprises: adding target signaling to each of the users in the third user signaling data to obtain second user signaling data.

3. The method of claim 2, wherein, The method further comprises: calculating spherical distances of base stations corresponding to each of two adjacent signalings corresponding to each user in the second user signaling data according to the second user signaling data; comparing the spherical distances of the base stations corresponding to each of the two adjacent signalings corresponding to each user in the second user signaling data according to the distance threshold to divide to obtain a plurality of possible residence segments satisfying the distance threshold; judging the plurality of possible residence segments according to the time threshold to obtain a plurality of residence segments corresponding to each of the users.

4. The method of claim 3, wherein, The method further comprises: calculating the spherical distances of the base stations corresponding to each of the two adjacent signalings corresponding to each user in the second user signaling data by formula 1 and formula 2; wherein lat i is the latitude of the base station location associated with the i-th signaling record for the user, distance is the distance between the base station locations of the i-th and j-th signaling records for the user, distance is in km, and 6371000 is the earth radius.

5. The method of claim 1, wherein, The method further comprises: calculating a signaling duration of each signaling in a target residence segment according to signaling data of a target user, the target residence segment being any one of the residence segments, and the target user being a user corresponding to the target residence segment. According to the signaling duration of each signaling in the target resident segment and the signaling data of the target user, a time weight of each signaling is calculated; According to the signaling data of the target user, the signaling duration of each signaling in the target resident segment and the time weight, an offset calibration resident point of the target user in the target resident segment is calculated.

6. The method of claim 5, wherein, The judging, by the recursive algorithm, of the offset calibration resident point of each resident segment and the second user signaling data, and the output of the user resident point result, include: According to the signaling time and the sorting and arrangement of the offset calibration resident point of each resident segment and the second user signaling data of the user, a user signaling data set is obtained; The user signaling data set is input into the recursive algorithm, and corresponding resident points of multiple resident segments of each user are identified according to the distance threshold and the time threshold.

7. A user residence point identification apparatus characterized by comprising: The device includes: The acquisition module is configured to acquire first user signaling data, the first user signaling data including continuous signaling data of at least one user for at least one day; The adding module is configured to add target signaling to each user in the first user signaling data to obtain second user signaling data, the target signaling being a signaling with a maximum timestamp as a start time and an end time and invalid values as latitude and longitude; The first calculation module is configured to identify corresponding multiple resident segments of each user by recursive calculation of the second user signaling data through a recursive algorithm and according to a distance threshold and a time threshold; The second calculation module is configured to assign a corresponding weight to each signaling in each resident segment according to a signaling duration of the signaling, and to calculate an offset calibration resident point of each resident segment; The judging module is configured to judge, by the recursive algorithm, the offset calibration resident point of each resident segment and the second user signaling data, and to output corresponding resident points of multiple resident segments of each user.

8. An electronic device, comprising: The device includes a processor and a memory having computer program instructions stored thereon; The processor, when executing the computer program instructions, implements the user resident point identification method of any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer program instructions are stored on the computer readable storage medium, and when executed by the processor, implement the user resident point identification method of any one of claims 1-6.

10. A computer program product, characterised in that, The instructions in the computer program product are executed by the processor of the electronic device, so that the electronic device executes the user resident point identification method of any one of claims 1-6.

Citation Information

Patent Citations

  • Mobile phone signaling stay point identification method based on personal travel trajectory characteristics

    CN111770452A

  • Method, device and equipment for identifying adjoint relation between tracks

    CN114707616A