Point of interest recommendation method, apparatus, electronic device, and computer readable storage medium
By pre-classifying and clustering users and combining time information to filter points of interest, the problem of rapid and accurate point of interest recommendation during nighttime driving is solved, improving driving safety and convenience.
Patent Information
- Application Number
- CN202511687843.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-18
- Publication Date
- 2026-03-20
- Estimated Expiration
- 2045-11-18
AI Technical Summary
While driving, existing point-of-interest (POI) recommendation technologies cannot quickly and accurately recommend location information that meets immediate needs while ensuring driving safety, especially when driving at night, which may cause users to miss the best points of interest.
By pre-classifying users, clustering them using user type preference information and current environment information, and combining time information to filter out precise target locations that meet preset requirements, and taking into account driving habits and nighttime salience in the output, a lightweight calculation method is provided to improve speed and accuracy.
It enables quick and accurate recommendation of points of interest while driving at night, avoiding situations where users arrive at a location only to find it closed, thus improving driving safety and convenience.
Smart Images

Figure CN121144631B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of computers, in particular to a point of interest recommendation method and device, electronic equipment and computer readable storage medium. BACKGROUND
[0002] Point of interest (POI) recommendation technology is a smart tool that helps users find "places they may want to go now or in the future". It can accurately recommend places such as coffee shops, convenience stores near the user, scenic spots, and hotels for cross-city travel.
[0003] The working logic of the point of interest recommendation technology mainly includes three steps: first, "find information", which collects data from multiple channels, such as location information, historical information, and real-time state information, and then filters out useless information using algorithms; finally, the most matching places are pushed to the user through the APP, which may also include practical information such as distance, business hours, etc.
[0004] The point of interest recommendation technology under the driving state further increases the content of safe driving, and its core goal is to accurately push the location information (such as gas stations, parking lots, restaurants, service areas, etc.) that meets the immediate needs of the driver under the premise of ensuring driving safety. This technology first obtains multi-dimensional data through vehicle sensors, Internet of Vehicles, and mobile devices, including real-time vehicle location, driving speed, remaining fuel, road conditions (congestion, speed limit), driver historical preferences, and time information. Then, with the help of AI algorithms, the data is processed in real time, and POIs that need to be detoured, are located in high-risk road sections, or conflict with the current driving task are filtered out first. The recommended results are presented through a simple vehicle interaction method to avoid distracting the driver's attention. At the same time, the system dynamically adjusts the recommendation strategy to balance driving safety and user convenience. SUMMARY
[0005] Therefore, the purpose of the present application is to provide a point of interest recommendation method, device, electronic equipment and computer readable storage medium to improve the calculation speed, and to balance the accuracy, and to select the required place using time information to avoid the situation that the place is closed after the user arrives at the corresponding place.
[0006] In a first aspect, the embodiments of the present application provide a point of interest recommendation method, comprising:
[0007] In response to an instruction to start a map application, if the target user is currently in a night driving state, the first preference information of the user type in which the target user is located is called; the user type is determined after clustering the identity information of all users;
[0008] According to the current environment information of the target user and the historical environment information of other users of the user type to which the target user belongs, the other users of the user type to which the target user belongs are clustered to determine second preference information of other users similar to the target user based on the first preference information;
[0009] According to the second preference information and the current location information of the target user, a first candidate site is determined;
[0010] In response to a search instruction input by a user, a second candidate site is determined according to the first candidate site corresponding to the search instruction;
[0011] According to current time information, an accurate target site meeting preset requirements is screened out from the second candidate site;
[0012] Outputting related information of the accurate target site.
[0013] In combination with the first aspect, the embodiments of the present application provide a first possible implementation manner of the first aspect, and the method comprises:
[0014] According to the current location information of the target user and the location information of each second candidate site, a driving path of the target user to each second candidate site is calculated;
[0015] According to the driving habit of the target user and the current time information, the arrival time of each driving path is determined respectively;
[0016] For the type of each second candidate site, a feasibility score evaluation is performed on each second candidate site under the type; the factors of the feasibility score evaluation include the arrival time, the detour condition, the road condition, and the nighttime site saliency;
[0017] According to the result of the feasibility score evaluation, the accurate target site is determined.
[0018] In combination with the first possible implementation manner of the first aspect, the embodiments of the present application provide a second possible implementation manner of the first aspect, and the method further comprises:
[0019] Obtaining historical site arrival information and nighttime site identification saliency of the user type to which the target user belongs; the historical site arrival information records the number of times that the user arrives at each site at the current time, or the historical site arrival information records the probability that the user selects the site at the current time and finally arrives at the site; the nighttime site identification saliency includes identification brightness, size, height, and field of view range;
[0020] According to the historical site arrival information and the nighttime site identification salience, nighttime site salience is determined.
[0021] With reference to a first possible implementation manner of the first aspect, a third possible implementation manner of the first aspect is provided in the embodiments of the application, and the computing of the driving path of the target user to each second candidate site according to the current location information of the target user and the location information of each second candidate site comprises:
[0022] According to the historical driving information of the target user and the historical driving information of the user type to which the target user belongs, a plurality of driving destinations of the target user are determined;
[0023] According to the location information of the plurality of driving destinations, a main driving path to the driving destinations is determined;
[0024] According to the main driving path, the topological relationship of the roads in the navigation map, the current location information of the target user and the location information of each second candidate site, a detour rate of the target user to reach each second candidate site is calculated;
[0025] The second candidate site with a detour rate lower than a first preset value is taken as a third candidate site;
[0026] The driving path of the target user to each third candidate site is calculated.
[0027] With reference to the first aspect, a fourth possible implementation manner of the first aspect is provided in the embodiments of the application, and the outputting of the related information of the accurate target site comprises:
[0028] According to the historical site arrival information of the target user, a recommendation score of each accurate target site is calculated respectively;
[0029] The plurality of accurate target sites with a recommendation score exceeding a second preset value are highlighted in the graphical user interface, and the accurate target sites with a recommendation score not exceeding the second preset value are simplified and displayed in the graphical user interface.
[0030] With reference to the third possible implementation manner of the first aspect, a fifth possible implementation manner of the first aspect is provided in the embodiments of the application, and the determining of the main driving path to the driving destinations according to the location information of the plurality of driving destinations comprises:
[0031] The driving path of the target user from the current location to each driving destination is calculated respectively;
[0032] For each road, a reference score of the road is calculated according to whether the driving path to the driving destination contains the road;
[0033] The top-ranked multiple roads according to the reference are formed into a main driving path.
[0034] With reference to a third possible implementation of the first aspect, a sixth possible implementation of the first aspect is provided, wherein the main driving path to the driving end point is determined according to the position information of the multiple driving end points, comprising:
[0035] The multiple driving end points are clustered according to their positions, and it is determined whether there is a target clustering result in the clustering result, wherein the proportion of the driving end points contained in the target clustering result in the total driving end points exceeds a predetermined value;
[0036] For each target clustering result, the main driving path is determined according to the position information of the target clustering result and the current position information of the target user.
[0037] In the second aspect, the embodiments of the present application further provide a point of interest recommendation device, comprising:
[0038] The response module is configured to respond to an instruction of starting a map application, and if the target user is currently in a night driving state, the first preference information of the user type in which the target user is located is called; the user type is determined according to clustering of identity information of all users;
[0039] The clustering module is configured to cluster other users of the user type in which the target user is located according to the current environment information of the target user and the historical environment information of the other users of the user type in which the target user is located, so as to determine the second preference information of the other users similar to the target user based on the first preference information;
[0040] The first determination module is configured to determine a first candidate site according to the second preference information and the current position information of the target user;
[0041] The second determination module is configured to respond to a search instruction input by a user, and determine a second candidate site according to the first candidate site corresponding to the search instruction;
[0042] The screening module is configured to screen an accurate target site meeting a preset requirement from the second candidate site according to current time information;
[0043] The output module is configured to output related information of the accurate target site.
[0044] In a third aspect, the embodiments of the present application further provide an electronic device, comprising a processor, a memory and a bus, the memory stores machine readable instructions executable by the processor, when the electronic device is running, the processor and the memory communicate through the bus, and the machine readable instructions are executed by the processor to perform the steps in any possible implementation of the first aspect.
[0045] In a fourth aspect, the embodiments of the present application further provide a computer readable storage medium, the computer readable storage medium stores a computer program, and the computer program is executed by a processor to perform the steps in any possible implementation of the first aspect.
[0046] The interest point recommendation method, device, electronic device and computer readable storage medium provided by the embodiments of the present application have two core technical points, one is the pre-classification of the user and the pre-collection of the information, and then the clustering can be performed in a light weight mode (the order of magnitude of the information and objects participating in the calculation is reduced), the calculation speed is faster, and the accuracy is taken into account. Another is to select a place that meets the requirements by using time information, so as to avoid the situation that the place is closed after the user arrives at the corresponding place.
[0047] In order to make the above objectives, characteristics and advantages of the present application more apparent, clear and easy to understand, the following preferred embodiments are specifically described below, and the accompanying drawings are referred to, and the detailed description is as follows. BRIEF DESCRIPTION OF DRAWINGS
[0048] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments, and it should be understood that the following drawings only show some embodiments of the present application, and therefore should not be regarded as a limitation to the scope, and for those skilled in the art, other related drawings can also be obtained without creative labor on the basis of these drawings.
[0049] Figure 1 A flow chart of an interest point recommendation method provided by the embodiments of the present application is shown;
[0050] Figure 2 A schematic diagram of a map provided by the embodiments of the present application is shown;
[0051] Figure 3 A structural schematic diagram of an interest point recommendation device provided by the embodiments of the present application is shown;
[0052] Figure 4 A structural schematic diagram of an electronic device provided by the embodiments of the present application is shown. DETAILED DESCRIPTION
[0053] In order to make the purposes, technical solutions, and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some but not all of the embodiments of the present application. The components of the embodiments of the present application described and shown in the drawings herein can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the claimed present application, but merely represents selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by a person of ordinary skill in the art without creative work fall within the scope of protection of the present application.
[0054] In the related art, a user often uses a point of interest recommendation method in a driving state. Since the method is executed in the driving state, safety is the primary consideration. In the related art, in order to ensure driving safety, efforts are usually made on the input and output of information. For example, a user can input a description of a destination through voice input, and at the same time, a smart terminal can output a prompt to the user in the form of voice to reduce the number of times the user operates the mobile terminal. However, only ensuring safety does not fully meet the needs in this scenario. For example, timeliness (the efficiency of the smart terminal in feeding back a POI) is also a primary concern in the driving state, especially at night. Timeliness is even more important. This is mainly because the user's movement speed is relatively fast in the driving state. If the timeliness is slow, the user may have missed the optimal POI by the time he or she reacts. At the same time, the visibility is poor at night, and the user may also miss the recommended POI by observing with the naked eye.
[0055] In view of the above problems, based on this, the embodiments of the present application provide a point of interest recommendation method, device, electronic equipment and computer readable storage medium, which are described below through embodiments.
[0056] In order to facilitate the understanding of the present embodiment, first, a point of interest recommendation method disclosed by the embodiments of the present application is described in detail. As shown in Figure 1 The method comprises the following steps:
[0057] S101: In response to an instruction to start a map application, if a target user is currently in a night driving state, the first preference information of the user type in which the target user is located is called. The user type is determined after clustering the identity information of all users;
[0058] S102: According to the current environment information of the target user and the historical environment information of other users of the user type where the target user is located, the other users of the user type where the target user is located are clustered to determine the second preference information of the other users similar to the target user based on the first preference information;
[0059] S103: According to the second preference information and the current location information of the target user, a first candidate site is determined;
[0060] S104: In response to a search instruction input by a user, a second candidate site is determined according to the first candidate site corresponding to the search instruction;
[0061] S105: According to the current time information, an accurate target site meeting a preset requirement is selected from the second candidate site;
[0062] S106: Related information of the accurate target site is output.
[0063] The use scenario of the present scheme is a scenario of poi point recommendation for a driver in a night driving state.
[0064] In step S101, the instruction to start the map application can be given to a smart terminal (such as a mobile phone) or a car machine of the user. By detection, it is determined that the current is in a night driving state, and then the subsequent processing flow is started. The judgment mechanism of whether the current is in a night driving state is divided into two aspects, which are driving state and night.
[0065] The driving state of the user can be determined in the following way: if the instruction is given to the smart terminal, it can be determined whether the navigation map is opened + the moving speed of the smart terminal is verified, when the user starts the map navigation, and the moving speed is greater than the normal moving speed (more than 15 kilometers / hour), it can be determined that the user is in the driving state; if the instruction is given to the car machine, it can be verified by more diverse ways. In addition to verifying by whether the navigation map is opened + the moving speed of the smart terminal, it can also be verified by the image of the user's position taken by the vehicle-mounted camera, and whether the user exists in the image to assist in determining whether the driving state exists, and it can also be detected by the steering wheel grip detection method. That is, in the case where the instruction is given to the mobile phone, it can be determined whether the current is in the driving state at least by whether the navigation map is opened + the moving speed of the smart terminal; in the case where the instruction is given to the car machine, it can be determined whether the current is in the driving state by whether the navigation map is opened + the moving speed of the smart terminal + whether the user exists in the driving position + the steering wheel grip detection method. Of course, in the case where the mobile phone and the car machine are connected, the above four methods can also be used for detection.
[0066] The user type where the target user is located is obtained after classifying all users in advance. That is, before the scheme starts to execute, the classification of users and the collection of preference information are completed in advance. Specifically, before step S101 is executed, the identity information of the user can be collected in advance, which can include age, gender, occupation, education, consumption ability, work location, historical consumption information, etc. After obtaining the identity information, the users can be classified in a clustering manner. There are two strategies for classification. One is clustering, such as K-Means algorithm. The number of clusters can be preset, and the distance (such as Euclidean distance) between the user and the cluster center is calculated, and the same class users are closest and different classes are farthest. In specific implementation, in order to ensure the calculation efficiency in the subsequent steps, the number of types should not be too large, and 4-8 types are more appropriate, that is, the number of core clusters is controlled to be 4-8. The DBSCAN algorithm can also be used to cluster without limiting the number of clusters. The result of this clustering method is not very controllable, but this algorithm can be used for analysis first, and after the appropriate number of clusters is determined, the K-Means algorithm is used for clustering. That is, the DBSCAN algorithm can be used for the first clustering, the number of clusters is determined according to the result of the first clustering, and then the K-Means algorithm is used for the final clustering according to the determined number of clusters to determine each user type. Among them, according to the result of the first clustering, the number of clusters is determined, mainly to eliminate the classification with too few individuals, or to eliminate individuals far from the cluster core.
[0067] Another classification method is to classify by supervised learning, such as Logistic Regression, Decision Tree, and Random Forest. These methods need to determine the core of classification first, that is, the classification logic needs to be determined first, which belongs to targeted classification. Generally, this method is used to guide users to a specified location. In the early stage of scheme execution, the specified region (such as the business place classification in some cities or regions is very clear, such as only a certain type of mall or restaurant) can use this method. If the business place type in the scheme execution place is complex, this method is not suitable. The place in the scheme refers to business places such as gas stations, parking lots, restaurants, service areas, etc.
[0068] Regardless of the classification method, after determining the user type, the type of any user can be determined. Then the behavior of the user of this type can be determined to determine the preference. The main use of determining user preferences is the number and frequency of user visits to designated places (historical access information), and the logical correlation between different places or different information (logical correlation can be determined by pre-design or AI analysis), such as the correlation between user age and milk tea shop is negative (the older the user, the lower the probability of visiting milk tea shop); For example, there is a negative correlation between visiting a vegetable market and visiting a large supermarket.
[0069] It should be noted that the classification of night users and the analysis of user preferences after classification are two separate actions. The needs of night users will be largely convergent. If the information of analyzing user preferences is excessively used in determining the classification of users (the weight of analyzing user preferences is too large), the final classification will be distorted, so the type of the user should be determined according to the identity information of the user, and then the first preference information of each type of user is determined.
[0070] In step S102, a temporary classification needs to be performed, specifically by a clustering algorithm. The clustering in step S102 mainly uses the current environmental information and the environmental information faced by other users when they made the selection of the place in the history (historical environmental information). In this way, according to the similarity of the environmental information, other users are clustered, and it is easier to select similar users to the target user as a reference. Generally, the clustering core in step S102 should have at least one that is related to the current environment of the target user. There are two operation methods here, one is to directly use the current environmental information of the target user as a reference of the clustering core (the current environmental information can be expanded to a range value, and the range value is used as the clustering core). It can also be to first perform clustering, and then determine which type is most similar to the target user according to which clustering core is closest to the current environmental information of the target user, and then determine which type is most similar to the target user. The type is used as the other user similar to the target user.
[0071] Generally, K-Means algorithm or DBSCAN algorithm can be used. Since this step is temporarily executed, to ensure the efficiency of this step, K-Means algorithm is preferably used to specify the number of cluster centers. In specific implementation, there are two strategies. One strategy is to first obtain a set of places in a preset range in a business state (referring to a business state at the current time or in a future period of time) in real time, classify the types of these places, and finally determine the number of cluster centers when using K-Means algorithm according to the number of classifications. Another way is to not obtain places in a business state in real time, and directly specify the number of cluster centers. Generally, each region has its own characteristics, especially for places in business at night. Therefore, generally, when this method is first executed, the real-time acquisition method is usually used, and after a period of operation, when the number of cluster centers is relatively determined, the non-real-time acquisition method can be used.
[0072] After clustering, the first preference information obtained before can be directly used to determine the second preference information.
[0073] In step S103, the first candidate place can be determined according to the second preference information and the location information of the target user. Generally, the first candidate place is a place within a certain range from the target user. The first candidate place is a place corresponding to the second preference information.
[0074] In step S104, the search instruction is initiated by the user, that is, after the user issues a start instruction (an instruction to start the map application) of the map in step S101, the search instruction in step S104 is the second instruction issued by the user. The search instruction has more accurate search content issued by the user, which describes the accurate target place of the user. The search content can be the name of the place or the description of the place (such as a place for eating). Then, the second candidate place can be determined from the first candidate place according to the search instruction.
[0075] In step S105, the current time information is used to filter the accurate target site from the second candidate site, and in step S106, the accurate target site can be directly output to the user. Generally, there are two ways to select the accurate target site from the second candidate site using the current time information. One is to determine whether the site is currently in operation, and the other way is relatively complex, which is that the site is still in operation when the user arrives at the site. There are two ways to determine whether the site is still in operation when the user arrives at the site. One is to calculate the distance and driving speed, and then calculate the time required to reach according to the distance and speed, and then estimate whether the site is still in operation when the user arrives at the site. The second way is to estimate a value directly, which is generally 20-30 minutes. The main reason is that the operation time of these sites does not need to be strictly limited (these sites are generally not closed immediately when the closing time arrives), and the distance between these sites and the target user is generally not too far, and there is generally no congestion in night driving, so direct estimation is sufficient. In order to make the estimation more accurate, it can be determined whether there is congestion around, and if there is no congestion, the straight-line distance can be used to estimate the arrival time (without considering the path).
[0076] In step S106, there are three ways to output to the user, which are voice, image and combination of the two.
[0077] The core technical points of the present application are two, one is the pre-classification of the user and the pre-collection of the information, and then the clustering can be performed in a lightweight manner (the number of information and objects participating in the calculation is reduced by orders of magnitude), the calculation speed is faster, and the accuracy is considered. The other is to select the site that meets the requirements by using time information, which avoids the situation that the site is closed after the user arrives at the corresponding site.
[0078] As mentioned above, there are two ways to calculate the accurate target site in step S105, one is rough calculation, and the other is detailed calculation. Generally, when the computing power is sufficient or the reaction time is sufficient, the detailed calculation method should be used. Specifically, when the detailed calculation method is executed, step S105 can be performed in the following manner:
[0079] S1051: According to the current position information of the target user and the position information of each second candidate site, the driving path of the target user to each second candidate site is calculated;
[0080] S1052: According to the driving habit of the target user and the current time information, the arrival time of each driving path is determined respectively;
[0081] S1053: For each type of the second candidate sites, a feasibility score evaluation is performed on each second candidate site under the type; factors of the feasibility score evaluation include arrival time, road condition, detour condition, and night site prominence;
[0082] S1054: According to the result of the feasibility score evaluation, a precise target site is determined;
[0083] In step S1051, the first calculation is the driving path instead of the straight-line distance, and then in step S1052, the arrival time of each driving path is calculated according to the driving habit of the target user and the current time information. The driving habit here mainly refers to the driving speed of the user driving the vehicle. Then in step S1053, a feasibility score evaluation is performed on each second candidate site, and then according to the evaluation result, which second candidate site is determined as the precise target site.
[0084] When performing the evaluation, the following aspects are mainly considered, which are arrival time, road condition, detour condition, and night site prominence. Among them, the arrival time has been described in the foregoing, which is mainly calculated according to the driving speed of the user and the length of the driving path to calculate how long it takes to drive to the site. The detour condition mainly reflects the road complexity, which mainly includes two aspects: one is the angle between different roads, or in other words, according to the road topology, the angle between the adjacent two roads, generally speaking, the closer the angle is to 180 degrees, the smaller the driving difficulty is, the lower the road complexity is, and the more the road corresponding to the driving path should be selected. The second is that for any driving path, the more dense the branch roads in the correct road of the driving path (according to the road topology, the correct road of the driving path is also in these branch roads), the higher the road complexity (the easier to get lost).
[0085] The road condition refers to the difficulty of passing through a certain road, which is determined according to the width of the road (the wider the road, the lower the difficulty of passing through) and the complexity of the road (in addition to the road for cars, there are other types of roads on the road, and the more other types of roads, the higher the difficulty of passing through the road).
[0086] The night prominence mainly refers to whether the site can be easily found at night, which can also be the brightness, size, height, and field of view range (how large the field of view angle can be seen) of the site night identification.
[0087] According to the above aspects, the result of the feasibility score evaluation can be determined in a weighted calculation manner, and finally one or more of the evaluation results with the highest score can be determined as the precise target site.
[0088] There are two strategies for determining the precise target site, one is determined by region, and the other is determined by type. The region determination refers to determining the region that the target user will pass through in the future (not necessarily the region through which the driving path passes, but also the region close to the driving path), and then determining one or more of the regions with the highest evaluation result in each region as the precise target site, so that one or more precise target sites can be determined for each region.
[0089] The type refers to classifying the site according to its type of operation, and then determining one or more of the type with the highest evaluation result as the precise target site, so that at least one or more precise target sites can be determined for each type.
[0090] In order to more accurately determine the nighttime site significance, the following methods can be used:
[0091] Obtain the historical site arrival information of the user type to which the target user belongs and the nighttime site identification significance; the historical site arrival information records the number of times the user arrives at each site at the current time, or the historical site arrival information records the probability that the user selects the site at the current time and finally reaches the site; the nighttime site identification significance includes identification brightness, size, height and field of view;
[0092] Determine the nighttime site significance according to the historical site arrival information and the nighttime site identification significance.
[0093] The probability that the user selects the site at the current time and finally reaches the site refers to the ratio of the number of times the user successfully reaches the site after selecting the site in the map software (navigation software) to the total number of times the user selects the site in the map software. That is, the higher the probability that the user selects a site and finally reaches the site, the more worthy of recommendation for the target user (the target user is more likely to find, or the site is more in line with the user's needs).
[0094] Further, S1051 can be implemented as follows:
[0095] S10511, determining a plurality of driving destinations of the target user according to the historical driving information of the target user and the historical driving information of the user type to which the target user belongs;
[0096] S10512, determining the main driving path to the driving destination according to the location information of the driving destination;
[0097] S10513, according to the main driving path, the topological relation of the road in the navigation map, the current position information of the target user and the position information of each second candidate site, calculating the detour rate of the target user currently reaching each second candidate site;
[0098] S10514, taking the second candidate site with the detour rate lower than the first preset value as the third candidate site;
[0099] S10515, calculating the driving path of the target user reaching each third candidate site.
[0100] In step S10511, the determined driving end point is the possible driving end point of the target user. The reason why multiple end points are determined here is to improve the fault tolerance. The main scheme is not necessarily to determine the most accurate end point, but to push the POI point between the end point and the current position (generally, at night, after the user goes to the POI point, he will also go to the last end point, that is, the POI point is only a passing point, not a driving end point). Therefore, the path of the target user driving to each driving end point can be determined first, as long as the POI point is on the driving path of most driving end points, it is not necessary to require the POI point to be on the most probable driving path.
[0101] Further, in step S10511, as long as the historical driving information of the target user (the historical driving habit of the target user himself) and the historical driving information of the user type to which the target user belongs (the historical driving habit of other users themselves) are determined, the target user is most likely to go to several driving end points.
[0102] After that, in step S10512, the main driving path is determined by using the plurality of driving destinations, which is a path that enables the target user to drive to the plurality of driving destinations more conveniently. Specifically, when calculating the main driving path, there are two ways: the first way is to calculate the destination driving path of the target user from the current location to each driving destination (the destination driving path is the shortest path or the shortest time path from the current location to the corresponding driving destination) respectively; then for each road, the reference score of the road is calculated according to whether the destination driving path contains the road (the more times the destination driving path passes through / contains the road, the greater the reference score, that is, the number of times the destination driving path passes through / contains the road is positively correlated with the reference score), and finally the main driving path is formed according to the roads with the highest reference scores. The main driving path is generally composed of a plurality of roads connected in sequence, so when implementing, the reference score of each road can be calculated in the above-mentioned way, and then a plurality of reference driving paths pointing to the plurality of driving destinations are formed, which cannot appear the same road moving back and forth, such as A road cannot simultaneously walk east-west road and west-east road. Then for each reference driving path, the total reference score of the reference path is calculated according to the reference score of each road in the reference driving path, and finally the reference driving path with the maximum total reference score is selected as the main driving path.
[0103] The second way is not divided according to the road, but according to the abstract region, specifically, the current location of the user is determined, the plurality of driving destinations is relatively determined, and when most of the driving destinations are roughly in the same direction, or most of the driving destinations are in a few fixed directions, a target direction can be formed on the map, which points to the center of the plurality of driving destinations. That is, when implementing, the plurality of driving destinations can be clustered according to their positions, and it is judged whether there is a target clustering result in the clustering result, wherein the proportion of the driving destinations contained in the target clustering result to the total driving destinations exceeds a predetermined value (generally, when there is only one target clustering result, the driving destinations contained in the target clustering result should account for more than 70% of the total driving destinations, and when there are two target clustering results, the driving destinations contained in each target clustering result should account for more than 35% of the total driving destinations; generally, there will not be three or more target clustering results, or when a target clustering result accounting for more than 70% of the total driving destinations cannot be found, and two target clustering results accounting for more than 35% of the total driving destinations cannot be found, the subsequent process can not be executed); then for each target clustering result, the main driving path is determined according to the position information of the target clustering result and the current location information of the target user.
[0104] The position information of the target clustering result can be the position geometric center of all driving destinations contained in the target clustering result or a location where the distance to each driving destination of the target clustering result is substantially the same. The main driving path determined in this way is a path (a navigation route composed of a plurality of continuous roads) from the current position of the target user to the position of the target clustering result. It can also be a region from the current position of the target user to the position of the target clustering result, which is a region with a certain width in the map with the current position of the target user as the starting point and the position of the target clustering result as the ending point. As shown in FIG. 8, a schematic diagram of a map is shown. In the figure, the triangle is the current position icon of the target user, the circle is the position icon of the target clustering result, the square is the place icon in the map, and the oblique rectangular region is the main driving path in the form of a region type. Figure 2
[0105] In addition to the method of clustering by location, the method of clustering by direction can also be used to achieve this step. In the implementation, the relative angle between each driving destination and the current position of the target user can be calculated first, and then the plurality of driving destinations can be clustered according to the degrees of the angles. It is determined whether there is a target clustering result in the clustering result, where the number of driving destinations contained in the target clustering result accounts for more than a predetermined value of the total driving destinations (generally, when there is only one target clustering result, the driving destinations contained in the target clustering result should account for more than 80% of the total driving destinations, and when there are two target clustering results, the driving destinations contained in each target clustering result should account for more than 45% of the total driving destinations); then, for each target clustering result, the main driving path is determined according to the position information of the target clustering result and the current position information of the target user.
[0106] The position information of the target clustering result can be the position geometric center of all driving destinations contained in the target clustering result or a location where the distance to each driving destination of the target clustering result is substantially the same.
[0107] The main difference between the position clustering and the angle clustering is that in the case of the angle clustering, the position attribute can be ignored, resulting in a decrease in the final reference value, but this method can still be used. Generally, the recommended interest points are far away from the driving destinations, so even if there are two driving destinations, one is 5KM away from the target object and the other is 20KM away from the target object, the influence on the subsequent steps is not large. In other words, when the current position of the user is close to the driving destination, the angle calculation method is not suitable.
[0108] Then, in step S10513, the detour condition is calculated according to the main driving path and the road topological relation, the current location information of the target user and the location information of each second candidate site. Specifically, the route of the target user moving to the second candidate site is calculated according to the current location information of the target user and the location information of the second candidate site and the road topological relation, then the coincidence degree and the route turn-back condition of the route and the main driving path are compared, and finally the detour ratio is calculated according to the coincidence degree and the route turn-back condition. The coincidence degree can be the similarity of the calculated image between the route and the main driving path, and the detour ratio is calculated based on the similarity (the higher the similarity, the lower the detour ratio), or the distance between the two can be calculated, and the detour ratio is calculated based on the distance (the greater the distance, the greater the detour ratio). The route turn-back condition refers to whether the same road is turned back during the movement from the second candidate site back to the main driving path. The more the same road is turned back, the more it indicates that the corresponding second candidate site should not be used as the third candidate site.
[0109] When the main driving path is a regional type path, the central axis of the region (the line segment with the current location of the user as the starting point and the location of the target clustering result as the ending point) can be directly used as the reference for calculating the similarity. Alternatively, the region can be used as the reference for calculation. If the region is used as the reference for calculation, as long as the route of the user moving to the second candidate site returns to the region, it is not considered as a detour condition. On the contrary, when the route exceeds the region, the length of the route and the distance of the exceeding part (the distance exceeding the boundary of the region) are calculated, and then the detour ratio is calculated according to the length of the route and the distance of the exceeding part.
[0110] After the detour ratio is determined, the second candidate sites with the lowest detour ratio can be used as the third candidate sites, and the driving path of the target user moving to the third candidate sites can be finally used as the final output result of this step.
[0111] In fact, S10513-S10515 is also a screening process to select the most suitable third candidate site from multiple second candidate sites. This screening can reduce the amount of data processing in subsequent steps.
[0112] When the accurate target site is output in step S106, the following method can be used for display for convenience:
[0113] According to the historical site arrival information of the target user, the recommendation score of each accurate target site is calculated respectively;
[0114] The multiple accurate target sites with a recommendation score exceeding a second preset value are highlighted in the graphical user interface, and the accurate target sites with a recommendation score not exceeding the second preset value are simplified and displayed in the graphical user interface.
[0115] The historical place arrival information of the target user can refer to the description in the foregoing text, and will not be described herein. Highlighting and simplified display are corresponding, and highlighting can mean that the icon is larger and the color is more obvious. At the same time, multiple displays are used to ensure the selection space of the user. Generally, the more the target user goes to a certain precise target place, the more prominent the display is, or in other words, the more the target user goes to the same type of precise target place, the more prominent the display is.
[0116] Based on the same technical concept, the embodiments of the present application also provide a point of interest recommendation device, as shown in the following table: Figure 3 The device comprises:
[0117] The response module 301 is configured to, in response to an instruction of starting a map application, if the target user is currently in a night driving state, call first preference information of a user type in which the target user is located; the user type is determined after clustering of identity information of all users;
[0118] The clustering module 302 is configured to cluster other users of the user type in which the target user is located according to current environment information of the target user and historical environment information of the other users of the user type in which the target user is located, so as to determine second preference information of other users similar to the target user based on the first preference information;
[0119] The first determination module 303 is configured to determine a first candidate place according to the second preference information and current location information of the target user;
[0120] The second determination module 304 is configured to, in response to a search instruction input by a user, determine a second candidate place according to the first candidate place corresponding to the search instruction;
[0121] The screening module 305 is configured to screen a precise target place meeting a preset requirement from the second candidate place according to current time information;
[0122] The output module 306 is configured to output related information of the precise target place.
[0123] Optionally, when the screening module 305 is configured to screen a precise target place meeting a preset requirement from the second candidate place according to current time information, the screening module 305 is specifically configured to:
[0124] Calculate a driving path of the target user to each second candidate place according to current location information of the target user and location information of each second candidate place;
[0125] According to the driving habit of the target user and the current time information, the arrival time of each driving path is determined respectively;
[0126] For each type of the second candidate site, the feasibility score of each second candidate site under the type is evaluated; the factors of the feasibility score evaluation include the arrival time, the detour condition, the road condition and the nighttime site prominence;
[0127] According to the result of the feasibility score evaluation, the accurate target site is determined.
[0128] Optionally, the apparatus further comprises:
[0129] The acquisition module is configured to acquire the historical site arrival information of the user type to which the target user belongs and the nighttime site identification prominence; the historical site arrival information records the number of times that the user arrives at each site at the current time, or the historical site arrival information records the probability that the user selects the site at the current time and finally arrives at the site; the nighttime site identification prominence includes the identification brightness, size, height and field of view range;
[0130] The third determination module is configured to determine the nighttime site prominence according to the historical site arrival information and the nighttime site identification prominence.
[0131] Optionally, the screening module 305, when used to calculate the driving path of the target user to each second candidate site according to the current location information of the target user and the location information of each second candidate site, is specifically configured to:
[0132] According to the historical driving information of the target user and the historical driving information of the user type to which the target user belongs, a plurality of driving destinations of the target user are determined;
[0133] According to the location information of the plurality of driving destinations, the main driving path to the driving destination is determined;
[0134] According to the main driving path, the topological relationship of the road in the navigation map, the current location information of the target user and the location information of each second candidate site, the detour rate of the target user to reach each second candidate site is calculated;
[0135] The second candidate site with a detour rate lower than a first preset value is taken as a third candidate site;
[0136] The driving path of the target user to each third candidate site is calculated.
[0137] Optionally, the output module 306, when used to output the related information of the accurate target site, is specifically configured to:
[0138] According to the historical place arrival information of the target user, a recommended score of each accurate target place is calculated respectively;
[0139] The accurate target places with the recommended scores exceeding the second preset value are highlighted in the graphical user interface, and the accurate target places with the recommended scores not exceeding the second preset value are displayed in a simplified manner in the graphical user interface.
[0140] Optionally, when the screening module 305 is used to determine the main driving path to the driving terminal according to the location information of the plurality of driving terminals, the screening module 305 is specifically used to:
[0141] The end driving path of the target user from the current location to each driving terminal is calculated respectively;
[0142] For each road, a reference score of the road is calculated according to whether the end driving path contains the road;
[0143] The main driving path is formed according to the reference scores of the top-ranked roads.
[0144] Optionally, when the screening module 305 is used to determine the main driving path to the driving terminal according to the location information of the plurality of driving terminals, the screening module 305 is specifically used to:
[0145] The plurality of driving terminals are clustered according to their locations, and it is determined whether there is a target clustering result in the clustering result, wherein the proportion of the driving terminals contained in the target clustering result in the total driving terminals exceeds a predetermined value;
[0146] For each target clustering result, the main driving path is determined according to the location information of the target clustering result and the current location information of the target user.
[0147] Figure 4 A structural schematic diagram of an electronic device provided by the embodiment of the present application includes a processor 401, a memory 402, and a bus 403. The memory 402 stores machine-readable instructions executable by the processor 401. When the electronic device runs the information processing method described above, the processor 401 and the memory 402 communicate through the bus 403. The processor 401 executes the machine-readable instructions to perform the method steps described in the embodiment one.
[0148] The embodiment of the present application further provides a computer-readable storage medium, and the computer-readable storage medium stores a computer program. When the computer program is run by a processor, the method steps described in the embodiment one are performed.
[0149] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the apparatus, the electronic device and the computer readable storage medium described above can refer to the corresponding processes in the foregoing method embodiments, and will not be described here.
[0150] In several embodiments provided in the present application, it should be understood that the disclosed method, device, electronic device and computer readable storage medium can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the modules is only a logical function division, and there can be another division manner in actual implementation. For example, a plurality of modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the shown or discussed components can be indirect coupling or communication connection through some communication interfaces, devices or modules, and can be electrical, mechanical or other forms.
[0151] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, i.e. can be located in one place or distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
[0152] In addition, the functional units in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit.
[0153] If the functions are realized in the form of software function units and sold or used as independent products, they can be stored in a non-volatile computer readable storage medium executable by a processor. Based on this understanding, the technical solutions of the present application essentially or the parts that make contributions to the prior art or parts of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.
[0154] Finally, it should be noted that the above-described embodiments are merely specific embodiments of the present application, which are used to illustrate the technical solutions of the present application, but not to limit the same. The protection scope of the present application is not limited thereto. Although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those skilled in the art that any skilled person in the art can still modify or easily think of changes to the technical solutions recorded in the foregoing embodiments, or make equivalent replacements to some of the technical features, within the technical range disclosed by the present application. The modifications, changes or replacements do not make the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. An interest point recommendation method, characterized in that, include: In response to the command to launch the map application, if the target user is currently driving at night, the first preference information of the user type to which the target user belongs is retrieved; The user type is determined by clustering the identity information of all users; Based on the current environment information of the target user and the historical environment information of other users in the same user type as the target user, cluster other users in the same user type as the target user to determine the second preference information of other users similar to the target user based on the first preference information; Based on the second preference information and the target user's current location information, a first candidate location is determined; In response to a user's search command, a second candidate location is determined based on the first candidate location corresponding to the search command; Based on the target user's historical driving information and the historical driving information of the user type to which the target user belongs, multiple driving destinations for the target user are determined; Based on the location information of the multiple driving destinations, determine the main driving route to the driving destination; Based on the main driving route, the topological relationship of roads in the navigation map, the target user's current location information, and the location information of each second candidate location, calculate the detour rate of the target user to reach each second candidate location. The second candidate location with a detour rate lower than the first preset value is selected as the third candidate location; Calculate the driving path of the target user to each third candidate location; Based on the target user's driving habits and current time information, determine the arrival time for each driving route; For each type of second candidate location, a feasibility score is evaluated for each second candidate location under that type; the factors for evaluating the feasibility score include arrival time, detour conditions, road conditions, and the prominence of the location at night; Determine the precise target location based on the results of the feasibility score evaluation; Output relevant information about the precise target location; The step of determining the main driving route to the driving destination based on the location information of the multiple driving destinations includes: Calculate the destination driving path for the target user from the current location to each driving destination; the destination driving path is the shortest path in terms of distance or time from the current location to the corresponding driving destination. For each road, a reference score is calculated based on whether the final driving route includes that road; The main driving routes are formed based on the top-ranked roads according to the reference scores. The step of determining the main driving route to the driving destination based on the location information of the multiple driving destinations includes: Multiple driving endpoints are clustered according to their locations, and it is determined whether there is a target cluster result in the clustering results, wherein the number of driving endpoints included in the target cluster result exceeds a predetermined value in proportion to the total number of driving endpoints. For each target clustering result, the main driving path is determined based on the location information of the target clustering result and the current location information of the target user. The main driving path refers to an area from the user's current location to the location of the target clustering result. This area is a region with a certain width on the map, with the target user's current location as the starting point and the target clustering result location as the ending point.
2. The method according to claim 1, characterized in that, The method further includes: The system obtains historical location arrival information and nighttime location salience of the user type to which the target user belongs; the historical location arrival information records the number of times the user has arrived at each location at the current time, or the historical location arrival information records the probability that the user selects a location at the current time and eventually arrives at that location; the nighttime location salience includes the brightness, size, height and field of view of the location; The salience of nighttime locations is determined based on the historical location arrival information and the salience of the nighttime location identifier.
3. The method according to claim 1, characterized in that, The output of relevant information about the precise target location includes: Based on the target user's historical location arrival information, calculate the recommendation score for each precise target location; The graphical user interface will highlight the precise target locations whose recommended scores exceed the second preset value, and will simplify the display of the precise target locations whose recommended scores do not exceed the second preset value.
4. An interest point recommendation device, characterized in that, include: The response module is used to respond to the command to start the map application. If the target user is currently driving at night, it retrieves the first preference information of the user type to which the target user belongs. The user type is determined by clustering the identity information of all users; The clustering module is used to cluster other users of the user type to which the target user belongs based on the current environment information of the target user and the historical environment information of other users of the same user type as the target user, so as to determine the second preference information of other users similar to the target user based on the first preference information; The first determining module is used to determine a first candidate location based on the second preference information and the current location information of the target user; The second determining module is used to respond to the search command input by the user and determine the second candidate location based on the first candidate location corresponding to the search command; The filtering module is used to determine multiple driving destinations for a target user based on the target user's historical driving information and the historical driving information of the user type to which the target user belongs; Based on the location information of the multiple driving destinations, the main driving route to the driving destination is determined; based on the main driving route, the topological relationship of roads in the navigation map, the current location information of the target user, and the location information of each second candidate location, the detour ratio of the target user to each second candidate location is calculated; the second candidate location with a detour ratio lower than a first preset value is selected as the third candidate location. Calculate the driving path of the target user to each third candidate location; determine the arrival time of each driving path based on the target user's driving habits and current time information; evaluate the feasibility score of each second candidate location for each type; the factors for feasibility score evaluation include arrival time, detour conditions, road conditions, and nighttime location salience; determine the precise target location based on the results of the feasibility score evaluation. An output module is used to output relevant information about the precise target location; When the filtering module determines the main driving route to the driving destination based on the location information of the multiple driving destinations, it is specifically used for: Calculate the destination driving path for the target user from the current location to each driving destination; the destination driving path is the shortest path in terms of distance or time from the current location to the corresponding driving destination. For each road, a reference score is calculated based on whether the final driving route includes that road; The main driving routes are formed based on the top-ranked roads according to the reference scores. When the filtering module determines the main driving route to the driving destination based on the location information of the multiple driving destinations, it is specifically used for: Multiple driving endpoints are clustered according to their locations, and it is determined whether there is a target cluster result in the clustering results, wherein the number of driving endpoints included in the target cluster result exceeds a predetermined value in proportion to the total number of driving endpoints. For each target clustering result, the main driving route is determined based on the location information of the target clustering result and the current location information of the target user; The main driving path refers to an area from the user's current location to the location of the target cluster result. This area is a region with a certain width on the map, starting from the target user's current location and ending at the location of the target cluster result.
5. An electronic device, characterized in that, include: The device includes a processor, a memory, and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device is in operation, the processor communicates with the memory via the bus, and the machine-readable instructions, when executed by the processor, perform the steps of the method as described in any one of claims 1 to 3.
6. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the method as described in any one of claims 1 to 3.
Citation Information
Patent Citations
Methods of obtaining point of interest data
CN107532920A
Searching method and device, server and storage medium
CN114329208A
User preference analysis method and device
CN117972184A
