A method for generating a virtual trajectory with location privacy protection
By employing a system architecture consisting of mobile devices, a central anonymous server, and an LBS server, combined with a virtual trajectory generation algorithm, the problem of location privacy protection during continuous user requests in existing technologies is solved. This generates virtual trajectories that meet expectations, thereby improving privacy protection.
Patent Information
- Application Number
- CN202310278448.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-10
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2043-03-10
AI Technical Summary
Existing location privacy protection methods, such as fake location methods and fake trajectory methods, are difficult to effectively protect users' continuous location information when users make continuous requests, and are prone to leaking personal privacy such as social identity and behavioral patterns.
The system architecture employs mobile devices, a central anonymous server, and an LBS server. By using a virtual trajectory generation algorithm for anonymous encryption processing, it generates virtual trajectories that meet expectations. This includes grid division, aggregation analysis of user-requested location points, and heat analysis of POI business information to generate virtual trajectories for virtual users.
In complex LBS request data environments, generating virtual data that meets expectations improves the protection of user privacy data and reduces the risk of leakage of real customer location and trajectory information.
Smart Images

Figure CN116305276B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of privacy protection and virtual trajectory, in particular to a virtual trajectory generation method for location privacy protection. BACKGROUND
[0002] Location-Based Service (LBS) is a service that uses various positioning technologies to obtain the current location of a positioning device and provides information resources and basic services to the positioning device through mobile Internet. LBS services have been widely used in China. With the help of LBS services, users can obtain their geographic location by using the positioning technology of mobile devices, and service providers can provide various services related to the location for users according to the location information and query information of the users and through the network, and can mine user portraits through the request service and provide support for business decision-making. At the same time, the large amount of rich personal privacy information contained therein has gradually attracted the attention of individuals and manufacturers. If the privacy information such as the social identity, behavior pattern, and interest of the user is obtained by illegal persons, the consequences will be unimaginable.
[0003] In the development of LBS services and the provision of services based on location information for users, how to ensure that the location privacy of the user is not disclosed is a relatively hot issue at present. The most widely used at present is K-anonymity technology. The K-anonymity technology for a single location query is to generalize the unique identifier of the user, generate and publish K indistinguishable records at a time, so that the user information and the location information form a 1:K relationship, so as to achieve the purpose of isolating the user information and the location information, and the user location information is anonymized by a trusted third-party anonymous server.
[0004] The fake location method is a widely used simple and effective method in location privacy protection technology, but this technology can only protect a single location and device. When facing the common demand of continuous request initiated by the user, due to the relatively simple rules and the incoherent anonymous processing of each location point, the user's continuous location is still easily disclosed, thereby disclosing the personal privacy information such as the social identity and behavior pattern of the user. Similar to the fake location point, the fake trajectory method can generate multiple similar fake trajectories for each real trajectory of the user, thereby reducing the probability of exposure of the real trajectory. Starting from the user trajectory, there are mainly two methods for generating fake users: random generation method (Random Pattern Scheme) and rotation pattern generation method (Rotation Pattern Scheme).
[0005] The random generation method refers to generating a continuous running and running mode consistent with the user's false trajectory randomly with the user's location points at two different time periods as the starting point and the ending point. This method is prone to obvious deviation in actual application, because the user's trajectory must be combined with the real scene, such as having certain relevance with the road network and POI information.
[0006] The rotation mode generation method refers to taking the user's real trajectory as the basis, rotating around some sampling points in the real trajectory, and taking the rotated trajectory as the generated false trajectory. The selection of the rotation point and the determination of the rotation angle need to be associated and balanced with the information distortion degree. The rotation mode generation method newly generates a trajectory with the same motion mode as the user's real motion mode, which meets the normal motion expectation and has intersection points with the user's real motion trajectory, and is difficult to be recognized by the attacker. This method still has a large leakage risk in actual application, because the trajectory generated by rotation still contains a large proportion of the user's real information, which is essentially still a variant of the user's real trajectory.
[0007] The user trajectory generated by the random generation method is too random to meet the user's real moving scene, and the rotation mode generation method retains more information of the user's real behavior trajectory, so that the attacker can analyze the corresponding rotation rule to restore the generated trajectory, and the user's privacy information is still at a high risk of exposure. SUMMARY
[0008] In view of the deficiencies of the prior art, the present application provides a virtual trajectory generation method for location privacy protection, which comprises a mobile device end, a central anonymous server and an LBS server, wherein the central anonymous server is communicatively connected with the mobile device end and the LBS server respectively.
[0009] The mobile device end sends the user's current location information and query information to the central anonymous server.
[0010] The central anonymous server performs anonymous encryption processing on the current location information and query parameters based on a virtual trajectory generation algorithm, and sends the anonymous encryption processed data to the LBS server for service query.
[0011] The LBS server sends the query result to the central anonymous server.
[0012] The central anonymous server screens out the query result required by the user from the query result returned by the LBS server, and returns the query result required by the user to the mobile device end of the user through encrypted communication.
[0013] According to one preferred embodiment, the anonymous encryption processing based on the virtual trajectory generation algorithm comprises:
[0014] cutting a specified region based on a specified side length to obtain a grid list of the specified region;
[0015] aggregating and analyzing the grid list of the specified region and a user request location point to obtain visit data of each grid in the specified region; the visit data includes a number of initiated requests and a number of visited users;
[0016] associating the grid list of the specified region with POI data falling within the grid, and aggregating and analyzing the visited POI format types in each grid to obtain the required appearance ratio data of each POI format type;
[0017] generating a plurality of virtual location points according to the user request location point, the visit data and the required appearance ratio data of each POI format type, merging all the virtual location points to generate a plurality of virtual trajectories, and then adding the virtual trajectories to the current location information.
[0018] According to a preferred embodiment, the cutting a specified region based on a specified side length to obtain a grid list of the specified region includes:
[0019] cutting the specified region based on a specified side length to generate a plurality of grids of a specified size, and increasing or decreasing the longitude and latitude in the horizontal and vertical directions according to the actual location of the specified region;
[0020] after the grid cutting in the specified region is completed, assigning each grid with a mutually exclusive unique identifier to obtain a grid list of the specified region; the grids in the specified region are mutually exclusive and have no overlapping area in geographical range; the grids in the specified region are mutually complementary and collectively cover the entire range in the specified region; and the specified region fully covers the region to be positioned.
[0021] According to a preferred embodiment, the aggregating and analyzing the grid list of the specified region and a user request location point to obtain visit data of each grid in the specified region includes:
[0022] desensitizing the user information according to the historical positioning requests of the user;
[0023] obtaining a historical request location point corresponding to each historical positioning request according to all the historical positioning requests of the user, calculating the grid number corresponding to each historical positioning request based on the grid list and the longitude and latitude information of each historical request location point, and then aggregating and calculating the grid numbers corresponding to all the historical positioning requests to obtain the number of initiated requests and the number of visited users of each grid in the specified region.
[0024] According to one preferred embodiment, the grid list of the specified area is associated with the POI data falling within the grid, and the POI format types visited in each grid are aggregated and analyzed to obtain the required appearance ratio data of each POI format type, including:
[0025] The POI with the central latitude and longitude falling within the grid is taken as the POI of the grid, so as to obtain a plurality of POIs within each grid;
[0026] Obtain POI data of all POIs within each grid; the POI data includes: the grid to which the POI belongs, the POI identifier, the longitude corresponding to the POI, the latitude corresponding to the POI, and the format label corresponding to the POI;
[0027] According to the ratio of the number of each type of POI format label within each grid to the number of all POI format labels, the POI quantity ratio corresponding to each type of POI format label within each grid is obtained;
[0028] A corresponding visit weight list is formulated for each POI format label; each type of POI format label corresponds to a unique POI format type;
[0029] The POI quantity ratio corresponding to each type of POI label is multiplied by the visit weight to obtain the required appearance ratio data of each POI format type.
[0030] According to one preferred embodiment, generating a plurality of virtual location points according to the user request location point, the visit data and the required appearance ratio data of each POI format type includes:
[0031] The grid in which the user request location point falls is taken as the center grid, and 5 grids centered on the center grid are selected as the area grids;
[0032] The visit data of all area grids is standardized to obtain the average request quantity, the average user quantity and the corresponding quantity of each classified POI of each area grid;
[0033] The number K of virtual location points is defined, and K virtual location points containing user identifiers are generated according to the number K of virtual location points and the average request quantity, the average user quantity and the corresponding quantity of each classified POI of each area grid.
[0034] According to one preferred embodiment, generating K virtual location points containing user identifiers according to the number K of virtual location points and the average request quantity, the average user quantity and the corresponding quantity of each classified POI of each area grid includes:
[0035] According to the number of virtual position points and the average request number, the average user number and the corresponding number of each classification POI of each area grid, the corresponding request number, the corresponding user number and the corresponding number of each POI format of each area grid are calculated;
[0036] A POI format number of POI data is randomly drawn with replacement from the POI in each area grid falling inside the POI, and the latitude and longitude information in the POI data is taken as a newly generated position point;
[0037] A corresponding user number of times is randomly drawn from the historical user identification list, up-sampled to a corresponding request number of records, and the user identification corresponding to the corresponding request number of records is taken as the user identification of the historical user request, and then the user identification of the historical user request and the position point generate K virtual positions including user identification.
[0038] According to a preferred embodiment, the mobile terminal is a smart device with communication function and data transmission function, including: notebook computer, tablet computer, smart phone and smart watch.
[0039] Beneficial effects: compared with the prior art, the present application mainly solves the problem of storing and analyzing the complex LBS request data in the application environment, on the basis of minimizing the loss of the accuracy of the original data, generating virtual data conforming to the expectation by means of human flow heat, road network, POI distribution and other data for confusion, thereby improving the protection degree of user privacy data.
[0040] In addition, the present application performs grid division processing on a specific geographic range, aggregate analysis of user real position points in the area, heat analysis of POI format information, and generates virtual trajectories of virtual users, on the basis of preserving user real privacy information, and accordingly, generates a large number of new virtual trajectories with reference to the user real travel trajectory or the inferred reasonable theoretical trajectory, so as to confuse the position information and trajectory information of the real customer. BRIEF DESCRIPTION OF DRAWINGS
[0041] Figure 1 The system architecture diagram provided for an exemplary embodiment;
[0042] Figure 2 The grid cutting diagram provided for another exemplary embodiment;
[0043] Figure 3 The grid list provided for another exemplary embodiment;
[0044] Figure 4 The grid coordinate diagram provided for another exemplary embodiment;
[0045] Figure 5 The overall flowchart provided for another exemplary embodiment. Detailed Implementation
[0046] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.
[0047] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular forms “a,” “the,” and “the” used in this invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.
[0048] It should be understood that although the terms first, second, third, etc., may be used in this invention to describe various information, this information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of this invention, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."
[0049] See Figure 1 In one embodiment, the system implementing the virtual trajectory generation method of this application includes: a mobile terminal, a central anonymous server, and an LBS server. The system architecture deploys the implementation based on the virtual trajectory generation algorithm on the central anonymous server, wherein the central anonymous server has communication connections with the mobile terminal and the LBS server respectively.
[0050] Preferably, the mobile terminal is a smart device with communication and data transmission functions, including: laptops, tablets, smartphones, and smartwatches.
[0051] The system architecture adopted in this invention is based on a central server, adding a reliable central anonymous server as an intermediary between the user's mobile device and the manufacturer's LBS server. Bidirectional communication between the user and the central anonymous server must be strictly encrypted, while the communication between the central anonymous server and the LBS server does not require strict encryption.
[0052] The request process is as follows:
[0053] The mobile device end sends the current location information and query information of the user to the central anonymous server;
[0054] The central anonymous server anonymizes and encrypts the current location information and query parameters based on a virtual trajectory generation algorithm, and sends the anonymized and encrypted data to the LBS server for service query;
[0055] The LBS server sends the query result to the central anonymous server;
[0056] The central anonymous server filters the query result required by the user from the query result returned by the LBS server, and returns the query result required by the user to the mobile device end of the user through encrypted communication.
[0057] Referring to Figure 5 In one embodiment, the flow of the virtual trajectory generation algorithm is as follows:
[0058] The specified area is cut into grid units based on a specified side length to obtain a grid list of the specified area;
[0059] The grid list of the specified area and the user request location point are aggregated and analyzed to obtain visit data of each grid in the specified area; the visit data includes the number of initiated requests and the number of visited users;
[0060] The grid list of the specified area is associated with POI data falling within the grid, and the POI format types visited in each grid are aggregated and analyzed to obtain the required appearance ratio data of each POI format type;
[0061] A plurality of virtual location points are generated according to the user request location point, the visit data, and the required appearance ratio data of each POI format type, and all the virtual location points are combined to generate a plurality of virtual trajectories, and then the virtual trajectories are added to the current location information.
[0062] In one embodiment, the grid list of the specified area is obtained by cutting the specified area into grid units based on a specified side length, which includes:
[0063] The specified area is cut into a plurality of grids of a specified size based on a specified side length, and the longitude and latitude are increased or decreased in the horizontal and vertical directions according to the actual location of the specified area;
[0064] After the grid cutting in the specified area is completed, a mutually exclusive unique identifier is assigned to each grid to obtain the grid list of the specified area; the grids in the specified area are mutually exclusive and do not overlap in geographical range; the grids in the specified area are mutually complementary and collectively cover the entire range of the specified area; the specified area fully covers the to-be-positioned area.
[0065] The geographic position information of a user is generally stored in a latitude and longitude manner, and in real application, the area to which the user belongs needs to be divided into specified size grids in advance for fast positioning and providing surrounding location-based services. An internationally common method is to use a Geohash cutting method, to understand the earth as a two-dimensional plane, and to cut it by 32 equal parts successively, and to distinguish a plurality of levels of grids. Each time the grid cutting by 32 equal parts has the problem of too large difference in location-based recommendation services, and according to business requirements, different size grids can be required, and the Geohash cutting method cannot be flexibly customized.
[0066] Therefore, the present application cuts the earth according to the real distance, and increases or decreases the latitude and longitude according to the actual position of the area in the horizontal and vertical directions, such as specifying the size of each grid as 100m 100m. After the grid cutting of the specified area is completed, a mutually exclusive unique identifier is assigned to it, so as to obtain a grid list in the specified area, and the grids in the area are mutually exclusive and have no overlapping area in the geographic range; and each is supplemented, and collectively covers the entire range in the specified area. The grid processing stage should cover the to-be-positioned area as much as possible, and the processed grid list is shown in FIG. 1. Figure 2 、 3
[0067] In one embodiment, the grid list of the specified area and the user request location point are aggregated and analyzed to obtain the visit data of each grid in the specified area, including:
[0068] Desensitizing the user information according to the historical positioning request of the user;
[0069] According to all historical positioning requests of the user, the historical request location point corresponding to each historical positioning request is obtained, and the grid number corresponding to each historical positioning request is calculated based on the latitude and longitude information of the grid list and the historical request location point, and then the grid numbers corresponding to all historical positioning requests are aggregated and calculated to obtain the number of requests and the number of visited users of each grid in the specified area.
[0070] Specifically, a plane map is divided into m 100m 100m grids, and A represents the grid where the position is located. One day is divided into 24 time periods t (t = 1, 2, …, 24), and the query information of the user in the t time period is defined as Query = {UID, t, ( , , ,…, }, wherein UID represents identity information, represents the real position of the user at t time, ( , ,…, ) represents the k virtual positions generated by the central anonymous server for the user at time t.
[0071] With the help of the grid list obtained by pre-processing, the user's request position can be calculated according to its latitude and longitude information which specific falls in which grid. With the help of the user's historical initiated positioning request information, after desensitizing the user information, the corresponding grid number is calculated according to its latitude and longitude information. On this basis, the aggregation calculation is carried out to obtain the number of initiated requests, the number of visited users and other information of each grid in the specified area.
[0072] The detailed steps are as follows:
[0073] (1) For a single grid n, the number of requests initiated in the past seven days per unit time is calculated.
[0074] That is, for all query information Q falling within a single time period t, the number of requests for query information falling in grid L is calculated.
[0075]
[0076] (2) The number of users initiating requests in a single grid n within the past seven days is calculated.
[0077] That is, for all query information Q falling within a single time period, the number of users for query information falling in grid L is calculated.
[0078]
[0079] According to a preferred embodiment, the grid list of the specified area is associated with the POI data falling within the grid, and the POI format types visited in each grid are aggregated and analyzed to obtain the data of the required proportion of each POI format type, including:
[0080] The POI whose central latitude and longitude falls within the grid is taken as the POI of the grid, so as to obtain a plurality of POIs within each grid;
[0081] Obtain the POI data of all POIs within each grid; the POI data includes: the grid to which the POI belongs, the POI identifier, the longitude corresponding to the POI, the latitude corresponding to the POI, and the format label corresponding to the POI;
[0082] According to the ratio of the number of each type of POI format label within each grid to the number of all POI format labels, the POI quantity proportion corresponding to each type of POI format label within each grid is obtained.
[0083] formulating a corresponding visiting weight list for each POI industry label; each POI industry label corresponds to a unique POI industry type;
[0084] The POI quantity proportion corresponding to each POI label is multiplied by the visiting weight to obtain the proportion data required for each POI industry type to appear.
[0085] Specifically, the grid list obtained by pre-processing is associated with the POI data falling within the grid, and the industry within the grid is counted by means of the POI industry label.
[0086] The detailed steps are as follows:
[0087] The planar map is divided into m 100m 100m grids, and A represents the grid where the position is located. The POI data whose center longitude and latitude fall within the grid A is represented as Point={A, poi_name, poi_type_p, poi_lng, poi_lat}, wherein poi_lng and poi_lat represent the corresponding longitude and latitude of the POI, and poi_type_p (p=1,…, q) refers to the industry label corresponding to the POI, and the catering retail classification corresponds to poi_type_1.
[0088] (1) Within a single grid, the POI label is aggregated and calculated to obtain the POI quantity proportion corresponding to all labels within the grid. Among them is the POI quantity corresponding to the label p, is the POI quantity of all labels,
[0089]
[0090] represents the POI quantity proportion belonging to the p industry label.
[0091] (2) Formulate a corresponding visiting weight list for each POI industry label.
[0092] For industry classification p, the visiting weight of the user along the way is calculated. The weight is obtained by aggregating and counting the number of visits corresponding to a single industry according to the POI industry classification based on the request data that can be located to the specific POI within the entire region in the past seven days, and taking the harmonic mean of the visiting number proportion corresponding thereto.
[0093]
[0094] (3) Multiply the POI proportion by the visiting weight to obtain the proportion of each industry POI type required to appear in the K virtual position points to be generated
[0095]
[0096] According to a preferred embodiment, generating a plurality of virtual location points according to the user requested location point, the visit data and the required proportion data of each POI format type comprises:
[0097] Taking the grid where the user requested location point falls as the center grid, and selecting 5 grids centered on the center grid as the regional grids;
[0098] Standardizing the visit data of all regional grids to obtain the average request quantity, the average user quantity and the corresponding quantity of each classified POI of each regional grid;
[0099] Defining the number K of virtual location points, and generating K virtual location points containing user identification according to the number K of virtual location points and the average request quantity, the average user quantity and the corresponding quantity of each classified POI of each regional grid.
[0100] Specifically, referring to Figure 4 , given the user requested location point, if it falls in grid A. Therefore, the range of 5 grids centered on grid A can be selected, where each grid is recorded as (i,j=-2,-1,…,2)
[0101] From the above basis, in the time period t, in the single grid A, it is known that the average request quantity in the past seven days is , the average user quantity is , and the POI quantity corresponding to each format and the visit weight are . Considering the influence of real factors, the user quantity and the request quantity corresponding to different grids in the same region may have large differences. In this regard, the aggregated data of these 5 grids are standardized to eliminate the dimensional influence.
[0102] Therefore, in the 5 grids, the average request quantity corresponding to grid is
[0103]
[0104] wherein,
[0105]
[0106]
[0107] The average user quantity is
[0108]
[0109] wherein,
[0110]
[0111]
[0112] the corresponding number of each category POI is
[0113]
[0114] wherein,
[0115]
[0116]
[0117] According to one preferred embodiment, generating K virtual location points including user identification according to the number K of virtual location points and the average request number, the average user number and the corresponding number of each category POI of each area grid comprises:
[0118] calculating the corresponding request number, the corresponding user number and the corresponding number of each POI format of each area grid according to the number of virtual location points and the average request number, the average user number and the corresponding number of each category POI of each area grid;
[0119] randomly sampling POI format number times from POI falling inside each area grid to obtain POI format number of POI data, and taking the longitude and latitude information in the POI data as a newly generated location point;
[0120] randomly sampling corresponding user number times from the historical user identification list, upsampling to corresponding request number of records, and taking the user identification corresponding to the corresponding request number of records as the user identification of the historical user request, and then taking the user identification of the historical user request and the location point to generate K virtual locations including user identification.
[0121] Specifically, if a 1:K+1 corresponding relationship is established between the customer request location point and the virtual location point, the total number of location points to be generated is K. Wherein, the grid the corresponding request number is
[0122]
[0123] the corresponding user number is
[0124]
[0125] the corresponding number of each POI format is
[0126]
[0127] wherein int() represents rounding down the calculation result.
[0128] For the grid , randomly draw with replacement from the POI falling inside it times, get POI information, take its longitude and latitude information as the newly generated location point. Randomly draw times from the list of historical user UIDs, upsample to records, take its UID as the requested user identification. After random management, combine the two to generate K virtual locations including user identification.
[0129] Combine all the generated virtual location point data, that is, at time t, the real user sends a positioning request, the central anonymous server generates K virtual location points based on this, and sends K+1 pieces of location information to the LBS server for positioning.
[0130] Thus, in the t time period during which the user continuously moves and continuously issues service requests, if the real trajectory of the user is , , ,…, , the corresponding generated false trajectory is {( , ,…, ),( , ,…, ),( , ,…, ),…,( , ,…, )}. Each virtual trajectory has a certain business meaning and is more in line with common sense understanding, and the overall short-term disclosure risk of user request information is reduced to .
[0131] Although the present application has been described in connection with some embodiments, it is not intended to be limited to the specific form set forth herein. Rather, the scope of the present application is limited only by the accompanying claims. Additionally, although individual features can be included in different claims, these can possibly be advantageously combined, and the inclusion in different claims does not imply that a combination of features is not feasible. The order of features in a claim does not imply any specific order in which they must work. Furthermore, in claims, the word "comprising" does not exclude other elements, and the indefinite article "a" or "an" does not exclude a plurality.
[0132] The above description is only the preferred embodiment of the present application, and is not intended to limit the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the scope of protection of the present application.
Claims
1. A method for generating a virtual trajectory with location privacy protection, characterized in that, The application relates to a location-based service (LBS) system and a method for realizing the same. The system comprises a mobile device end, a central anonymous server and an LBS server, wherein the central anonymous server is communicatively connected with the mobile device end and the LBS server respectively. The mobile device end sends current location information and query information of a user to the central anonymous server. The central anonymous server performs anonymous encryption processing on the current location information and the query parameter based on a virtual track generation algorithm, and sends the data after the anonymous encryption processing to the LBS server for service query. The LBS server sends a query result to the central anonymous server. The central anonymous server screens the query result required by the user from the query result returned by the LBS server, and returns the query result required by the user to the mobile device end of the user through encrypted communication. The anonymous encryption processing based on the virtual track generation algorithm comprises the following steps. A specified area is cut into grid units based on a specified side length to obtain a grid list of the specified area. The grid list of the specified area and a user request location point are aggregated and analyzed to obtain visit data of each grid in the specified area; the visit data comprises a request quantity and a visit user quantity. The grid list of the specified area and POI data falling into the grid are associated, and POI industry types visited in each grid are aggregated and analyzed to obtain proportion data required by each POI industry type to appear. A plurality of virtual location points are generated according to the user request location point, the visit data and the proportion data required by each POI industry type to appear, all the virtual location points are combined to generate a plurality of virtual tracks, and the virtual tracks are added to the current location information. The specified area is cut into grid units based on a specified side length to obtain a grid list of the specified area, which comprises the following steps. The specified area is cut into a plurality of grids with a specified size, and the longitude and latitude are increased or decreased in the horizontal and vertical directions according to the actual position of the specified area. After the grids in the specified area are cut, a mutually exclusive unique identifier is given to each grid to obtain the grid list of the specified area; the grids in the specified area are mutually exclusive and have no overlapping area in the geographical range; the grids in the specified area are mutually complementary and collectively cover the whole range of the specified area; and the specified area comprehensively covers the to-be-positioned area.
2. The method of claim 1, wherein, The user information is desensitized according to the historical positioning requests of the user. The historical request location points corresponding to each historical positioning request are obtained according to all the historical positioning requests of the user, the grid numbers corresponding to the historical positioning requests are calculated based on the grid list and the longitude and latitude information of the historical request location points, and the grid numbers corresponding to all the historical positioning requests are aggregated and calculated to obtain the request quantity and the visit user quantity of each grid in the specified area. The grid list of the specified area and the POI data falling into the grid are associated, and the POI industry types visited in each grid are aggregated and analyzed to obtain the proportion data required by each POI industry type to appear.
3. The method of claim 2, wherein, POIs falling inside the grid are taken as the POIs of the grid to obtain several POIs inside each grid; POI data of all POIs inside each grid are obtained, including: the grid to which the POI belongs, POI identifier, longitude corresponding to the POI, latitude corresponding to the POI, and industry label corresponding to the POI; The proportion of the number of POIs corresponding to each type of POI industry label inside each grid to the number of all POI industry labels is obtained according to the number of each type of POI industry label inside each grid. A corresponding visiting weight list is formulated for each POI industry label, and each type of POI industry label corresponds to a unique POI industry type. The proportion of the number of POIs corresponding to each type of POI label is multiplied by the visiting weight to obtain the proportion data of the appearance of each POI industry type.
4. The method of claim 3, wherein, According to the user request position point, the visiting data and the proportion data of the appearance of each POI industry type, several virtual position points are generated, including: The grid in which the user request position point falls is taken as a center grid, and 5 grid as the center grid; The visiting data of all regional grids is standardized to obtain the average request number, the average user number and the corresponding number of each classified POI of each regional grid. The number K of virtual position points is defined, and K virtual position points containing user identifiers are generated according to the number K of virtual position points and the average request number, the average user number and the corresponding number of each classified POI of each regional grid.
5. The method of claim 4, wherein, According to the number K of virtual position points and the average request number, the average user number and the corresponding number of each classified POI of each regional grid, K virtual position points containing user identifiers are generated, including: According to the number of virtual position points and the average request number, the average user number and the corresponding number of each classified POI of each regional grid, the corresponding request number, the corresponding user number and the corresponding number of each POI industry of each regional grid are calculated. POI industry number of POI data is randomly drawn with replacement from the POIs falling inside each regional grid to obtain POI industry number of POI data, and the longitude and latitude information in the POI data is taken as the newly generated position point. The corresponding user number is randomly drawn from the historical user identifier list, up-sampled to the corresponding request number of records, and the user identifier corresponding to the corresponding request number of records is taken as the user identifier of the historical user request, and then the user identifier of the historical user request and the position point generate K virtual positions including user identifiers.
6. The method of claim 5, wherein, The mobile device end is a smart device with communication and data transmission functions, including: notebook computers, tablet computers, smart phones and smart watches.
Citation Information
Patent Citations
Semantic and time-space association-based road network LBS interest point query privacy protection method
CN113407870A