Travel recommendation route generation method and travel recommendation route display method
By using historical travel records in map applications to recommend waypoints, and generating recommended travel routes that include suggested stop times and route order for each waypoint, the efficiency problem for users when choosing waypoints is solved, and travel options that better suit user preferences are provided.
Patent Information
- Application Number
- CN202411273691.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-11
- Publication Date
- 2026-03-13
AI Technical Summary
Existing route planning methods rely on users manually inputting waypoints. This is especially problematic for travel modes with a wide range of waypoint options, such as sightseeing. As a result, users spend a lot of time choosing waypoints, which affects the overall efficiency of the travel route.
By enabling the recommendation function in the map application, the initial route is planned based on the user's origin and destination points and marked points of interest. Recommended points are determined using the user's historical travel records, and users are allowed to select waypoints from points of interest and recommended points. The system combines historical travel records to generate a recommended travel route that includes suggested stay times and route order for waypoints.
It simplifies the process of users selecting waypoints, generates more user-friendly travel recommendations, and improves the efficiency and accuracy of travel route planning.
Smart Images

Figure CN121655552A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, computer device, storage medium, and computer program product for generating recommended travel routes. Background Technology
[0002] With the rapid development of smart mobility technology, people's travel has become increasingly convenient. Commonly used navigation map applications offer route planning functionality. These applications can plan multiple routes based on the user's input of the starting point, waypoints, and destination, allowing the user to choose the best option.
[0003] However, current route planning methods rely on user input for each waypoint. For travel modes with a wide range of waypoints, such as sightseeing, users need to spend a lot of time searching for and determining waypoints, which affects the overall efficiency of users planning their travel routes. Summary of the Invention
[0004] Therefore, it is necessary to provide a method, apparatus, computer device, computer-readable storage medium, and computer program product capable of generating travel recommendation routes, as well as a method, apparatus, computer device, storage medium, and computer program product for displaying travel recommendation routes, in order to address the aforementioned technical problems.
[0005] Firstly, this application provides a method for generating recommended travel routes. The method includes:
[0006] If the map application logged into by the target object has the recommendation function enabled, an initial route is planned based on the target object's origin and destination points and points of interest marked and selected from the map;
[0007] Based on the target object's historical travel records, at least one recommended point matching the initial route is determined;
[0008] Determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points;
[0009] Based on the historical travel records and each of the aforementioned waypoints, route planning is performed to generate a recommended travel route that includes suggested dwell time and route order for each of the aforementioned waypoints.
[0010] Secondly, this application also provides a travel recommendation route generation device. The device includes:
[0011] The first planning module is used to plan an initial route based on the target's origin and destination points and points of interest marked and selected from the map, when the map application logged into by the target has the recommendation function enabled.
[0012] The recommended point determination module is used to determine at least one recommended point that matches the initial route based on the target object's historical travel records;
[0013] The waypoint determination module is used to determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points;
[0014] The second planning module is used to perform route planning based on the historical travel records and each of the waypoints, and generate a recommended travel route that includes the suggested stay time and route order of each waypoint.
[0015] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0016] If the map application logged into by the target object has the recommendation function enabled, an initial route is planned based on the target object's origin and destination points and points of interest marked and selected from the map;
[0017] Based on the target object's historical travel records, at least one recommended point matching the initial route is determined;
[0018] Determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points;
[0019] Based on the historical travel records and each of the aforementioned waypoints, route planning is performed to generate a recommended travel route that includes suggested dwell time and route order for each of the aforementioned waypoints.
[0020] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:
[0021] If the map application logged into by the target object has the recommendation function enabled, an initial route is planned based on the target object's origin and destination points and points of interest marked and selected from the map;
[0022] Based on the target object's historical travel records, at least one recommended point matching the initial route is determined;
[0023] Determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points;
[0024] Based on the historical travel records and each of the aforementioned waypoints, route planning is performed to generate a recommended travel route that includes suggested dwell time and route order for each of the aforementioned waypoints.
[0025] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:
[0026] If the map application logged into by the target object has the recommendation function enabled, an initial route is planned based on the target object's origin and destination points and points of interest marked and selected from the map;
[0027] Based on the target object's historical travel records, at least one recommended point matching the initial route is determined;
[0028] Determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points;
[0029] Based on the historical travel records and each of the aforementioned waypoints, route planning is performed to generate a recommended travel route that includes suggested dwell time and route order for each of the aforementioned waypoints.
[0030] Sixthly, this application provides a method for displaying recommended travel routes. The method includes:
[0031] In map applications, the start and end points of rows and points of interest marked on the map are displayed;
[0032] When the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, the map application displays at least one recommended point that matches the initial route, which is a route that connects the trip origin and destination and at least one point of interest.
[0033] Using each of the points of interest and each of the recommended points as candidate points, in response to a waypoint selection operation triggered for the candidate points, a recommended route is displayed on the map;
[0034] The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
[0035] Seventhly, this application also provides a travel recommendation route display device. The device includes:
[0036] The Points of Interest (POI) display module is used in map applications to display the start and end points of rows and points of interest marked on the map.
[0037] The recommended point display module is configured to, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, display at least one recommended point matching an initial route in the map application when the recommendation function in the map application is enabled. The initial route is a route that connects the trip origin and destination and at least one point of interest.
[0038] The travel recommendation route display module is used to display the travel recommendation route on the map in response to a waypoint selection operation triggered for the candidate points, using each of the points of interest and each of the recommended points as candidate points.
[0039] The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
[0040] Eighthly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0041] In map applications, the start and end points of rows and points of interest marked on the map are displayed;
[0042] When the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, the map application displays at least one recommended point that matches the initial route, which is a route that connects the trip origin and destination and at least one point of interest.
[0043] Using each of the points of interest and each of the recommended points as candidate points, in response to a waypoint selection operation triggered for the candidate points, a recommended route is displayed on the map;
[0044] The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
[0045] Ninthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:
[0046] In map applications, the start and end points of rows and points of interest marked on the map are displayed;
[0047] When the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, the map application displays at least one recommended point that matches the initial route, which is a route that connects the trip origin and destination and at least one point of interest.
[0048] Using each of the points of interest and each of the recommended points as candidate points, in response to a waypoint selection operation triggered for the candidate points, a recommended route is displayed on the map;
[0049] The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
[0050] Tenthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:
[0051] In map applications, the start and end points of rows and points of interest marked on the map are displayed;
[0052] When the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, the map application displays at least one recommended point that matches the initial route, which is a route that connects the trip origin and destination and at least one point of interest.
[0053] Using each of the points of interest and each of the recommended points as candidate points, in response to a waypoint selection operation triggered for the candidate points, a recommended route is displayed on the map;
[0054] The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
[0055] The aforementioned method, apparatus, computer equipment, storage medium, and computer program product for generating recommended travel routes, when the map application logged into by the target user has its recommendation function enabled, perform preliminary route planning based on the target user's origin and destination points and points of interest marked and selected from the map, resulting in an initial route that meets the target user's initial travel plan. Then, based on the target user's historical travel records, at least one recommended point matching the initial route is determined for the target user to choose from, ensuring that the recommended point matches the target user's preferences and the initial travel plan. At least one waypoint is determined from each point of interest and each recommended point. Based on the recommended points of interest, the target user is allowed to reselect and confirm the waypoint. Route planning is performed based on historical travel records and each waypoint, generating a recommended travel route that includes suggested dwell time and route order for each waypoint. By actively providing the target user with recommended points matching the travel plan to filter waypoints, the process of the target user finding and confirming waypoints can be simplified. Combining the target user's historical travel records for route planning can fully consider the target user's travel preferences and habits, resulting in a recommended travel route that better suits the target user's preferences.
[0056] The aforementioned method, apparatus, computer device, storage medium, and computer program product for displaying recommended travel routes, by displaying the origin and destination points and points of interest marked on the map in a map application, and when the recommendation function in the map application is enabled, responding to a route calculation operation triggered for the origin and destination points and at least one selected point of interest, displaying at least one recommended point matching the initial route in the map application, wherein the initial route is a route connecting the origin and destination points and at least one point of interest, can proactively push recommended points to the target object based on the origin and destination points and points of interest, simplifying the process for the target object to find and determine waypoints, using each point of interest and each recommended point as candidate points, responding to a waypoint selection operation triggered for the candidate points, displaying a recommended travel route on the map including the origin and destination points, the route sequence of each waypoint, and the suggested stay time, and can quickly generate a recommended travel route that matches the target object's preferences based on the target object's selection of waypoints. Attached Figure Description
[0057] Figure 1 This is a diagram illustrating the application environment of a travel recommendation route generation method in one embodiment.
[0058] Figure 2 This is a flowchart illustrating a method for generating recommended travel routes in one embodiment;
[0059] Figure 3 This is an interactive diagram illustrating the travel record data processing procedure in one embodiment;
[0060] Figure 4This is an interactive diagram of a travel recommendation route generation method in one embodiment;
[0061] Figure 5 This is a flowchart illustrating the synchronization process of points of interest in one embodiment;
[0062] Figure 6 This is a flowchart illustrating a method for displaying recommended travel routes in one embodiment;
[0063] Figure 7 This is a diagram of the point-of-interest display page for a travel recommendation route display method in one embodiment;
[0064] Figure 8 This is a schematic diagram illustrating the recommended points of a travel recommendation route generation method in one embodiment;
[0065] Figure 9 This is a schematic diagram of the settings page for the recommendation function and the order optimization function in one embodiment;
[0066] Figure 10 This is a schematic diagram illustrating the changes in the operation page for adjusting the order of waypoints in one embodiment.
[0067] Figure 11 This is a structural block diagram of a travel recommendation route generation device in one embodiment;
[0068] Figure 12 This is a structural block diagram of a travel recommendation route display device in one embodiment;
[0069] Figure 13 This is an internal structural diagram of a computer device in one embodiment;
[0070] Figure 14 This is a diagram of the internal structure of a computer device in another embodiment. Detailed Implementation
[0071] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0072] The travel recommendation route generation method and travel recommendation route display method provided in this application embodiment can be applied to, for example, Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104, or it can be located in the cloud or on another server.
[0073] In some embodiments, from the perspective of server 104, when a target object logs into a map application on terminal 102 and the map application has its recommendation function enabled, server 104 obtains the target object's origin and destination points and points of interest marked and selected on the map from terminal 102, and plans an initial route based on the origin and destination points and the selected points of interest. After generating the planned initial route, server 104 determines at least one recommended point that matches the initial route based on the target object's historical travel records and sends it to terminal 102. Terminal 102 displays to the target object at least one waypoint that the target object can select from the points of interest and the recommended points. Terminal 102 sends the waypoint selected by the target object to server 104. Server 104 performs route planning based on historical travel records and the waypoints, generating a recommended travel route that includes suggested stay times and route order for each waypoint.
[0074] In some other embodiments, from the perspective of terminal 102, the map application of terminal 102 displays the start and end points of the trip and points of interest marked on the map. When the recommendation function in the map application is enabled, terminal 102, in response to a route calculation operation triggered for the start and end points of the trip and at least one selected point of interest, sends a route calculation request carrying the start and end points of the trip and the selected point of interest to server 104, so that server 104 plans an initial route and determines at least one recommended point matching the initial route and sends it to terminal 102. In the map application of terminal 102, at least one recommended point matching the initial route is displayed. With each point of interest and each recommended point as candidate points, in response to a waypoint selection operation triggered by the target object for the candidate points, a recommended travel route with the start and end points of the trip, the route sequence of each waypoint, and the suggested stay time is displayed on the map.
[0075] The terminal 102 can be, but is not limited to, various desktop computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle systems. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.
[0076] In practical applications, the aforementioned methods for generating and displaying recommended travel routes can be applied to specific travel scenarios. The target audience's points of interest can be points saved in a map application. During travel planning, the terminal's map application and its server can utilize historical trajectories and saved point information to create personalized route plans. It's understood that this travel planning solution is not limited to tourism scenarios; it can be expanded and applied in other fields and scenarios.
[0077] In some embodiments, personalized route planning schemes can be applied to non-motorized travel scenarios such as walking and cycling. Choosing the optimal route is crucial for pedestrians and cyclists. By analyzing the target user's historical trajectories and saved points, the server can understand the target user's travel habits and preferences, providing them with the best walking or cycling routes. The target user can better plan their travel routes, avoid congested areas, and choose safer and more convenient paths.
[0078] In some embodiments, personalized route planning schemes can be applied in public transportation travel scenarios. For users of public transportation, choosing the optimal route and transfer options is crucial. By analyzing the user's historical travel history and saved travel points, the server can understand the user's travel preferences and frequently used bus routes, providing them with the best routes and transfer options. Users can more easily plan their public transportation trips, reducing waiting time and the number of transfers.
[0079] In some embodiments, personalized route planning schemes can be applied in the logistics and delivery sectors. For the logistics and delivery industry, selecting the optimal delivery routes and sequences is crucial. By analyzing historical tracks and saved location information, servers can understand delivery demand and traffic conditions at different locations, providing logistics and delivery personnel with the best delivery routes and sequences. This improves delivery efficiency and reduces time and costs.
[0080] In some embodiments, personalized route planning schemes can be applied in urban planning and traffic management. By analyzing the historical trajectories and saved points of a large number of target objects, the server can understand the travel demand and traffic conditions in different areas of the city. This information can provide important references for urban planners and traffic management departments, helping them optimize traffic flow, improve road planning, and enhance the urban travel experience.
[0081] To facilitate the explanation of the solution in this application, the following embodiments use route planning in a tourism scenario as an example. When planning their travels, the target audience often prefers independent travel, thus requiring them to conduct extensive travel research and planning. However, current online travel platforms only provide a broad framework for self-guided itinerary planning, and the content often fails to adapt to the preferences of different target audiences. Furthermore, target audiences frequently need to conduct further research and detailed travel planning, which can be inconvenient.
[0082] To address the above problems, a method for generating recommended travel routes is provided. In one embodiment, such as... Figure 2 As shown, this method is applied to Figure 1Taking the server in the example, the following steps are included:
[0083] Step 202: If the map application logged in by the target object has the recommendation function enabled, plan the initial route based on the target object's travel origin and destination and the points of interest marked and selected from the map;
[0084] The target audience consists of users who log into the map application on their devices. The map application is an electronic map application installed on the device, which allows the target audience to navigate and view map information.
[0085] Map applications often include a recommendation feature that suggests suitable locations to a target user for them to choose from as stops on their travel itinerary. This recommendation feature has two states: on and off. In some embodiments, the recommendation feature is equipped with a toggle control, allowing the target user to control whether or not to enable the recommendation feature.
[0086] The origin and destination of a trip include the starting point and the ending point. The starting point and ending point can be the same location; for example, if the target starts from home and returns home, the planned route includes both the outbound and return journeys. Alternatively, the starting point and ending point can be different locations; for example, if the target is currently in city A and ultimately needs to reach city B, and will stay in city B for some time to handle other matters, the planned route only includes a one-way trip.
[0087] The origin and departure point is the starting point determined by the target user through the electronic map application on their terminal. The server obtains the origin and departure point from the terminal. The origin and departure point can be the current location obtained by the electronic map application through location services, or it can be the starting point entered or selected by the target user through terminal operations. For example, it could be the location corresponding to the name of the origin and departure point entered by the target user in the origin and departure point information input field of the electronic map application, or the location determined by selecting a point on the map in the origin and departure point determination interface of the electronic map application, or a location selected from the preset frequently used locations displayed in the origin and departure point determination interface of the electronic map application.
[0088] The destination can be the final location entered by the target user in the electronic map application's display interface on the terminal. The server retrieves the destination from the terminal, which can be the location entered or selected by the target user through terminal operations. For example, the destination can be the name of the destination entered in the destination information input field of the electronic map application, such as a certain neighborhood, or the location determined by selecting a point on the map in the destination determination interface of the electronic map application, or a location selected from the preset frequently used locations displayed in the destination determination interface of the electronic map application.
[0089] Points of interest (POIs) are locations marked by a target object in a map application. Examples include points saved in a map application, or locations marked with specific symbols. For ease of explanation, subsequent embodiments will use points saved in a map application as POIs.
[0090] The target object can mark a large number of points of interest (POIs) on the map. When planning a route, one or more POIs can be selected from these POIs as the destination for the trip. The POIs marked and selected on the map represent at least a subset of the POIs selected by the target object from the marked POIs.
[0091] The initial route is a route planned using the target object's origin and destination points and selected points of interest as path nodes. There can be one, two, or more initial routes, depending on the actual road conditions and the target object's configuration parameters. For example, if there are multiple roads connecting points A and B, there can be multiple initial routes between A and B; if there is only one road between A and B, there can be only one initial route. The initial route planning can be based on at least one of the shortest path recommendation algorithm or the fastest path recommendation algorithm.
[0092] Specifically, shortest path recommendation typically refers to algorithms that find the shortest path between two nodes. Shortest path recommendation algorithms include Dijkstra's algorithm, Bellman-Ford's algorithm, Floyd-Warshall's algorithm, and Algorithm A. Dijkstra's algorithm is used to find the single-source shortest path in a weighted directed graph. It finds the shortest path by progressively expanding the path until the target node is reached. Bellman-Ford's algorithm is also used to find the single-source shortest path in a weighted directed graph. Unlike Dijkstra's algorithm, Bellman-Ford can handle negative weight edges, but its time complexity is higher. Floyd-Warshall's algorithm is used to find the shortest path between all nodes in a weighted directed graph. It computes the shortest path between all nodes using dynamic programming. Algorithm A is a heuristic search algorithm used to find the shortest path between two nodes in a weighted graph. It guides the search process by estimating the cost from the starting node to the target node, thereby reducing the time and space overhead of the search.
[0093] Fastest path recommendation typically refers to algorithms that find the fastest path between two nodes. The fastest path can vary depending on its definition, such as shortest time or minimum traffic cost. Fastest path algorithms can be implemented by combining one or more of Dijkstra's algorithm, A* algorithm, preprocessing techniques, and real-time traffic data. Dijkstra's algorithm is commonly used to find the shortest path, but it can also be used to find the fastest path. In a weighted graph, the weights can be interpreted as time or cost, and Dijkstra's algorithm can be used to find the path with the minimum time or minimum cost. A* algorithm can be used for both shortest and fastest paths. By using a heuristic function to estimate the cost from the starting node to the destination node, the A* algorithm can find the fastest path in a weighted graph. To speed up the calculation of the fastest path, preprocessing techniques can be used. For example, a multi-source shortest path algorithm (such as the Floyd-Warshall algorithm) can be used to pre-calculate the shortest path between all nodes, and then, during the actual query, the fastest path is selected according to the definition of the weights. For fastest path recommendations that need to consider traffic conditions, real-time traffic data can be used to adjust the path. By obtaining real-time traffic information, one can avoid congested areas and choose faster routes.
[0094] In one embodiment, in response to a target object confirming its travel origin and destination in a map application and selecting at least a subset of marked points of interest (POIs) to trigger a route calculation operation, the terminal further determines the activation status of the map application's recommendation function. If the map application's recommendation function is activated, the terminal sends a route calculation request to the server, carrying the travel origin and destination and the selected at least one POI. The server receives the route calculation request and plans an initial route based on the target object's travel origin and destination and the marked and selected POIs on the map. After acquiring a large number of the target object's historical travel records and POIs, the server calculates the optimal route to these POIs based on the historical travel records.
[0095] Step 204: Based on the target object's historical travel records, determine at least one recommended point that matches the initial route.
[0096] Historical travel records refer to data retrieved from travel record data stored in a database. The database is used to record and store travel record data for the travel target. Travel record data includes the origin, transit points, and destination of each trip, the type of each stop, the duration of each stop, the mode of transportation, scenery along the route, travel time, and speed. For example, the target travels from city A to city B: Origin: City A; Destination: City B; Departure time: January 1, 2024, 08:10:05; Arrival time: January 1, 2020, 18:30:25; Mode of transportation: Driving; Route: City A (home) - Attraction X (2 hours) - Restaurant K (1 hour) - Attraction Z (2 hours) - Coffee Shop Y (1 hour) - City B (hotel).
[0097] By analyzing the target's historical travel records, we can understand the target's travel preferences and interests. For example, by analyzing the target's historical travel records, the server can understand the places the target frequently visits, the modes of transportation they commonly use, their preferred travel times, and the attractions, restaurants, or shopping centers they like, which provides a basis for subsequent personalized route calculation.
[0098] Furthermore, after determining the initial route, the server can determine the rough direction of this trip. Based on the initial route, the server can expand along the way and in the surrounding area, and filter out other locations that the target may be interested in as recommended points.
[0099] Specifically, the server can analyze the target user's travel preference characteristics based on their frequently visited locations, common modes of transportation, travel time preferences, and favorite attractions, restaurants, or shopping centers. It then selects locations matching these preferences as recommended points. For example, the server can determine potential locations along the initial route and in the surrounding area based on factors such as current location, historical traffic conditions, and optimal travel time. Then, it performs feature matching based on at least one evaluation method for each potential location—star rating, score, text rating, and image review—again, matching the target user's travel preference characteristics. Locations meeting the matching criteria are then recommended. Through this process, the server can recommend more worthwhile destinations, providing the target user with optimal route planning.
[0100] Step 206: Determine at least one waypoint selected by the target object from each point of interest and each recommended point.
[0101] like Figure 4 As shown, after determining the recommended points, the server will push them to the terminal and display them in the terminal's map application so that the target can see the points of interest they have marked and the recommended points pushed by the server. The target can then make a secondary selection of the travel route points based on the points of interest and the recommended points, and select at least one location from each point of interest and each recommended point as the travel route point.
[0102] In an optional embodiment, in response to the target object selecting at least one waypoint from each point of interest and each recommended point, the terminal sends the selected waypoint to the server so that the server can determine the location the target object wants to go to and plan a travel route accordingly.
[0103] In specific application scenarios, such as map applications, points of interest (POIs) and recommended points can be displayed in a row. POIs can carry labels, and recommended points can carry recommendation labels, allowing users to understand which candidate points they have marked and which are automatically recommended, avoiding confusion. In other specific applications, POIs selected by the user before initial route planning can remain selected, while recommended points pushed after initial route planning can be unselected. If the user confirms adding a recommended point as a waypoint, the selected recommended point will switch from unselected to selected. This approach simplifies the user experience by allowing them to add recommended points directly without changing their existing POIs, without needing to add additional recommended points.
[0104] Furthermore, by allowing the target audience to select at least one waypoint from various points of interest and recommended points, the target audience can also reconsider whether to replace the initially selected point of interest. This allows the target audience to easily deselect the point of interest and make a second selection of the waypoint through a simple operation.
[0105] In some embodiments, each point of interest and each recommended point can be displayed in a recommendation list or highlighted directly on a map. The terminal can respond to the target object's triggering operation of the recommended point in the recommendation list or on the map, and display the detailed information of the recommended point so that the target object can confirm whether to select the recommended point as a waypoint based on the detailed information.
[0106] Step 208: Based on historical travel records and each waypoint, perform route planning to generate a recommended travel route that includes suggested stop times for each waypoint and the order of passage.
[0107] Based on historical travel records and various points of interest along the way, the server can calculate the optimal route based on historical road conditions and the best time to visit these points. By analyzing historical road condition data, the server can understand traffic congestion at different times and provide the best route to avoid peak hours based on the road condition information.
[0108] For example, during travel, the server can determine the suggested dwell time at each stop along the way and the order of stops based on the user's travel time and traffic conditions. This generates and recommends the best travel route to the target user, enabling them to better plan their time and itinerary. Route planning based on historical travel records can provide customized route planning according to the user's individual needs and preferences. By utilizing a large amount of historical trajectory data and historical stop points, the server can better understand the user's travel habits and interests during the route planning process, thus generating more personalized and optimized travel recommendations.
[0109] In some embodiments, the server can determine the constraints of route planning based on the tour characteristics of the waypoints and the travel preference features extracted from historical travel records. Based on the constraints, the server can plan the route for the origin, destination and waypoints. During the route planning process, the server needs to simultaneously consider the travel time between different locations and the dwell time at each location, and connect the various locations to obtain the recommended travel route to be pushed to the target.
[0110] The aforementioned method for generating recommended travel routes, when the map application logged into by the target user has its recommendation function enabled, performs preliminary route planning based on the target user's origin and destination points and points of interest marked and selected on the map. This yields an initial route that meets the target user's initial travel plan. Then, based on the target user's historical travel records, at least one recommended point matching the initial route is identified for the target user to choose from. This ensures that the recommended points align with the target user's preferences and match the initial travel plan. At least one waypoint is then selected by the target user from each point of interest and each recommended point. Based on the recommended points of interest, the target user is allowed to reselect and confirm the waypoint. Route planning is then performed based on historical travel records and each waypoint, generating a recommended travel route that includes suggested dwell times and route order for each waypoint. By proactively providing the target user with recommended points matching their travel plan to filter waypoints, the process of finding and confirming waypoints is simplified. Combining the target user's historical travel records with route planning fully considers their travel preferences and habits, resulting in a recommended travel route that better suits their preferences.
[0111] In one embodiment, based on the target object's historical travel records, at least one recommended point matching the initial route is determined, including:
[0112] Based on the historical route points in the target's historical travel records, determine the target's historical location preference characteristics; from the recommendation set matched by the initial route, select at least one recommended point that matches the historical location preference characteristics.
[0113] Historical stop points refer to locations identified in the target object's historical travel records where the dwell time exceeds a preset duration and the number of visitors to that location in the map application reaches a threshold. The server can filter and select historical stop points in the target object's historical travel records based on the duration and visitor thresholds to obtain the target object's historical stop points, such as a scenic spot, a coffee shop, or a restaurant. This allows the server to extract the target object's historical location preference features based on the characteristics of each historical stop point.
[0114] For example, if a target user has saved multiple coffee shops, the server can recommend newly opened coffee shops, those with recent promotions, or those with high user reviews from among the coffee shops matched by the initial route. As another example, if the target user has saved multiple coffee shops with pleasant environments and atmospheres, the server can recommend those coffee shops with better environments and atmospheres from among the coffee shops matched by the initial route.
[0115] The recommended set matched by the initial route is a collection of accessible locations extracted along the initial route and its extended range. These accessible locations are places with historical visit records.
[0116] The server extracts historical location preference features of the target object based on the characteristics of each historical waypoint. These features can be multi-dimensional. For example, the server can classify historical waypoints according to their attributes, and extract historical location preference features corresponding to each category. Based on these different dimensions of historical location preference features, the server can filter at least one recommended point from the initial route's matched recommendation set that matches that dimension of historical location preference features, thereby improving the comprehensiveness of the recommendation results.
[0117] In this embodiment, the server can determine the historical location preference characteristics of the target object based on the historical waypoints in the target object's historical travel records, determine the characteristics of the waypoints that the target object is interested in, and then filter at least one recommended point that matches the historical location preference characteristics from the recommended set matched by the initial route, so that the selected recommended point can match the target object's preferences and improve the recommendation success rate of the recommended point.
[0118] In one embodiment, the method for generating recommended travel routes further includes: determining the current location preference features of the target object based on points of interest;
[0119] From the set of recommendations matched by the initial route, at least one recommended point that matches the historical location preference characteristics is selected, including:
[0120] From the set of recommendations matched by the initial route, at least one recommended point that matches both historical location preference characteristics and current location preference characteristics is selected.
[0121] Among them, the point of interest is the location currently selected by the target object, representing the type of preference the target object is currently interested in. For example... Figure 5 As shown, the terminal can synchronize the points of interest (POIs) marked by the target object to the POI service on the server. The POI service on the server can generate location preference features for each POI by analyzing the POIs. After the target object selects at least some POIs on the terminal, the server can classify and fuse the location preference features of the selected POIs, thereby quickly obtaining the target object's current location preference features.
[0122] Therefore, when filtering recommendation points, the server can combine historical preferences and current preferences to improve the matching degree between the filtered recommendation points and the target audience's interests, making the filtered recommendation points more in line with the target audience's current expectations.
[0123] In some embodiments, the server extracts features from the points of interest selected by the target object to obtain the target object's current location preference features. The server can extract features for each point of interest individually, or it can categorize the points of interest and then extract features from points of interest within the same category. The extracted features are the features of the locations the target object is interested in, i.e., the current location preference features.
[0124] In one embodiment, if the number of points of interest selected by the target object is greater than a set threshold, the target object's current location preference features are determined based on the points of interest, including: grouping the points of interest according to at least one of the location information and category information of each point of interest to obtain a group of points of interest; and determining the target object's current location preference features based on the group of points of interest.
[0125] In map applications, each point of interest (POI) has specific location information, services offered, and user reviews. When the number of POIs selected by the target user exceeds a set threshold, the server can group the POIs according to their location information, category information, or both. The server can then extract features from each POI group to obtain the target user's current location preference features, thus more accurately describing the target user's current location preferences and improving the accuracy of subsequent point-of-interest matching.
[0126] Furthermore, after extracting the target object's historical and current location preference features, the server can filter out at least one recommended point from the initial route's matched recommendation set through feature matching, ensuring that both historical and current location preference features are met. In the specific matching process, the server can first perform a first round of matching based on the current location preference features to obtain the first round of matching results. Then, based on the first round of matching results, a second round of matching is performed based on the historical location preference features to obtain recommended points that match both historical and current location preference features.
[0127] In this embodiment, the server considers both points of interest and historical travel records, and combines historical location preference features with current location preference features for filtering. This improves the matching degree between the filtered recommended points and the target object's interests, making the filtered recommended points more in line with the target object's current expectations.
[0128] In some embodiments, historical travel records include travel record data for a target object obtained from stored data. The method further includes:
[0129] During the target's journey, the received location signals are written into a temporary trajectory file; when the target ends its journey, the location signals in the trajectory file are thinned to obtain travel record data representing the historical travel trajectory, which is then stored.
[0130] The travel record data describes the target user's travel trajectory, which depends on the trajectory generation for each trip. Trajectory generation is a technology that generates possible travel routes based on a user's historical travel data. By analyzing the target user's historical trajectory, we can understand their travel habits and preferences, such as preferred routes, frequently visited locations, and travel times. Then, the server can use this information to generate possible travel routes for the target user, thus providing more personalized route recommendations.
[0131] The trajectory generation process primarily involves receiving positioning signals to record the position of a moving object and saving these location points as a trajectory file. The terminal devices used by map applications are typically equipped with a Global Positioning System (GPS) or other positioning technologies, capable of receiving satellite signals and determining the device's current location. These positioning signals contain information such as longitude, latitude, and altitude. The terminal device records and saves the current location point. Once the terminal device receives a positioning signal, it immediately records the current location information and saves it to internal or external storage. The target object can then view the device's movement trajectory at any time. When the target object completes its journey, the terminal device collects the complete trajectory points. During movement, the device continuously receives positioning signals and records a series of location points, forming a complete trajectory. These location points contain the device's location information at different points in time and can be used for subsequent analysis and applications.
[0132] In order to reduce the size of trajectory files and improve data processing efficiency, such as Figure 3 As shown, a thinning method is used to process and save the trajectory file. Thinning is a technique that reduces data volume by deleting redundant location points. During the thinning process, according to certain rules or algorithms, some location points are selectively retained while other redundant points are deleted. This reduces the burden of data storage and processing while maintaining the basic shape and characteristics of the trajectory. The terminal device uploads the trajectory file saved using the thinning method to a server or cloud for sharing. Server or cloud storage provides a convenient way for users to access and share trajectory data anytime, anywhere. By uploading the trajectory file to a server or cloud, users can share their movement trajectory with others or use the trajectory data for other applications, such as map navigation and location analysis.
[0133] In some embodiments, the thinning algorithm can be the Douglas-Peucker algorithm, also known as the Lamer-Douglas-Peucker algorithm. This algorithm reduces the number of points on a curve by preserving the curve's main shape features while removing negligible details, thus compressing the data. The basic idea of the Douglas-Peucker algorithm is as follows: For a curve composed of points, first determine the first and last points of the curve, which form the baseline. Then, find the point farthest from the baseline. If the distance from this point to the baseline is less than a given threshold, all points between the baselines can be ignored, retaining only the first and last points. If the distance from this point to the baseline is greater than the threshold, the curve is divided into two segments, and the same processing is applied to both segments. This process is repeated until all points have been processed. The thinning algorithm has the advantages of simplicity and efficiency, effectively reducing the amount of data while preserving the curve's main shape features.
[0134] In this embodiment, during the target's travel, the terminal writes the received positioning signal into a temporary trajectory file. When the target ends its trip, the positioning signal in the trajectory file is thinned to obtain travel record data representing the historical travel trajectory, which is then stored. This reduces the burden of data storage and processing while maintaining the basic shape and characteristics of the trajectory, thereby improving data processing efficiency.
[0135] In some embodiments, route planning is performed based on historical travel records and waypoints to generate a recommended travel route that includes suggested stop times and route order for each waypoint, including:
[0136] Based on historical travel records, determine the target audience's historical route preference characteristics for the routes they take;
[0137] Based on historical route preference characteristics and the optimal stay time at each stop, route planning is performed for each stop to generate recommended travel routes that include suggested stay times and route order for each stop.
[0138] The historical travel records include historical stop information for each trip taken by the target individual, as well as route information between each pair of historical stop points. Based on the historical stop information for each trip taken by the target individual, and combined with the average stay time for each stop point, the server can analyze the target individual's stay characteristics at various stop points. For example, for scenic spots or places suitable for taking photos, the target individual's stay time is mostly longer than the average stay time, which indicates that the target individual tends to spend more time at these stop points, such as enjoying the beautiful scenery in nature or spending more time taking photos.
[0139] Besides stops at each stop along the way, those planning a road trip may also place great emphasis on their overall travel experience. For example, some users might prefer scenic routes over the fastest; some might prefer to avoid congested areas, even if it means spending more time; some might be accustomed to a fast-paced travel style and generally choose the shortest route; while others might prioritize affordability and opt for lower-cost routes. By analyzing the route information between every two historical stop points in the target audience's travel history, we can determine their historical route preference characteristics, thereby revealing their priorities during the trip.
[0140] Because different waypoints may have different optimal dwell times—for example, some attractions only offer specific views during certain time periods, some have performances only during certain time periods, and some attractions, shops, or shopping malls are only open during specific hours—the server also needs to consider the optimal dwell time for each waypoint, in addition to fully considering each intermediate route. During route planning, the server performs route planning for each waypoint, based on historical route preference characteristics and the optimal dwell time for each waypoint, generating a recommended travel route that includes suggested dwell times for each waypoint and the order of routes.
[0141] The suggested stay time includes both the duration of the stay and the specific time period. For example, it may suggest that the target audience visit attraction A between 9:00 and 10:00. In some embodiments, a reason for staying during this time period may also be given, such as a performance, so that the target audience understands the reason for the recommendation and can determine whether to adjust their travel plans accordingly.
[0142] Specifically, after the server analyzes and obtains the historical route preference characteristics of the target object, it uses matching with the historical route preference characteristics as the first matching condition, and reaches the optimal stay time of each waypoint as the second matching condition. According to the first and second matching conditions, the server performs route planning and generates a recommended travel route that includes the suggested stay time of each waypoint and the route sequence.
[0143] In this embodiment, the server uses historical route preference features and the optimal stay time at each waypoint as matching conditions to perform route planning for each waypoint and generate a recommended travel route. This ensures that the suggested stay time at each waypoint in the recommended travel route can basically match the optimal stay time at each waypoint, and the route sequence and route of each waypoint can meet the historical route preference features of the target object, thereby improving the effectiveness of the recommended travel route.
[0144] For two nearby waypoints, there must be at least one connecting road segment between them. During the route planning process, the traffic conditions of each connecting road segment need to be considered in order to avoid traffic congestion and improve the travel experience for the target audience.
[0145] In one embodiment, based on satisfying historical route preference characteristics and the optimal dwell time at each waypoint, route planning is performed for each waypoint to generate a recommended travel route that includes suggested dwell times and route order for each waypoint, including:
[0146] Obtain the connecting road segments between every two waypoints, and determine the estimated travel time for each connecting road segment based on the predicted traffic conditions of the connecting road segments;
[0147] Based on historical route preference characteristics and the optimal dwell time at each waypoint, route planning is performed on each waypoint according to the estimated travel time of each connecting road segment, the suggested dwell time at each waypoint is determined, and the total travel time of the recommended route connecting all waypoints is minimized.
[0148] Specifically, for a connecting road segment between two waypoints, the server can obtain the historical traffic conditions of the connecting road segment, predict the traffic conditions of the connecting road segment, and thus obtain the estimated travel time of each connecting road segment at different time periods.
[0149] During the route planning process, the server needs to obtain the connecting road segments between every two waypoints. Based on the historical traffic conditions of the connecting road segments, the server predicts the traffic conditions of the connecting road segments and obtains the estimated travel time of each connecting road segment at different time periods.
[0150] The server combines the estimated travel time of each connecting road segment with the optimal dwell time at each waypoint to connect routes. During this connection process, historical travel preference characteristics are fully considered. The goal is to minimize the difference between the estimated travel time of each connecting road segment and its average travel time, while satisfying historical travel preference characteristics and the optimal dwell time at each waypoint as constraints. This process determines the suggested dwell time for each waypoint and minimizes the total travel time of the recommended route obtained by connecting all waypoints. The total travel time does not include the suggested dwell time at each waypoint.
[0151] In this embodiment, route planning is performed by predicting the traffic conditions of each connecting road segment. This fully considers the impact of road conditions and avoids congested road segments as much as possible during the route planning process, reducing the time spent on traffic jams. At the same time, considering traffic conditions in route planning makes the time arrangement more reasonable, ensuring that the target audience can reach the corresponding waypoints within the planned time when following the recommended travel route, avoiding missing the corresponding attractions and improving the target audience's travel experience.
[0152] Different waypoints have different optimal dwell times. For example, the optimal dwell time for some waypoints is fixed and short, and missing the optimal dwell time may greatly reduce the user experience. On the other hand, the optimal dwell time for some waypoints is relatively long, and missing the optimal dwell time has little impact on the user experience. Therefore, for different waypoints, the server can determine the priority of the optimal dwell time in the path planning process based on the degree of impact of missing the optimal dwell time on the user experience.
[0153] In one embodiment, based on satisfying historical route preference characteristics and the optimal dwell time at each waypoint, route planning is performed for each waypoint to generate a recommended travel route that includes suggested dwell times and route order for each waypoint, including:
[0154] When the optimal stay time at a transit point is within a specific time period, satisfying the optimal stay time at the transit point is taken as the first priority condition, and satisfying the historical route preference characteristics is taken as the second priority condition.
[0155] Based on the first and second priority conditions, route planning is performed for each waypoint, generating a recommended travel route that includes suggested stay times and route order for each waypoint.
[0156] In some embodiments, the optimal dwell time at a waypoint is a specific time period, indicating that missing the optimal dwell time has a significant impact on the user experience. In this case, the server prioritizes meeting the optimal dwell time at the waypoint as the first priority condition and meeting historical route preference characteristics as the second priority condition. Based on the first and second priority conditions, route planning is performed to obtain a recommended travel route. Under this premise, the planned recommended travel route will give priority to the optimal dwell time at the waypoint, ensuring that the target can reach the waypoint at the optimal dwell time, avoiding missing important items, and improving the user experience.
[0157] In other embodiments, the optimal dwell time at a waypoint is a preferred time period, indicating that missing the optimal dwell time has a relatively small impact on user experience. In this case, the server prioritizes meeting historical route preference characteristics as the first priority condition and meeting the optimal dwell time at a waypoint as the second priority condition. Route planning is then performed based on these two priority conditions to obtain a recommended travel route. Under this premise, the planned recommended travel route will prioritize historical route preference characteristics to ensure that the target user has a good experience during their trip.
[0158] In one embodiment, when the distance between the origin and destination of the target object is long and the planned travel time is long, such as when multiple provinces and cities are involved, the server's specific processing methods for determining the route order of each waypoint during route planning include:
[0159] Based on the location of each waypoint, the waypoints are clustered to obtain cluster groups; based on the travel plan time of the target object, the cluster groups are concatenated, and the waypoints contained in each cluster group are concatenated to obtain the travel order of each waypoint.
[0160] For example, the server uses each waypoint in the same province as an initial group, and clusters each waypoint based on its location to obtain cluster groups, so that waypoints with similar locations are grouped into the same cluster group. When determining the route order, the cluster groups can be connected first based on the travel plan time of the target object to connect the waypoints between cluster groups. Then, the waypoints in each cluster group can be connected to connect the waypoints within the cluster group. By merging the waypoint connection results between cluster groups with the waypoint connection results within the cluster group, the route order of each waypoint can be obtained.
[0161] During the fusion process, for a cluster group 2, the adjacent cluster groups 1 and 3 can be determined based on the path point connection results between cluster groups. Then, the target path point A of the nearest path point to cluster group 1 and the target path point B of the nearest path point to cluster group 3 in cluster group 2 are determined. Path point A and path point B are used as the two connection endpoints of cluster group 2 to connect the path points in cluster group 2.
[0162] In this embodiment, the relationship between large-scale and small-scale waypoints is fully considered. The server clusters each waypoint based on its location. Through connections between clusters and within clusters, the large-scale and small-scale connections are integrated, thereby improving the rationality of the planned path sequence between each waypoint.
[0163] In one embodiment, such as Figure 6 This method is applied to Figure 1Taking the terminal in the example, the explanation includes the following steps:
[0164] Step 602: In the map application, display the start and end points of the rows and the points of interest marked on the map.
[0165] The travel origin and destination points include the starting point and the ending point, which can be the same location or different locations. The starting point is the departure point determined by the target user through the electronic map application on their terminal. The server obtains the starting point from the terminal; this can be the current location obtained by the electronic map application through location services, or the departure point entered or selected by the target user through terminal operations. The ending point can be the final destination entered by the target user in the electronic map application's display interface on the terminal. The server obtains the ending point from the terminal; this can be the destination entered or selected by the target user through terminal operations.
[0166] Points of interest (POIs) are locations marked by a target object in a map application. Examples include saved points of interest or locations marked with specific symbols. A target object can mark numerous POIs on a map, and during route planning, one or more can be selected as destinations for the trip. The POIs marked and selected on the map represent at least a subset of the POIs chosen by the target object from the marked POIs.
[0167] In some specific applications, the start and end points of a row and points of interest marked on the map can be highlighted using icons on the map displayed by the map application. Alternatively, as shown... Figure 7 As shown, the start and end points of a row are highlighted as icons on the map displayed by the map application. The location display bar of the map application shows the names of the points of interest marked from the map. It is also possible to simultaneously display the names of the start and end points of the row and the individual names of the points of interest marked from the map in the location display bar of the map application.
[0168] Step 604: If the recommendation function in the map application is enabled, in response to the route calculation operation triggered for the trip origin and destination and at least one selected point of interest, the map application displays at least one recommended point that matches the initial route, which is a route connecting the trip origin and destination and at least one point of interest.
[0169] Map applications often include a recommendation feature that suggests suitable locations to a target user for them to choose from as stops on their travel itinerary. This recommendation feature has two states: on and off. In some embodiments, the recommendation feature is equipped with a toggle control, allowing the target user to control whether or not to enable the recommendation feature.
[0170] In one embodiment, in response to a target object confirming its travel origin and destination in a map application and selecting at least a subset of marked points of interest (POIs) to trigger a route calculation operation, the terminal further determines the activation status of the map application's recommendation function. If the map application's recommendation function is activated, the terminal sends a route calculation request to the server, carrying the travel origin and destination and the selected at least one POI. The server receives the route calculation request and plans an initial route based on the target object's travel origin and destination and the marked and selected POIs on the map. After acquiring a large number of the target object's historical travel records and POIs, the server calculates the optimal route to these POIs based on the historical travel records and selects at least one recommended point that matches the initial route, pushing it to the terminal for display.
[0171] In some specific applications, recommended points can be highlighted as icons on the map displayed by the map application, or displayed as place names in the location display bar of the map application.
[0172] Step 606: Using each point of interest and each recommended point as candidate points, in response to the waypoint selection operation triggered for the candidate points, display the recommended travel route on the map. The recommended travel route includes the origin and destination points, the order of passing through each waypoint, and the suggested stop time.
[0173] After determining the recommended points, the server will push them to the terminal and display them in the terminal's map application so that the target can see the points of interest they have marked and the recommended points pushed by the server. The target can then make a secondary selection of the waypoints for their trip based on the points of interest and the recommended points, and will select at least one location from each point of interest and each recommended point as a waypoint.
[0174] In an optional embodiment, in response to the target object selecting at least one waypoint from each point of interest and each recommended point, the terminal sends the selected waypoint to the server so that the server can determine the location the target object wants to go to and plan a travel route accordingly.
[0175] In some specific application scenarios, such as Figure 8As shown, in map applications, points of interest (POIs) and recommended points can be displayed in a sorted manner. POIs can carry markers, and recommended points can carry recommendation markers, allowing the target user to understand which candidate points they have marked and which are automatically recommended, avoiding confusion. In other specific applications, POIs selected by the target user before initial route planning can remain selected, while recommended points pushed after initial route planning can be unselected. If the target user confirms adding a recommended point as a waypoint, the selected recommended point will switch from unselected to selected. This approach simplifies the user experience by allowing them to add recommended points directly without changing their existing POIs, without needing to add additional recommended points.
[0176] By allowing the target audience to select at least one waypoint from various points of interest and recommended points, the target audience can also reconsider whether to replace the initially selected point of interest. This allows the target audience to easily deselect the point of interest and make a second selection of the waypoint through a simple operation.
[0177] In some embodiments, each point of interest and each recommended point can be displayed in a recommendation list or highlighted directly on a map. The terminal can respond to the target object's triggering operation of the recommended point in the recommendation list or on the map, and display the detailed information of the recommended point so that the target object can confirm whether to select the recommended point as a waypoint based on the detailed information.
[0178] Based on historical travel records and various points of interest along the way, the server can calculate the optimal route based on historical road conditions and the best time to visit these points. By analyzing historical road condition data, the server can understand traffic congestion at different times and provide the best route to avoid peak hours based on the road condition information.
[0179] In some embodiments, the server can determine the constraints of route planning based on the tour characteristics of the waypoints and the travel preference features extracted from historical travel records. Based on the constraints, the server can plan the route for the origin, destination and waypoints. During the route planning process, the server needs to simultaneously consider the travel time between different locations and the dwell time at each location, and connect the various locations to obtain the recommended travel route to be pushed to the target.
[0180] In one embodiment, the method for displaying recommended travel routes further includes: in response to a waypoint selection operation triggered for a candidate point, adding the recommended points among the selected waypoints as points of interest.
[0181] In this process, if the selected waypoints include recommended points, it indicates that the target object is interested in the recommended points and has included them in its travel plan. To facilitate the target object's management of points of interest, the terminal can directly add the recommended points among the selected waypoints as points of interest after the target object selects the waypoints for the candidate points.
[0182] Furthermore, the target object can store and share points of interest with the interactive object, so that the interactive object can refer to the target object's travel points and routes to provide a reference for travel.
[0183] The aforementioned method for displaying recommended travel routes displays the origin and destination points and points of interest (POIs) marked on the map application. When the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the origin and destination points and at least one selected POI, the map application displays at least one recommended point that matches the initial route. The initial route is a route connecting the origin and destination points and at least one POI. It can proactively push recommended points to the target based on the origin and destination points and POIs, simplifying the process for the target to find and determine waypoints. Using each POI and each recommended point as candidate points, in response to a waypoint selection operation triggered for the candidate points, the method displays a recommended travel route on the map, including the origin and destination points, the route sequence of each waypoint, and the suggested stay time. It can quickly generate a recommended travel route that matches the target's preferences based on the target's choice of waypoints.
[0184] In one embodiment, the method for displaying recommended travel routes further includes:
[0185] On the point of interest display page, a routing control is displayed; the routing control has a triggerable state and a non-triggerable state; in response to a selection operation that selects at least one point of interest from the marked points of interest, the routing control is switched from the non-triggerable state to the triggerable state.
[0186] In response to a route calculation operation triggered for a trip origin and destination and at least one point of interest, in a map application, displaying at least one recommended point that matches the initial route, including: in response to a route calculation control trigger operation, displaying at least one recommended point that matches the initial route in a map application.
[0187] Among them, such as Figure 7As shown, the route calculation control is used to send route calculation requests to the server. The route calculation control has two automatically toggle states: a triggerable state and a non-triggerable state. Specifically, when the origin and destination points are different, the route calculation control is displayed in the triggerable state. When the origin and destination points are the same, the terminal responds to a selection operation of choosing at least one point of interest from the marked points of interest, switching the route calculation control from the non-triggerable state to the triggerable state. During the route calculation process, the target object only needs to trigger the route calculation control. The terminal responds to the trigger operation on the route calculation control, sends a route calculation request to the server, and receives recommended points returned by the server based on the route calculation results. In the map application, at least one recommended point matching the initial route is displayed.
[0188] In this embodiment, the routing control is in a triggerable state when at least two of the travel origin and destination points and points of interest are different. If there are only two points and they are in the same location, the routing control is in a non-triggerable state. This avoids the terminal sending invalid routing requests to the server, reduces the resource consumption of invalid requests, and thus improves resource utilization.
[0189] In one embodiment, the method for displaying recommended travel routes further includes:
[0190] In the candidate point display area of the map application, each point of interest and each recommended point are displayed as candidate points in order;
[0191] When the order optimization function in the map application is turned off, the order of the waypoints in the travel recommendation route is fixed, and the order of the waypoints is the same as the display order of the waypoints on the candidate point display page.
[0192] When the order optimization feature in the map application is enabled, the order of the points along the route in the recommended travel route is variable.
[0193] The candidate point display area is a display area in the map application that displays a location on the map in the form of a place name. The place names displayed in the candidate point display area can be uniquely identified in the map application.
[0194] like Figure 7 As shown, in the candidate point display area of the map application, each point of interest and each recommended point are displayed as candidate points in order, for example... Figure 7 The exhibition features the Badaling Great Wall, the Yuanmingyuan Ruins Park, and the Forbidden City, among others, displayed in sequence.
[0195] like Figure 9As shown, the map application is equipped with a sequence optimization function, which can automatically adjust the order of waypoints during the route planning process to provide a more reasonable travel recommendation route for the target.
[0196] Specifically, when the sequence optimization function is turned off, that is, when the target object wants to plan the route in a specified order, the order of each waypoint in the travel recommendation route is fixed, and the order of each waypoint is the same as the display order of each waypoint on the candidate point display page.
[0197] When the sequence optimization function in the map application is enabled, that is, when the target object allows the order of waypoints to be automatically adjusted during the route planning process, the order of waypoints in the recommended travel route is variable.
[0198] In this embodiment, by configuring a sequence optimization function in the map application, the target user can decide whether to plan routes in sequence based on their own choices. This process is simple and intuitive, allowing the target user to easily add and manage locations and customize an optimal travel recommendation route according to their needs and preferences. This personalized operation and settings can improve the convenience and satisfaction of the target user's travel.
[0199] Since the order optimization function in the map application is disabled, the order of waypoints in the travel recommendation route is fixed. To further meet the planning needs of the target audience for different sorting methods, the travel recommendation route display method also includes:
[0200] In the candidate point display area of the map application, place name cards are displayed sequentially to show each candidate point; in response to a position drag operation triggered on any place name card, the order of each candidate point is adjusted.
[0201] Among them, place name cards are cards that display place names as text content. Each place name card is independent and arranged sequentially. For example... Figure 10 As shown, the target object can be dragged at the trigger position of the place name card. The terminal can trigger the place name card by long-pressing the place name card or triggering the drag trigger area on the place name card. By responding to the target object's drag operation after triggering the place name card, the order of the place name card in the various place name cards can be adjusted.
[0202] Specifically, in some embodiments, the terminal can respond to the target object's drag operation of moving place name card A to the location of place name card B after triggering place name card A, and respond to releasing place name card A at the location of place name card B, then move place name card A to an adjacent position of place name card B, or directly exchange the positions of place name card A and place name card B, thereby realizing the adjustment of the position of place name card A.
[0203] In this embodiment, candidate points are displayed sequentially by placing place name cards in order, and the order of candidate points can be adjusted by dragging any place name card. This allows the target user to set a specific order for travel route planning and meets the target user's personalized needs.
[0204] In some embodiments, the map application is configured with at least one recommendation category label for the recommended points; in the map application, displaying at least one recommended point that matches the initial route includes:
[0205] If a recommended category label is selected, at least one recommended point that matches the initial route and belongs to the category represented by the recommended category label will be displayed; if a recommended category label is not selected, at least one recommended point that matches the initial route and belongs to the same category as the selected point of interest will be displayed.
[0206] The map application is configured with recommendation category tags for suggested points of interest. These tags are determined based on the category tags of historically visited points on the map, such as hotels, hospitals, restaurants, and scenic spots. Target users can select these recommendation category tags, allowing the server to push specific categories of recommended points to them and perform route planning based on their specific category needs.
[0207] In one embodiment, the map application may display multiple recommendation category labels representing different categories of recommended points. The target object may select one or more of the recommendation category labels, or may not select any recommendation category labels.
[0208] When a target object is selected with a recommended category label, the terminal responds to the route calculation operation triggered for the origin and destination points and at least one selected point of interest, and displays at least one recommended point in the map application that matches the initial route and belongs to the category represented by the recommended category label.
[0209] If no recommended category label is selected for the target object, in response to the route calculation operation triggered for the origin and destination points and at least one selected point of interest, at least one recommended point that matches the initial route and is of the same category as the selected point of interest is displayed in the map application.
[0210] In this embodiment, by displaying multiple recommendation category labels representing different categories of recommended points in the map application for the target object to select, the planning needs of the target object for specific categories of recommended points can be met, so that the server can push specific categories of recommended points to the target object and obtain a travel recommendation route that better meets the needs of the target object.
[0211] This application also provides an application scenario in which the above-described method for generating recommended travel routes is applied. Specifically, the method for generating recommended travel routes is applied in this scenario as follows:
[0212] Traditional route recommendation systems primarily rely on shortest or fastest path algorithms. These algorithms typically only consider geographical distance and traffic conditions, neglecting users' personalized needs and preferences. For example, some users may prefer scenic routes over the fastest ones; others may prefer to avoid crowded areas, even if it means spending more time. Furthermore, traditional route recommendation systems often fail to handle dynamic user needs; for instance, users may have different travel preferences at different times and in different contexts.
[0213] In contrast, the travel recommendation route generation method provided in this application, which recommends routes of interest based on historical trajectories and saved points, can better meet users' personalized needs.
[0214] From an implementation perspective, firstly, by analyzing users' historical travel patterns, we can understand their travel habits and preferences, such as their preferred routes, frequently visited locations, and travel times. Secondly, by analyzing users' saved travel history, we can understand their interests, such as their favorite attractions and activities. Furthermore, we can handle dynamic user needs. For example, based on users' historical travel history and current time and location, we can predict their potential travel preferences and generate corresponding route recommendations. Based on users' saved travel history and current activities, we can recommend attractions and activities they might be interested in. Generating personalized route recommendations based on this information considers not only geographical distance and traffic conditions but also users' travel preferences and interests, effectively improving the efficiency of users' itinerary planning.
[0215] The following explains the underlying principles of the two basic conditions: historical travel records and favorited points.
[0216] The core of historical travel records is trajectory generation, a technology that generates possible travel routes for a user based on their historical driving data. By analyzing a target user's historical trajectories, we can understand their travel habits and preferences, such as preferred routes, frequently visited locations, and travel times. Then, the server can use this information to generate possible travel routes for the target user, thereby providing more personalized route recommendations.
[0217] The trajectory generation process primarily involves receiving positioning signals to record the position of a moving object and saving these location points as a trajectory file. The terminal device used by the map application is typically equipped with a Global Positioning System (GPS) or other positioning technologies, capable of receiving satellite signals and determining the device's current location. The positioning signal contains information such as the device's longitude, latitude, and altitude. The terminal device records and saves the current location point. Once the terminal device receives a positioning signal, it immediately records the current location information and saves it to internal or external storage. The target object can then view the device's movement trajectory at any time. When the target object completes its journey, the terminal device collects the complete trajectory points. During movement, the device continuously receives positioning signals and records a series of location points, forming a complete trajectory. These location points contain the device's location information at different points in time and can be used for subsequent analysis and applications.
[0218] To reduce the size of trajectory files and improve data processing efficiency, a thinning method is used to process and save the trajectory files. Thinning is a technique that reduces data volume by removing redundant location points. During the thinning process, based on certain rules or algorithms, some location points are selectively retained while other redundant points are deleted. This reduces the burden of data storage and processing while maintaining the basic shape and characteristics of the trajectory. The terminal device uploads the trajectory file saved using the thinning method to a server or cloud for sharing. Server or cloud storage provides a convenient way for users to access and share trajectory data anytime, anywhere. By uploading the trajectory file to a server or cloud, users can share their movement trajectory with others or use the trajectory data for other applications, such as map navigation and location analysis.
[0219] In some embodiments, the thinning algorithm can be the Douglas-Peucker algorithm, also known as the Lamer-Douglas-Peucker algorithm. This algorithm reduces the number of points on a curve by preserving the curve's main shape features while removing negligible details, thus compressing the data. The basic idea of the Douglas-Peucker algorithm is as follows: For a curve composed of points, first determine the first and last points of the curve, which form the baseline. Then, find the point farthest from the baseline. If the distance from this point to the baseline is less than a given threshold, all points between the baselines can be ignored, retaining only the first and last points. If the distance from this point to the baseline is greater than the threshold, the curve is divided into two segments, and the same processing is applied to both segments. This process is repeated until all points have been processed. The thinning algorithm has the advantages of simplicity and efficiency, effectively reducing the amount of data while preserving the curve's main shape features.
[0220] While logged in, users can use the favorites feature to select and save a set of destinations they want to visit and sync this information to the server.
[0221] First, logged-in users can browse the map or search for specific locations, then select and mark destinations they are interested in. These destinations can be tourist attractions, restaurants, shopping malls, or other places of interest. Users can select destinations by clicking on locations on the map or entering keywords and add them to their favorites list.
[0222] Next, users can personalize their saved items. They can add tags, notes, or categories to each item for better organization and searching. For example, a user can label a group of restaurant saved items as "Food" and a group of tourist attraction saved items as "Tourism" to quickly find relevant information when needed.
[0223] Once a user has completed the selection and management of their favorites, this information will be synchronized to the server. The server is responsible for storing and managing the user's favorites data and ensuring its security and reliability. By synchronizing favorites information, users can access and manage their favorites on different devices, whether it's a mobile phone, tablet, or computer.
[0224] Syncing favorites information is crucial for users. First, it allows users to seamlessly switch and access their favorites across different devices. For example, a user can view and manage favorites at home using a computer, and then use their phone to navigate to those locations when out and about. Second, the syncing feature also prevents data loss. If a user's device is lost or damaged, they can still recover their favorites data by logging into a new device.
[0225] Furthermore, the server can utilize favorites information to provide personalized recommendations and services to users. By analyzing a user's favorites data, the server can understand the user's interests and preferences and provide relevant recommendations based on this information. For example, if a user has favorited multiple coffee shops, the server can recommend newly opened coffee shops or special offers.
[0226] Finally, users can also choose to share their saved travel destinations with other users. By setting their saved destinations to public or sharing them with specific users, users can share their travel plans or recommendations with friends, family, or colleagues. This sharing feature can promote communication and interaction among users, while also providing valuable references and suggestions for other users.
[0227] In summary, while logged in, the Favorites feature allows users to select and save a set of destinations they want to visit and sync this information to the server. By syncing favorites, users can access and manage their favorites across different devices and enjoy personalized recommendations and services. Furthermore, users can choose to share their favorites with other users to facilitate communication and sharing. This feature provides users with a more convenient, personalized, and social experience.
[0228] From the overall implementation perspective, the server acquires a large amount of users' historical trajectory and saved point information, providing more data support for personalized route calculation. When a user selects a set of saved points and begins personalized route calculation, the server will calculate the optimal trajectory to reach these saved points based on historical information. Whether for travel or other activities, the server can consider factors such as current location, historical traffic conditions, and best time to visit, recommending more worthwhile places to visit and providing users with optimal route planning.
[0229] First, the server uses the user's historical travel history and saved travel points to understand the user's true travel preferences and interests. By analyzing the user's historical travel history, the server can understand the places the user frequently visits, their preferred modes of transportation, and their preferred travel times. By analyzing the user's saved travel points, the server can understand the user's favorite attractions, restaurants, or shopping centers. This information provides the foundation for subsequent personalized route planning.
[0230] Secondly, based on the user's selected list of favorite points and their current location information, the server calculates the optimal route to these points. This process involves technologies such as route planning, traffic analysis, and time optimization. The server considers factors such as the distance between the current location and the favorite points, the availability of transportation, traffic congestion, and the user's time constraints to provide the best route option.
[0231] In a travel scenario, the server can recommend more worthwhile places to visit based on the user's current location and selected saved points. By analyzing the user's historical travel history and saved point information, the server can understand the user's interests and preferences, and recommend relevant attractions, restaurants, or shopping destinations based on this information. In this way, users can discover more interesting places during their trips, enriching their travel experience.
[0232] Furthermore, the server can calculate the optimal route based on historical traffic conditions and the best time to visit. By analyzing historical traffic data, the server can understand traffic congestion at different times and provide users with the best routes to avoid peak hours. For example, during a trip, the server can recommend the best route based on the user's travel time and traffic conditions, enabling users to better plan their time and itinerary.
[0233] The advantage of personalized route planning lies in its ability to provide customized route planning based on users' individual needs and preferences. By utilizing a large amount of users' historical trajectory and saved points information, the server can better understand users' travel habits and interests, thereby providing users with more personalized and optimized route planning.
[0234] However, personalized route planning also faces some challenges and problems. First, protecting personal privacy is a crucial issue. Servers need to ensure that users' personal information and trajectory data are securely protected and not misused or leaked. Second, personalized route planning requires massive amounts of data support and complex algorithmic analysis. Servers need powerful computing and storage capabilities to process and analyze large-scale data and provide users with real-time route planning.
[0235] In summary, by acquiring a large amount of users' historical trajectory and saved point information, the server provides more data support for personalized route calculation. When a user selects a set of saved points and begins personalized route calculation, the server uses historical information to calculate the optimal route to these saved points. Whether for travel or other activities, the server can consider factors such as current location, historical traffic conditions, and best time to visit, recommending more worthwhile places to visit and providing users with optimal route planning. The development of personalized route calculation will provide users with a more personalized, efficient, and convenient travel experience.
[0236] For the server, the core issue is how to utilize a large amount of historical tracks and saved points to plan routes. The map application obtains sensor information (GPS, IMU, Speed) from the system and injects it into the location SDK. The location SDK outputs the fused location results, and the map application uses a large amount of historical tracks, saved points, and traffic information to plan routes. The specific process is as follows:
[0237] Users can set their favorite destinations for this trip and choose whether to recommend additional destinations of the same type. For example, if a user selects tourist attractions, choosing additional recommendations will suggest high-quality tourist attractions along the route in addition to the currently selected destinations.
[0238] If users can adjust the order of their saved points, the server, combining data from a large number of historical routes, may adjust the order of visits to saved points. Based on a large amount of user-shared historical routes and saved point information, the map application calculates the optimal route and estimates the suggested stay time at each stop, combining the currently synchronized saved point information and time with the destination suitable for travel at the current time. The server returns route details based on the map application's request parameters, and the map application parses the route data from the server (including RouteID, route length, route shape points, etc.). The map application injects the parsed route into the guidance module, which synchronizes the route change message to the location. The location SDK calculates the route snapping result (shape point index) based on the location result and route information and outputs it to the guidance module. The guidance module calculates guidance information (forward movement information, estimated arrival time, navigation status, etc.) based on the snapping result to complete navigation.
[0239] In practical use, when a user uses the intelligent driving map for navigation, the system starts recording a trajectory file after navigation begins and generates a trajectory file that is then uploaded to the server for storage after navigation ends. When the user enables automatic trip recording and automatic trajectory synchronization, the system records the trajectory after navigation begins and generates a trajectory file that is uploaded to the cloud when navigation ends. The server can then perform statistical analysis based on the large amount of historical trajectory data and saved points shared by the user to identify locations of interest to the user.
[0240] Users can add locations of interest by clicking on them on the map or using the search function. When a user clicks on a location on the map, its icon is added to their list of favorite locations. Users can also use the search function to find specific locations, such as by entering a place name, attraction name, or keywords; the system will then display relevant locations for the user to choose from.
[0241] In the list of favorite locations, users can freely adjust the order of the locations according to their preferences and needs. Users can change the order of the locations in the list by dragging the location icons up and down. This allows users to flexibly arrange the order of locations according to their travel plans or personal preferences.
[0242] During the process of adding and adjusting the order of locations, users can also choose whether to calculate routes in sequence. If users want to plan routes according to the order of locations in their favorites list, they can select the option to calculate routes in sequence. In this case, the system will plan the best route to each location in turn, based on their order in the list. If users do not select to calculate routes in sequence, the system will provide the best route plan based on factors such as the user's current location, the distance between locations, and traffic conditions.
[0243] The entire process is simple and intuitive. Users simply click on locations on the map or use the search function to add locations of interest, then adjust the order by dragging the location icons up and down. Users can also choose whether to calculate routes in sequence according to their needs. This flexible operation and personalized settings allow users to customize the best travel route based on their preferences and requirements.
[0244] Through this process, users can easily add and manage locations they are interested in, and flexibly adjust the order of locations according to their needs and preferences. Users can also decide whether to plan their routes in sequence. This personalized operation and settings enable users to customize the best travel route according to their travel plans and preferences, improving the convenience and satisfaction of their trip.
[0245] In summary, users can add locations of interest by clicking on them on the map or using the search function, and adjust their order by dragging the location icons up and down. Users can also decide whether to plan their routes in sequence. This process is simple and intuitive, allowing users to easily add and manage locations and customize the best travel route according to their needs and preferences. This personalized operation and settings enhance the convenience and satisfaction of travel.
[0246] When users plan a trip to Beijing, they can choose locations that interest them based on their preferences, such as the Badaling Great Wall, the Old Summer Palace Ruins Park, or the Forbidden City. The final displayed collection points will then be shown.
[0247] In summary, the above-described methods for planning and pushing recommended travel routes can provide users with the best route options based on their historical travel history and saved points of interest. By avoiding congested areas, choosing the fastest routes, and selecting the best modes of transportation, personalized route planning can reduce users' travel time and costs. It provides customized route planning based on users' travel preferences and needs. By considering users' historical travel history and saved points of interest, personalized route planning can provide more convenient and efficient travel methods, enabling users to reach their destinations faster and more accurately. It recommends more worthwhile places to visit based on users' interests and preferences. By analyzing users' historical travel history and saved points of interest, personalized route planning can understand users' preferences and needs, providing them with personalized travel plans and recommendations, thereby improving users' travel experience and satisfaction. It provides personalized recommendations and services based on users' historical travel history and saved points of interest. By analyzing users' travel habits and interests, personalized route planning can recommend relevant attractions, restaurants, shopping places, etc., providing personalized travel suggestions and special offers. Based on users' choices and preferences, it provides them with the opportunity to share saved points of interest and travel plans with other users. By setting favorite points to be public or shared with specific users, personalized route planning can promote communication and interaction among users, enabling them to share travel experiences, exchange opinions and suggestions.
[0248] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0249] Based on the same inventive concept, this application also provides a travel recommendation route generation apparatus for implementing the aforementioned travel recommendation route generation method. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more embodiments of the travel recommendation route generation apparatus provided below can be found in the limitations of the travel recommendation route generation method described above, and will not be repeated here.
[0250] In one embodiment, such as Figure 11As shown, a travel recommendation route generation device is provided, including: a first planning module 1102, a recommendation point determination module 1104, a waypoint determination module 1106, and a second planning module 1108, wherein:
[0251] The first planning module 1102 is used to plan an initial route based on the travel origin and destination of the target object and the points of interest marked and selected from the map when the map application logged in by the target object has the recommendation function enabled.
[0252] The recommended point determination module 1104 is used to determine at least one recommended point that matches the initial route based on the target object's historical travel records;
[0253] The waypoint determination module 1106 is used to determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points;
[0254] The second planning module 1108 is used to perform route planning based on the historical travel records and each of the waypoints, and generate a recommended travel route that includes the suggested stay time and route order of each waypoint.
[0255] In some embodiments, the recommendation point determination module 1104 is used to determine the historical location preference characteristics of the target object based on the historical waypoints in the target object's historical travel records; and to filter at least one recommendation point that matches the historical location preference characteristics from the recommendation set matched by the initial route.
[0256] In some embodiments, the recommendation point determination module 1104 is used to determine the current location preference characteristics of the target object based on the points of interest; and to filter at least one recommendation point that matches the historical location preference characteristics and the current location preference characteristics from the recommendation set matched by the initial route.
[0257] In some embodiments, the recommendation point determination module 1104 is used to group each of the points of interest according to at least one of the location information and category information of each point of interest to obtain a point of interest group; and to determine the current location preference features of the target object based on the point of interest group.
[0258] In some embodiments, the historical travel records include travel record data for the target object obtained from stored data;
[0259] The travel recommendation route generation device also includes a travel trajectory recording module, which is used to write the received positioning signals into a temporary trajectory file during the travel of the target object; and to perform thinning processing on the positioning signals in the trajectory file after the target object finishes its travel trip, so as to obtain travel record data representing the historical travel trajectory and store it.
[0260] In some embodiments, the second planning module 1108 is used to determine the target object's historical route preference characteristics for the route based on the historical travel records;
[0261] Based on the historical route preference characteristics and the optimal stay time at each of the aforementioned waypoints, route planning is performed for each waypoint to generate a recommended travel route that includes suggested stay times and route order for each waypoint.
[0262] In some embodiments, the second planning module 1108 is used to obtain the connecting road segments between every two waypoints, determine the estimated travel time of each connecting road segment based on the predicted traffic conditions of the connecting road segments, and perform route planning for each waypoint based on the estimated travel time of each connecting road segment, satisfying the historical route preference characteristics and the optimal stay time of each waypoint, and determining the suggested stay time of each waypoint, so that the total travel time of the recommended travel route obtained by connecting each waypoint is minimized.
[0263] In some embodiments, the second planning module 1108 is configured to, when the optimal stay time at a waypoint is a specific time period, prioritize satisfying the optimal stay time at the waypoint as a first priority condition and satisfying the historical route preference characteristics as a second priority condition; based on the first priority condition and the second priority condition, perform route planning for each waypoint to generate a recommended travel route that includes the suggested stay time and route order of each waypoint.
[0264] In some embodiments, the method for determining the route order of each waypoint includes: clustering each waypoint based on its location to obtain a cluster group; concatenating each cluster group based on the travel plan time of the target object, and concatenating the waypoints contained in each cluster group to obtain the route order of each waypoint.
[0265] The aforementioned travel route recommendation generation device, when the map application logged into by the target user has its recommendation function enabled, performs preliminary route planning based on the target user's origin and destination points and points of interest marked and selected from the map, obtaining an initial route that meets the target user's initial travel plan. Then, based on the target user's historical travel records, it determines at least one recommended point that matches the initial route for the target user to choose from, ensuring that the recommended points align with the target user's preferences and the initial travel plan. It then determines at least one waypoint selected by the target user from each of the points of interest and recommended points, allowing the target user to reselect and confirm the waypoint based on the recommended points of interest. Based on the historical travel records and each of the waypoints, it performs route planning to generate a travel recommendation route that includes suggested dwell time and route order for each waypoint. By proactively providing the target user with recommended points that match their travel plan to filter waypoints, it simplifies the process of the target user finding and confirming waypoints. Combining the target user's historical travel records with route planning fully considers the target user's travel preferences and habits, resulting in a travel recommendation route that better suits the target user's preferences.
[0266] In one embodiment, such as Figure 12 As shown, a travel recommendation route display device is provided, including: a point of interest display module 1202, a recommendation point display module 1204, and a travel recommendation route display module 1206, wherein:
[0267] The point of interest display module 1202 is used in map applications to display the start and end points of rows and points of interest marked from the map;
[0268] The recommendation point display module 1204 is used to display at least one recommendation point matching an initial route in the map application when the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest. The initial route is a route that connects the trip origin and destination and at least one point of interest.
[0269] The travel recommendation route display module 1206 is used to display the travel recommendation route on the map in response to a waypoint selection operation triggered for the candidate points, using each of the points of interest and each of the recommended points as candidate points.
[0270] The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
[0271] In some embodiments, the travel recommendation route display device further includes a route calculation control display module, used to display the route calculation control on the display page of the points of interest; the control state of the route calculation control includes a triggerable state and a non-triggerable state; in response to a selection operation of selecting at least one point of interest from the marked points of interest, the route calculation control is switched from the non-triggerable state to the triggerable state;
[0272] The recommended point display module 1204 is configured to, in response to a trigger operation on the route calculation control, display at least one recommended point that matches the initial route in the map application.
[0273] In some embodiments, the travel recommendation route display device further includes a candidate point display module, used to display each of the points of interest and each of the recommended points as candidate points in the candidate point display area of the map application in sequence; when the order optimization function in the map application is turned off, the passing order of each of the waypoints in the travel recommendation route is fixed, and the passing order is the same as the display order of each of the waypoints on the candidate point display page; when the order optimization function in the map application is turned on, the passing order of each of the waypoints in the travel recommendation route is variable.
[0274] In some embodiments, the candidate point display module is further configured to display each of the candidate points in a sequentially arranged place name card in the candidate point display area of the map application; and to display each of the candidate points in an adjusted order in response to a position drag operation triggered for any of the place name cards.
[0275] In some embodiments, the map application is configured with at least one recommendation category label for recommended points; the recommended point display module 1204 is configured to display at least one recommended point that matches the initial route and belongs to the category represented by the recommendation category label when a recommendation category label is selected; and to display at least one recommended point that matches the initial route and belongs to the same category as the selected point of interest when a recommendation category label is not selected.
[0276] In some embodiments, the travel recommendation route display device further includes a point of interest adding module, which adds recommended points among the selected route points as points of interest in response to a waypoint selection operation triggered for the candidate points.
[0277] The aforementioned travel recommendation route display device, by displaying the origin and destination points and points of interest marked on the map application, and when the recommendation function in the map application is enabled, responds to a route calculation operation triggered for the origin and destination points and at least one selected point of interest, and displays at least one recommended point matching the initial route in the map application. The initial route is a route connecting the origin and destination points and at least one point of interest. It can proactively push recommended points to the target object based on the origin and destination points and points of interest, simplifying the process for the target object to find and determine waypoints. Using each point of interest and each recommended point as candidate points, in response to a waypoint selection operation triggered for the candidate points, it displays a travel recommendation route in the map including the origin and destination points, the route sequence of each waypoint, and the suggested stay time. It can quickly generate a travel recommendation route that matches the target object's preferences based on the target object's selection of waypoints.
[0278] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 13 As shown, this computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When executed by the processor, the computer program implements a method for generating recommended travel routes.
[0279] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 14As shown, the computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage medium. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a method for generating recommended travel routes. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0280] Those skilled in the art will understand that Figure 13 or Figure 14 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0281] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above-described method embodiments.
[0282] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.
[0283] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0284] It should be noted that the target object information (including but not limited to target object device information, target object personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the target object or fully authorized by all parties, and the collection, use and processing of related data must comply with relevant regulations.
[0285] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0286] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0287] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A method for generating recommended travel routes, characterized in that, The method includes: If the map application logged into by the target object has the recommendation function enabled, an initial route is planned based on the target object's origin and destination points and points of interest marked and selected from the map; Based on the target object's historical travel records, at least one recommended point matching the initial route is determined; Determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points; Based on the historical travel records and each of the aforementioned waypoints, route planning is performed to generate a recommended travel route that includes suggested dwell time and route order for each of the aforementioned waypoints.
2. The method according to claim 1, characterized in that, The step of determining at least one recommended point matching the initial route based on the target object's historical travel records includes: Based on the historical waypoints in the target object's historical travel records, the historical location preference characteristics of the target object are determined; From the set of recommendations matched by the initial route, at least one recommended point that matches the historical location preference characteristics is selected.
3. The method according to claim 2, characterized in that, The method further includes: Based on the points of interest, determine the current location preference features of the target object; The step of selecting at least one recommended point that matches the historical location preference characteristics from the recommended set matched by the initial route includes: From the set of recommendations matched by the initial route, at least one recommended point that matches the historical location preference characteristics and the current location preference characteristics is selected.
4. The method according to claim 3, characterized in that, The step of determining the current location preference features of the target object based on the points of interest includes: Each point of interest is grouped according to at least one of its location information and category information to obtain a point of interest group; Based on the set of points of interest, the current location preference features of the target object are determined.
5. The method according to claim 1, characterized in that, The historical travel records include travel record data for the target object obtained from stored data; The method further includes: During the travel of the target object, the received positioning signals are written into a temporary trajectory file; When the target object finishes its trip, the location signal in the trajectory file is thinned to obtain travel record data representing the historical travel trajectory, and then stored.
6. The method according to claim 1, characterized in that, The step of route planning based on the historical travel records and each of the waypoints, generating a recommended travel route including suggested stop times and route order for each waypoint, includes: Based on the historical travel records, the historical route preference characteristics of the target object for the route are determined; Based on the historical route preference characteristics and the optimal stay time at each of the aforementioned waypoints, route planning is performed for each waypoint to generate a recommended travel route that includes suggested stay times and route order for each waypoint.
7. The method according to claim 6, characterized in that, The method involves performing route planning for each of the aforementioned waypoints, based on satisfying the historical route preference characteristics and the optimal dwell time for each waypoint, to generate a recommended travel route that includes suggested dwell times and route order for each waypoint. Obtain the connecting road segments between every two waypoints, and determine the estimated travel time for each connecting road segment based on the predicted traffic conditions of the connecting road segments; Based on the conditions of satisfying the historical route preference characteristics and the optimal stay time of each of the aforementioned waypoints, route planning is performed on each of the aforementioned waypoints based on the estimated travel time of each of the aforementioned connecting road segments, the suggested stay time of each of the aforementioned waypoints is determined, and the total travel time of the recommended travel route obtained by connecting the aforementioned waypoints is minimized.
8. The method according to claim 6, characterized in that, The method involves performing route planning for each of the aforementioned waypoints, based on satisfying the historical route preference characteristics and the optimal dwell time for each waypoint, to generate a recommended travel route that includes suggested dwell times and route order for each waypoint. When the optimal stay time at the waypoint is within a specific time period, satisfying the optimal stay time at the waypoint is taken as the first priority condition, and satisfying the historical route preference characteristics is taken as the second priority condition. Based on the first priority condition and the second priority condition, route planning is performed for each of the aforementioned points of interest to generate a recommended travel route that includes the suggested stay time and route order for each of the aforementioned points of interest.
9. The method according to claim 1, characterized in that, The methods for determining the route sequence of each waypoint include: Based on the location of each of the aforementioned path points, the path points are clustered to obtain cluster groups; Based on the travel plan time of the target object, the clusters are connected in series, and the waypoints contained in each cluster are connected in series to obtain the travel order of each waypoint.
10. A method for displaying recommended travel routes, characterized in that, The method includes: In map applications, the start and end points of rows and points of interest marked on the map are displayed; When the recommendation function in the map application is enabled, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, the map application displays at least one recommended point that matches the initial route, which is a route that connects the trip origin and destination and at least one point of interest. Using each of the points of interest and each of the recommended points as candidate points, in response to a waypoint selection operation triggered for the candidate points, a recommended route is displayed on the map; The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
11. The method according to claim 10, characterized in that, The method further includes: On the display page of the point of interest, a route calculation control is displayed; the control state of the route calculation control includes a triggerable state and a non-triggerable state. In response to a selection operation that selects at least one point of interest from the marked points of interest, the routing control is switched from an untriggerable state to a triggerable state. In response to the route calculation operation triggered for the trip origin and destination and at least one of the points of interest, the map application displays at least one recommended point matching the initial route, including: In response to a triggering operation on the route calculation control, at least one recommended point matching the initial route is displayed in the map application.
12. The method according to claim 10, characterized in that, The method further includes: In the candidate point display area of the map application, each of the points of interest and each of the recommended points are displayed as candidate points in sequence; When the order optimization function in the map application is turned off, the order of the waypoints in the recommended travel route is fixed, and the order of the waypoints is the same as the display order of the waypoints on the candidate point display page. When the sequence optimization function in the map application is enabled, the order of the waypoints in the recommended travel route is variable.
13. The method according to claim 12, characterized in that, The method further includes: In the candidate point display area of the map application, each candidate point is displayed sequentially as a place name card; In response to a location drag operation triggered for any of the place name cards, the candidate points are displayed in an adjusted order.
14. The method according to claim 10, characterized in that, The map application is configured with at least one recommendation category label for the recommended point; In the map application, at least one recommended point matching the initial route is displayed, including: When a recommended category label is selected, at least one recommended point that matches the initial route and belongs to the category represented by the recommended category label is displayed; If no recommended category label is selected, at least one recommended point that matches the initial route and is in the same category as the selected point of interest will be displayed.
15. The method according to claim 10, characterized in that, The method further includes: In response to a waypoint selection operation triggered for the candidate point, a recommended point among the selected waypoints is added as a point of interest.
16. A travel recommendation route generation device, characterized in that, The device includes: The first planning module is used to plan an initial route based on the target's origin and destination points and points of interest marked and selected from the map, when the map application logged into by the target has the recommendation function enabled. The recommended point determination module is used to determine at least one recommended point that matches the initial route based on the target object's historical travel records; The waypoint determination module is used to determine at least one waypoint selected by the target object from each of the points of interest and each of the recommended points; The second planning module is used to perform route planning based on the historical travel records and each of the waypoints, and generate a recommended travel route that includes the suggested stay time and route order of each waypoint.
17. A travel recommendation route display device, characterized in that, The device includes: The Points of Interest (POI) display module is used in map applications to display the start and end points of rows and points of interest marked on the map. The recommended point display module is configured to, in response to a route calculation operation triggered for the trip origin and destination and at least one selected point of interest, display at least one recommended point matching an initial route in the map application when the recommendation function in the map application is enabled. The initial route is a route that connects the trip origin and destination and at least one point of interest. The travel recommendation route display module is used to display the travel recommendation route on the map in response to a waypoint selection operation triggered for the candidate points, using each of the points of interest and each of the recommended points as candidate points. The recommended travel route includes the origin and destination points, the order of passing through each of the route points, and the suggested stop time.
18. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 15.
19. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 15.
20. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 15.