Space-time trajectory processing method, processing device, computer system and storage medium
By generating and transmitting the perturbed target location, the problem of poor security of user spatiotemporal trajectory is solved by using spatiotemporal trajectory processing methods, thereby improving privacy protection and avoiding direct leakage of location data.
Patent Information
- Application Number
- CN202111317214.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-08
- Publication Date
- 2025-12-19
- Estimated Expiration
- 2041-11-08
AI Technical Summary
Users' spatiotemporal trajectory security is poor, especially when used with untrusted third-party servers, which can easily lead to privacy leaks.
By acquiring the real location in the spatiotemporal trajectory, a candidate set is generated based on other related location information and location information. The perturbed target location is selected and sent. Location perturbation is performed using spatiotemporal constraints, directional constraints and road network structure division conditions to avoid directly sending the real location.
It improves the privacy and security of users' spatiotemporal trajectories, avoids the leakage of real locations, and enhances the protection of location data.
Smart Images

Figure CN114036558B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of computer, and more particularly, to a spatio-temporal trajectory processing method, a spatio-temporal trajectory processing apparatus, a computer system and a storage medium. BACKGROUND
[0002] With the wide use of mobile terminals, in order to achieve better services, the trajectory data of users is mined more and more, and at the same time, the privacy protection of trajectory data is paid more and more attention.
[0003] In the process of implementing the present disclosure, the inventors found that the security of the spatio-temporal trajectory of the user is poor in the related art. SUMMARY
[0004] Therefore, the present disclosure provides a spatio-temporal trajectory processing method, a spatio-temporal trajectory processing apparatus, a computer system and a storage medium.
[0005] One aspect of the present disclosure provides a spatio-temporal trajectory processing method, comprising:
[0006] obtaining a spatio-temporal trajectory of a first device, wherein the spatio-temporal trajectory comprises position information of N real positions arranged in time sequence, and N is an integer greater than or equal to 2;
[0007] determining a candidate set of an i-th real position in the spatio-temporal trajectory according to other position information associated with the i-th real position and position information of the i-th real position, wherein the candidate set comprises a candidate position obtained by perturbing the i-th real position, and i is a positive integer less than or equal to N;
[0008] selecting a target position from the candidate set; and
[0009] sending the target position to a server.
[0010] According to an embodiment of the present disclosure, the sending the target position to the second device comprises:
[0011] sending the target position to the second device after a preset time interval from a collection time point of the position information of the i-th real position.
[0012] According to an embodiment of the present disclosure, the determining the candidate set of the i-th real position in the spatio-temporal trajectory according to the other position information associated with the i-th real position and the position information of the i-th real position comprises:
[0013] In a case where it is determined that i is equal to 1, a candidate set of the i th real position is determined according to the i th real position and the i+1 th real position by using a position selection rule;
[0014] In a case where it is determined that i is greater than 1 and less than N, a candidate set of the i th real position is determined according to a target position corresponding to an i-1 th real position, the i th real position and the i+1 th real position by using a position selection rule.
[0015] According to an embodiment of the present disclosure, further comprising:
[0016] In a case where it is determined that i is equal to N, a candidate set of the i th real position is determined according to a target position corresponding to an i-1 th real position and the i th real position by using a position selection rule.
[0017] According to an embodiment of the present disclosure, the position selection rule comprises at least one of a space-time constraint condition, a direction constraint condition and a road network structure division condition.
[0018] According to an embodiment of the present disclosure, the position selection rule comprises a road network structure division condition, and the position selection rule further comprises a space-time constraint condition and / or a direction constraint condition.
[0019] The candidate set of the i th real position is determined by using the position selection rule, comprising:
[0020] A position range of the candidate set of the i th real position is determined by using the space-time constraint condition and / or the direction constraint condition according to other position information associated with the i th real position and position information of the i th real position.
[0021] The candidate set of the i th real position is determined from the position range of the candidate set of the i th real position by using the road network structure division condition.
[0022] According to an embodiment of the present disclosure, the road network structure division condition comprises a plurality of intersections and / or roads.
[0023] The candidate set of the i th real position is determined from the position range of the candidate set of the i th real position by using the road network structure division condition, comprising:
[0024] In a case where the position range of the candidate set of the i th real position comprises a plurality of intersections and / or roads, a position of the intersection and / or a midpoint position of the road is determined as an initial candidate set of the i th real position.
[0025] Each candidate position in the initial candidate set is disturbed to obtain a disturbed candidate position.
[0026] According to the plurality of disturbed candidate positions, the candidate set of the i th real position is generated.
[0027] According to an embodiment of the present disclosure, the target position is selected from the candidate set, comprising:
[0028] According to the preset point selection rule, one of the plurality of candidate positions in the candidate set is determined as the target position.
[0029] According to an embodiment of the present disclosure, the preset point selection rule comprises a Manhattan distance rule.
[0030] According to the preset point selection rule, one of the plurality of candidate positions in the candidate set of the i th real position is determined as the target position, comprising:
[0031] According to the Manhattan distance rule, the candidate position with the minimum distance from the i th real position is determined from the plurality of candidate positions in the candidate set of the i th real position.
[0032] The candidate position with the minimum distance is determined as the target position of the i th real position.
[0033] According to an embodiment of the present disclosure, further comprising:
[0034] In a case where the distance difference between the i th real position and the i-1 th real position is less than a preset distance threshold, and the time difference between the i th real position and the i-1 th real position is less than a preset time threshold, the target position corresponding to the i-1 th real position is set as the target position corresponding to the i th real position.
[0035] Another aspect of the present disclosure provides a space-time trajectory processing device, comprising:
[0036] An acquisition module is configured to acquire a space-time trajectory of a first device, wherein the space-time trajectory comprises position information of N real positions arranged in time sequence, and N is an integer greater than or equal to 2;
[0037] A determination module is configured to determine, for an i th real position in the space-time trajectory, a candidate set of the i th real position according to other position information associated with the i th real position and position information of the i th real position, wherein the candidate set comprises candidate positions obtained by disturbing the i th real position, and i is a positive integer less than or equal to N;
[0038] A selection module is configured to select a target position from the candidate set; and
[0039] The sending module is configured to send the target position to the second device.
[0040] Another aspect of the present disclosure provides a computer readable storage medium storing computer executable instructions, which when executed, implement the method according to the embodiments of the present disclosure.
[0041] Another aspect of the present disclosure provides a computer program product comprising computer executable instructions, which when executed, implement the method according to the embodiments of the present disclosure.
[0042] According to the embodiments of the present disclosure, for the i th real position in the spatio-temporal trajectory, the first device determines a candidate set of the i th real position according to other position information associated with the i th real position and position information of the i th real position, selects a target position from the candidate set since the candidate positions in the candidate set are perturbed and are not real positions, and sends the target position to the second device, so that the position data sent to the second device is relatively real, and the technical problem of poor security of the spatio-temporal trajectory of the user is at least partially overcome, and the security of the spatio-temporal trajectory privacy of the user is improved. BRIEF DESCRIPTION OF DRAWINGS
[0043] The above and other objects, features and advantages of the present disclosure will become more apparent from the following description of the embodiments of the present disclosure taken in conjunction with the accompanying drawings, in which:
[0044] Figure 1 An exemplary system architecture to which the spatio-temporal trajectory processing method according to the embodiments of the present disclosure can be applied is schematically shown;
[0045] Figure 2 A flowchart of the spatio-temporal trajectory processing method according to the embodiments of the present disclosure is schematically shown;
[0046] Figure 3 A flowchart of determining the candidate set of the i th real position according to the embodiments of the present disclosure is schematically shown;
[0047] Figure 4 A schematic diagram of the region division for determining the candidate set according to the embodiments of the present disclosure is schematically shown;
[0048] Figure 5 A schematic diagram of the region division for determining the candidate set according to the embodiments of the present disclosure is schematically shown;
[0049] Figure 6 A schematic diagram of determining the candidate set of the i th real position using the road network structure division condition according to the embodiments of the present disclosure is schematically shown;
[0050] Figure 7 a block diagram of a spatiotemporal trajectory processing apparatus according to an embodiment of the disclosure is illustrated schematically; and
[0051] Figure 8 a block diagram of an electronic device implementing a spatiotemporal trajectory processing method according to an embodiment of the disclosure is illustrated schematically. DETAILED DESCRIPTION
[0052] Hereinafter, embodiments of the disclosure will be described with reference to the accompanying drawings. It should be understood, however, that the description which follows is merely illustrative and is not intended to limit the scope of the disclosure. In the following detailed description of embodiments of the disclosure, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the disclosure. However, it will be apparent to one skilled in the art that one or more embodiments of the disclosure can be practiced without these specific details. In other instances, well-known structures and functions have not been described in detail in order to avoid obscuring aspects of the disclosure.
[0053] The terms used herein are merely used to describe specific embodiments and are not intended to limit the disclosure. The terms "include", "comprise" and the like used herein indicate the presence of the described features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0054] All terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of the specification, and should not be interpreted in an idealized or overly formal manner.
[0055] In the case of using expressions similar to "at least one of A, B, and C, etc.", it should be generally interpreted as including one or more of the items enumerated in the list (e.g., "a system having at least one of A, B, and C" should include, but not be limited to, a system having A alone, a system having B alone, a system having C alone, a system having both A and B, a system having both A and C, a system having both B and C, and / or a system having A, B, and C, etc.).
[0056] The privacy protection degree caused by independent noise existing in the spatiotemporal trajectory differential privacy publishing method is insufficient, and additional noise is also introduced. Based on the correlation Laplace noise adding mechanism, a noise sequence consistent with the correlation of the original sequence is generated and superimposed into the original sequence for publishing.
[0057] A CPL algorithm is proposed in the related art, which calculates the privacy level of different regions on a map according to a geographic spatial topological relationship, generalizes the privacy level, and then establishes a privacy model in combination with differential privacy according to the privacy level, analyzes the influence of a current perturbed position on a current real position and a previous real position through a Markov probability transition matrix, and proposes a differential privacy position publishing mechanism to protect the position and trajectory privacy of a user.
[0058] In the current differential privacy protection research on trajectory data, the research on spatiotemporal correlation is gradually increasing, for example, the time and space of trajectory data are associated through a Markov probability transition matrix, or a data consistency algorithm based on the maximum moving speed of a mobile object is used to conditionally suppress the time and space by using the concept of speed, and the time and space are ingeniously combined together.
[0059] However, the research on spatiotemporal trajectory data in the related art is performed under the premise of a trusted third-party server, but existing third-party servers are generally commercialized, and a commercialized server is more likely to leak the privacy of a client, and thus the security of spatiotemporal trajectory uploaded by a user is poor.
[0060] Therefore, an embodiment of the present disclosure provides a spatiotemporal trajectory processing method, a spatiotemporal trajectory processing apparatus, a computer system, and a storage medium. The method includes obtaining a spatiotemporal trajectory of a first device; determining a candidate set of an i th real position in the spatiotemporal trajectory according to other position information associated with the i th real position and position information of the i th real position; selecting a target position from the candidate set; and sending the target position to a second device.
[0061] Figure 1 An exemplary system architecture 100 to which a spatiotemporal trajectory processing method according to an embodiment of the present disclosure can be applied is schematically shown. It should be noted that, Figure 1 The system architecture shown is only an example of a system architecture to which an embodiment of the present disclosure can be applied, to help those skilled in the art understand the technical content of the present disclosure, but does not mean that an embodiment of the present disclosure cannot be used in other devices, systems, environments, or scenarios.
[0062] As Figure 1As shown, the system architecture 100 according to the embodiment can include devices 101, 102, 103, a network 104, and a server 105. The network 104 is a medium for providing a communication link between the devices 101, 102, 103 or between the devices 101, 102, 103 and the server 105. The network 104 can include various connection types, such as wired and / or wireless communication links, etc. Among them, the first device involved in the spatiotemporal trajectory processing method can include at least one of the devices 101, 102, 103 and the server 105 described above, and the second device can include other devices in communication connection with the first device, or the first device installed with software for obtaining a target position.
[0063] The user can use the devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send location information, etc. Various client applications can be installed on the devices 101, 102, 103, such as navigation applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, etc. (only as examples).
[0064] The devices 101, 102, 103 can be various electronic devices with display screens and supporting spatiotemporal trajectory recording, including but not limited to smartphones, tablet computers, laptop computers, etc.
[0065] The server 105 can be a server providing various services, such as a background management server providing support for the location information sent or received by the user using the devices 101, 102, 103 (only as an example). The background management server can analyze and process the received user request data, etc., and feed back the processing result (such as obtaining a navigation route according to the user request) to the device.
[0066] It should be noted that the spatiotemporal trajectory processing method provided by the embodiments of the present disclosure can generally be executed by the devices 101, 102, or 103, or can also be executed by other devices different from the devices 101, 102, or 103. Accordingly, the spatiotemporal trajectory processing system provided by the embodiments of the present disclosure can also be arranged in the devices 101, 102, or 103, or in other devices different from the devices 101, 102, or 103.
[0067] It should be understood that Figure 1 The number of devices, networks, and servers in the above description is only illustrative. According to the needs of implementation, there can be any number of devices, networks, and servers.
[0068] It should be noted that the acquisition, storage, and application of the spatiotemporal trajectory of the terminal in the embodiments of the present disclosure all comply with the provisions of laws and regulations and do not violate public order and good customs.
[0069] Figure 2 A flowchart of a spatiotemporal trajectory processing method according to an embodiment of the present disclosure is shown.
[0070] As shown in Figure 2 , the spatiotemporal trajectory processing method can include operations S201-S204.
[0071] In operation S201, a spatiotemporal trajectory of a first device is acquired, where the spatiotemporal trajectory includes N real positions arranged in time sequence, where N is an integer greater than or equal to 2.
[0072] In operation S202, for an i-th real position in the spatiotemporal trajectory, a candidate set of the i-th real position is determined according to other position information associated with the i-th real position and position information of the i-th real position, where the candidate set includes candidate positions obtained by perturbing the i-th real position, and i is a positive integer less than or equal to N.
[0073] In operation S203, a target position is selected from the candidate set.
[0074] In operation S204, the target position is sent to a second device. According to an embodiment of the present disclosure, the first device can include a mobile phone, a computer, or a server, etc. The second device can include an authorized device that can acquire the target position sent by the first device or the first device installed with software for acquiring the target position.
[0075] According to an embodiment of the present disclosure, the spatiotemporal trajectory can include a set of real positions arranged in time sequence generated by the first device according to the positions of the user within a period of time, and its formal definition can be, for example, L = {l s , l n , l t}.
[0076] Where l s represents the starting point of the trajectory, l t represents the end point of the trajectory, l i = (x i , y i , t i ) (1≤j≤n), (x i , y i ) represents the coordinates of the real position, and t i represents the current time.
[0077] In order to better represent the front and back relationship between multiple real positions in the spatiotemporal trajectory, the spatiotemporal trajectory is written in the form of an arrow here, which can be, for example, L = l s → l n → l t .
[0078] According to embodiments of this disclosure, for the i-th real location in a spatiotemporal trajectory, a candidate set of the i-th real location is determined based on other location information associated with the i-th real location and the location information of the i-th real location. The candidate locations in the candidate set can be a series of location points similar to the real location points calculated by the terminal based on the real location. For example, its formal definition can be C = {c1, c2, ... c...} i ..., c k}, where C represents the set of candidate locations generated for each real location, where c i =(x i y i , t i (1≤i≤k), (x i y i ) represents the coordinates of the candidate position, t i Let k represent the current time, and k represent the number of candidate locations that need to be generated from the candidate set of the actual location.
[0079] Because the time information of candidate locations generated at the same real location is consistent with the time information of the real location, only the coordinate information needs to be perturbed when performing random response perturbation. For example, in the implementation of this disclosure, based on spatiotemporal constraints and / or directional constraints and road network structure division conditions, the candidate set corresponding to the i-th real location is determined according to other location information associated with the i-th real location and the i-th real location, thereby determining the target location of the i-th real location. In this process, only the horizontal and vertical coordinate information (x, y, z) is perturbed. j y j Perturbation, such as perturbing the x and y coordinate information (x... j y j Offset by a preset value, without needing to adjust the time coordinate information t i Modifications can be made, and preset values can be set according to actual needs. The formal definition of the perturbation-induced spatiotemporal trajectory can be, for example, L′={l s l', l1', l2', ..., l n ′, l t L′ can be written as L′=l using arrow form. bs ′→l1′→l2′→...→l n ′→l t .
[0080] l′ determined from different candidate sets bs l′1, l2′...l′ n l t Upload data to the server from multiple target locations.
[0081] According to an example embodiment of the present disclosure, when the first device is a mobile phone and the second device is a server, the mobile phone sends the determined target position to the server according to the real position of the user by using the above-mentioned space-time trajectory processing method, so as to avoid the problem of poor security of the user's trajectory privacy caused by the leakage of the user's real position by the untrustworthy server.
[0082] According to another example embodiment of the present disclosure, the first device is a first mobile phone, and the second device is the first mobile phone used for obtaining a target position. The first device sends the determined target position to the software according to the real position of the user by using the above-mentioned space-time trajectory processing method, so as to avoid the trouble caused to the user by the leakage of the real position of the user by the software, such as some software pushing some advertisements that make the user feel troubled according to the position information of the user.
[0083] According to an example embodiment of the present disclosure, for the i-th real position in the space-time trajectory, the first device determines a candidate set of the i-th real position according to the position information of the i-th real position and other position information associated with the i-th real position. Since the candidate positions in the candidate set are disturbed and are not real positions, the target position is selected from the candidate set and sent to the second device, so that the position data sent to the second device is relatively real, and the space-time trajectory privacy leakage caused by the direct sending of the real position by the first device is avoided. Therefore, the technical problem of poor security of the space-time trajectory of the user is at least partially overcome, and the security of the space-time trajectory privacy of the user is improved.
[0084] According to an example embodiment of the present disclosure, sending the target position to the second device can include the following operations.
[0085] The target position is sent to the second device after a preset time interval from the collection time point of the position information of the i-th real position.
[0086] According to an example embodiment of the present disclosure, in order to make the availability of the position information of the real position protected by the space-time trajectory better, the target position corresponding to the real position can be selected to be published with a lag. Since the target position is generated in real time, it has timeliness, and a too long lag time cannot be selected. Here, a preset time interval is selected, for example, the preset time interval can be 10 seconds, or the i-1th target position at the last moment can be published only when the first device collects the current i-th real position of the user. It should be noted that the preset time interval can be set by the developer.
[0087] The target position published with a preset time interval delay can not only ensure the timeliness of the target position within a certain limit, but also determine the approximate direction of the space-time trajectory according to the real position at the current time and the target position at the last time, thereby playing a restraining role on the target position to be published at the last time, and can also predict the direction of the end point according to the moving direction of the current trajectory.
[0088] Figure 3 A flowchart for determining a candidate set of the i th real position according to an embodiment of the present disclosure is schematically shown.
[0089] As Figure 3 shown, for the i th real position in the space-time trajectory, determining a candidate set of the i th real position according to other position information associated with the i th real position and position information of the i th real position can include operations S301-S303.
[0090] In operation S301, in a case where it is determined that i is equal to 1, a candidate set of the i th real position is determined according to the i th real position and the i+1 th real position by using a position selection rule.
[0091] In operation S302, in a case where it is determined that i is greater than 1 and less than N, a candidate set of the i th real position is determined according to the target position corresponding to the i-1 th real position, the i th real position and the i+1 th real position by using a position selection rule.
[0092] In operation S303, in a case where it is determined that i is equal to N, a candidate set of the i th real position is determined according to the target position corresponding to the i-1 th real position and the i th real position by using a position selection rule.
[0093] According to an embodiment of the present disclosure, the end point refers to that the user trajectory has little change in position at consecutive n time points or the next real position does not exist, which means that the end point of the space-time trajectory is reached. Wherein n represents the upper limit of the time of user staying.
[0094] According to an embodiment of the present disclosure, the end point position does not exist the next real position, but before the next real position comes out, it is also impossible to determine whether the real position at the current time is the end point of the trajectory, so the end point of the trajectory also needs to be published with a delay. At the same time, because the space-time trajectory end point does not exist the constraint of the next real position, it is necessary to protect the end point of the space-time trajectory separately.
[0095] The end point position means that the user can stay at the current real position for a long time, and can stay at the current real position for a long time without moving or moving in a small range near the real position. Determining whether the real position is an end point can include the following two cases: one is that the real position remains unchanged for a long time or moves in a small range in a very small area. The second is that the real position cannot be obtained at the next time or the obtained real position is empty.
[0096] For the first case, if the real position always exists, the difference between the current real position and the last time real position needs to be determined. When the target position is the same for n consecutive times, the target position is regarded as the actual end point of the space-time trajectory, and the target position after the disturbance is the end point of the space-time trajectory.
[0097] For the second case, the system cannot obtain the real-time real position after the user reaches the end point. If the current real position does not exist or the information of the current real position cannot be obtained, it is considered that the space-time trajectory has ended, and the last time real position is the end point of the space-time trajectory.
[0098] According to an embodiment of the present disclosure, the position selection rule can include a road network structure division condition, and the position selection rule can further include a space-time constraint condition and / or a direction constraint condition.
[0099] According to an embodiment of the present disclosure, the space-time constraint condition means that if the current target position is reachable from the last time real position within a preset time interval, the current target position is considered to satisfy the space-time constraint based on the last time target position.
[0100] The direction constraint condition means that if the direction of the current target position always tends to the direction of the end point, the current target position is considered to satisfy the direction constraint based on the end point.
[0101] According to an embodiment of the present disclosure, the space-time constraint condition and the direction constraint condition are two measurement indexes for dividing the region of the disturbed position point based on the current real position. The space-time constraint condition can ensure that the candidate positions in the current candidate set region are reachable from the last time real position within a preset time interval. The direction constraint regulates the direction of the candidate positions in the candidate set. The advantage of tending to the direction of the end point is that in the worst case, the disturbed candidate position can still satisfy the space-time constraint condition.
[0102] According to an embodiment of the present disclosure, selecting the target position from the candidate set can include the following operations.
[0103] According to the preset selection rule, one of the plurality of candidate positions in the candidate set is determined as the target position.
[0104] According to an embodiment of the present disclosure, the preset selection rule can include a Manhattan distance rule.
[0105] The determining, according to the preset selection rule, of one candidate position from the plurality of candidate positions in the candidate set of the i-th real position as the target position can include the following operations.
[0106] According to the Manhattan distance rule, the candidate position with the minimum distance to the i-th real position is determined from the plurality of candidate positions in the candidate set of the i-th real position. The candidate position with the minimum distance is determined as the target position of the i-th real position.
[0107] According to an embodiment of the present disclosure, the Manhattan distance rule is that the distance between two points in the north-south direction plus the distance in the east-west direction, that is, d(i, j) = |xi-xj| + |yi-yj|. For a town street with a regular layout of the south-north and east-west directions, the distance from one point to another point is the distance traveled in the north-south direction plus the distance traveled in the east-west direction, so the Manhattan distance rule is also called the taxi distance rule.
[0108] According to an embodiment of the present disclosure, since the starting point of the trajectory does not exist the last time position point, the starting point candidate set needs to be considered separately. After the starting point is determined, since the approximate direction of the trajectory is known, the real position of the starting point can be disturbed in real time on the premise that the real position of the next time is known.
[0109] The starting point (i equals 1) does not have the information of the last time target position, so the candidate set of the real position that can exist at the current time cannot be generated through the transition probability of the last time target position. For the starting point, when the specific candidate position cannot be directly calculated, the candidate position can be first generalized as a position area, the possible area of the candidate position distribution is divided through the constraint condition, and then k candidate positions conforming to the position selection rule are generated in the area. For the area division of the starting point, the constraint condition can include two, one is that the distance between the real position is relatively close, at this time the possible area of the real position generated needs to be simply divided. The second constraint condition is the direction of the real position at the next time, which should tend to the direction of the real position at the next time when dividing the possible area.
[0110] When selecting the candidate position, the similarity of the candidate position in time and space needs to be considered, that is, there needs to be a certain difference between the real position, and at the same time, there needs to be rationality.
[0111] According to an embodiment of the present disclosure, the determining of the candidate set of the i-th real position by using the position selection rule can include the following operations.
[0112] Based on other location information associated with the i-th real location and the location information of the i-th real location, the location range of the candidate set for the i-th real location is determined using spatiotemporal constraints and / or directional constraints. Using road network structure partitioning conditions, a candidate set for the i-th real location is determined from the location range of the candidate set for the i-th real location.
[0113] According to embodiments of this disclosure, if the actual position at the current time t is determined to be neither the starting point nor the ending point (i.e., i is greater than 1 and less than N), the target position at the current time t can be determined according to the method in Table 1.
[0114] Table 1
[0115]
[0116]
[0117] As shown in Table 1, in the first and third rows, it is determined whether the current real position is a special position. If the current real position is neither the starting point nor the ending point, the CRPH (Candidate Set Region Partitioning Algorithm Based on Hysteresis) algorithm is called. Based on the spatiotemporal constraints and directional constraints of the real position in the spatiotemporal trajectory, possible regions conforming to the position selection rules are divided according to the current real position. Then, in the eighth row of Table 1, the CSSA (Candidate Set Selection Algorithm) algorithm is called to generate k candidate positions within the divided possible regions as a candidate set. Finally, a suitable candidate position is selected from the candidate set as the target position after perturbation.
[0118] Figure 4 The diagram illustrates a region division for determining a candidate set according to an embodiment of the present disclosure.
[0119] like Figure 4 As shown, triangle t i-2 The target position after the time perturbation is represented by a circle t. i-1 The true position at time t, the rhombus represents t. i The actual location at any given moment. Here, t is used as the unit of measurement. i-2 The target location at any given time is the center of a circle, and the reachable range of the target location at the previous time is divided by a radius R. The value of R is related to the distance the user moves within a preset time interval.
[0120] Because the trajectory always moves towards its actual position at the next moment, therefore, t i-2 The target position at time t is the origin. i-2The vector directions of the target position at time t and the actual position at time t are plotted along the x-axis as follows: Figure 4 In the Cartesian coordinate system shown, to ensure that the selected candidate positions tend towards the endpoint direction, the region with x-axis values greater than or equal to 0 should be selected as the candidate position selection area in the candidate set. Simultaneously, the selected candidate positions should be near the actual positions. Similarly, using t... i-1 Using the actual position point at time t as the center, select an appropriate radius r to divide the area between the point and t. i-1 The region whose actual location differs from the user's location by at most *r* at any given time, where the value of *r* depends on the distance the user moves within a preset time interval. The region where two circles overlap is considered a possible region in the candidate set. These three constraints work together to generate overlapping regions, thus achieving the purpose of dividing the candidate location regions.
[0121] Figure 5 The diagram illustrates a region division for determining a candidate set according to an embodiment of the present disclosure.
[0122] like Figure 5 As shown, when determining the user at t i-1 After time reaches its end, it is considered that t i The actual position at a given moment does not belong to the current spacetime trajectory, therefore t is no longer considered. i The actual location at any given moment is neither processed nor published. Therefore, there is a spatiotemporal constraint between the endpoint and the target location at the previous moment, but no directional constraint between the endpoint and the actual location at the next moment.
[0123] According to embodiments of this disclosure, the spatiotemporal trajectory processing method may further include the following operations.
[0124] If the distance difference between the i-th real position and the (i-1)-th real position is less than a preset distance threshold, and the time difference between the i-th real position and the (i-1)-th real position is less than a preset time threshold, then the target position corresponding to the (i-1)-th real position is set as the target position corresponding to the i-th real position.
[0125] According to embodiments of this disclosure, in scenarios where the destination is known, any point a user stays at along the way, regardless of how long, can be considered a temporary stop as long as the destination has not been reached. However, in scenarios where the destination is unknown, if a user stays at a certain location for a relatively long time, that point can be designated as the endpoint of the user's spatiotemporal trajectory. Therefore, the concept of a temporary stop needs to be redefined.
[0126] According to embodiments of this disclosure, a temporary point refers to the user's spatiotemporal trajectory where the position change within two or more but less than n consecutive time intervals (i.e., a preset time threshold) is less than a preset distance threshold. The actual position of these points at the first moment is set as the user's temporary point.
[0127] According to an embodiment of the present disclosure, when the i-1th real position is determined as a temporary stay point, a target position corresponding to the i-1th real position is set as a target position corresponding to the ith real position.
[0128] According to an embodiment of the present disclosure, a distance threshold λ is set, and if the Manhattan distance MD between the real position at the last time and the real position at the previous time is less than λ, the real position at the last time is referred to as a temporary stay point of the user. The candidate set region partitioning algorithm based on hysteresis (CRPH) is shown in Table 2.
[0129] Table 2
[0130]
[0131]
[0132] In Table 2, in the first to third rows, it is determined whether the real position is a temporary stay point, and if it is a temporary stay point, the target position at the t i-2 time is output as the target position at the t i-1 time. If the real position is not a temporary stay point, the fifth to twentieth rows of Table 2 are executed, that is, based on the target position at the t i-2 time and the real position at the t i time, it is determined whether the direction constraint condition is satisfied, and the region of the candidate position at the t i-1 time that satisfies the direction constraint condition is partitioned, and finally the region of the candidate set at the t i-1 time is output in the twenty-first row.
[0133] Figure 6 A schematic diagram illustrating determination of the candidate set of the ith real position using the road network structure partitioning condition according to an embodiment of the present disclosure is shown schematically.
[0134] According to an embodiment of the present disclosure, as Figure 6 shown, the road network structure partitioning condition includes a plurality of intersections and / or roads;
[0135] The candidate set of the ith real position is determined from the position range of the candidate set of the ith real position using the road network structure partitioning condition, including:
[0136] In the case where the position range of the candidate set of the ith real position includes a plurality of intersections and / or roads, the positions of the intersections and / or the midpoint positions of the roads are determined as the initial candidate set of the ith real position;
[0137] Each candidate position in the initial candidate set is perturbed to obtain a perturbed candidate position.
[0138] According to the plurality of disturbed candidate positions, a candidate set of the i-th real position is generated.
[0139] According to an embodiment of the present disclosure, after the position range of the candidate set is determined, the road network structure needs to be divided according to the division condition, and the finally suitable candidate position is selected based on the road network structure. For a city, the result of road network division is limited, and for a certain real position, the similar road network position points are also limited. Because the road network area in the current candidate set range is smaller than the entire city area, in order to reduce the calculation amount, the entire city area does not need to be divided in advance, but is divided according to the calculated candidate set position range, so that the position points in the division area can realize the localization of geographical indistinguishability. The division method is as shown in Figure 6 .
[0140] According to an embodiment of the present disclosure, assuming that the dotted circular area is the possible area of the candidate set after the position point space-time constraint condition and the direction constraint condition, the circular point is the real position, and the solid straight line is the road network structure. First, select the intersection in the possible area of the candidate set as a part of the candidate set, as shown by the five-pointed star in Figure 6 (a). Then, divide the midpoint of each road segment in the candidate set area, as shown by the dotted straight line in Figure 6 (b). Calculate whether the midpoint of the road segment is in the area, if it is in the area, add the midpoint to the candidate set, as shown by the square in Figure 6 (c). Finally, calculate the Manhattan distance between each candidate position of the candidate set and the real position, and take the candidate position with the smallest distance as the target position of the current real position, as shown by the hexagon in Figure 6 (d).
[0141] According to an embodiment of the present disclosure, after the candidate position of the candidate set is determined, the candidate position needs to be disturbed to obtain the disturbed candidate position, and the specific disturbance method is as shown in Table 3.
[0142] Table 3
[0143]
[0144] As shown in Table 3, first, traverse each road in the area Z, find the intersection and the midpoint of the road segment of each road, and then respectively judge whether the intersection and the midpoint are in the area Z, if they are in the area Z, then the position point is taken as a candidate position in the candidate set, if they are not in the area Z, then it is not added to the candidate set.
[0145] Figure 7 A block diagram of a space-time trajectory processing device according to an embodiment of the present disclosure is schematically shown.
[0146] As shown in Figure 7 The space-time trajectory processing apparatus 700 can include an acquisition module 710, a determination module 720, a selection module 730, and a sending module 740.
[0147] The acquisition module 710 is configured to acquire a space-time trajectory of a first device, wherein the space-time trajectory includes position information of N real positions arranged in time sequence, and N is an integer greater than or equal to 2.
[0148] The determination module 720 is configured to determine, for an i-th real position in the space-time trajectory, a candidate set of the i-th real position according to other position information associated with the i-th real position and position information of the i-th real position, wherein the candidate set includes candidate positions obtained by perturbing the i-th real position, and i is a positive integer less than or equal to N.
[0149] The selection module 730 is configured to select a target position from the candidate set.
[0150] The sending module 740 is configured to send the target position to a second device.
[0151] According to an embodiment of the present disclosure, for an i-th real position in the space-time trajectory, the first device determines a candidate set of the i-th real position according to other position information associated with the i-th real position and position information of the i-th real position, since the candidate positions in the candidate set are perturbed and are not real positions, the target position is selected from the candidate set and sent to the second device, so that the position data sent to the second device is relatively real, and the technical problem of poor security of the space-time trajectory of the user is at least partially overcome, and the security of the space-time trajectory privacy of the user is improved.
[0152] According to an embodiment of the present disclosure, the sending module 740 can include a sending sub-module.
[0153] The sending sub-module is configured to send the target position to the second device after a preset time interval from a collection time point of the position information of the i-th real position.
[0154] According to an embodiment of the present disclosure, the determination module 720 can include a first determination sub-module and a second determination sub-module.
[0155] The first determination sub-module is configured to, in a case where it is determined that i is equal to 1, determine the candidate set of the i-th real position according to the i-th real position and an i+1-th real position by using a position selection rule.
[0156] The second determining sub-module is configured to, when determining that i is greater than 1 and less than N, determine the candidate set of the i th real position according to the target position corresponding to the (i-1) th real position, the i th real position and the (i+1) th real position, and according to the position selection rule.
[0157] According to an embodiment of the present disclosure, the determining module 720 can further include a third determining sub-module.
[0158] The third determining sub-module is configured to, when determining that i is equal to N, determine the candidate set of the i th real position according to the target position corresponding to the (i-1) th real position and the i th real position, and according to the position selection rule.
[0159] According to an embodiment of the present disclosure, the position selection rule includes at least one of a space-time constraint condition, a direction constraint condition and a road network structure division condition.
[0160] According to an embodiment of the present disclosure, the position selection rule includes the road network structure division condition, and the position selection rule further includes the space-time constraint condition and / or the direction constraint condition.
[0161] According to an embodiment of the present disclosure, the first determining sub-module, the second determining sub-module or the third determining sub-module can include a first determining unit and a second determining unit.
[0162] The first determining unit is configured to determine the position range of the candidate set of the i th real position according to the other position information associated with the i th real position and the position information of the i th real position, and according to the space-time constraint condition and / or the direction constraint condition.
[0163] The second determining unit is configured to determine the candidate set of the i th real position from the position range of the candidate set of the i th real position, and according to the road network structure division condition.
[0164] According to an embodiment of the present disclosure, the road network structure division condition includes a plurality of intersections and / or roads.
[0165] According to an embodiment of the present disclosure, the second determining unit can include a first determining sub-unit, a perturbation sub-unit and a generating sub-unit.
[0166] The first determining sub-unit is configured to, when determining that the position range of the candidate set of the i th real position includes a plurality of intersections and / or roads, determine the position of the intersection and / or the midpoint position of the road as the initial candidate set of the i th real position.
[0167] The perturbation sub-unit is configured to perturb each candidate position in the initial candidate set to obtain a perturbed candidate position.
[0168] The generating subunit is configured to generate a candidate set of the i-th real position according to the plurality of perturbed candidate positions.
[0169] According to an embodiment of the present disclosure, the selecting module 730 can include a selecting sub-module.
[0170] The selecting sub-module is configured to determine a target position from the plurality of candidate positions in the candidate set according to a preset point selection rule.
[0171] According to an embodiment of the present disclosure, the preset point selection rule includes a Manhattan distance rule.
[0172] According to an embodiment of the present disclosure, the selecting sub-module can include a selecting unit and a third determining unit.
[0173] The selecting unit is configured to determine a candidate position with a minimum distance to the i-th real position from the plurality of candidate positions in the candidate set of the i-th real position according to the Manhattan distance rule.
[0174] The third determining unit is configured to determine the candidate position with the minimum distance as the target position of the i-th real position.
[0175] According to an embodiment of the present disclosure, the determining module 720 can further include a fourth determining sub-module.
[0176] The fourth determining sub-module is configured to, in a case where a distance difference between the i-th real position and an (i-1)-th real position is less than a preset distance threshold, and a time difference between the i-th real position and the (i-1)-th real position is less than a preset time threshold, set a target position corresponding to the (i-1)-th real position as a target position corresponding to the i-th real position.
[0177] It should be noted that the embodiments of the device part of the present disclosure correspond to the same or similar embodiments of the method part of the present disclosure, and the present disclosure will not be repeated here.
[0178] Any of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure, or at least part of any of them, can be implemented in one module. Any of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure can be split into multiple modules for implementation. Any of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure can be implemented at least in part as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on board, a system on package, an application-specific integrated circuit (ASIC), or any other reasonable way of hardware or firmware by integrating or packaging circuits, or in any one of software, hardware, and firmware, or in a proper combination of any of them. Alternatively, one or more of the modules, sub-modules, units, sub-units according to the embodiments of the present disclosure can be implemented at least in part as computer program modules, which can perform corresponding functions when executed.
[0179] For example, any of the modules 710, 720, 730, and 740 can be combined in one module / sub-module / unit / sub-unit for implementation, or any of them can be split into multiple modules / sub-modules / units / sub-units. Alternatively, at least part of the functions of one or more of the modules / sub-modules / units / sub-units can be combined with at least part of the functions of other modules / sub-modules / units / sub-units, and implemented in one module / sub-module / unit / sub-unit. According to the embodiments of the present disclosure, at least one of the modules 710, 720, 730, and 740 can be implemented at least in part as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on board, a system on package, an application-specific integrated circuit (ASIC), or any other reasonable way of hardware or firmware by integrating or packaging circuits, or in any one of software, hardware, and firmware, or in a proper combination of any of them. Alternatively, at least one of the modules 710, 720, 730, and 740 can be implemented at least in part as computer program modules, which can perform corresponding functions when executed.
[0180] Figure 8 A block diagram of an electronic device suitable for implementing the above-described method according to the embodiments of the present disclosure is schematically shown. Figure 8 The electronic device shown is merely an example, and should not bring any limitation to the functions and use range of the embodiments of the present disclosure.
[0181] like Figure 8 As shown, an electronic device 800 according to an embodiment of the present disclosure includes a processor 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage portion 808 into a random access memory (RAM) 803. The processor 801 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 801 may also include onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0182] RAM 803 stores various programs and data required for the operation of electronic device 800. Processor 801, ROM 802, and RAM 803 are interconnected via bus 804. Processor 801 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 802 and / or RAM 803. It should be noted that the programs may also be stored in one or more memories other than ROM 802 and RAM 803. Processor 801 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in said one or more memories.
[0183] According to embodiments of this disclosure, the electronic device 800 may further include an input / output (I / O) interface 805, which is also connected to a bus 804. The electronic device 800 may also include one or more of the following components connected to the I / O interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a LAN card, modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the I / O interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 810 as needed so that computer programs read from it can be installed into the storage section 808 as needed.
[0184] According to an embodiment of the present disclosure, the method flow according to the embodiments of the present disclosure can be implemented as a computer software program. For example, the embodiments of the present disclosure include a computer program product comprising a computer program that is carried by a computer-readable storage medium, and the computer program contains program codes for executing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from a network by the communication section 809, and / or installed from the detachable medium 811. When the computer program is executed by the processor 801, the above-described functions defined in the system implementing the embodiments of the present disclosure are executed. According to an embodiment of the present disclosure, the system, device, apparatus, module, unit, etc. described above can be implemented by computer program modules.
[0185] The present disclosure also provides a computer-readable storage medium, which can be included in the device / apparatus / system described in the above embodiments, or can exist separately without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, which when executed, implement the methods according to the embodiments of the present disclosure.
[0186] According to an embodiment of the present disclosure, the computer-readable storage medium can be a non-volatile computer-readable storage medium. For example, it can include but is not limited to: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any appropriate combination thereof. In the present disclosure, the computer-readable storage medium can be any tangible medium that contains, or stores a program that can be used by or in connection with an instruction execution system, apparatus, or device.
[0187] For example, according to an embodiment of the present disclosure, the computer-readable storage medium can include the ROM 802 and / or the RAM 803 described above, and / or one or more memories other than the ROM 802 and the RAM 803.
[0188] The computer program product of the first aspect can include one or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors to perform the operations of the first aspect. The one or more non-transitory computer-readable media can include, for example, magnetic media such as one or more magnetic disks, magnetic tapes or cassettes; optical media such as one or more compact discs (CD), optical discs or discs (for example, DVD, Blu-ray Disc®, digital video disc, ultra density disc, ultra-compact disc, any optical media, etc.); semiconductor media such as solid state hard drives (for example, flash memory, solid state USB drives, etc.); any other suitable medium; or any suitable combination of media.
[0189] Those skilled in the art will understand that features recited in various embodiments and / or claims of the present disclosure can be combined and / or interchanged, even if this is not explicitly stated in the present disclosure. In particular, features recited in various embodiments and / or claims of the present disclosure can be combined and / or interchanged, without departing from the spirit and teachings of the present disclosure. All such combinations and / or interchanges are within the scope of the present disclosure.
[0190] The above describes embodiments of the present disclosure. However, these embodiments are merely for illustrative purposes, and are not intended to limit the scope of the present disclosure. Although each embodiment is described above separately, this does not mean that the measures in each embodiment cannot be used advantageously in combination. The scope of the present disclosure is defined by the appended claims and their equivalents. Those skilled in the art can make various substitutions and modifications without departing from the scope of the present disclosure, and all such substitutions and modifications shall fall within the scope of the present disclosure.
Claims
1. A spatiotemporal trajectory processing method, comprising: Obtain the spatiotemporal trajectory of the first device, wherein the spatiotemporal trajectory includes the location information of N real locations arranged in chronological order, where N is an integer greater than or equal to 2; For the i-th real position in the spatiotemporal trajectory, if i is greater than 1 and less than N, a candidate set for the i-th real position is determined based on the target position corresponding to the (i-1)-th real position, the i-th real position, and the (i+1)-th real position, using a position selection rule. The candidate set includes candidate positions obtained after perturbing the i-th real position, where i is a positive integer less than or equal to N. The position selection rule includes at least one of the following: spatiotemporal constraints, directional constraints, and road network structure division conditions. Select a target location from the candidate set; and Send the target location to the second device; The step of determining the candidate set of the i-th real location using location selection rules includes: Based on other location information associated with the i-th real location and the location information of the i-th real location, the location range of the candidate set of the i-th real location is determined using the spatiotemporal constraints and / or directional constraints. And / or, using the road network structure partitioning conditions, determine the candidate set of the i-th real location from the location range of the candidate set of the i-th real location.
2. The method according to claim 1, wherein, Sending the target location to the second device includes: After a preset time interval from the time point at which the location information of the i-th real location is collected, the target location is sent to the second device.
3. The method according to claim 1, further comprising: Given that i equals 1, the candidate set of the i-th real position is determined by using the position selection rule based on the i-th real position and the (i+1)-th real position.
4. The method according to claim 3, further comprising: Given that i equals N, the candidate set of the i-th real position is determined by using the position selection rule based on the target position corresponding to the (i-1)-th real position and the i-th real position.
5. The method according to claim 1, wherein, The road network structure division conditions include multiple intersections and / or roads; The step of determining the candidate set of the i-th real location from the location range of the candidate set of the i-th real location using the road network structure partitioning conditions includes: If the candidate set for the i-th real location includes multiple intersections and / or roads, the locations of the intersections and / or the midpoints of the roads are determined as the initial candidate set for the i-th real location. Perturb each candidate position in the initial candidate set to obtain the perturbed candidate positions; Based on multiple perturbated candidate positions, the candidate set for the i-th true position is generated.
6. The method according to claim 1, wherein, The step of selecting a target location from the candidate set includes: According to the preset point selection rules, one of the multiple candidate locations in the candidate set is determined as the target location.
7. The method according to claim 6, wherein, The preset point selection rules include the Manhattan distance rule; The step of determining the target location from multiple candidate locations in the candidate set according to preset point selection rules includes: According to the Manhattan distance rule, the candidate position with the smallest distance to the i-th real position is determined from the candidate positions in the candidate set of the i-th real position; The candidate position with the smallest distance is determined as the target position of the i-th real position.
8. The method according to claim 3 or 4, further comprising: If the distance difference between the i-th real position and the (i-1)-th real position is less than a preset distance threshold, and the time difference between the i-th real position and the (i-1)-th real position is less than a preset time threshold, then the target position corresponding to the (i-1)-th real position is set as the target position corresponding to the i-th real position.
9. A spatiotemporal trajectory processing device, comprising: The acquisition module is used to acquire the spatiotemporal trajectory of the first device, wherein the spatiotemporal trajectory includes the location information of N real locations arranged in chronological order, where N is an integer greater than or equal to 2; The module to be determined includes: The second determining submodule is used to determine a candidate set of the i-th real position in the spatiotemporal trajectory, based on the target position corresponding to the (i-1)-th real position, the i-th real position, and the (i+1)-th real position, using a position selection rule, provided that i is greater than 1 and less than N. The candidate set includes candidate positions obtained by perturbing the i-th real position, where i is a positive integer less than or equal to N. The position selection rule includes at least one of the following: spatiotemporal constraints, directional constraints, and road network structure division conditions. A selection module is used to select a target location from the candidate set; and The sending module is used to send the target location to the second device; The second determining submodule includes: The first determining unit is configured to determine the location range of the candidate set for the i-th real location based on other location information associated with the i-th real location and the location information of the i-th real location, using spatiotemporal constraints and / or directional constraints; and / or The second determining unit is used to determine the candidate set of the i-th real location from the location range of the candidate set of the i-th real location using the road network structure division conditions.
10. A computer system, comprising: One or more processors; Memory, used to store one or more programs. Wherein, when the one or more programs are executed by the one or more processors, the one or more processors implement the method of any one of claims 1 to 8.
11. A computer-readable storage medium having stored thereon executable instructions that, when executed by a processor, cause the processor to perform the method of any one of claims 1 to 8.
Citation Information
Patent Citations
Data processing method and device
CN112257109A