Method and system for generating roadbook route
By obtaining the user's cycling starting point, end point and interest category tags, automatically planning and recommending cycling routes and generating road book routes, the cumbersome problems of cycling route planning in the existing technology are solved, and planning efficiency and user experience are improved.
Patent Information
- Application Number
- PCT/CN2023/127180
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-23
- Filing Date
- 2023-10-27
- Publication Date
- 2025-05-01
AI Technical Summary
It is difficult for the prior art to systematically plan suitable cycling routes, which will affect the cycling experience. Users need to use road book recommendation software or manually design the routes, which is cumbersome and time-consuming.
A method and system for generating road book routes is provided. By obtaining the cycling starting point, end point and interest category tags entered by the user, several recommended cycling routes are automatically planned, and corresponding road book routes are generated according to the user's selection.
The function of quickly generating recommended cycling routes based on user needs is realized, which improves the efficiency of cycling route planning and reduces the time and resource consumption of invalid route planning.
Smart Images

Figure CN2023127180_01052025_PF_FP_ABST
Abstract
Description
A method and system for generating a road book route Technical Field
[0001] The present invention relates to the technical field of intelligent route generation, and in particular to a method and system for generating a road book route. Background Art
[0002] As people pay more and more attention to health and environmental protection, cycling has gradually become a popular form of fitness. However, due to the lack of systematic cycling route planning and guidance, many cyclists are unable to plan a suitable route, which affects their cycling experience.
[0003] Currently, cyclists typically use route-book recommendation software to obtain routes created by others, or manually design their own routes. However, these software can only recommend specific routes created by others, making it difficult for users to find a suitable route. Manually designing a route is also time-consuming and labor-intensive.
[0004] Summary of the Invention
[0005] In order to solve the above technical problems, the present invention provides a road book route generation method and system, which can automatically and quickly generate several recommended cycling routes for users to choose according to user needs, and automatically generate corresponding road book routes according to user selections.
[0006] In order to solve the above problems, the present invention adopts the following technical solutions:
[0007] A method for generating a route book of the present invention comprises the following steps:
[0008] S1: Obtaining the riding starting point location information and the riding end point location information input by the user, and determining a selectable area of POIs between the riding starting point and the riding end point;
[0009] S2: Obtain the POI category labels input by the user and count the number n of POI category labels input by the user;
[0010] S3: Find all points of interest that belong to the categories corresponding to the n points of interest category labels and are located in the selectable area of the points of interest, and use these points of interest as candidate points of interest;
[0011] S4: numbering the n POI category labels as 1, 2, ..., n according to the order of the n POI category labels input by the user, planning several recommended cycling routes from the cycling starting point to the cycling ending point for the user to choose, each recommended cycling route sequentially passing through one candidate POI corresponding to each of the POI category labels numbered 1 to n, and calculating an estimated cycling time for each recommended cycling route;
[0012] S5: Generate a corresponding road book route based on the recommended cycling route selected by the user.
[0013] In this solution, first, a selectable area of POIs is drawn on an electronic map according to the riding starting point and riding end point input by the user, and the selectable area of POIs is located between the riding starting point and the riding end point.
[0014] Next, the POI category labels entered by the user are obtained, and the number n of POI category labels entered by the user is counted. A POI is a point of interest (POI). The POI information database stores the category corresponding to each POI. The POI category label is used to indicate the corresponding POI category.
[0015] Then, combine the electronic map and the POI data in the POI information database to find all the POIs that belong to the category corresponding to the n POI category labels within the POI selectable area, and use these POIs as candidate POIs.
[0016] Finally, several recommended cycling routes are planned based on the starting point, end point, and the entered POI category labels and order. The recommended cycling routes must meet the requirements of starting from the starting point, passing the corresponding POIs in the order entered, and finally reaching the end point. In this way, the user can obtain several recommended cycling routes that meet their needs. The corresponding road book route is generated based on the recommended cycling route selected by the user.
[0017] During the entire road book route generation process, the user only needs to enter the cycling starting point, cycling end point, and point of interest category labels. The operation is simple and convenient. This method can quickly and automatically generate a road book route based on the cycling starting point, cycling end point, and point of interest categories that the user wants to pass during the ride.
[0018] Preferably, the method for determining the selectable area of points of interest between the riding starting point and the riding end point in step S1 is as follows:
[0019] An ellipse is drawn on an electronic map with the cycling start point and the cycling end point as the two endpoints of the ellipse's major axis. The length a of the ellipse's major axis is equal to the straight-line distance between the cycling start point and the cycling end point. The length b of the ellipse's minor axis satisfies: b = β * a, where β is a positive number less than 1. The area enclosed by the ellipse is used as a selectable area for points of interest.
[0020] This ensures that the planned cycling route will not deviate from the cycling starting point and the cycling end point.
[0021] Preferably, step S2 includes the following steps:
[0022] S21: Find all POI category labels available for user input in the POI selectable area and the number of times each POI category label can be input, for the user to select and input;
[0023] The number of times each POI category label can be inputted is equal to the total number of POIs in the POI selectable area that belong to the category corresponding to the POI category label;
[0024] S22: After the user inputs all selected POI category labels, the POI category labels input by the user and the input order are obtained, and the number n of POI category labels input by the user is counted.
[0025] The human-computer interaction terminal displays the POI category labels available for user input and the number of times each POI category label can be input, to prevent the user from inputting a POI category label m times while there are no m POIs belonging to the category corresponding to the POI category label in the POI selectable area.
[0026] Preferably, the specific steps of step S3 are as follows:
[0027] According to each POI category label input by the user, all POIs located in the POI selectable area and belonging to the category corresponding to the POI category label are searched from the POI information database, and these POIs are used as candidate POIs.
[0028] Preferably, step S4 includes the following steps:
[0029] S41: numbering the n interest point category labels as 1, 2, ..., n in sequence according to the order of the n interest point category labels input by the user;
[0030] S42: planning all cycling routes starting from the cycling starting point and sequentially passing through one candidate POI corresponding to each POI category label numbered 1 to n and finally reaching the cycling end point;
[0031] S43: Calculating the cycling distance of each cycling route, and selecting the cycling routes with cycling distances less than the maximum cycling distance d as recommended cycling routes for the user to select;
[0032] S44: Calculate an estimated cycling time for each recommended cycling route.
[0033] The recommended cycling route starts from the starting point, first passes through an alternative point of interest corresponding to the point of interest category label numbered 1 (that is, the alternative point of interest belongs to the category corresponding to the point of interest category label numbered 1), then passes through an alternative point of interest corresponding to the point of interest category label numbered 2, then passes through an alternative point of interest corresponding to the point of interest category label numbered 3, ..., and finally passes through an alternative point of interest corresponding to the point of interest category label numbered n before reaching the end point.
[0034] Preferably, the n candidate points of interest passed by each cycling route planned in step S42 are different, so that the points of interest passed by the recommended cycling route will not be repeated.
[0035] Preferably, the maximum riding distance d is calculated by the following formula: d=α*a, where α is a positive number greater than 1.
[0036] Preferably, the method for calculating the estimated riding time of the recommended riding route in step S4 is as follows:
[0037] N1: Count the number of road conditions m in the recommended cycling route, number the m road conditions 1, 2...m in sequence, and find the road condition distances D1, D2...D corresponding to the road conditions numbered 1, 2...m in the cycling route. m , find out the basic speeds TS1, TS2…TS corresponding to the road conditions numbered 1, 2…m m ;
[0038] N2: Use the following formula to calculate the estimated riding time for the recommended cycling route:
[0039] Among them, ET is the estimated riding time of the recommended riding route, and WCF is the weather correction factor.
[0040] Each type of weather has a corresponding weather correction factor WCF value.
[0041] Preferably, the weather correction factor WCF is calculated using the following formula:
[0042] BS is the user's historical average riding speed under sunny road conditions, and WS is the user's historical average riding speed under the weather conditions and road conditions during riding.
[0043] Preferably, step S4 further comprises the following steps:
[0044] Calculate the estimated total TA time for each recommended cycling route;
[0045] The method for calculating the estimated total time TA for a recommended cycling route is as follows:
[0046] The n points of interest that the recommended cycling route passes through are numbered 1, 2...n from front to back, 1≤i≤n, and the estimated stay time of each point of interest is calculated. The estimated stay time of the point of interest numbered i is t i , calculate the estimated total time TA:
[0047] Preferably, step S2 includes the following steps:
[0048] S21: The selectable area of interest points is taken as the candidate area F0, and all interest point category labels that can be input by the user in the candidate area F0 are found as candidate labels. All the candidate labels form a candidate label group for the user to select and input. The user can only select an alternative label from the candidate label group;
[0049] S22: Obtaining the candidate tags input by the user. Each time the user selects and inputs an candidate tag from the candidate tag group, the candidate tag group is updated. The user can only select and input the next candidate tag from the updated candidate tag group.
[0050] When the user inputs a selection completion instruction, all the POI category labels input by the user and the input order are counted, and the number n of POI category labels input by the user is counted;
[0051] When the user enters the i-th candidate tag, 1≤i≤n, the method for updating the candidate tag group is as follows:
[0052] Determine the candidate region F according to the i-th candidate label i , find the candidate area F i All the POI category labels available for user input are used as new candidate labels, and all the new candidate labels are formed into a new candidate label group to replace the original candidate label group, thereby completing the update of the candidate label group;
[0053] Determine the candidate region F according to the i-th candidate label i The method is as follows:
[0054] Find the candidate area F i-1 All the interest points in the category corresponding to the i-th candidate label are calculated, and the sub-candidate area corresponding to each interest point is calculated, and the union of all sub-candidate areas is taken as the candidate area F i ;
[0055] The method for calculating the sub-candidate area corresponding to a point of interest is as follows:
[0056] Draw an ellipse on the electronic map with the POI and the ride destination as the two endpoints of the ellipse's major axis. The ellipse's major axis length d is equal to the straight-line distance between the POI and the ride destination, and the ellipse's minor axis length f satisfies: f = β * d, where β is a positive number less than 1. The area enclosed by the ellipse is used as the sub-candidate area corresponding to the POI.
[0057] The n points of interest passed by the cycling route planned in step S42 must meet the following requirements:
[0058] The n points of interest passed by the cycling route are numbered 1, 2, ..., n from the front to the back. The point of interest numbered k+1 must be located in the sub-candidate area corresponding to the point of interest numbered k, and 1≤k≤n-1.
[0059] The above method ensures that the point of interest numbered 1 in the planned cycling route is located within the selectable area of the points of interest (i.e., the point of interest numbered 1 is located within the candidate area F0), and the points of interest numbered 2...n are located within the sub-candidate area corresponding to the previous point of interest (i.e., located within the area surrounded by an ellipse with the line connecting the previous point of interest and the cycling endpoint as the major axis). In this way, the routes of adjacent points of interest in the planned cycling route are oriented towards the endpoint and will not deviate too far from the endpoint, thereby avoiding planning a route in the opposite direction of the endpoint, improving the efficiency of planning an effective route, and reducing the time and resources consumed by planning an invalid route.
[0060] A road book route generation system of the present invention is used in the above-mentioned road book route generation method, comprising:
[0061] Human-computer interaction terminal: used for human-computer interaction with users;
[0062] Data collection module: used to collect users' riding tracks, riding data, input instructions and the latest points of interest information, and store them in the cloud server;
[0063] Data analysis module: used to perform statistical analysis on the collected data;
[0064] Route planning module: used to automatically plan multiple suitable recommended cycling routes based on the cycling starting point location information, cycling end point location information, and point of interest category labels entered by the user, calculate the estimated cycling time for each recommended cycling route, and provide multiple combination options based on different user needs.
[0065] The beneficial effects of the present invention are: (1) it can automatically and quickly generate several recommended cycling routes for users to choose from according to user needs, and automatically generate corresponding road book routes according to the user's selection. (2) it improves the efficiency of cycling route planning and reduces the time and resources consumed by ineffective route planning. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] FIG1 is a flow chart of Example 1;
[0067] FIG2 is a schematic diagram illustrating a cycling route planning method;
[0068] FIG3 is a schematic diagram illustrating a cycling route planning method. DETAILED DESCRIPTION
[0069] The technical solution of the present invention will be further specifically described below through embodiments and in conjunction with the accompanying drawings.
[0070] Example 1: A method for generating a route book in this embodiment, as shown in FIG1 , includes the following steps:
[0071] S1: Obtaining the starting point location information and the end point location information input by the user, and drawing a selectable area of points of interest between the starting point and the end point on an electronic map;
[0072] S2: Obtain the POI category labels input by the user and count the number n of POI category labels input by the user;
[0073] S3: Find all points of interest that belong to the categories corresponding to the n points of interest category labels and are located in the selectable area of the points of interest, and use these points of interest as candidate points of interest;
[0074] S4: numbering the n POI category labels as 1, 2, ..., n according to the order of the n POI category labels input by the user, planning several recommended cycling routes from the cycling starting point to the cycling ending point for the user to choose, each recommended cycling route sequentially passing through one candidate POI corresponding to each of the POI category labels numbered 1 to n, and calculating an estimated cycling time for each recommended cycling route;
[0075] S5: Generate a corresponding road book route based on the recommended cycling route selected by the user.
[0076] The method for determining the selectable area of POIs between the riding starting point and the riding ending point in step S1 is as follows:
[0077] An ellipse is drawn on an electronic map with the cycling start point and the cycling end point as the two endpoints of the ellipse's major axis. The length a of the ellipse's major axis is equal to the straight-line distance between the cycling start point and the cycling end point. The length b of the ellipse's minor axis satisfies: b = β*a, where β is a positive number less than 1 (0<β<1). The area enclosed by the ellipse is used as a selectable area for points of interest.
[0078] Step S2 includes the following steps:
[0079] S21: searching from the POI information database for all POI category labels available for user input within the POI selectable area and the number of times each POI category label can be input, for the user to select and input;
[0080] The number of times each POI category label can be entered is equal to the total number of POIs in the POI selectable area that belong to the category corresponding to that POI category label;
[0081] S22: After the user inputs all selected POI category labels, the POI category labels input by the user and the input order are obtained, and the number n of POI category labels input by the user is counted.
[0082] The specific steps of step S3 are as follows:
[0083] According to each POI category label input by the user, all POIs located in the POI selectable area and belonging to the category corresponding to the POI category label are searched from the POI information database, and these POIs are used as candidate POIs.
[0084] Step S4 includes the following steps:
[0085] S41: numbering the n interest point category labels as 1, 2, ..., n in sequence according to the order of the n interest point category labels input by the user;
[0086] S42: planning all cycling routes starting from the cycling starting point and sequentially passing through one candidate POI corresponding to each of the POI category labels numbered 1 to n and finally reaching the cycling end point, wherein each of the planned cycling routes passes through different n candidate POIs;
[0087] S43: Calculating the cycling distance of each cycling route, and selecting the cycling routes with cycling distances less than the maximum cycling distance d as recommended cycling routes for the user to select;
[0088] The maximum riding distance d is calculated by the following formula: d = α * a, where α is a positive number greater than 1;
[0089] S44: Calculating an estimated riding time for each recommended riding route;
[0090] The method for calculating the estimated riding time of the recommended cycling route is as follows:
[0091] N1: Count the number of road conditions m in the recommended cycling route, number the m road conditions 1, 2...m in sequence, and find the road condition distances D1, D2...D corresponding to the road conditions numbered 1, 2...m in the cycling route. m , find out the basic speeds TS1, TS2…TS corresponding to the road conditions numbered 1, 2…m m , TS j Indicates the user's historical average riding speed under the road condition numbered j on a sunny day, 1≤j≤m;
[0092] N2: Use the following formula to calculate the estimated riding time for the recommended cycling route:
[0093] Where ET is the estimated riding time of the recommended riding route, and WCF is the weather correction factor;
[0094] The weather correction factor WCF is calculated using the following formula:
[0095] BS is the user's historical average riding speed on a sunny and level road, and WS is the user's historical average riding speed under the weather conditions during riding and on a level road.
[0096] In this solution, first, a selectable area for points of interest is drawn on the electronic map based on the riding starting point and riding end point input by the user, and an ellipse is drawn with the riding starting point and riding end point as the major axis of the ellipse as the selectable area for points of interest, so that the planned riding route will not deviate from the riding starting point and riding end point.
[0097] Next, the user-entered POI category labels are obtained, and the number n of POI category labels entered by the user is counted. POIs are referred to as POIs. The POI information database stores the category corresponding to each POI, and the POI category label is used to indicate the corresponding POI category. The human-computer interaction terminal displays the POI category labels available for user input and the number of times each POI category label can be entered. This prevents a user from entering a POI category label m times when there are no POIs of the category corresponding to that POI category label within the POI selection area.
[0098] Then, by combining the electronic map and the POI data in the POI information database, all POIs within the selectable POI area that belong to the categories corresponding to the n POI category labels are found and used as candidate POIs. The found candidate POIs must belong to one of the n POI category labels input by the user.
[0099] Finally, several recommended cycling routes are planned based on the starting point, end point, and the entered POI category labels and order. The recommended cycling routes must meet the requirements of starting from the starting point, passing the corresponding POIs in the order entered, and finally reaching the end point. In this way, the user can obtain several recommended cycling routes that meet their needs. The corresponding road book route is generated based on the recommended cycling route selected by the user.
[0100] The n candidate points of interest that the cycling route planned in step S42 passes through are all different, so that the points of interest that the recommended cycling route passes through will not be repeated.
[0101] Estimated ride times are calculated based on the various road conditions along the recommended routes and the weather conditions on the day of the ride, allowing users to choose a route that's right for them. Road conditions can be categorized as flat road, uphill road, downhill road, uphill mountain, downhill mountain, etc., and weather conditions can be categorized as sunny, rainy, snowy, etc.
[0102] During the entire road book route generation process, the user only needs to enter the cycling starting point, cycling end point, and point of interest category labels. The operation is simple and convenient. This method can quickly and automatically generate a road book route based on the cycling starting point, cycling end point, and point of interest categories that the user wants to pass during the ride.
[0103] Point of Interest Classification: POI data is classified into different categories, such as supermarkets, scenic spots, hospitals, schools, and restaurants. The classification method uses a keyword matching method to identify and extract keywords and features in the POI data annotations for automatic classification.
[0104] Refined labeling: Use the collected feature data to label and describe each point of interest category, such as fine-grained labeling of different supermarket types, describing the type of scenic spot, the size of the scenic spot, etc. The labeling refers to the characteristics of each category and uses structured text descriptions, tags, or popularity to describe, for example:
[0105] Supermarkets: Label different supermarkets as retail supermarkets, wholesale supermarkets, convenience stores, etc., and describe the supermarket's product variety, scale, service level and other characteristics.
[0106] Attractions: Label different attractions as natural landscapes, cultural attractions, etc., and describe their size, beauty, number of visitors, and other characteristics.
[0107] Hotels: Label different hotels as economy, comfort, luxury, etc., and describe the hotel's star rating, facilities, service quality and other characteristics.
[0108] Refined annotations and descriptions can provide users with more accurate and personalized search and recommendation services, improving user experience and satisfaction.
[0109] For example:
[0110] [Corrected 08.04.2024 in accordance with Rule 91] A selectable POI area is determined based on the user-entered cycling start and end location information. POI category labels available for user input within the selectable POI area are found to be: hospital, restaurant, school, and supermarket. The "Hospital" POI category label corresponds to two POIs: Hospital 1 and Hospital 2. The "Restaurant" POI category label corresponds to two POIs: Restaurant 1 and Restaurant 2. The "School" POI category label corresponds to two POIs: School 1 and School 2. The "Supermarket" POI category label corresponds to three POIs: Supermarket 1, Supermarket 2, and Supermarket 3. The human-computer interaction terminal displays these four POI category labels.
[0111] When the user only chooses to input the "hospital" point of interest category label, only two recommended cycling routes are planned, namely, the starting point to Hospital 1 or Hospital 2 and then to the end point. When the user only chooses to input the "restaurant" point of interest category label, only two recommended cycling routes are planned, namely, the starting point to Restaurant 1 or Restaurant 2 and then to the end point. When the user only chooses to input the "school" point of interest category label, only two recommended cycling routes are planned, namely, the starting point to School 1 or School 2 and then to the end point. When the user only chooses to input the "supermarket" point of interest category label, only three recommended cycling routes are planned, namely, the starting point to Supermarket 1 or Supermarket 2 or Supermarket 3 and then to the end point, as shown in Figure 2. Figure 2 shows the recommended cycling routes corresponding to the above four types of input.
[0112] When the user first selects the "hospital" POI category label and then selects the "restaurant" POI category label, four recommended cycling routes are planned, as shown in Figure 3, namely:
[0113] Recommended cycling route 1: From front to back, it passes the starting point, hospital 1, restaurant 2, and the end point;
[0114] Recommended Cycling Route 2: From front to back, it passes the starting point, Hospital 1, Restaurant 1, and the end point.
[0115] Recommended Cycling Route 3: From front to back, it passes the starting point, Hospital 2, Restaurant 2, and the end point.
[0116] Recommended cycling route four: From front to back, pass the starting point, hospital 2, restaurant 1, and the end point.
[0117] The recommended cycling routes are arranged according to the distance from the starting point to the first point of interest.
[0118] Step S4 further includes the following steps:
[0119] Calculate the estimated total TA time for each recommended cycling route;
[0120] The method for calculating the estimated total time TA for a recommended cycling route is as follows:
[0121] The n points of interest that the recommended cycling route passes through are numbered 1, 2...n from front to back, 1≤i≤n, and the estimated stay time of each point of interest is calculated. The estimated stay time of the point of interest numbered i is t i , calculate the estimated total time TA: The estimated dwell time at each point of interest is obtained by calculating the average dwell time of users at the corresponding point of interest.
[0122] The human-computer interaction terminal displays the recommended cycling routes and the estimated cycling time and estimated total time TA for each recommended cycling route. The user selects one recommended cycling route as the road book route, and the corresponding road book route is generated based on the recommended cycling route selected by the user.
[0123] The road book route generated in step S5 displays the riding time of the route between adjacent points of interest, the estimated stay time at each point of interest, the introduction of each point of interest, the estimated riding time of the entire road book route, and the estimated total time TA.
[0124] A method for generating a route book in this embodiment further includes the following steps:
[0125] When the user rides along the generated route book, the estimated remaining riding time ST is calculated in real time.
[0126] Where 1≤r≤p, LD is the total distance of the route in the road book, DT is the distance the user has ridden along the route in the road book, TCF is the road condition correction factor, LCF is the weather correction factor, RCF is the route correction factor, and p is the total number of road conditions in the route in the road book. The p road conditions in the route in the road book are numbered 1, 2...p, LD1, LD2...LD p The road condition distances corresponding to the road conditions numbered 1, 2…p in the road book route. The road condition numbered 1 is a flat road condition, LTS1, LTS2…LTS m is the user's basic cycling speed corresponding to the road conditions numbered 1, 2, ..., p; FS is the user's historical average cycling speed under the current weather conditions and on a flat road; ND is the new route distance between the current user location and the destination. The new route is the sum of the route distance planned by the user to return to the route in the road book after deviating from the route in the road book and the remaining route distance in the road book.
[0127] LTS1,LTS2…LTS mThis can be calculated using historical data and user travel history. The weather correction factor (LCF) represents the difference between the current bicycle speed and the base speed. When the weather changes, the FS value needs to be dynamically updated to reflect the impact of real-time weather conditions on vehicle speed. The route correction factor (RCF) represents the impact of a new route change on ride time caused by a user deviating from the booked route.
[0128] A road book route generation system of this embodiment is used in the above-mentioned road book route generation method, including:
[0129] Human-computer interaction terminal: used for human-computer interaction with users;
[0130] Data collection module: used to collect users' riding tracks, riding data, input instructions and the latest points of interest information, and store them in the cloud server;
[0131] Data analysis module: used to perform statistical analysis on the collected data;
[0132] Route planning module: used to automatically plan multiple suitable recommended cycling routes based on the cycling starting point location information, cycling end point location information, and point of interest category labels entered by the user, calculate the estimated cycling time for each recommended cycling route, and provide multiple combination options based on different user needs.
[0133] In this solution, the data collected by the data collection module can be used for route planning and data analysis. The data analysis module can analyze the data collected by the data collection module to extract useful feature information, and classify and label it.
[0134] When using it, users can conveniently select designated tags (i.e., point of interest category tags) through the human-computer interaction interface of the human-computer interaction terminal. The route planning module quickly plans multiple recommended cycling routes and displays them on the human-computer interaction terminal, giving priority to displaying the recommended cycling routes closest to them. Users can select the appropriate recommended cycling route as the road book route.
[0135] The route planning module adopts a distributed computing model to automatically store all calculated route information in a distributed database, and backs up and synchronizes it to ensure data reliability and security.
[0136] A route book generation system according to this embodiment further includes:
[0137] Route optimization module: Optimizes and corrects the accuracy of existing routes by retrieving traffic data and weather data from the map database, calculates and synchronizes the estimated arrival time to the user in real time, and synchronizes the optimized route data to the cloud server.
[0138] Recommendation Module: This module accurately analyzes users' historical travel data and preferences, and combines them with external factors such as current traffic conditions, weather, and temperature to recommend the most suitable routes. Furthermore, this module uses machine learning based on user feedback and reviews to continuously optimize and enhance the accuracy and personalization of route recommendations.
[0139] To improve the accuracy and practicality of route planning within a region, when multiple rides are recorded in a particular area, the system uses machine learning technology to automatically analyze the latest map data regularly and adaptively update and optimize the POI data and routes within that area. The system also generates popular cycling routes for that area and recommends them to nearby cyclists. This route planning approach effectively meets travel needs in different scenarios, making it easier for users to achieve their travel goals.
[0140] Example 2: A method for generating a route book in this embodiment includes the following steps:
[0141] S1: Obtaining the starting point location information and the end point location information input by the user, and drawing a selectable area of points of interest between the starting point and the end point on an electronic map;
[0142] S2: Obtain the POI category labels input by the user and count the number n of POI category labels input by the user;
[0143] S3: Find all points of interest that belong to the categories corresponding to the n points of interest category labels and are located in the selectable area of the points of interest, and use these points of interest as candidate points of interest;
[0144] S4: numbering the n POI category labels as 1, 2, ..., n according to the order of the n POI category labels input by the user, planning several recommended cycling routes from the cycling starting point to the cycling ending point for the user to choose, each recommended cycling route sequentially passing through one candidate POI corresponding to each of the POI category labels numbered 1 to n, and calculating an estimated cycling time for each recommended cycling route;
[0145] S5: Generate a corresponding road book route based on the recommended cycling route selected by the user.
[0146] The method for determining the selectable area of POIs between the riding starting point and the riding ending point in step S1 is as follows:
[0147] An ellipse is drawn on an electronic map with the cycling start point and the cycling end point as the two endpoints of the ellipse's major axis. The length a of the ellipse's major axis is equal to the straight-line distance between the cycling start point and the cycling end point. The length b of the ellipse's minor axis satisfies: b = β*a, where β is a positive number less than 1 (0<β<1). The area enclosed by the ellipse is used as a selectable area for points of interest.
[0148] Step S2 includes the following steps:
[0149] S21: The selectable area of interest points is taken as the candidate area F0, and all interest point category labels that can be input by the user in the candidate area F0 are found as candidate labels. All the candidate labels form a candidate label group for the user to select and input. The user can only select an alternative label from the candidate label group;
[0150] S22: Obtaining the candidate tags input by the user. Each time the user selects and inputs an candidate tag from the candidate tag group, the candidate tag group is updated. The user can only select and input the next candidate tag from the updated candidate tag group.
[0151] When the user input selection completion instruction is obtained, all the interest point category labels input by the user and the input order are counted, and the number n of the interest point category labels input by the user is counted.
[0152] When the user enters the i-th candidate tag, 1≤i≤n, the method for updating the candidate tag group is as follows:
[0153] Determine the candidate region F according to the i-th candidate label i , find the candidate area F i All the POI category labels available for user input are used as new candidate labels, and all the new candidate labels are formed into a new candidate label group to replace the original candidate label group, thereby completing the update of the candidate label group.
[0154] Determine the candidate region F according to the i-th candidate label i The method is as follows:
[0155] Find the candidate area F i-1 All the interest points in the category corresponding to the i-th candidate label are calculated, and the sub-candidate area corresponding to each interest point is calculated, and the union of all sub-candidate areas is taken as the candidate area F i The sum of the areas enclosed by all the sub-candidate areas constitutes the candidate area F i , that is, any sub-candidate area is located in the candidate area F i Inside.
[0156] The method for calculating the sub-candidate area corresponding to a point of interest is as follows:
[0157] An ellipse is drawn on the electronic map with the location of the point of interest and the end point of the ride as the two endpoints of the ellipse's major axis. The length d of the ellipse's major axis is equal to the straight-line distance between the location of the point of interest and the end point of the ride. The length f of the ellipse's minor axis satisfies: f = β * d, where β is a positive number less than 1 (0 < β < 1). The area enclosed by the ellipse is taken as the sub-candidate area corresponding to the point of interest.
[0158] Step S4 includes the following steps:
[0159] S41: numbering the n interest point category labels as 1, 2, ..., n in sequence according to the order of the n interest point category labels input by the user;
[0160] S42: planning all cycling routes starting from the cycling starting point and sequentially passing through one candidate POI corresponding to each of the POI category labels numbered 1 to n and finally reaching the cycling end point, wherein each of the planned cycling routes passes through different n candidate POIs;
[0161] The n points of interest passed by the planned cycling route must meet the following requirements:
[0162] The n points of interest along the cycling route are numbered 1, 2, ..., n from the front to the back. The point of interest numbered k+1 must be within the sub-candidate area corresponding to the point of interest numbered k, and 1≤k≤n-1.
[0163] S43: Calculating the cycling distance of each cycling route, and selecting the cycling routes with cycling distances less than the maximum cycling distance d as recommended cycling routes for the user to select;
[0164] The maximum riding distance d is calculated by the following formula: d = α * a, where α is a positive number greater than 1;
[0165] S44: Calculating an estimated riding time for each recommended riding route;
[0166] The method for calculating the estimated riding time of the recommended cycling route is as follows:
[0167] N1: Count the number of road conditions m in the recommended cycling route, number the m road conditions in sequence as 1, 2...m, and find the road condition distances D1, D2...D corresponding to the road conditions numbered 1, 2...m in the cycling route. m , find out the basic speeds TS1, TS2…TS corresponding to the road conditions numbered 1, 2…m m , TS j Indicates the user's historical average riding speed under the road condition numbered j on a sunny day, 1≤j≤m;
[0168] N2: Use the following formula to calculate the estimated riding time for the recommended cycling route:
[0169] Where ET is the estimated riding time of the recommended riding route, and WCF is the weather correction factor;
[0170] The weather correction factor WCF is calculated using the following formula:
[0171] BS is the user's historical average riding speed on a sunny and level road, and WS is the user's historical average riding speed under the weather conditions during riding and on a level road.
[0172] This method differs from Example 1 in that the specific steps of step S2 and the steps of step S42 are different, while the rest of the method is the same. The above method ensures that the point of interest numbered 1 in the planned cycling route is located within the selectable area of interest points (i.e., the point of interest numbered 1 is located within the candidate area F0), and the points of interest numbered 2…n are located within the sub-candidate area corresponding to the previous point of interest (i.e., within the area enclosed by the ellipse with the line connecting the previous point of interest and the cycling endpoint as the major axis). This ensures that the routes of adjacent points of interest in the planned cycling route are oriented toward the endpoint and do not deviate too far from the endpoint, thus avoiding planning a route in the opposite direction of the endpoint, improving the efficiency of planning effective routes, and reducing the time and resources consumed by planning ineffective routes.
[0173] A road book route generation system of this embodiment is used in the above-mentioned road book route generation method, including:
[0174] Human-computer interaction terminal: used for human-computer interaction with users;
[0175] Data collection module: used to collect users' riding tracks, riding data, input instructions and the latest points of interest information, and store them in the cloud server;
[0176] Data analysis module: used to perform statistical analysis on the collected data;
[0177] Route planning module: used to automatically plan multiple suitable recommended cycling routes based on the cycling starting point location information, cycling end point location information, and point of interest category labels entered by the user, calculate the estimated cycling time for each recommended cycling route, and provide multiple combination options based on different user needs.
Claims
1. A method for generating a route book, characterized in that: The following steps are involved: S1: Obtaining the riding starting point location information and the riding end point location information input by the user, and determining a selectable area of POIs located between the riding starting point location and the riding end point location; S2: Obtain the POI category labels input by the user, and count the number n of POI category labels input by the user; S3: Find all points of interest that belong to the categories corresponding to the n points of interest category labels and are located in the selectable area of the points of interest, and use these points of interest as candidate points of interest; S4: numbering the n interest point category labels as 1, 2, ... n in sequence according to the order of the n interest point category labels input by the user, planning a number of recommended cycling routes from the cycling starting point to the cycling end point for the user to choose, each recommended cycling route passes through one candidate interest point corresponding to each of the interest point category labels numbered 1 to n from the front to the back, and calculating the estimated cycling time for each recommended cycling route; S5: Generate a corresponding road book route according to the recommended cycling route selected by the user.
2. A method for generating a route book according to claim 1, characterized in that: The method for determining the selectable area of POIs between the riding starting point and the riding end point in step S1 is as follows: An ellipse is drawn on an electronic map with the cycling starting point and the cycling end point as the two endpoints of the ellipse's major axis. The length a of the ellipse's major axis is equal to the straight-line distance between the cycling starting point and the cycling end point. The length b of the ellipse's minor axis satisfies: b=β*a, where β is a positive number less than 1. The area enclosed by the ellipse is used as a selectable area for points of interest.
3. A method for generating a route book according to claim 1, characterized in that: The step S2 comprises the following steps: S21: Finding all the POI category labels available for input by the user in the POI selectable area and the number of times each POI category label can be input, for the user to select and input; The number of times each type of interest point category label can be input is equal to the total number of interest points in the interest point selectable area that belong to the category corresponding to the type of interest point category label; S22: After the user inputs all selected POI category labels, the POI category labels input by the user and the input sequence are obtained, and the number n of POI category labels input by the user is counted.
4. A method for generating a route book according to claim 1, 2 or 3, characterized in that: The specific steps of step S3 are as follows: According to each POI category label input by the user, all POIs located in the POI selectable area and belonging to the category corresponding to the POI category label are searched from the POI information database, and these POIs are used as candidate POIs.
5. A method for generating a route book according to claim 1, characterized in that: The step S4 comprises the following steps: S41: numbering the n interest point category labels as 1, 2, ... n in sequence according to the order of the n interest point category labels input by the user; S42: planning all cycling routes starting from the cycling starting point and passing through one candidate point of interest corresponding to each of the point of interest category labels numbered 1 to n and finally reaching the cycling end point; S43: Calculate the cycling distance of each cycling route, and select the cycling routes with cycling distances less than the maximum cycling distance d as recommended cycling routes for selection by the user; S44: Calculate an estimated riding time for each recommended riding route.
6. A method for generating a route book according to claim 5, characterized in that: The n candidate points of interest passed by each cycling route planned in step S42 are different.
7. A method for generating a route book according to claim 5, characterized in that: The maximum riding distance d is calculated by the following formula: d=α*a, where α is a positive number >1.
8. A method for generating a route book according to claim 1, 2 or 3, characterized in that: The method for calculating the estimated riding time of the recommended riding route in step S4 is as follows: N1: Count the number of road conditions m in the recommended cycling route, number the m road conditions 1, 2, ..., m in sequence, and find the road condition distances D1, D2, ..., D corresponding to the road conditions numbered 1, 2, ..., m in the cycling route. m , find out the basic riding speeds TS1, TS2…TS corresponding to the road conditions numbered 1, 2…m m ; N2: Use the following formula to calculate the estimated riding time for the recommended riding route: Among them, ET is the estimated riding time of the recommended riding route, and WCF is the weather correction factor.
9. A method for generating a route book according to claim 8, characterized in that: The weather correction factor WCF is calculated using the following formula: Among them, BS is the user's historical average riding speed under sunny road conditions, and WS is the user's historical average riding speed under the weather conditions and road conditions during riding.
10. A method for generating a route book according to claim 8, characterized in that: Step S4 also includes the following steps: Calculate the estimated total TA time for each recommended cycling route; The method for calculating the estimated total time TA for a recommended cycling route is as follows: The n points of interest that the recommended cycling route passes through are numbered 1, 2, ..., n from front to back, 1≤i≤n, and the estimated stay time of each point of interest is calculated. The estimated stay time of the point of interest numbered i is t i , calculate the estimated total time TA:
11. A method for generating a route book according to claim 5, characterized in that: The step S2 comprises the following steps: S21: taking the selectable area of interest points as the candidate area F0, finding all interest point category labels in the candidate area F0 that can be input by the user as candidate labels, and forming all the candidate labels into a candidate label group for the user to select and input. The user can only select a candidate label from the candidate label group to input; S22: Acquire the candidate tags input by the user. Each time the user selects and inputs an candidate tag from the candidate tag group, the candidate tag group is updated. The user can only select and input the next candidate tag from the updated candidate tag group. When the user inputs a selection completion instruction, all the interest point category labels and the input order input by the user are counted, and the number n of interest point category labels input by the user is counted; When the user enters the i-th candidate tag, 1≤i≤n, the method for updating the candidate tag group is as follows: Determine the candidate region F according to the i-th candidate label i , find out the candidate area F i All the POI category labels available for user input are used as new candidate labels, and all the new candidate labels are formed into a new candidate label group to replace the original candidate label group, thereby completing the update of the candidate label group; Determine the candidate region F according to the i-th candidate label i The method is as follows: Find the candidate area F i-1 All interest points in the category corresponding to the i-th candidate label are calculated, and the sub-candidate area corresponding to each interest point is calculated, and the union of all sub-candidate areas is taken as the candidate area F i ; The method for calculating the sub-candidate area corresponding to a certain point of interest is as follows: Draw an ellipse on the electronic map with the location of the point of interest and the location of the end of the ride as the two endpoints of the major axis of the ellipse, the major axis length d of the ellipse is equal to the straight-line distance between the location of the point of interest and the location of the end of the ride, and the minor axis length f of the ellipse satisfies: f=β*d, β is a positive number less than 1, and the area enclosed by the ellipse is taken as the sub-candidate area corresponding to the point of interest; The n points of interest passed by the cycling route planned in step S42 must meet the following requirements: The n points of interest that the cycling route passes through are numbered 1, 2, ..., n from the front to the back, and the point of interest numbered k+1 must be located in the sub-candidate area corresponding to the point of interest numbered k, 1≤k≤n-1.
12. A road book route generation system, used in a road book route generation method according to any one of claims 1 to 11, characterized in that: include: Human-computer interaction terminal: used for human-computer interaction with users; Data collection module: used to collect users' riding tracks, riding data, input instructions and the latest points of interest information, and store them in the cloud server; Data analysis module: used to perform statistical analysis on the collected data; Route planning module: used to automatically plan multiple suitable recommended cycling routes based on the cycling starting point location information, cycling end point location information, and point of interest category labels input by the user, calculate the estimated cycling time for each recommended cycling route, and provide multiple combination options based on different user needs.
Citation Information
Patent Citations
Path planning method for determining target route from starting point to ending point and device thereof
CN101532842A
Optimized planning method of tour travelling route
CN108444491A
Route optimization including points of interest
US20150285652A1
Method for selecting travel routes based on user-defined essential points of interest
US20200271472A1
Identifying a route configured to travel through multiple points of interest
US8095303B1