A personalized trip recommendation method, system, device and storage medium
Patent Information
- Application Number
- CN202411291697.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-14
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2044-09-14
AI Technical Summary
[0004]针对上述相关技术,用户出行过程中,通常会有多方面在意的因素,只考虑到单一因素进行推荐,所推荐的行程可能不是用户最感兴趣的出行路线,给用户带来不好的体验
[0052] The beneficial effects of this invention are as follows: By analyzing user travel big data, the invention extracts the targets of user attention during travel, categorizes all Points of Interest (POIs) into several classes, and predicts the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, the probability of a user paying attention to a target, and the preference probability of a user for fine-grained attributes of a target within a specific POI category, based on the preference probabilities and targets. Then, based on these preference probabilities and targets, the invention first filters the POIs that the user might choose, obtaining a candidate POI dataset. The prediction results from multiple prediction models and the candidate POI dataset are then used to generate an initial itinerary. Crossover and mutation are then used to obtain several selectable itineraries. These selectable itineraries and the initial itinerary together form a recommended itinerary to be screened. The fitness value of the recommended itinerary is calculated, and further screening is performed based on the fitness value to obtain recommended itineraries. Finally, the itinerary with the highest preference probability is selected as the recommended itinerary. By considering factors that users pay more attention to during their travels, the recommended personalized itineraries are more closely aligned with user needs.
Smart Images

