User terminal positioning method and apparatus, computer-storable medium
By generating user terminal dwell status tags and combining trajectory data from multiple data sources, target user terminals can be filtered and located, solving the problems of low efficiency and low accuracy in existing technologies, and achieving efficient and accurate emergency area population positioning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA TELECOM CORP LTD
- Filing Date
- 2021-11-18
- Publication Date
- 2026-04-21
AI Technical Summary
Existing user terminal positioning methods based on base station cell data are inefficient and inaccurate, making it difficult to meet the needs of emergency response.
By acquiring the trajectory data of user terminals, a dwell status label is generated. Candidate user terminals are selected using various data sources such as AGPS, machine learning, and S1MME signaling. The target user terminal is located within a specified time based on its label.
It improves the efficiency and accuracy of user terminal positioning, enabling rapid and precise determination of personnel locations within emergency areas, thus supporting emergency response efforts.
Smart Images

Figure CN116137743B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of positioning technology, and in particular to user terminal positioning methods and devices, and computer-storable media. Background Technology
[0002] To ensure emergency response capabilities for major events (such as building collapses, mudslides, epidemics, or critical holiday security), it is necessary to be able to locate people within emergency areas in a timely manner, providing accurate and effective data support to emergency response departments. However, currently, there is a lack of rapid, efficient, and accurate methods and means for locating people in specific areas.
[0003] In related technologies, the main method for counting user terminals currently camped in emergency areas is based on base station cell data. All user terminals under base stations covering the area are counted, but only a small fraction of these terminals are actually actually in the area. This needle-in-a-haystack approach is insufficient for the needs of emergency response. Summary of the Invention
[0004] The inventors believe that in related technologies, locating user terminals based on base station cell data is inefficient and inaccurate.
[0005] To address the aforementioned technical problems, this disclosure proposes a solution that improves the efficiency and accuracy of user terminal positioning.
[0006] According to a first aspect of this disclosure, a user terminal positioning method is provided, comprising:
[0007] Acquire trajectory data of a user terminal; generate a tag indicating the user terminal's dwell state within a preset area based on the trajectory data of the user terminal; determine candidate user terminals and their tags based on the trajectory data of the user terminal within a target area within a specified time; locate the target user terminal within the target area within a specified time based on the tags of the candidate user terminals.
[0008] In some embodiments, locating a target user terminal within a target area within a specified time period based on the tag of the candidate user terminal includes: locating the target user terminal within the target area within a specified time period based on the tag of the candidate user terminal and the trajectory data of the candidate user terminal outside the target area.
[0009] In some embodiments, locating a target user terminal located within a target area within a specified time period based on the tag of the candidate user terminal includes: when the distance between the location of the trajectory data of the candidate user terminal outside the target area and the target area is greater than a given threshold, locating the candidate user terminal outside the target area within the specified time period.
[0010] In some embodiments, acquiring the trajectory data of a user terminal includes: generating real-time trajectory points of the user terminal based on the measurement report (MR) data or the mobility management entity (S1MME) signaling data of the S1 interface reported by the user terminal; determining the trajectory points of the user terminal per unit time based on the real-time trajectory points of the user terminal; determining the dwell point of the user terminal for a preset time period based on the trajectory points of the user terminal per unit time; and generating the trajectory data of the user terminal based on the dwell point for the preset time period.
[0011] In some embodiments, determining the trajectory point of the user terminal per unit time based on the real-time trajectory point of the user terminal includes: when the MR data exists, determining the trajectory point per unit time based on the MR data; when the MR data does not exist, determining the trajectory point per unit time based on the S1MME signaling data.
[0012] In some embodiments, determining the trajectory point per unit time based on the MR data includes: when the MR data contains AGPS information, using the latitude and longitude of the AGPS information as the location of the trajectory point per unit time; when the MR data does not contain AGPS information, using machine learning to predict the latitude and longitude as the location of the trajectory point per unit time; when machine learning cannot predict the latitude and longitude, using the latitude and longitude of the primary serving cell (SC) in the MR data as the location of the trajectory point per unit time.
[0013] In some embodiments, determining the dwell point of the user terminal for a preset time period based on the trajectory points of the user terminal per unit time includes: determining the speed of the user terminal based on the positions of the multiple trajectory points per unit time; determining the motion state of the user terminal based on the speed of the user terminal; and when the motion state of the user terminal is dwelling, clustering the multiple trajectory points per unit time within the preset time period into one dwell point.
[0014] In some embodiments, when the user terminal is in a stationary state, the trajectory points of multiple units of time within a preset time period are clustered into a stationary point, including: clustering the trajectory points of multiple units of time into a stationary point based on the location and source of the trajectory points; wherein, the source of the trajectory points includes AGPS, machine learning prediction results, SC and S1MME signaling.
[0015] In some embodiments, the types of trajectory data located in a preset area or target area include: WIFI data or trajectory data corresponding to indoor distributed antenna systems (DAS) cells in the preset area or target area; trajectory data in base station cells under the list of indoor DAS cells in the preset area or target area; trajectory data corresponding to trajectory points predicted by AGPS or machine learning in the preset area or target area; and trajectory data in base station cells whose coverage overlaps with the preset area or target area.
[0016] In some embodiments, generating a label representing the user terminal's dwell state within a preset area based on the user terminal's trajectory data includes: generating a label representing the user terminal's dwell state within a preset area based on the type of trajectory data, the dwell time period of the user terminal within the preset area, and trajectory data outside the preset area.
[0017] In some embodiments, a label representing the dwell state of the user terminal within a preset area is generated based on the type of trajectory data, the dwell time of the user terminal within a preset area, and trajectory data outside the preset area. This includes: when the user terminal corresponds to multiple types of trajectory data, generating a label representing the dwell state of the user terminal within the preset area based on the accuracy of the trajectory data. The accuracy of the trajectory data, from high to low, is as follows: trajectory data corresponding to WIFI data or indoor distributed antenna system (DAS) cells within the preset area, trajectory data corresponding to trajectory points predicted by AGPS or machine learning within the preset area or target area, and trajectory data within base station cells whose coverage overlaps with the preset area.
[0018] In some embodiments, a tag representing the dwelling status of the user terminal within the preset area is generated based on the type of the trajectory data, the dwelling time of the user terminal within the preset area, and the trajectory data outside the preset area. This includes: when the trajectory data is trajectory data within a base station cell whose coverage overlaps with the preset area, a tag representing the dwelling status of the user terminal within the preset area is generated based on the proportion of the number of base station cells passed by the user terminal to the total number of overlapping base station cells in the preset area.
[0019] According to a second aspect of this disclosure, a user terminal positioning device is provided, comprising: an acquisition module configured to acquire trajectory data of a user terminal; a generation module configured to generate a tag indicating the user terminal's dwell state within a preset area based on the trajectory data of the user terminal; a determination module configured to determine candidate user terminals and their tags based on the trajectory data located within a target area within a specified time; and a positioning module configured to locate a target user terminal located within the target area within a specified time based on the tag of the candidate user terminal.
[0020] According to a third aspect of this disclosure, a user terminal positioning device is provided, comprising: a memory; and a processor coupled to the memory, the processor being configured to execute, based on instructions stored in the memory, the user terminal positioning method described in any of the above embodiments.
[0021] According to a fourth aspect of this disclosure, a computer-storeable medium stores computer program instructions thereon, which, when executed by a processor, implement the user terminal positioning method described in any of the above embodiments.
[0022] In the above embodiments, target user terminals are filtered by generating user terminal tags and using trajectory data from multiple data sources. Then, based on the trajectory data of the target user terminals outside the area, target user terminals that have safely left are excluded, thereby accurately locating target user terminals that are within the target area within a specified time, improving positioning efficiency and accuracy. Attached Figure Description
[0023] The accompanying drawings, which form part of this specification, illustrate embodiments of this disclosure and, together with the specification, serve to explain the principles of this disclosure.
[0024] This disclosure will become clearer with reference to the accompanying drawings and the following detailed description, wherein:
[0025] Figure 1 A flowchart of a user terminal positioning method according to some embodiments of the present disclosure is shown;
[0026] Figure 2 A flowchart illustrating the acquisition of trajectory data of a user terminal according to some embodiments of the present disclosure is shown;
[0027] Figure 3 A schematic diagram of a base station cell whose coverage overlaps with the area according to some embodiments of the present disclosure is shown;
[0028] Figure 4 A schematic diagram of a region configuration interface according to some embodiments of the present disclosure is shown;
[0029] Figure 5 A schematic diagram illustrating the results of locating and statistically analyzing a target user terminal according to some embodiments of the present disclosure is shown;
[0030] Figure 6 A block diagram of a user terminal positioning device according to some embodiments of the present disclosure is shown;
[0031] Figure 7 A block diagram of a user terminal positioning device according to other embodiments of the present disclosure is shown;
[0032] Figure 8A block diagram of a computer system for implementing some embodiments of the present disclosure is shown. Detailed Implementation
[0033] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.
[0034] At the same time, it should be understood that, for ease of description, the dimensions of the various parts shown in the accompanying drawings are not drawn according to actual scale.
[0035] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit this disclosure or its application or use.
[0036] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.
[0037] In all examples shown and discussed herein, any specific values should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.
[0038] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.
[0039] Figure 1 A flowchart of a user terminal positioning method according to some embodiments of the present disclosure is shown.
[0040] like Figure 1 As shown, the user terminal positioning method includes steps S1-S4.
[0041] In step S1, the trajectory data of the user terminal is acquired.
[0042] Figure 2 A flowchart illustrating the acquisition of trajectory data of a user terminal according to some embodiments of the present disclosure is shown.
[0043] like Figure 2 As shown, obtaining the trajectory data of the user terminal includes steps S110-S140.
[0044] In step S110, measurement report data or S1MME (Mobility Management Entity) signaling data reported by the user terminal are received, and real-time trajectory points of the user terminal are generated. For example, each piece of MR data or S1MME signaling data carrying latitude and longitude information corresponds to a real-time trajectory point. The MR data may include information such as TA (Timing Advance), RSRP (Reference Signal Receiving Power), PCI (Physical Cell Identification), and FCN (Frequency Channel Number), of which approximately 2% of the MR data contains AGPS (Assisted Global Positioning System) positioning information.
[0045] In step S120, the trajectory point of the user terminal per unit time is determined based on the real-time trajectory points of the user terminal. For example, when a user terminal has multiple real-time trajectory points within one minute, a single trajectory point is generated based on these real-time trajectory points to represent the location of the user terminal within that minute. The information for each trajectory point may include: user terminal number, timestamp, latitude and longitude, base station cell, base station cell type (indoor / outdoor), and trajectory point source (e.g., AGPS, machine learning prediction, SC, or S1MME).
[0046] In some embodiments, determining the trajectory points of the user terminal per unit time based on the real-time trajectory points of the user terminal includes the following steps:
[0047] When MR data exists, the trajectory point for that unit of time is determined based on the MR data. For example, if the same user terminal has multiple real-time trajectory points within one minute, the position of the real-time trajectory point derived from the MR data is selected as the position of the user terminal's trajectory point for that unit of time.
[0048] When MR data is unavailable, the trajectory point for that unit of time is determined based on S1MME signaling data. For example, if a user terminal has multiple real-time trajectory points within one minute, and none of them originate from MR data, then the base station cell latitude and longitude location in the S1MME signaling data is selected as the location of the user terminal's trajectory point for that unit of time.
[0049] In some embodiments, determining the trajectory point per unit time based on MR data includes the following steps:
[0050] (1) AGPS: When there is AGPS information in the MR data, the latitude and longitude of the AGPS information are used as the position of the trajectory point in that unit of time. For example, if a user terminal has multiple real-time trajectory points within one minute, some of which are real-time trajectory points from MR data, and the MR data contains AGPS information, then the latitude and longitude of the AGPS information are used as the position of the trajectory point in that unit of time.
[0051] (2) Machine Learning: When there is no AGPS information in the MR data, machine learning is used to predict the latitude and longitude, which is then used as the location of the trajectory point for that unit of time. For example, if a user terminal has multiple real-time trajectory points within one minute, some of which are derived from MR data but lack AGPS information, machine learning can be used to predict the latitude and longitude. A fingerprint database can be established using AGPS, RSRP, PCI, and FCN data from the MR data. For MR data without AGPS information, the latitude and longitude can be predicted based on the fingerprint database using machine learning methods, using the RSRP, PCI, and other data, and then backfilled into the MR data. Thus, the location of the trajectory point corresponding to the MR data can be obtained based on the predicted latitude and longitude, which is then used as the location of the trajectory point for that unit of time.
[0052] (3) SC: When latitude and longitude cannot be predicted using machine learning, the latitude and longitude of the SC (service cell) in the MR data are used as the location of the trajectory point for that unit of time. For example, if the data in an MR data set is insufficient due to missing data such as AGPS, RSRP, PCI, and FCN, the amount of data required by the machine learning model cannot be met. In this case, it is difficult to predict the latitude and longitude of the MR data using machine learning methods. Therefore, the latitude and longitude of the SC in the MR data are selected as the location of the trajectory point for that unit of time.
[0053] In step S130, the dwell point of the user terminal within a preset time period is determined based on the trajectory points of the user terminal per unit time. For example, a dwell point can be generated based on multiple trajectory points representing the location per minute of the user terminal within one hour, which represents the location where the user terminal dwells within that hour.
[0054] In some embodiments, determining the dwell point of the user terminal within a preset time period based on the trajectory points of the user terminal per unit time includes the following steps:
[0055] First, the speed of the user terminal is determined based on the position of trajectory points at multiple time units.
[0056] Secondly, the user terminal's motion state can be determined based on its speed. For example, the user terminal's movement speed, clustering, and other factors can be used to determine whether the user terminal is stationary or moving.
[0057] Then, when the user terminal's motion state is stationary, the trajectory points of multiple units of time within a preset time period will be clustered into a stationary point and determined as the stationary point for that preset time period.
[0058] In some embodiments, trajectory points at multiple time units can be clustered based on their locations and sources to obtain the user terminal's dwell point. The sources of the trajectory points include: AGPS, machine learning prediction results, SC, and S1MME signaling.
[0059] For example, for a user terminal in a stationary state, multiple trajectory points within one hour can be clustered to remove outliers. When the trajectory point originates from AGPS information, the nearest cluster is selected; when the trajectory point does not originate from AGPS information, the cluster with the largest trajectory point type in the machine learning prediction results is selected, and so on for SC and S1MME. Based on the final clusters, a stationary point within the preset time period is fitted. The latitude and longitude of the stationary point within this preset time period can be used as the latitude and longitude of the trajectory points every minute within that hour (i.e., the latitude and longitude information of the stationary point is filled into the latitude and longitude information of the trajectory points every minute).
[0060] When the user terminal is in motion, Kalman filtering can be used to process the trajectory point data of the user terminal per unit time. The trajectory points per unit time can be connected to identify and remove abnormal trajectory points, and then the motion trajectory is smoothed. Based on the smoothed motion trajectory data, the trajectory points representing the user terminal's position per minute can be determined.
[0061] In step S140, trajectory data of the user terminal is generated based on the dwell points during the preset time period. The trajectory data of the user terminal may include information such as the user terminal's location and time, used to describe the user terminal's historical travel trajectory. For example, the latitude and longitude information of the dwell points can be filled into the latitude and longitude information of the trajectory points every minute of that hour, and then the latitude and longitude information of the trajectory points every minute can be used as the location information in the user terminal's trajectory data.
[0062] In some embodiments, a user trajectory list can be generated based on trajectory data from the user terminal.
[0063] MR-based mobile network positioning achieves an accuracy of 50-100 meters, providing highly precise location information. This disclosure prioritizes the use of location information from MR data when available; even in the absence of MR data, latitude and longitude information can still be provided using S1MME. By acquiring the latitude and longitude of trajectory points through multiple methods (such as AGPS, machine learning, SC, and S1MME signaling), the stability of the trajectory point data source can be ensured, providing a complete representation of the user terminal's trajectory. Furthermore, by clustering or smoothing the user terminal's trajectory, trajectory points for the user terminal's location per minute can be generated, improving the accuracy of the user terminal trajectory data.
[0064] In step S2, a label representing the user terminal's dwell state within a preset area is generated based on the user terminal's trajectory data.
[0065] For example, a city can be divided into multiple grid units, each representing a predefined area. For each predefined area a user terminal has visited, a corresponding tag is generated to indicate the user terminal's presence within that area. In other words, a user terminal can have multiple tags, each corresponding to its presence in different predefined areas. Tags indicating a user terminal's presence within a predefined area can include "Permanent / Long-Term Residence" (long-term activity in the area both day and night), "Residence" (long-term activity in the area only at night), "Working" (long-term activity in the area only during work hours), and "Passing By" (brief stay in the area during the day or night), etc.
[0066] In some embodiments, different types of trajectory data are used to select user terminals within a preset area. The trajectory data located within the preset area or target area may include the following types:
[0067] (1) Track data of WIFI or indoor distributed antenna system (DAS) cells within a preset area or target area. For example, a list of indoor DAS cells within the preset area or target area can be obtained from the base station information database. In the track list, priority is given to extracting the list of indoor DAS cells or WIFI-related track data within the preset area, and marking their source as User_Selected_index=0.
[0068] (2) Trajectory data corresponding to the finely positioned trajectory points within the preset area or target area. These finely positioned trajectory points are obtained through AGPS or machine learning prediction. The trajectory data corresponding to the finely positioned trajectory points whose latitude and longitude fall within the preset area or target area can be marked with their source User_Selected_index=1.
[0069] (3) Trajectory data of base station cells whose coverage overlaps with the preset area or target area. For example, the coverage polygon of the base station cell can be generated to obtain the coverage area of each base station cell, or cell coverage polygon. Then, the base station cells whose coverage overlaps with the area are identified, and the user terminal trajectory data under these base station cells is extracted from the trajectory list. The source can be marked as User_Selected_index=2.
[0070] Figure 3 A schematic diagram of a base station cell whose coverage overlaps with an area according to some embodiments of the present disclosure is shown.
[0071] like Figure 3 As shown, MR data with AGPS information from the most recent 7 days is extracted, and the coverage area of each base station cell is rasterized to generate a raster. Figure 3 (The grid in the image). Connect the grids covered by the base station cell to obtain the coverage area of the base station cell, where "F Nancun Luobianxi LTE-RRU02" is the name of the base station cell. Figure 3 The area defined by the black box is the custom target region. It can be seen that the preset region overlaps with the base station cell, therefore, it is necessary to extract the user terminal trajectory data under this base station. Based on the cell coverage polygon generated from AGPS data in MR, the base station cells within the target region can be automatically extracted, generating a list of base station cells within the target region without manual intervention.
[0072] For the trajectory data (User_Selected_index = 0, 1, 2) selected in the above steps, find the corresponding candidate user terminals. The trajectory data of the candidate user terminals outside the preset area can be extracted and marked as User_Selected_index = 3.
[0073] Among the various types of trajectory data within the preset area or target area, the accuracy of the trajectory data from high to low is as follows: trajectory data corresponding to WIFI data or indoor distributed antenna system (DAS) cells within the preset area, trajectory data corresponding to precise positioning (AGPS and machine learning prediction) trajectory points within the preset area, and trajectory data within base station cells whose coverage overlaps with the preset area.
[0074] In some embodiments, trajectory data can be extracted in descending order of accuracy. For example, from the complete list of trajectories within a preset area, trajectory data corresponding to WIFI data or indoor distributed antenna system (DAS) cells within the preset area is extracted first. Then, from the remaining trajectory data, trajectory data corresponding to trajectory points predicted by AGPS or machine learning within the preset area or target area is extracted. Finally, from the remaining trajectory data, trajectory data within base station cells whose coverage overlaps with the preset area is extracted. By extracting trajectory data in order of accuracy, duplication between different types of trajectory data can be avoided, thereby reducing computational load and improving analysis efficiency.
[0075] In some embodiments, a daily tag for a user terminal can be generated based on the trajectory data within the preset area. First, the day is divided into 96 periods, each lasting 15 minutes, or a finer granularity (e.g., each period lasting 10 minutes or 5 minutes). Then, within each period, the number of trajectory data of different User_Selected_index types for each user terminal, the average distance from the location of the trajectory data to the center of the area, the list of cells traversed by the user terminal, and the average distance from the location of trajectory data outside the preset area to the center of the area are counted.
[0076] The statistics are summarized and accumulated, including the number of location times during working hours, the number of location times during rest hours, the number of trajectory selection types (min(User_Selected_index), i.e., the minimum value of multiple trajectory types for the same user terminal), the earliest and latest times of each selected trajectory type (e.g., the earliest and latest times of WIFI data appearance), the longest dwell time of the user terminal in the area, the farthest distance before entering the area, the farthest distance after leaving the area, and the farthest distance during the period in the area.
[0077] Based on relevant thresholds and statistical data, tags are generated daily for user terminals to indicate their location within a preset area, such as "permanent / long-term resident," "residence," "work," and "passing by," and a daily tag list for the user terminal is output. The relevant thresholds can be thresholds for the number of location times during working hours, rest periods, etc. For example, tags for user terminals can be generated by determining whether the number of times corresponding to each User_Selected_index (the number of times corresponding trajectory data exists in a day) exceeds a threshold.
[0078] In some embodiments, the number of time points of trajectory data corresponding to each User_Selected_index can be calculated, and the user's residency status can be determined by judging whether the number of time points of trajectory data (the number of time points of trajectory data within a preset area during a day) exceeds a threshold. For example, if the number of time points located within the preset area during working hours exceeds the threshold, the user is judged as "working"; if the number of time points exceeds the threshold only during rest hours, the user is marked as "residing"; if the thresholds for both working and rest hours are met, the user is marked as "permanent resident / long-term resident".
[0079] In some embodiments, when a user terminal corresponds to multiple types of trajectory data, a label representing the user terminal's dwell state within a preset area can be generated based on the accuracy level of the trajectory data.
[0080] For example, information provided by Wi-Fi or indoor distributed antenna systems (DAS) is more accurate. If trajectory data of this type exists in an area, the user terminal is most likely located in that area. Therefore, if trajectory data with User_Selected_index=0, User_Selected_index=1, and User_Selected_index=2 exist simultaneously, the user terminal's tag is generated based on the trajectory data with User_Selected_index=0. That is, when the same user terminal has trajectory data from multiple sources within the area, the tag is generated based on the smallest User_Selected_index value.
[0081] Tags can also be generated by combining the quantity of different types of trajectory data with the accuracy level of the trajectory data. For example, if a user terminal only has one trajectory data point with User_Selected_index=0 in the area (i.e., there is trajectory data only at one moment), it is very likely that the user only briefly passed through the WIFI coverage area. In this case, it is necessary to generate a tag for the user terminal by judging the trajectory data with User_Selected_index=1.
[0082] In some embodiments, when the trajectory data is trajectory data within a base station cell whose coverage overlaps with the preset area, a tag indicating the user terminal's camping status within the preset area can be generated based on the proportion of the number of base station cells passed by the user terminal to the total number of base station cells overlapping in the preset area, and the corresponding configurable threshold parameters.
[0083] For example, if the user terminal's trajectory data only includes trajectory data within base station cells whose coverage overlaps with the preset area, then it's necessary to calculate the ratio of the number of base station cells the user terminal passed through to the number of base station cells overlapping with the preset area. If this ratio exceeds a corresponding threshold, and the number of times the user terminal stayed within the preset area is less than the corresponding threshold, it indicates that the user terminal passed through multiple cells. It can be determined that the possibility of the user terminal staying in the preset area for an extended period is low, and therefore the user terminal's label is determined to be "passed through".
[0084] It can also generate monthly tags. It retrieves a list of daily tags for the user terminal for the most recent month and calculates the following data: number of days with trajectory data in the area (the number of days trajectory data within the preset area can be obtained normally), number of days the user terminal appeared in the area (the number of days the user terminal's trajectory data is available within the preset area), number of days the user terminal appeared in the area during holidays (the number of days the user terminal's trajectory data is available within the preset area during holidays), number of days with WIFI positioning (the number of days the user terminal's WIFI positioning trajectory data is available within the preset area), number of days with indoor distributed antenna system (DAS) positioning (the number of days the user terminal's indoor DAS positioning trajectory data is available within the preset area), number of days with precise positioning (the number of days the user terminal's trajectory point positioning trajectory data is available within the preset area, and the trajectory points are predicted through AGPS or machine learning in MR), number of days with overlapping coverage cell positioning (the number of days the coverage area of the base station cell where the user terminal is located overlaps with the preset area), average daily dwell time, average daily dwell time, and the number of days with various tags (i.e., long-term / permanent dwell time, residential days, working days, passing days), etc.
[0085] By combining the above statistical information and the thresholds in the regional configuration information table, a new label representing the user terminal's stay in the preset area during the month can be generated, such as "permanent resident," "reside," "work," "passing by," etc.
[0086] This disclosure allows for the assessment of the credibility of a user terminal's location within a given area by classifying trajectory data into different accuracy levels. Using different methods to generate tags for different types of trajectory data at different accuracy levels can effectively improve the accuracy of the generated tags. Furthermore, after generating daily tags, the user terminal's daily activity trajectory over multiple days can be comprehensively considered to generate monthly tags, which is more effective in reflecting the user terminal's residence within a preset area.
[0087] In step S3, candidate user terminals and their tags are determined based on trajectory data located within the target area within a specified time period.
[0088] Candidate user terminals refer to the user numbers (encrypted MDN or encrypted IMSI) corresponding to trajectory data located within the target area within a specified time period. The specified time and target area can be set in the area configuration interface.
[0089] Figure 4 A schematic diagram of a region configuration interface according to some embodiments of the present disclosure is shown.
[0090] like Figure 4 As shown, the custom area selection function provided by the WEB interface allows users to manually select the target area for population analysis on the map (for example, draw the shape of the target area and customize its size), configure relevant parameters, and generate an area configuration information table.
[0091] The regional configuration information table may include: regional name, city, regional type (e.g., business, residential, airport, high-speed rail, tourist attraction, rural, subway, exhibition hall, etc.), regional code, regional range (stored in WKT format), extended range of user terminals within the regional bounding box (meters), statistical start time, statistical end time, workday start time, workday end time, location statistics location information type (e.g., AGPS, ML machine learning, SC, S1), critical number of times the device is located during work hours, critical number of times the device is located during rest hours, list of indoor distributed cell networks within the region, and the threshold ratio of the number of cells traversed by the user terminal to the total number of overlapping cells in the region.
[0092] In some embodiments, trajectory data can be extracted based on relevant parameters set in the area configuration information table. Similar to S2, trajectory data located within the target area within a specified time period can be extracted from the trajectory list in descending order of accuracy. Based on the cell coverage polygon, base station cells whose coverage overlaps with the target area can be automatically extracted and filtered, thereby selecting trajectory data within these overlapping base station cells. Then, based on the extracted trajectory data, the corresponding user terminals are determined, and deduplication of user terminals is performed. The deduplicated user terminals are listed as candidate user terminals.
[0093] After identifying candidate user terminals, it is necessary to determine the labels of the candidate user terminals based on the previously generated user terminal labels. If the same candidate user terminal has multiple labels corresponding to different preset regions, the label corresponding to the preset region that falls within the target region is found and used as the candidate user terminal's label within the target region.
[0094] In some embodiments, the final tag of a candidate user terminal in a target area can be determined based on a daily tag and a monthly tag. Among multiple tags corresponding to different preset areas for the same candidate user terminal, if there is a monthly tag whose corresponding preset area falls within the target area, then that monthly tag is used as the candidate user terminal's tag in the target area. If there is no monthly tag whose corresponding preset area falls within the target area, then the daily tag whose corresponding preset area falls within the target area is selected as the candidate user terminal's tag in the target area.
[0095] This disclosure improves the accuracy of regional user terminal analysis by comprehensively considering trajectory data from multiple data sources to screen candidate user terminals, thus avoiding omissions. Furthermore, it enables automatic extraction of base station cells within a target area based on cell coverage polygons generated from AGPS data in MR, producing a list of base station cells within the target area without manual intervention, saving labor costs and improving the efficiency of emergency response.
[0096] In step S4, the target user terminal located within the target area within a specified time period is located based on the candidate user terminal's tag.
[0097] In this context, a target user terminal refers to a candidate user terminal that is located within a target area within a specified time period. For example, if a candidate user terminal is labeled "resident / long-term resident," it is considered to be within the target area within the specified time period and is thus a target user terminal. If the candidate user terminal is labeled "passing by," it is considered not to be within the target area within the specified time period. When the specified time is during working hours, if a candidate user terminal is labeled "working," it is considered a target user terminal; if the candidate user terminal is labeled "residential," it is considered not to be within the target area.
[0098] When an emergency occurs, user terminal tags can be used to locate potential users who may be trapped in the emergency area. For example, if a disaster occurs in a certain area at night, users whose user terminals in that area are tagged as "permanently residing" or "living", as well as users who "passed through" the area during that time period, can be identified as potential users. If a disaster occurs during the day (working hours), the focus should be on users who are "working", "permanently residing", or who pass through the area during that time period.
[0099] In some embodiments, a target user terminal located within a specified time period can be located based on the candidate user terminal's tag and trajectory data of the candidate user terminal outside the target area.
[0100] For example, the trajectory data of candidate user terminals can be divided into trajectory data within the target area and trajectory data outside the target area. Then, by combining the current tag of the candidate user terminal and the trajectory data outside the target area, the candidate user terminal can be located. For example, if the tag of a candidate user terminal is "resident / long-term resident," "residence," or "work," but its subsequent trajectory appears outside the target area, and it can be determined from the trajectory outside the target area that the user has left the target area (resident / long-term resident, residing, or working population temporarily leaving the area, such as for business trips, visiting relatives, or tourism), then the candidate user terminal can be located outside the target area.
[0101] In some embodiments, when the distance between the position of the candidate user terminal's trajectory data outside the target area and the target area is greater than a given threshold, the candidate user terminal is located outside the target area within a specified time. For example, if it is determined from the position of the candidate user terminal's trajectory data outside the target area that the candidate user terminal has left the target area by more than a certain distance, the candidate user terminal can be located outside the target area.
[0102] In emergency scenarios, candidate user terminal tags can be referenced, and combined with the trajectory of these candidate user terminals outside the target area after the disaster, a comprehensive investigation can be conducted to determine the user terminals most likely to be stationed in the disaster area at the current specific time period.
[0103] In scenarios involving critical security incidents, user tag types and user trajectories outside the target area can be combined to statistically analyze user presence in the target area. For example, when analyzing critical security target areas like airports, daily and monthly user tags can be used to identify airport staff (monthly tags indicating permanent / long-term presence, residence, or work, meaning they frequently appear in the target area and their stay duration meets a threshold), passengers (a small number of daily tags indicating residence, work, or transit, with trajectory data outside the target area located far from the target area; the order of trajectory entry into the target area can also indicate the direction of passenger flights), taxi drivers (frequently transiting the target area, with long-term trajectories outside the target area exceeding a certain number of hours, and a relatively long cumulative daily trajectory distance), and passing passengers. Finally, based on the user's job nature and the critical security period, user terminals within the target area can be located.
[0104] Figure 5 A schematic diagram illustrating the results of locating and statistically analyzing a target user terminal according to some embodiments of the present disclosure is shown.
[0105] like Figure 5As shown, statistical analysis can be performed on target user terminals based on tags. For example, duplicate target user terminals can be removed, and the number of target user terminals can be counted separately according to different tags. This includes: the total number of selected user terminals (the total number of target user terminals located in the target area within a specified time), the number of resident / long-term resident user terminals, the number of residential user terminals, the number of working user terminals, and the number of transit user terminals. It is also possible to separately count the number of user terminals within the province, the number of user terminals outside the province, the number of user terminals within the city, the number of IoT user terminals, and the number of non-IoT user terminals. Based on the statistical results, it is possible to quickly analyze how many user terminals reside within the specified area.
[0106] This disclosure comprehensively considers trajectory data from multiple data sources to screen candidate user terminals, avoiding omissions and identifying all candidate user terminals that have appeared within the target area within a specified time period. Secondly, it determines the tags of candidate user terminals based on historical statistical data (e.g., daily and monthly tags). Then, by combining trajectory data outside the target area, it locates the target user terminal, effectively eliminating candidate user terminals not within the target area and narrowing down the range of target user terminals within the target area, thereby accurately locating the target user terminal that was present within the target area within the specified time period. The method of this disclosure can quickly assess the personnel presence in the target area, improving the efficiency and accuracy of user terminal positioning.
[0107] Figure 6 A block diagram of a user terminal positioning device according to some embodiments of the present disclosure is shown.
[0108] like Figure 6 As shown, the user terminal positioning device 6 includes: an acquisition module 61, a generation module 62, a determination module 63, and a positioning module 64.
[0109] The acquisition module 61 is configured to acquire trajectory data from the user terminal, for example, by performing actions such as... Figure 1 Step S1 is shown.
[0110] The generation module 62 is configured to generate tags representing the user terminal's dwell state within a preset area based on the user terminal's trajectory data, for example, by performing... Figure 1 Step S2 is shown.
[0111] The determination module 63 is configured to determine candidate user terminals and their tags based on trajectory data located within a target area within a specified time period, for example, by performing actions such as... Figure 1 Step S3 is shown.
[0112] The positioning module 64 is configured to locate a target user terminal within a specified time period based on the tags of the candidate user terminals, for example, by performing... Figure 1 Step S4 is shown.
[0113] Figure 7 A block diagram of a user terminal positioning device according to other embodiments of the present disclosure is shown.
[0114] like Figure 7 As shown, the user terminal positioning device 7 includes a memory 71 and a processor 72 coupled to the memory 71. The memory 71 is used to store instructions for executing embodiments of the user terminal positioning method. The processor 72 is configured to execute the user terminal positioning method in any of the embodiments of this disclosure based on the instructions stored in the memory 71.
[0115] Figure 8 A block diagram of a computer system for implementing some embodiments of the present disclosure is shown.
[0116] like Figure 8 As shown, the computer system 80 can be represented in the form of a general computing device. The computer system 80 includes a memory 810, a processor 820, and a bus 800 connecting different system components.
[0117] The memory 810 may include, for example, system memory, non-volatile storage media, etc. The system memory may store, for example, an operating system, application programs, a boot loader, and other programs. The system memory may include volatile storage media, such as random access memory (RAM) and / or cache memory. The non-volatile storage media may store, for example, instructions for executing at least one of the user terminal positioning methods in a corresponding embodiment. Non-volatile storage media include, but are not limited to, disk storage, optical storage, flash memory, etc.
[0118] The processor 820 can be implemented using a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete hardware components such as discrete gates or transistors. Accordingly, each module, such as the screening module, the determination module, and the positioning module, can be implemented by executing instructions in the central processing unit (CPU) running memory to perform the corresponding steps, or by implementing dedicated circuitry to perform the corresponding steps.
[0119] Bus 800 can use any of the various bus architectures. For example, bus architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MCA) bus, and the Peripheral Component Interconnect (PCI) bus.
[0120] The computer system 80 may also include an input / output interface 830, a network interface 840, and a storage interface 850. These interfaces 830, 840, and 850, as well as the memory 810 and processor 820, can be connected via a bus 800. The input / output interface 830 provides a connection interface for input / output devices such as a monitor, mouse, and keyboard. The network interface 840 provides a connection interface for various networked devices. The storage interface 850 provides a connection interface for external storage devices such as floppy disks, USB flash drives, and SD cards.
[0121] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus, and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations thereof, can be implemented by computer-readable program instructions.
[0122] These computer-readable program instructions are provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable device to produce a machine, such that execution of the instructions by the processor produces means for implementing the functions specified in one or more boxes of the flowchart and / or block diagram.
[0123] These computer-readable program instructions may also be stored in a computer-readable storage medium. These instructions cause a computer to work in a particular manner to produce an article of manufacture, including instructions that implement the functions specified in one or more boxes in a flowchart and / or block diagram.
[0124] This disclosure may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects.
[0125] The user terminal positioning method and device, and computer storage medium described in the above embodiments can quickly assess the personnel presence in the target area, thereby improving the efficiency and accuracy of user terminal positioning.
[0126] This concludes the detailed description of the user terminal positioning method and apparatus, and the computer-storable medium according to this disclosure. To avoid obscuring the concept of this disclosure, some details known in the art have not been described. Those skilled in the art can fully understand how to implement the technical solutions disclosed herein based on the above description.
Claims
1. A user terminal positioning method, comprising: Acquiring trajectory data of a user terminal includes: generating real-time trajectory points of the user terminal based on the Measurement Report (MR) data or the Mobility Management Entity (S1MME) signaling data of the S1 interface reported by the user terminal, including: when the MR data exists, determining the trajectory point per unit time based on the MR data, wherein when the MR data contains AGPS information, the latitude and longitude of the AGPS information are used as the position of the trajectory point per unit time; when the MR data does not contain AGPS information, the latitude and longitude are predicted using machine learning as the position of the trajectory point per unit time; when the latitude and longitude cannot be predicted using machine learning, the latitude and longitude of the primary serving cell (SC) in the MR data are used as the position of the trajectory point per unit time; when the MR data does not exist, determining the trajectory point per unit time based on the S1MME signaling data. Based on the trajectory data of the user terminal, a tag indicating the user terminal's camping status within a preset area is generated. When the trajectory data is trajectory data within a base station cell whose coverage overlaps with the preset area, a tag indicating the user terminal's camping status within the preset area is generated based on the proportion of the number of base station cells passed by the user terminal to the total number of overlapping base station cells in the preset area. Based on trajectory data located within the target area within a specified time period, candidate user terminals and their tags are determined; Based on the tags of the candidate user terminals, locate the target user terminals that are located within the target area within a specified time period.
2. The user terminal positioning method according to claim 1, wherein, Locating target user terminals located within a target area within a specified time period based on the tags of the candidate user terminals includes: Based on the tags of the candidate user terminals and the trajectory data of the candidate user terminals outside the target area, the target user terminals located within the target area within a specified time period are located.
3. The user terminal positioning method according to claim 2, wherein, Locating a target user terminal within a specified time period based on the candidate user terminal's tag includes: When the distance between the candidate user terminal's trajectory data outside the target area and the target area is greater than a given threshold, the candidate user terminal will be located outside the target area within a specified time.
4. The user terminal positioning method according to claims 1-3, wherein, The acquisition of the user terminal's trajectory data also includes: Based on the real-time trajectory points of the user terminal, determine the trajectory points of the user terminal per unit time. Based on the trajectory points of the user terminal per unit time, determine the dwell point of the user terminal for a preset time period; Based on the dwell points during the preset time period, the trajectory data of the user terminal is generated.
5. The user terminal positioning method according to claim 1, wherein, Based on the trajectory points of the user terminal per unit time, determine the dwell point of the user terminal for a preset time period, including: The speed of the user terminal is determined based on the positions of the trajectory points within the multiple unit time intervals. The motion state of the user terminal is determined based on its speed. When the user terminal is in a stationary state, the trajectory points of multiple units of time within a preset time period will be clustered into a stationary point.
6. The user terminal positioning method according to claim 5, wherein, When the user terminal is in a stationary state, the trajectory points of multiple units of time within a preset time period will be clustered into a single stationary point, including: Based on the location and origin of the trajectory points in the multiple time units, the trajectory points in the multiple time units are clustered into a single dwell point; The sources of the trajectory points include AGPS, machine learning prediction results, SC and S1MME signaling.
7. The user terminal positioning method according to claim 4, wherein, The types of trajectory data located within the preset area or target area include: The WIFI data or trajectory data corresponding to the indoor distributed antenna system in the preset area or target area; Trajectory data corresponding to trajectory points predicted by AGPS or machine learning within a preset area or target area; and Trajectory data within base station cells whose coverage overlaps with the preset area or target area.
8. The user terminal positioning method according to claim 7, wherein, Based on the trajectory data of the user terminal, a tag representing the user terminal's dwell state within a preset area is generated, including: Based on the type of trajectory data, the dwell time of the user terminal within the preset area, and the trajectory data outside the preset area, a label representing the dwell status of the user terminal within the preset area is generated.
9. The user terminal positioning method according to claim 8, wherein, Based on the type of trajectory data, the dwell time of the user terminal within the preset area, and the trajectory data outside the preset area, a label representing the dwell status of the user terminal within the preset area is generated, including: When the user terminal corresponds to multiple types of trajectory data, a tag indicating the user terminal's dwell status within a preset area is generated based on the accuracy of the trajectory data. The accuracy of the trajectory data, from high to low, is as follows: trajectory data corresponding to WIFI data or indoor distributed antenna system (DAS) cells within the preset area; trajectory data corresponding to trajectory points predicted by AGPS or machine learning within the preset area or target area; and trajectory data within base station cells whose coverage overlaps with the preset area.
10. A user terminal positioning device, comprising: The acquisition module is configured to acquire trajectory data of a user terminal, including: generating real-time trajectory points of the user terminal based on the measurement report (MR) data or the mobility management entity (S1MME) signaling data of the S1 interface reported by the user terminal, including: when the MR data exists, determining the trajectory point per unit time based on the MR data, wherein when the MR data contains AGPS information, the latitude and longitude of the AGPS information are used as the position of the trajectory point per unit time; when the MR data does not contain AGPS information, the latitude and longitude are predicted using machine learning as the position of the trajectory point per unit time; when the latitude and longitude cannot be predicted using machine learning, the latitude and longitude of the primary serving cell (SC) in the MR data are used as the position of the trajectory point per unit time; when the MR data does not exist, determining the trajectory point per unit time based on the S1MME signaling data. The generation module is configured to generate a tag indicating the user terminal's camping status within a preset area based on the user terminal's trajectory data. When the trajectory data is trajectory data within a base station cell whose coverage overlaps with the preset area, the tag indicating the user terminal's camping status within the preset area is generated based on the proportion of the number of base station cells passed by the user terminal to the total number of overlapping base station cells in the preset area. The determination module is configured to determine candidate user terminals and their tags based on trajectory data located within a target area within a specified time period; The positioning module is configured to locate a target user terminal that is located within a target area within a specified time period, based on the tags of the candidate user terminals.
11. A user terminal positioning device, comprising: Memory; as well as A processor coupled to the memory, the processor being configured to execute the user terminal positioning method as described in any one of claims 1 to 9 based on instructions stored in the memory.
12. A computer-storeable medium having stored thereon computer program instructions that, when executed by a processor, implement the user terminal positioning method as described in any one of claims 1 to 9.
Citation Information
Patent Citations
User job and residence prediction method and device and storage medium
CN111126653A
User travel mode identification method and device, electronic equipment and storage medium
CN111222381A
System, device and method for decision of disaster situation
JP2011029748A