Figure CN119166898B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of trip planning, specifically relating to a personalized trip recommendation method, system, device, and storage medium. Background Technology
[0002] As economic levels continue to improve, people are increasingly valuing outings and travel to enrich their spiritual lives. However, in unfamiliar cities, faced with numerous shopping malls, restaurants, and rest areas, it can be difficult to quickly plan a reasonable and efficient travel route.
[0003] In related technologies, travel route planning is mainly a single-objective optimization. After obtaining the travel destinations that users are interested in, a reasonable travel route is recommended by taking into account the things that users care about most during the travel process.
[0004] Regarding the aforementioned technologies, users typically consider multiple factors during their travels. Recommending a trip based on only one factor may not be the route that users are most interested in, leading to a poor user experience. Summary of the Invention
[0005] The technical problem to be solved by the present invention is to provide a personalized itinerary recommendation method, system, device and storage medium, which takes into account the factors that users pay more attention to during the process, performs multi-objective optimization, and realizes personalized itinerary recommendation.
[0006] A personalized itinerary recommendation method includes:
[0007] Acquire user travel big data, travel data of users currently waiting to travel, several POIs and POI data corresponding to each POI;
[0008] Classify several POIs to obtain detailed POI categories;
[0009] The user travel big data is analyzed to extract the targets that users pay attention to when traveling;
[0010] Based on the travel data of the current users who are about to travel, the Ci prediction model, the Ti prediction model, the Wi prediction model, and the Di prediction model, the total number of POIs, the number of entertainment POIs, the probability of the user selecting a certain POI subcategory, the probability of the user paying attention to the target of interest, and the probability of the user's preference for the fine-grained attribute preference of the target of interest under a certain POI subcategory are predicted.
[0011] POIs are filtered based on the preference probabilities and the target of interest to obtain a candidate POI dataset;
[0012] Design the initialization process;
[0013] Based on the candidate POI dataset, the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, and the probability of a user paying attention to the target of interest, the initial journey is optimized through crossover and mutation using a genetic algorithm to obtain several journeys to be selected. The fitness values of the initial journey and the journeys to be selected are calculated, and the fitness values are obtained through the target of interest.
[0014] The initialization trip and the trip to be selected constitute the recommended trip to be screened;
[0015] The recommended itineraries are filtered based on the fitness values to obtain the recommended itineraries;
[0016] The optimal recommended itinerary for the user's trip is obtained based on the recommended itinerary and the user preference probability.
[0017] Optionally, the POI data includes basic attribute data and other attribute data, including grid attribute data, road network attribute data closest to a certain POI, popularity data, traffic accessibility data, POI detailed category data, and POI cost data.
[0018] Optionally, the focus targets include transportation accessibility, regional vitality value, popularity, consumption range, travel distance, and POI refined category preferences.
[0019] Optionally, the step of predicting the total number of POIs, the number of entertainment POIs, the probability of the user selecting a specific POI category, the probability of the user paying attention to the target of interest, and the probability of the user's preference for fine-grained attribute preferences of the target of interest under a specific POI category, based on the current user's travel data and the Ci, Ti, Wi, and Di prediction models, includes:
[0020] Based on the travel data of the current users who are about to travel, obtain the historical behavior data and basic user data of the current users who are about to travel;
[0021] The historical behavior data and user basic data are input into the Ci prediction model to predict the total number of POIs and the number of entertainment POIs that the user wants to include in the trip.
[0022] The historical behavior data and user basic data are input into the Ti prediction model to predict the probability that a user will select a certain POI refinement category.
[0023] The historical behavior data and user basic data are input into the Wi prediction model to predict the probability of the user's attention to the target of interest.
[0024] The historical behavior data and user base data are input into the Di prediction model to predict the probability of a user's preference for fine-grained attributes of the target of interest under a certain POI refinement category.
[0025] Optionally, the personalized elimination and retention of POIs based on the preference probability and the target of interest to obtain a candidate POI dataset includes:
[0026] Construct an expected scoring formula based on user preference probability and the stated focus target;
[0027] The expected score formula is as follows:
[0028] POI score=w1*p_score+w2*traf_score+w3*t_score+w4*c_score;
[0029] Among them, w1, w2, w3 and w4 are weights, p_score is popularity, traf_score is transportation accessibility score, t_score is POI detailed category preference score and c_score is consumption range score;
[0030] Each POI is scored according to the expected scoring formula to obtain the scoring result;
[0031] Based on the scoring results, POIs are individually eliminated or retained to obtain a candidate POI dataset.
[0032] Optionally, the design initialization process includes:
[0033] Get the initial population size;
[0034] Based on the total number of POIs, the initial population size, the refined POI categories, and the candidate POI dataset, n initialization processes are randomly generated, where n is the initial population size.
[0035] Optionally, the step of filtering the recommended itineraries based on the fitness value to obtain the recommended itineraries includes:
[0036] Based on the fitness value, the recommended trips to be screened are sorted in a non-dominated manner, and the top m recommended trips to be screened are selected as recommended trips.
[0037] Calculate the spatial distance between the recommended route and the preset reference point;
[0038] The proposed itinerary is associated with the nearest reference point based on the spatial distance, resulting in a number of associations for each reference point. Recommended itineraries are then selected from the proposed itineraries based on these association numbers.
[0039] A trip recommendation system, comprising:
[0040] The acquisition module is used to acquire user travel big data, travel data of users currently waiting to travel, several POIs and POI data corresponding to the POIs;
[0041] The classification module is used to classify several POIs to obtain detailed POI categories;
[0042] The extraction module is used to analyze the user travel big data and extract the user's focus during travel;
[0043] The prediction module is used to predict, based on the travel data of the user who is about to travel, the Ci prediction model, the Ti prediction model, the Wi prediction model, and the Di prediction model, the total number of POIs that the user wants to include in the trip, the number of entertainment POIs, the probability of the user selecting a certain POI subcategory, the probability of the user paying attention to the target of interest, and the probability of the user's preference for the fine-grained attribute preference of the target of interest under a certain POI subcategory.
[0044] The first filtering module is used to filter POIs based on the preference probability and the target of interest to obtain a candidate POI dataset;
[0045] The design module is used to design the initialization process;
[0046] The crossover and mutation module is used to optimize the initial journey through crossover and mutation using a genetic algorithm based on the candidate POI dataset, the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, and the probability of a user paying attention to the target of interest. This results in several candidate journeys, and the fitness values of the initial journeys and the candidate journeys are calculated. The fitness values are obtained through the target of interest.
[0047] The initialization trip and the trip to be selected constitute the recommended trip to be screened;
[0048] The second filtering module is used to filter the recommended itineraries to be filtered based on the fitness value to obtain the recommended itineraries;
[0049] The recommendation module is used to obtain the best recommended itinerary for the user's trip based on the recommended itinerary and the user preference probability.
[0050] A terminal device includes a memory and a processor. The memory stores a computer program that can run on the processor. When the processor loads and executes the computer program, it employs the aforementioned personalized trip recommendation method.
[0051] A computer-readable storage medium storing a computer program that, when loaded and executed by a processor, employs the aforementioned personalized trip recommendation method.
[0052] The beneficial effects of this invention are as follows: By analyzing user travel big data, the invention extracts the targets of user attention during travel, categorizes all Points of Interest (POIs) into several classes, and predicts the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, the probability of a user paying attention to a target, and the preference probability of a user for fine-grained attributes of a target within a specific POI category, based on the preference probabilities and targets. Then, based on these preference probabilities and targets, the invention first filters the POIs that the user might choose, obtaining a candidate POI dataset. The prediction results from multiple prediction models and the candidate POI dataset are then used to generate an initial itinerary. Crossover and mutation are then used to obtain several selectable itineraries. These selectable itineraries and the initial itinerary together form a recommended itinerary to be screened. The fitness value of the recommended itinerary is calculated, and further screening is performed based on the fitness value to obtain recommended itineraries. Finally, the itinerary with the highest preference probability is selected as the recommended itinerary. By considering factors that users pay more attention to during their travels, the recommended personalized itineraries are more closely aligned with user needs. Attached Figure Description
[0053] Figure 1 This is a flowchart illustrating a personalized itinerary recommendation method according to the present invention;
[0054] Figure 2 This is a table of model parameters for Ci, Ti, Wi, and Di prediction models of a personalized trip recommendation method according to the present invention.
[0055] Figure 3 This is a schematic diagram of population selection for a personalized itinerary recommendation method according to the present invention;
[0056] Figure 4 This is a schematic diagram illustrating the recommendation results of a personalized itinerary recommendation method according to the present invention. Detailed Implementation
[0057] A personalized itinerary recommendation method, such as Figure 1 As shown, the present invention includes:
[0058] S100: Obtain user travel big data, travel data of users currently waiting to travel, several POIs and POI data corresponding to the POIs.
[0059] Specifically, user travel big data mainly refers to data obtained from the internet regarding users' travel goals, spending, and the popularity of POIs in a region. Current travel data for users planning trips refers to data on users who are preparing to recommend itineraries. This data can be obtained through surveys and includes the detailed categories of POIs selected during users' past trips, the number of POIs, spending range, and the goals they focused on during their trips.
[0060] Points of Interest (POIs) refer to points of interest for travel, which are potential destinations, such as a shopping mall. POI data is data related to POIs within a specific area. POI data includes basic attribute data and other attribute data, such as grid attribute data, road network attribute data closest to a POI, popularity data, accessibility data, detailed POI category data, and POI spending data.
[0061] POI data includes basic attribute data and other attribute data. Other attribute data includes grid attribute data, road network attribute data closest to a POI, popularity data, traffic accessibility data, POI detailed category data, and POI spending data.
[0062] Grid attribute data, which represents the grid where the POI is located, is used to assign the regional vitality value to the POI.
[0063] Recent road network attribute data. This data represents the nearest road network code (RID) to the POI, used to assign road accessibility to the POI.
[0064] Popularity, this attribute is the normalized score of POI popularity.
[0065] Traffic accessibility: This attribute data represents the traffic accessibility of the nearest road to the POI, and has been normalized.
[0066] The detailed category data for POIs includes categories and detailed categories. This attribute data is a detailed classification of each type of POI, that is, each major category is further divided into multiple subcategories.
[0067] POI spending data; this attribute data represents the average spending per person for that POI.
[0068] S110. Classify several POIs to obtain detailed POI categories.
[0069] Specifically, based on user travel big data, all POIs are categorized into food, shopping, sports, social, leisure, and scenery.
[0070] S120. Analyze user travel big data and extract the focus of users when traveling.
[0071] Specifically, the focus of users when traveling refers to the aspects of the travel experience that users prioritize. These focus areas include accessibility, regional vitality, popularity, consumption range, travel distance, and detailed POI category preferences. User travel big data refers to the collection of data based on the focus of other users during their past travels.
[0072] Transportation accessibility refers to the factors users prefer when traveling, particularly to locations with good transportation accessibility. Throughput is used here to measure the convenience of the road network. The formula for calculating throughput is as follows:
[0073]
[0074] Where f1 represents the fitness function value, c represents the number of POIs, and TPBt i The throughness of a street is represented by the probability or frequency of the shortest path from all spaces to all other spaces. It can reflect the potential for people to travel through the road network.
[0075] The final throughness calculation results are reflected in the road network. We project the POI onto the nearest road network to obtain the network's Recognition ID (RID) and corresponding Two-Phase Betweenness (TPBt), which serve as the POI's traffic accessibility attribute. Due to the significant differences in TPBt scores, we performed logarithmic normalization on the TPBt attribute value for each POI to reduce error.
[0076] The travel accessibility fitness of a route is the sum of the TPBt scores of all POIs.
[0077]
[0078] Where OD(y,z,x) represents the shortest path assignment rule under different conditions, indicating the shortest topological path between nodes y and z that pass through node x within the search radius R; TPBt(x) is the traversal degree of node x; and Links(y) is the total number of nodes within the search radius R for each node y. In discrete space, P(y) is 1 if the point is within the search radius, and 0 otherwise; in continuous space, the value of P(y) depends on the ratio of the radius to the line segment length, and is between 0 and 1. N is the set of all road segments within the study area, and R... yLet y be the set of other road segments reachable within a given radius R, starting from road segment y.
[0079] The shortest topological path is calculated as follows:
[0080]
[0081] The spending range refers to the price range that users have when choosing a Point of Interest (POI). Therefore, it's necessary to make the spending range as close as possible to user preferences. We therefore categorized POIs into spending tiers, referencing the spending range criteria used on Dianping (a Chinese review platform). In the model prediction section, the spending range for a specific POI category is also used as a predictive attribute. Based on the predicted preference range, users are segmented and rated. The more likely a user is to prefer a particular spending range, the higher the POI score for that range. The trip's spending target is the sum of the spending scores for each POI, calculated using the following formula:
[0082]
[0083] Among them, cost i Let f1 represent the cost of the i-th attraction, ω represent the score for that cost given by the mapping function, and f2 represent the total score for the c attractions.
[0084] Popularity refers to the degree of popularity of a POI, or its level of accessibility. When choosing a POI, some users tend to prefer those with higher popularity. Popularity rankings for various POIs were categorized and scored, and normalization was performed to reduce errors. The travel accessibility target for the trip is the sum of the popularity scores of all POIs, calculated using the following formula:
[0085]
[0086] Among them, popu i Let β be the popularity score of the i-th attraction, and let β be the score given by the mapping function for that expenditure.
[0087] Trip distance refers to the distance cost that a user needs to keep within a certain range when traveling. Since trips require dynamic optimization to meet user needs and enhance personalization, and the locations of Points of Interest (POIs) are constantly changing, trip distance is chosen as the fitness factor in the optimization process to constrain the trip distance. To find the globally optimal solution for uncertain paths, the Simulated Annealing (SA) algorithm is used. SA is a stochastic optimization algorithm that is superior to typical greedy algorithms because it accepts a less desirable solution with a certain probability. This makes it more likely that the distance calculation will escape local optima and find the globally optimal solution. The formula for calculating the trip distance target is as follows:
[0088]
[0089] wherein s i represents the latitude and longitude coordinates of the starting point, p ij is the latitude and longitude coordinates of the candidate point, h(s i , p ij ) is the distance between the two points calculated by the haversine formula. The calculation order of points in the formula is determined by the simulated annealing algorithm.
[0090] The calculation formula of SA is as follows:
[0091]
[0092] Assume that the previous state of the POI sequence is x(n), the system changes the state to x(n+1) through a certain rule, correspondingly, the energy of the system changes from E(n) to E(n+1), and the acceptance probability P defined for the system changing from x(n) to x(n+1) can be expressed by the calculation formula of SA. The internal energy E in the formula is simulated as the objective function value f4 of distance, T represents the current temperature, which is defined in the initial parameters and decreases iteratively with SA.
[0093] If the energy decreases, this transition is accepted (with a probability of 1); if the energy increases, it indicates that the system is further away from the global optimal position. However, the algorithm does not discard it immediately, but performs a probability operation: generate a uniformly distributed random number ∈ in the interval (0, 1), if ∈ < P, this transition is accepted, otherwise the transition is rejected, and the process proceeds to the next step and repeats cyclically. The probability P is determined by the energy change amount and T, and the probability P changes dynamically.
[0094] Finally, SA obtains the shortest Euclidean distance of the POI itinerary with an uncertain starting point for the sequence. The starting point of the itinerary is not a fixed point, but a point that can be returned and changed in the next iteration. This distance ensures that the path is always within a reasonable range during the optimization process.
[0095] f4 is implemented by randomly defining the starting point in the POI sequence, calculating the Haversine distance from the previous point to the next point, and accumulating it as the path distance. Haversine calculates the distance between two points on Earth through latitude and longitude. The Haversine formula is as follows:
[0096]
[0097] The regional vitality value comprehensively reflects the number of candidate POIs and the category richness of POIs in the activity area of the user to travel, which can provide users with richer and more flexible choices, making the recommended itinerary more likely to satisfy users in practical applications. The number of POIs and the diversity degree of POIs in the grid of the area where the POIs are located are comprehensively considered to ensure that the geographical position of the POIs is relatively excellent when recommending the itinerary.
[0098] The grid's vitality value combines POI diversity and POI quantity, and is assigned to the POIs in that region as a new attribute of the POI. The vitality value of a journey is a composite of the POI vitality values within the journey, and the fitness objective f5 is expressed as follows:
[0099]
[0100] N represents the number of POIs in the grid of the region where the POI is located, and SDI represents the mixing degree of the grid of the POI.
[0101] The weighting of POI quantity and POI diversity in the regional vitality value is designed as 6:4, based on the questionnaire survey used in this method. First, the region is divided into a grid, defining the correspondence between grids and POIs, and the Shannon diversity and POI quantity for each grid region are calculated. Shannon entropy is a classic method for calculating mixing degree; diversity is calculated as follows:
[0102]
[0103] p i Let be the proportion of the area occupied by POI of type i within the perceptual range of this grid, and m be the total number of POI refinement categories in this range. When there is only one type, Shannon diversity is 0, while the entropy value is the maximum when the proportions of each type are equal.
[0104] POI category preference refers to the POIs that users are most interested in during their trip. To ensure the personalization of trip planning, after removing poorly performing POIs, the method retains the POI category preference score, which is used as the sixth objective function. This objective function ensures that the final recommendation sequence has POI category preferences that more closely match user needs. The POI category preference score is calculated as follows:
[0105]
[0106] S130. Based on the current travel data of users who are about to travel, the Ci prediction model, the Ti prediction model, the Wi prediction model, and the Di prediction model, predict the total number of POIs that users want to include in their trip, the number of entertainment POIs, the probability of users selecting a specific POI category, the probability of users paying attention to the target of interest, and the probability of users' preference for the fine-grained attributes of the target of interest under a specific POI category.
[0107] Specifically, it includes:
[0108] S1300: Based on the travel data of users who are currently waiting to travel, obtain the historical behavior data and basic user data of users who are currently waiting to travel.
[0109] Specifically, historical behavior data includes detailed data on the POI categories selected by users during past trips and the number of POIs selected for each trip, while basic user data includes user gender, age, and occupation.
[0110] S1301. Input historical behavior data and user basic data into the Ci prediction model to predict the total number of POIs and the number of entertainment POIs that the user wants to include in the trip.
[0111] S1302. Input historical behavior data and user basic data into the Ti prediction model to predict the probability of a user selecting a certain POI refinement category.
[0112] S1303. Input historical behavior data and user basic data into the Wi prediction model to predict the probability of users paying attention to the target of interest.
[0113] S1304. Input historical behavior data and user basic data into the Di prediction model to predict the probability of a user's preference for fine-grained attributes of the target of interest under a certain POI refinement category.
[0114] Specifically, based on user survey analysis, fine-grained attributes of various POIs of interest to users are selected for model prediction. The models are divided into cold-start series and full-attribute prediction series, both ultimately aiming to obtain fine-grained user attribute preference data. The complete user input attribute data is represented by Ui = {Bi, Hi, Wi}, where Bi represents the user's basic attribute data; Hi represents the user's historical behavior selection data; and Wi represents the user's historical preference target data. The model input data is generated by recombining Ui and varies depending on the model. The input attribute data for the cold-start series models is Ui = {Bi}, with other relevant attributes generated hierarchically by the model and considered in the next level of prediction. The complete user preference attribute data output by the model is represented by Pi = {Ci, Ti, Wi, Di}, where Ci and Ti are obtained by decomposing Hi, Wi represents the user's likely desired preference target data, and Di represents the user's preference for the detailed characteristics of various POI data.
[0115] Model parameters such as Figure 2 As shown.
[0116] In detail, under both series, the models can be divided into (1) the Ci prediction model, which obtains the total number of POIs and the number of entertainment POIs that users want to include in their itinerary; (2) the Ti prediction model, which obtains the detailed categories of POIs that users may want to choose; (3) the Wi prediction model, which understands which conditions users want in their itinerary to be better, that is, which goals users are more looking forward to; and (4) the Di prediction model, under which POI attributes and user needs are further refined. The model ultimately obtains the user's detailed characteristic preferences for various types of POI data.
[0117] The model employs an optimization process using a multi-layer feedforward fully connected neural network, selecting a loss function suitable for each model. Furthermore, the model design incorporates the concept of multi-task learning, sharing the input layer and some hidden layers. Model types include multi-task multi-classification neural network models and multi-label classification neural network models.
[0118] In summary, the implementation logic of the user preference prediction model is as follows: input user attribute data to obtain (1) Ci in the recommended itinerary. Predict the number of POIs that the user wants to include in the itinerary; (2) Ti in the recommended itinerary. Predict which types of POIs the user prefers to choose under the quantity constraint; (3) Wi in the recommended itinerary. Predict the degree of importance the user attaches to multiple goals in the itinerary planning problem; (4) Di in the recommended itinerary. Predict which POIs the user prefers when choosing POIs, or in other words, which POIs will be rated higher by the user.
[0119] S140. Based on preference probabilities and focus targets, POIs are individually eliminated or retained to obtain a candidate POI dataset.
[0120] Specifically, user preference probability describes the degree to which a user cares about a target within a specific POI category. Therefore, user preference probability optimization can be used to remove POIs with low user preference probabilities from all POIs. Specifically, based on the six major targets of interest, the relevant POI attributes that may be used are quantified. Based on user preferences, multiple types of POIs are given personalized scores, and poorly performing POIs are eliminated. The scoring content of POIs is divided into three modules: (1) basic content scoring; (2) preference-related attribute scoring; and (3) target expectation level scoring. Basic content scoring scores the popularity and accessibility attributes of POIs. The higher the popularity and accessibility attribute values, the better. Preference-related attribute scoring scores the sub-category and price range of POIs. Sub-category scoring scores the user's preference for that type of POI. For the price attribute, the article maps the price range according to the commonly used classification in daily travel. The more it matches the user's preferred consumption range, the higher the score. Target expectation level scoring comes from the prediction of the expectation level of multiple scoring targets. This level will be used as the scoring weight to calculate the total score of the POI.
[0121] The total POI score is calculated as follows:
[0122] POI score=w1*p_score+w2*traf_score+w3*t_score+w4*c_score.
[0123] Among them, w1, w2, w3, and w4 are weights, p_score is popularity, traf_score is transportation accessibility score, t_score is POI refined category preference score, and c_score is consumption range score.
[0124] Popularity scores and accessibility scores can be tiered based on public rankings. For example, the top 20 most popular items in a region are assigned a score of 1, the top 50 are assigned a score of 0.8, and the top 100 are assigned a score of 0.6. The POI detailed category preference score and c_score consumption interval score are mapped using a mapping function. The user's highest probability of preference for the fine-grained attribute preference of the target under a certain POI detailed category is assigned a score of 1, the second highest probability is 0.8, and so on down to 0.2, divided into 5 mapping intervals.
[0125] S150, Design initialization process.
[0126] Specifically, it includes:
[0127] S1500, Get the initial population size.
[0128] Specifically, the initial population size is the number of initialization processes to be generated.
[0129] S1501. Based on the total number of POIs, the initial population size, the refined POI categories, and the candidate POI dataset, randomly generate n initialization routes, where n is the initial population size.
[0130] Specifically, when designing the initialization schedule, the gene pool is the screened POIs, the total number of schedule POIs is obtained from the Ci prediction model, the Ti prediction model predicts the set of refined categories of available POIs, the schedule is designed as chromosomes, and the encoding is represented as Ii={p1,p2……,pc}, where i represents the recommended i-th schedule, gene pj represents the j-th recommended POI in the schedule, c is the total number of schedule POIs, and then n chromosomes are randomly generated as the initialization schedule.
[0131] S160. Based on the candidate POI dataset, the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, and the probability of a user paying attention to a target, the initial process is optimized through crossover and mutation using a genetic algorithm to obtain several processes to be selected. The fitness values of the initial process and the processes to be selected are calculated. The fitness values are calculated based on the target.
[0132] Specifically, after generating the initial population, offspring are generated using crossover and mutation operators in genetics. The purpose of the crossover operator is to generate offspring chromosomes that inherit the results from the parent chromosome; the purpose of the mutation operator is to generate offspring chromosomes by changing random genes. Subsequently, fitness is calculated based on six objectives, i.e., the goals of interest, and these objectives are used as fitness values in the optimization process. In this work, six fitness values corresponding to the objectives were calculated: {-f1, -f2, -f3, f4, -f5, -f6}. It is worth noting that, unlike conventional crossover and mutation, in this application, the category of each gene position in the chromosome is fixed during crossover and mutation. Crossover and mutation are performed based on gene locations to achieve both local crossover and site-specific mutation, ensuring the continuation of multiple gene categories in the chromosome.
[0133] S170, the initial itinerary and the itinerary to be selected constitute the recommended itinerary to be filtered.
[0134] S180. Filter the recommended itineraries to be screened based on the fitness value to obtain recommended itineraries.
[0135] The recommended itineraries are filtered based on fitness values, resulting in the following recommended itineraries:
[0136] S1800. Sort the recommended trips to be screened by non-dominated order according to their fitness values, and select the top m recommended trips to be screened as recommended trips.
[0137] Specifically, firstly, the fitness value of the target in the recommended route is calculated. Then, the parents (Pt) and offspring (Ot) whose fitness has been calculated are selected for selection. This selection is achieved through non-dominated rapid sorting and Niche-preserving. Based on the fitness value, individuals are rapidly divided into multiple Pareto fronts for non-dominated sorting and Niche-preserving selection. For example... Figure 3 As shown, F1 represents individuals that dominate all other individuals, meaning they perform better than individuals of other levels in any fitness. F2 individuals are dominated only by F1 individuals and dominate F3 and subsequent levels. Higher levels indicate more outstanding individuals and a greater likelihood of being selected for the next generation (Pt).
[0138] S1801. Calculate the spatial distance between the recommended route and the preset reference point.
[0139] S1802. Associate the itinerary to be recommended with the nearest reference point based on spatial distance, obtain the number of associations for each reference point, and filter the recommended itineraries from the recommended itineraries based on the number of associations.
[0140] The Niche-preserving selection module maintains population diversity by introducing widely distributed reference points. When selecting the last dominance level, Ot selects only a subset of these reference points. This process begins with the NSGA-III algorithm generating hyperplanes for inner and outer reference points, creating two layers of reference points evenly distributed across the solution space based on the target dimension and population size. Next, the minimum values of the six objective functions are used as ideal points, and the target fitness of individuals in the population is normalized based on these ideal and extreme points. Third, the nearest reference line (the line connecting the reference point and the ideal point) is found for each individual, connecting the individual to the reference line and ultimately associating the individual with its corresponding reference point. Individuals corresponding to reference points with fewer connections should be retained, which helps maintain the diversity of the solution set. The process is then iterated until the required number of iterations is met.
[0141] S190. The optimal recommended itinerary is obtained based on the recommended itinerary and the preference probability.
[0142] Specifically, the recommended itinerary includes several travel routes, and then the group of results with the highest probability of preference is selected for recommendation based on the user's preference probability.
[0143] The recommended POIs are projected onto the nearest local road network structure to generate the final path. The recommended results will be presented to the user in the form of a path, such as... Figure 4 As shown.
[0144] A trip recommendation system, comprising:
[0145] The acquisition module is used to acquire user travel big data, travel data of users currently waiting to travel, several POIs and POI data corresponding to the POIs;
[0146] The classification module is used to classify several POIs to obtain detailed POI categories;
[0147] The extraction module is used to analyze user travel big data and extract the targets that users pay attention to during their travels.
[0148] The prediction module is used to predict the total number of POIs that the user wants to include in the trip, the number of entertainment POIs, the probability of the user selecting a certain POI subcategory, the probability of the user paying attention to the target of interest, and the probability of the user's preference for the fine-grained attribute preference of the target of interest under a certain POI subcategory, based on the current travel data of the user who is about to travel, the Ci prediction model, the Ti prediction model, the Wi prediction model, and the Di prediction model.
[0149] The first filtering module is used to filter POIs based on preference probability and interest target to obtain a candidate POI dataset;
[0150] The design module is used to design the initialization process;
[0151] The crossover and mutation module is used to optimize the initial journey based on the candidate POI dataset, the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, and the probability of a user paying attention to a target of interest. Through crossover and mutation using a genetic algorithm, it obtains several candidate journeys and calculates the fitness values of the initial journeys and the candidate journeys. The fitness values are calculated based on the target of interest.
[0152] The initial itinerary and the itineraries to be selected are combined to form a recommended itinerary to be filtered;
[0153] The second filtering module is used to filter the recommended itineraries based on their fitness values to obtain recommended itineraries;
[0154] The recommendation module is used to obtain the best recommended itinerary for a user's trip based on recommended itineraries and user preference probabilities.
[0155] This application also discloses a terminal device, including a memory and a processor. The memory stores a computer program that can run on the processor. When the processor loads and executes the computer program, it employs a personalized trip recommendation method, system, device, and storage medium.
[0156] The terminal device can be a computer device such as a desktop computer, a laptop computer, or a cloud server. The terminal device includes, but is not limited to, a processor and a memory. For example, the terminal device may also include input / output devices, network access devices, and buses.
[0157] The processor can be a central processing unit (CPU). Of course, depending on the actual use, it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc., and this application does not limit it in this regard.
[0158] The memory can be an internal storage unit of the terminal device, such as a hard disk or RAM of the terminal device, or an external storage device of the terminal device, such as a plug-in hard disk, smart memory card (SMC), secure digital card (SD), or flash memory card (FC) equipped on the terminal device. Furthermore, the memory can be a combination of internal storage units and external storage devices of the terminal device. The memory is used to store computer programs and other programs and data required by the terminal device. The memory can also be used to temporarily store data that has been output or will be output. This application does not limit this.
[0159] In this terminal device, a personalized itinerary recommendation method, system, device and storage medium from the above embodiments are stored in the memory of the terminal device and loaded and executed on the processor of the terminal device for convenient use.
[0160] This application also discloses a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it employs a personalized trip recommendation method, system, device, and storage medium as described in the above embodiments.
[0161] The computer program can be stored in a computer-readable medium. The computer program includes computer program code, which can be in the form of source code, object code, executable file, or certain middleware. The computer-readable medium includes any entity or device capable of carrying computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the computer-readable medium includes, but is not limited to, the above-mentioned components.
[0162] The personalized trip recommendation method, system, device and storage medium of the above embodiments are stored in the computer-readable storage medium and loaded and executed on the processor to facilitate the storage and application of the above method.
[0163] Those skilled in the art should understand that the discussion of any of the above embodiments is merely exemplary and is not intended to imply that the scope of protection of this application is limited to these examples; under the concept of this application, the technical features of the above embodiments or different embodiments can also be combined, the steps can be implemented in any order, and there are many other variations of different aspects of one or more embodiments of this application as described above, which are not provided in detail for the sake of brevity.
[0164] One or more embodiments in this application are intended to cover all such substitutions, modifications, and variations that fall within the broad scope of this application. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of one or more embodiments in this application should be included within the protection scope of this application.
Claims
1. A personalized itinerary recommendation method, characterized in that, include: Acquire user travel big data, travel data of users currently waiting to travel, several POIs and POI data corresponding to each POI; Classify several POIs to obtain detailed POI categories; The user travel big data is analyzed to extract the targets that users pay attention to when traveling; Based on the travel data of the current users who are about to travel, the Ci prediction model, the Ti prediction model, the Wi prediction model, and the Di prediction model, the total number of POIs, the number of entertainment POIs, the probability of the user selecting a certain POI subcategory, the probability of the user paying attention to the target of interest, and the probability of the user's preference for the fine-grained attribute preference of the target of interest under a certain POI subcategory are predicted. Based on the preference probability and the focus target, POIs are individually eliminated or retained to obtain a candidate POI dataset; Design the initialization process; Based on the candidate POI dataset, the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, and the probability of a user paying attention to the target of interest, the initial journey is optimized through crossover and mutation using a genetic algorithm to obtain several journeys to be selected. The fitness values of the initial journey and the journeys to be selected are calculated, and the fitness values are obtained through the target of interest. The initialization trip and the trip to be selected constitute the recommended trip to be screened; The recommended itineraries are filtered based on the fitness values to obtain the recommended itineraries; The optimal recommended itinerary for the user's trip is obtained based on the recommended itinerary and the preference probability. The step of predicting the total number of POIs, the number of entertainment POIs, the probability of the user selecting a specific POI category, the probability of the user paying attention to the target of interest, and the probability of the user's preference for fine-grained attributes of the target of interest under a specific POI category, based on the current travel data of the user to be traveling and the Ci prediction model, Ti prediction model, Wi prediction model, and Di prediction model, includes: Based on the travel data of the current users who are about to travel, obtain the historical behavior data and basic user data of the current users who are about to travel; The historical behavior data and user basic data are input into the Ci prediction model to predict the total number of POIs and the number of entertainment POIs that the user wants to include in the trip. The historical behavior data and user basic data are input into the Ti prediction model to predict the probability that a user will select a certain POI refinement category. The historical behavior data and user basic data are input into the Wi prediction model to predict the probability of the user's attention to the target of interest. The historical behavior data and user base data are input into the Di prediction model to predict the probability of a user's preference for fine-grained attributes of the target of interest under a specific POI category. The design initialization process includes: Get the initial population size; Based on the total number of POIs, the initial population size, the refined POI categories, and the candidate POI dataset, n initialization processes are randomly generated, where n is the initial population size.
2. The personalized itinerary recommendation method as described in claim 1, characterized in that, The POI data includes basic attribute data and other attribute data, including grid attribute data, road network attribute data closest to a POI, popularity data, traffic accessibility data, POI detailed category data, and POI cost data.
3. The personalized itinerary recommendation method as described in claim 1, characterized in that, The focus areas include accessibility, regional vitality, popularity, consumption range, travel distance, and POI category preferences.
4. The personalized itinerary recommendation method as described in claim 1, characterized in that, The process of personalized elimination and retention of POIs based on the preference probability and the target of interest to obtain the candidate POI dataset includes: Construct an expected scoring formula based on user preference probability and the stated focus target; The expected score formula is as follows: ; Among them, w1, w2, w3 and w4 are weights, p_score is popularity, traf_score is transportation accessibility score, t_score is POI detailed category preference score and c_score is consumption range score; Each POI is scored according to the expected scoring formula to obtain the scoring result; Based on the scoring results, POIs are individually eliminated or retained to obtain a candidate POI dataset.
5. The personalized itinerary recommendation method as described in claim 1, characterized in that, The step of filtering the recommended trips based on the fitness value to obtain the recommended trips includes: Based on the fitness value, the recommended trips to be screened are sorted in a non-dominated manner, and the top m recommended trips to be screened are selected as recommended trips. Calculate the spatial distance between the recommended route and the preset reference point; The recommended itinerary is associated with the nearest reference point based on the spatial distance to obtain the number of associations for each reference point, and a recommended itinerary is obtained by filtering from the recommended itineraries based on the number of associations.
6. A trip recommendation system, characterized in that, include: The acquisition module is used to acquire user travel big data, travel data of users currently waiting to travel, several POIs and POI data corresponding to the POIs; The classification module is used to classify several POIs to obtain detailed POI categories; The extraction module is used to analyze the user travel big data and extract the user's focus during travel; The prediction module is used to predict, based on the travel data of the user who is about to travel, the Ci prediction model, the Ti prediction model, the Wi prediction model, and the Di prediction model, the total number of POIs that the user wants to include in the trip, the number of entertainment POIs, the probability of the user selecting a certain POI subcategory, the probability of the user paying attention to the target of interest, and the probability of the user's preference for the fine-grained attribute preference of the target of interest under a certain POI subcategory. The first filtering module is used to filter POIs based on the preference probability and the target of interest to obtain a candidate POI dataset; The design module is used to design the initialization process; The crossover and mutation module is used to optimize the initial journey through crossover and mutation using a genetic algorithm based on the candidate POI dataset, the total number of POIs, the number of entertainment POIs, the probability of a user selecting a specific POI category, and the probability of a user paying attention to the target of interest. This results in several candidate journeys, and the fitness values of the initial journeys and the candidate journeys are calculated. The fitness values are obtained through the target of interest. The initialization trip and the trip to be selected constitute the recommended trip to be screened; The second filtering module is used to filter the recommended itineraries to be filtered based on the fitness value to obtain the recommended itineraries; The recommendation module is used to obtain the best recommended itinerary for the user's trip based on the recommended itinerary and the user preference probability; The step of predicting the total number of POIs, the number of entertainment POIs, the probability of the user selecting a specific POI category, the probability of the user paying attention to the target of interest, and the probability of the user's preference for fine-grained attributes of the target of interest under a specific POI category, based on the current travel data of the user to be traveling and the Ci prediction model, Ti prediction model, Wi prediction model, and Di prediction model, includes: Based on the travel data of the current users who are about to travel, obtain the historical behavior data and basic user data of the current users who are about to travel; The historical behavior data and user basic data are input into the Ci prediction model to predict the total number of POIs and the number of entertainment POIs that the user wants to include in the trip. The historical behavior data and user basic data are input into the Ti prediction model to predict the probability that a user will select a certain POI refinement category. The historical behavior data and user basic data are input into the Wi prediction model to predict the probability of the user's attention to the target of interest. The historical behavior data and user base data are input into the Di prediction model to predict the probability of a user's preference for fine-grained attributes of the target of interest under a specific POI category. The design initialization process includes: Get the initial population size; Based on the total number of POIs, the initial population size, the refined POI categories, and the candidate POI dataset, n initialization processes are randomly generated, where n is the initial population size.
7. A terminal device, comprising a memory and a processor, characterized in that, The memory stores a computer program that can run on a processor, and the processor loads and executes the computer program using the recommended method as described in any one of claims 1 to 5.
8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is loaded and executed by the processor, the recommended method as described in any one of claims 1 to 5 is used.
Citation Information
Patent Citations
Construction method and device of recommendation system
CN111143685A
Transition regularized matrix factorization for sequential recommendation
US20210263939A1