A method, device, server and storage medium for recommending boarding location

By dividing grids in the interest AOI, a collection of candidates and historical ride locations is obtained, and the recommended location is determined based on the distance, the problem of long recommended ride locations is solved, and reasonable ride location recommendations are achieved, reducing the cost of users' travel.

CN114723508BActive Publication Date: 2025-08-26ALIBABA GROUP HOLDING LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110013951.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-01-06
Publication Date
2025-08-26
Estimated Expiration
2041-01-06

AI Technical Summary

Technical Problem

In the prior art, recommendation solutions for riding locations often lead to a distance between the recommended locations and users, increasing the cost of users' travel.

Method used

By dividing the interest surface AOI where the user's location is located into multiple grids, the first grid and the surrounding second grid are determined, a collection of candidate ride positions and historical real ride positions are obtained, and the recommended ride positions are determined based on the distance.

Benefits of technology

Recommend nearer ride locations for users to reduce the travel cost of users to arrive at the recommended location.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114723508B_ABST
    Figure CN114723508B_ABST
Patent Text Reader

Abstract

An embodiment of the present application provides a method, device, server, and storage medium for recommending boarding locations, wherein the method includes: obtaining a user location; if the user location is within an area of ​​interest (AOI), taking the grid in which the user location is located within the AOI as a first grid, wherein the AOI is pre-divided into multiple grids; determining a second grid located around the first grid within the AOI; obtaining a first set of candidate boarding locations corresponding to the area formed by the first and second grids; obtaining a second set of historical real boarding locations corresponding to historical user locations located in the first grid; and determining a recommended boarding location from the candidate boarding locations in the first set based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set. The embodiment of the present application can recommend reasonable boarding locations to users, thereby reducing the travel cost for users to reach the recommended boarding locations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the technical field of location-based services, and in particular to a method, device, server, and storage medium for recommending a ride location. Background Art

[0002] In scenarios such as online ride-hailing where users take other people's vehicles, it is necessary to recommend a boarding location (or pick-up point) for the user so that the user can select the location where the user and the driver will meet from the recommended boarding locations. However, an unreasonable boarding location recommendation scheme is likely to result in the recommended boarding location being far away from the user, bringing additional travel costs to the user. Therefore, how to improve the boarding location recommendation scheme to recommend a reasonable boarding location to the user has become a technical problem that technical personnel in this field urgently need to solve. Summary of the Invention

[0003] In view of this, embodiments of the present application provide a method, device, server, and storage medium for recommending a boarding location to a user.

[0004] To achieve the above objectives, the present invention provides the following technical solutions:

[0005] A method for recommending a ride location, comprising:

[0006] Get user location;

[0007] If the user position is within the area of ​​interest (AOI), the grid where the user position is located in the AOI is used as the first grid, wherein the AOI is pre-divided into multiple grids;

[0008] Determine a second grid located around the first grid in the AOI;

[0009] Obtain a first set of candidate boarding locations corresponding to an area formed by the first grid and the second grid;

[0010] Acquire historical real riding locations corresponding to historical user locations located in the first grid to form a second set;

[0011] A recommended boarding position is determined from the candidate boarding positions in the first set according to the distance between the candidate boarding positions in the first set and the historical real boarding positions in the second set.

[0012] The present application also provides a device for recommending a riding location, including:

[0013] Location acquisition module, used to obtain user location;

[0014] a first grid determination module configured to, if the user position is within an area of ​​interest (AOI), determine the grid where the user position is located within the AOI as a first grid, wherein the AOI is pre-divided into a plurality of grids;

[0015] A second grid determining module, configured to determine a second grid located around the first grid in the AOI;

[0016] A first set acquisition module is configured to acquire candidate boarding locations corresponding to an area formed by a first grid and a second grid to form a first set;

[0017] A second set acquisition module is configured to acquire historical real riding locations corresponding to historical user locations located in the first grid to form a second set;

[0018] The recommended boarding location determination module is used to determine a recommended boarding location from the candidate boarding locations in the first set according to the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set.

[0019] An embodiment of the present application also provides a server, comprising: at least one memory and at least one processor, wherein the memory stores one or more computer-executable instructions, and the processor calls the one or more computer-executable instructions to execute the ride location recommendation method as described above.

[0020] An embodiment of the present application also provides a storage medium, which stores one or more computer-executable instructions, and the one or more computer-executable instructions are used to execute the above-mentioned method for recommending a riding location.

[0021] The method for recommending boarding locations provided in an embodiment of the present application can obtain the user location. When the user location is located in an AOI, the embodiment of the present application can use the grid where the user location is located in the AOI as the first grid, wherein the AOI is pre-divided into multiple grids; after determining the second grid located around the first grid in the AOI, the embodiment of the present application can obtain the candidate boarding locations corresponding to the area range formed by the first grid and the second grid to form a first set, and the historical real boarding locations corresponding to the historical user locations located in the first grid to form a second set; and then determine the recommended boarding location from the candidate boarding locations in the first set based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set.

[0022] Since the candidate boarding locations in the first set correspond to the area formed by the first grid and the second grid, the candidate boarding locations in the first set include the candidate boarding locations corresponding to the first grid. Therefore, the embodiment of the present application can use the candidate boarding locations in the first set as the range for determining the recommended boarding locations, and use the historical real boarding locations in the second set as a reference for determining the recommended boarding locations. Based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set, the embodiment of the present application can determine the recommended boarding locations that are closer to the user's location from the candidate boarding locations in the first set, recommend a reasonable boarding location to the user, and reduce the travel cost for the user to reach the recommended boarding location. It can be seen that the boarding location recommendation method provided by the embodiment of the present application can recommend a reasonable boarding location to the user, and reduce the travel cost for the user to reach the recommended boarding location. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without any creative work.

[0024] Figure 1 This is an example diagram of the existing recommended boarding locations;

[0025] Figure 2 The process of the method for recommending a boarding location provided in an embodiment of the present application;

[0026] Figure 3 A flowchart for determining a second grid provided in an embodiment of the present application;

[0027] Figure 4 An example diagram for determining the second grid provided in an embodiment of the present application;

[0028] Figure 5 This is an example diagram of obtaining the historical real riding location provided in the embodiment of the present application;

[0029] Figure 6 A flowchart for determining a recommended boarding location provided in an embodiment of the present application;

[0030] Figure 7 An example diagram for determining coverage ratio provided in an embodiment of the present application;

[0031] Figure 8 A flowchart of the training recommendation model provided in the embodiment of the present application;

[0032] Figure 9An example diagram of recommended boarding locations provided in an embodiment of the present application;

[0033] Figure 10 A block diagram of a vehicle location recommendation device provided in an embodiment of the present application;

[0034] Figure 11 Another block diagram of the vehicle location recommendation device provided in an embodiment of the present application;

[0035] Figure 12 Another block diagram of the vehicle location recommendation device provided in an embodiment of the present application;

[0036] Figure 13 A block diagram of a server provided in accordance with an embodiment of the present application. DETAILED DESCRIPTION

[0037] Currently, when recommending ride locations for users, if the user is located in an AOI (area of ​​interest), the ride location will be recommended near the door of the AOI. It should be noted that AOI refers to a regional geographic entity in map data, such as a school, shopping mall, office building, park, residential area, etc.

[0038] The above method uniformly recommends the boarding location near the door of the AOI, which is likely to cause the recommended boarding location to be far away from the user, thereby bringing additional travel costs to the user; for example, Figure 1 As shown, Figure 1 The box in the middle represents the AOI, which includes an open space in the upper left and an office building in the lower right. When the user is in the open space in the upper left of the AOI (as shown by the poke point in the upper left area of ​​the figure), if the recommended boarding location is near the door of the AOI, the recommended boarding locations are points 1, 2, and 3, as shown in the lower right area of ​​the figure. It can be seen that the user is far away from recommended boarding locations 1, 2, and 3. The user needs to walk or use other means to reach the recommended boarding location, which undoubtedly increases the user's travel cost.

[0039] It can be seen that when the user is within the AOI, it is not reasonable to uniformly recommend the boarding location to the vicinity of the door of the AOI. Based on this, the embodiment of the present application provides an improved boarding location recommendation scheme to recommend a reasonable boarding location to the user and reduce the travel cost of the user to reach the recommended boarding location.

[0040] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0041] In an optional implementation, Figure 2 The optional process of the method for recommending a ride location provided by an embodiment of the present application is shown. The method process can be implemented by a server on the network side. The server can be a server specially set up in the embodiment of the present application to recommend ride locations to users, or a server that provides travel services, such as a server for an online car-hailing service; optionally, Figure 2 As shown, the method for recommending a boarding location provided in the embodiment of the present application may include:

[0042] Step S100: Obtain user location.

[0043] The user location is the starting point of the trip set by the user. In possible implementations, the user location can be, for example, the user's positioning location, or a location selected by the user by dragging, clicking, or the like in map data, or a location input by the user. In an optional implementation, taking the online car-hailing service as an example, when a user opens the online car-hailing service page through a user terminal, the page can display the user's location and surrounding map data. In this case, the user location can be obtained in multiple ways:

[0044] Set the user location to the user's location;

[0045] The map data can display the user's stamped point, and the user's stamped point can adjust its position as the user drags or clicks on the map data. Generally speaking, the user's stamped point is initially located at the user's positioning position, and as the user drags or clicks, the position of the user's stamped point is continuously adjusted on the map data; thus, the user can adjust the position of the user's stamped point by dragging, clicking, etc. on the map data, and set the position of the user's stamped point as the user's position;

[0046] The page of the online car-hailing service may provide an input box for the user to enter the starting location, and the user may enter the user location in the input box.

[0047] After determining the user location, the user terminal may upload the user location to the server so that the server can obtain the user location.

[0048] Step S110: If the user position is within the AOI, the grid where the user position is located in the AOI is used as the first grid, wherein the AOI is pre-divided into multiple grids.

[0049] After obtaining the user location, the server can determine whether the user location is within the AOI. Specifically, the embodiment of the present application can record the location range of the AOI. By determining whether the user location falls within the location range of the AOI, it can be determined whether the user location is within the AOI; if the user location falls within the location range of the AOI, it is considered that the user location is within the AOI; otherwise, the user location is not within the AOI.

[0050] When the user's location is within the AOI, the server may recommend a boarding location based on the solution provided in the embodiment of the present application. In the embodiment of the present application, the AOI may be pre-divided into multiple grids to perform fine-grained regional division of the AOI. The grids may be hexagonal grids or grids of other shapes, and the embodiment of the present application is not limited thereto. It should be noted that the multiple grids into which the AOI is divided may exactly cover the AOI or may exceed the AOI, depending on the matching between the AOI shape and the grid shape. In one example, the embodiment of the present application may pre-divide the AOI into multiple hexagonal grids, and the grids at the edge may exceed the coverage area of ​​the AOI.

[0051] When the AOI is divided into multiple grids, the embodiment of the present application can determine the grid where the user position is located in the AOI. For ease of explanation, the grid where the user position is located in the AOI can be used as the first grid. It should be noted that the first grid may be completely covered by the AOI or partially covered by the AOI. For example, when the first grid is at the edge of the AOI, the first grid may partially exceed the AOI.

[0052] Step S120: Determine a second grid located around the first grid in the AOI.

[0053] Based on the first grid where the user is located, the embodiment of the present application can determine a second grid in the AOI located around the first grid. The number of determined second grids can be multiple, wherein a second grid may partially exceed the AOI or may not exceed the AOI.

[0054] In an optional implementation of determining the second grid, the embodiment of the present application may expand the grid in the AOI with the first grid as the center, thereby determining the second grid located around the first grid in the AOI based on the expanded grid;

[0055] In an optional specific implementation, the embodiment of the present application may define a first number of layers of extended grids, thereby expanding the first number of layers of grids with the first grid as the center in the AOI. The first number of layers may be defined according to actual conditions and is not limited by the embodiment of the present application. In a possible example, if the first number of layers is defined as one layer, the embodiment of the present application may expand one layer of grids outward from the first grid in the AOI. Of course, defining the first number of layers as one layer is only an example, and the embodiment of the present application may define a first number of layers greater than one layer.

[0056] Based on the expanded grid, an embodiment of the present application can determine multiple second grids around the first grid in the AOI. In a possible implementation, the second grid can be the outermost grid expanded with the first grid as the center. For example, when the first number of layers is defined as one layer, with the first grid as the center, the grid located around the first grid in the AOI is obtained as the second grid, and the obtained second grid can at least include the grid adjacent to the first grid; in other possible implementations, the second grid can also be the adjacent grid of the outermost grid expanded with the first grid as the center, or the adjacent grid of the expanded outermost grid and the outermost grid. For example, when the first number of layers is defined as one layer, the second grid can include the grid adjacent to the first grid, and the adjacent grid of the grid adjacent to the first grid.

[0057] Step S130: Obtain a first set of candidate boarding locations corresponding to the area formed by the first grid and the second grid.

[0058] After obtaining the first grid where the user's location is located and the second grid around the first grid in the AOI, the embodiment of the present application can obtain the candidate boarding locations corresponding to the area range formed by the first grid and the second grid. The obtained candidate boarding locations can constitute a first set, that is, the set composed of the candidate boarding locations within the area range formed by the first grid and the second grid is taken as the first set; it should be noted that in the recommendation scenario of the boarding location, some candidate boarding locations are usually pre-set in an AOI, so as to screen out the boarding locations to be recommended to the user from these candidate boarding locations. Therefore, after obtaining the first grid and the second grid, the embodiment of the present application can obtain the candidate boarding locations corresponding to the area range formed by the first grid and the second grid from the candidate boarding locations pre-set in the AOI to obtain the first set.

[0059] Step S140: Acquire historical real riding locations corresponding to historical user locations located in the first grid to form a second set.

[0060] The historical user location is a historical user location, such as the user's historical travel starting point, and the historical actual boarding location is the user's historical actual boarding location. It is understandable that with respect to the historical user location, the user boarded the vehicle at the historical actual boarding location, and therefore there is a corresponding relationship between the historical user location and the historical actual boarding location. After obtaining the first grid, the embodiment of the present application can determine the historical user location within the first grid and obtain the historical actual boarding location corresponding to the historical user location within the first grid. For ease of explanation, the set of historical actual boarding locations can be used as the second set. It is understandable that there may be multiple historical user locations within the first grid, and these multiple historical user locations have corresponding multiple historical actual boarding locations. These multiple historical actual boarding locations can constitute the second set.

[0061] Step S150: Determine a recommended boarding location from the candidate boarding locations in the first set based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set.

[0062] It can be understood that, since the candidate boarding locations in the first set correspond to the area formed by the first grid and the second grid, the candidate boarding locations in the first set include the candidate boarding locations corresponding to the first grid. For example, the candidate boarding locations in the first set include some candidate boarding locations pre-set for the first grid. At the same time, since the user location is located in the first grid, the historical real boarding location corresponding to the historical user location in the first grid can be used as a reference for determining the recommended boarding location in the embodiment of the present application, and the candidate boarding locations corresponding to the area formed by the first grid and the second grid can be used as the range for determining the recommended boarding location in the embodiment of the present application.

[0063] Based on the above ideas, the embodiment of the present application can compare the distances between each candidate boarding location in the first set and each historical real boarding location in the second set, and thus determine the recommended boarding location from the candidate boarding locations in the first set based on the compared distances, so as to determine the recommended boarding location that is closer to the user's location.

[0064] The method for recommending boarding locations provided in an embodiment of the present application can obtain the user location. When the user location is located in an AOI, the embodiment of the present application can use the grid where the user location is located in the AOI as the first grid, wherein the AOI is pre-divided into multiple grids; after determining the second grid located around the first grid in the AOI, the embodiment of the present application can obtain the candidate boarding locations corresponding to the area range formed by the first grid and the second grid to form a first set, and the historical real boarding locations corresponding to the historical user locations located in the first grid to form a second set; and then determine the recommended boarding location from the candidate boarding locations in the first set based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set.

[0065] Since the candidate boarding locations in the first set correspond to the area formed by the first grid and the second grid, the candidate boarding locations in the first set include the candidate boarding locations corresponding to the first grid. Therefore, the embodiment of the present application can use the candidate boarding locations in the first set as the range for determining the recommended boarding locations, and use the historical real boarding locations in the second set as a reference for determining the recommended boarding locations. Based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set, the embodiment of the present application can determine the recommended boarding locations that are closer to the user's location from the candidate boarding locations in the first set, recommend a reasonable boarding location to the user, and reduce the travel cost for the user to reach the recommended boarding location. It can be seen that the boarding location recommendation method provided by the embodiment of the present application can recommend a reasonable boarding location to the user, and reduce the travel cost for the user to reach the recommended boarding location.

[0066] In an optional implementation, the second grid located around the first grid in the AOI may be: a grid adjacent to the outermost network after the first number of layers are expanded with the first grid as the center; optionally, Figure 3 The optional process of determining the second grid provided in the embodiment of the present application is shown as follows: Figure 3 As shown, the process may include:

[0067] Step S200: In the AOI, a first layer of grids is expanded with the first grid as the center.

[0068] For example, assuming the first layer is one layer, combined with Figure 3 As shown, in the embodiment of the present application, in the AOI, a grid g1 is expanded by one layer, with the first grid g where the user is located as the center. Of course, the specific value of the first layer can be defined according to actual conditions. The use of one layer as the first layer in this section is merely an example.

[0069] Step S210: Determine the grid adjacent to the expanded outermost grid as the second grid surrounding the first grid.

[0070] In the embodiment of the present application, the second grid is not expanded in step S200, but is obtained by expanding one grid outward on the basis of the outermost grid expanded in step S200, that is, the grid adjacent to the outermost grid expanded in step S200 is used as the second grid; for example, further combined with Figure 4 As shown, the outermost grid expanded in step S200 is g1, and the multiple grids g2 adjacent to g1 serve as the second grid.

[0071] It should be noted that Figure 3The process shown is only an optional process for determining the second grid surrounding the first grid in an embodiment of the present application. Based on different definitions of the surrounding grids, the embodiment of the present application can also use different methods to determine the second grid. For example, the outermost grid expanded in step S200 can be used as the second grid, etc. For example, when at least one layer of grids is expanded, the second grid can also include at least a grid adjacent to the first grid.

[0072] After determining the first grid and the second grid, the embodiment of the present application can obtain multiple candidate boarding locations corresponding to the area range formed by the first grid and the second grid to form a first set, and obtain the historical real boarding locations corresponding to the historical user locations located in the first grid to form a second set; for example, Figure 4 As shown, the first grid g and the second grid g1 are taken as an example (of course, the second grid can also be g2, or g1+g2, depending on the definition of the surrounding grids. Here, the grid g1 adjacent to the first grid g is used as the second grid for explanation). For the first grid g and the second grid g1, the embodiment of the present application can determine the candidate boarding positions within the area of ​​the first grid g and the second grid g1 when multiple candidate boarding positions are pre-set in the AOI to form a first set. For the first grid g, the embodiment of the present application can determine the historical real boarding positions corresponding to the historical user positions in the first grid g to form a second set. As an example, Figure 5 As shown, the embodiment of the present application can record the correspondence between the historical user positions and the historical real riding positions, so that the embodiment of the present application can determine the historical real riding positions corresponding to the historical user positions located in the first grid from the correspondence, thereby obtaining the second set;

[0073] After determining the first set and the second set, the embodiment of the present application may use the candidate boarding locations in the first set as a range for determining the recommended boarding location, and use the historical real boarding locations in the second set as a reference for determining the recommended boarding location, thereby determining the recommended boarding location from the candidate boarding locations in the first set;

[0074] In a possible specific implementation, the number of candidate boarding locations in the first set is multiple, and the number of historical real boarding locations in the second set is also multiple; thus, for any candidate boarding location in the first set, the embodiment of the present application can determine the distance between the candidate boarding location and each historical real boarding location in the second set, and then the embodiment of the present application can determine the coverage ratio of the candidate boarding location covering the historical real boarding locations in the second set based on the distance, wherein, if the distance between the candidate boarding location and a historical real boarding location in the second set is less than a distance threshold, it can be considered that the candidate boarding location covers the historical real boarding location; the embodiment of the present application performs the above processing on each candidate boarding location in the first set, and can obtain the coverage ratio corresponding to each candidate boarding location in the first set, and thus based on the coverage ratio corresponding to each candidate boarding location in the first set, the embodiment of the present application can determine a recommended boarding location from the candidate boarding locations in the first set, so that the distance between the recommended boarding location and the user location is small;

[0075] Based on the above implementation ideas for determining the recommended boarding location, optional: Figure 6 The optional process of determining the recommended boarding location provided by the embodiment of the present application is shown as follows: Figure 6 As shown, the process may include:

[0076] Step S300: For any candidate boarding location in the first set, determine the distance between the candidate boarding location and each historical real boarding location in the second set, and determine the coverage ratio of the candidate boarding location to the historical real boarding locations in the second set based on the comparison result of the distance and the distance threshold.

[0077] In this embodiment of the present application, for any candidate boarding location in the first set, the distance between the candidate boarding location and each historical real boarding location in the second set can be determined, thereby obtaining multiple corresponding distances for one candidate boarding location in the first set;

[0078] For example, Figure 7As shown, assuming that the number of candidate boarding positions in the first set is n, namely candidate boarding position A1, candidate boarding position A2, ... candidate boarding position An, Ai is the i-th candidate boarding position therein, i∈n; assuming that the number of historical real boarding positions in the second set is m, namely historical real boarding position B1, historical real boarding position B2, ... historical real boarding position Bm; then for the i-th candidate boarding position Ai, the embodiment of the present application can determine the distances between Ai and the m historical real boarding positions respectively, and obtain m distances corresponding to Ai, where one distance represents the distance between Ai and a historical real boarding position, for example, Ai1 is the distance between Ai and the historical real boarding position B1, Ai2 is the distance between Ai and the historical real boarding position B2, and so on;

[0079] Furthermore, each candidate boarding position in the first set can be processed in this way to determine the distance from each of the m historical real boarding positions in the second set, and obtain multiple distances corresponding to each candidate boarding position in the first set.

[0080] Furthermore, for any candidate boarding location in the first set, after obtaining the distance between the candidate boarding location and a historical real boarding location in the second set, the embodiment of the present application may compare the distance with a distance threshold. If the distance is less than the distance threshold, it may be determined that the candidate boarding location covers the historical real boarding location. That is, the embodiment of the present application may determine the historical real boarding location whose distance is less than the distance threshold as the historical real boarding location covered by the candidate boarding location. Thus, the embodiment of the present application may divide the number of historical real boarding locations covered by the candidate boarding location by the total number of historical real boarding locations in the second set to obtain a coverage ratio of the candidate boarding location covering the historical real boarding locations in the second set.

[0081] Combine Figure 7 As shown, after determining the distances between Ai and m historical real boarding positions respectively and obtaining the m distances corresponding to Ai, the embodiment of the present application can compare the m distances from Ai1 to Aim with the distance threshold respectively, and determine the historical real boarding positions with distances less than the distance threshold as the historical real boarding positions covered by Ai, and then divide the number of historical real boarding positions covered by Ai by the total number of historical real boarding positions in the second set (such as m), and the coverage ratio of the i-th candidate boarding position Ai covering the historical real boarding positions in the second set can be obtained (that is, the coverage ratio corresponding to Ai is obtained).

[0082] Based on the above method, the embodiment of the present application can respectively determine the coverage ratio corresponding to each candidate boarding position in the first set.

[0083] In other possible implementations of determining the coverage ratio of candidate boarding locations, the embodiment of the present application can determine the distances between any candidate boarding location in the first set and each historical real boarding location in the second set, obtain multiple distances corresponding to the candidate boarding location, and thus determine the proportion of distances less than the distance threshold in the multiple distances, and use the proportion as the coverage ratio corresponding to the candidate boarding location; Figure 7 Taking the example shown as an example, after obtaining the m distances corresponding to Ai, the number of distances less than the distance threshold can be determined from the m distances, and the number is divided by m to obtain the proportion of distances less than the distance threshold in the m distances corresponding to Ai. This proportion can represent the coverage ratio of Ai to the m historical real riding locations in the second set.

[0084] Step S310: Determine a recommended boarding location from the candidate boarding locations in the first set according to the coverage ratio corresponding to each candidate boarding location in the first set.

[0085] After obtaining the coverage ratio corresponding to each candidate boarding location in the first set, the embodiment of the present application can determine a recommended boarding location from the candidate boarding locations in the first set based on the coverage ratio corresponding to each candidate boarding location;

[0086] For example, the embodiment of the present application may determine the candidate boarding location with the highest coverage ratio as the recommended boarding location;

[0087] For another example, an embodiment of the present application may set the number of recommended boarding positions. If the number is defined as a set number, the embodiment of the present application may determine the set number of candidate boarding positions with the highest coverage ratio from the first set as recommended boarding positions; in a specific optional implementation, the embodiment of the present application may sort the candidate boarding positions in the first set in order of coverage ratio from high to low, and determine the set number of candidate boarding positions at the top of the sort as recommended boarding positions.

[0088] Since the coverage ratio of the candidate boarding locations is determined based on the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set, when the distance between a candidate boarding location and a historical real boarding location is less than the distance threshold, the embodiment of the present application may consider that the candidate boarding location covers the historical real boarding location. Therefore, the coverage ratio of the candidate boarding location can reflect: the overall comprehensive distance between the candidate boarding location and the historical real boarding locations in the second set, that is, the higher the coverage ratio of a candidate boarding location, the closer the overall comprehensive distance between the candidate boarding location and the historical real boarding locations in the second set; at the same time, since the historical real boarding locations in the second set are recalled based on the first grid where the user location is located, the embodiment of the present application determines a candidate boarding location with a high coverage ratio from the candidate boarding locations in the first set according to the coverage ratio of each candidate boarding location, as the recommended boarding location, so that the distance between the recommended boarding location and the user location can be closer, and a boarding location that is closer to the user location can be recommended, thereby reducing the travel cost of the user to reach the recommended boarding location.

[0089] Optionally, after determining the coverage ratio of each candidate boarding location in the first set, the embodiment of the present application may also use a recommendation model to determine a recommended boarding location. In addition to using the coverage ratio of each candidate boarding location in the first set, the recommendation model may also combine other features to more accurately determine the recommended boarding location. Optionally, Figure 8 The optional process of training the recommendation model in the embodiment of the present application is shown as follows: Figure 8 As shown, the process may include:

[0090] Step S400: Acquire training features based on historical travel tasks; the training features include at least: features of the AOI where the historical user location corresponding to the historical travel task is located, grid features of the grid where the historical user location is located, and features of the candidate boarding location corresponding to the area formed by the grid where the historical user location is located and the surrounding grids.

[0091] Historical travel tasks, such as historical ride-hailing tasks, can be used to obtain training features for training recommendation models based on historical travel tasks. The training features may include:

[0092] Characteristics of the AOI of the historical user location corresponding to the historical travel task. Embodiments of the present application can determine the historical user location of the historical travel task (i.e., the historical starting location set by the user in the historical travel task), and then determine the characteristics of the AOI of the historical user location, such as: AOI type, number of grid layers of the AOI, characteristics of the historical actual ride location obtained based on the grid where the historical user location is located, etc.

[0093] Characteristics of the candidate boarding locations corresponding to the area formed by the grid where the historical user location is located and the surrounding grids; after determining the surrounding grids with the grid where the historical user location is located as the center, the embodiment of the present application can determine the characteristics of the candidate boarding locations corresponding to the area formed by the grid where the historical user location is located and the surrounding grids (such as the number of candidate boarding locations within the area, the coverage ratio corresponding to the candidate boarding locations, and other characteristics).

[0094] Furthermore, the embodiment of the present application may also set a variety of training features. For example, the training features may further include at least one of the following:

[0095] Time characteristics of historical travel tasks, such as the time information, day of the week, hour range information, etc.

[0096] Distance features of historical travel tasks, such as the distance between the historical user location and the user's actual location, the distance between the historical user location and the historical actual ride location, the distance between the historical user location and the center of the grid where the historical user location is located, the distance between the user's actual location and the historical actual ride location, the distance between the user's actual location and the center of the grid where the historical user location is located, and the distance between the historical actual ride location and the grid where the historical user location is located.

[0097] Road characteristics of the road where the candidate boarding location is located; after determining the candidate boarding location corresponding to the area formed by the grid where the historical user location is located and the surrounding grids, the embodiment of the present application can determine the road characteristics of the road where the candidate boarding location is located, such as road width, road length, number of lanes, road grade, etc.

[0098] Step S410: training a recommendation model based on the training features and the historical real ride locations corresponding to the historical travel tasks.

[0099] Because historical travel tasks contain the actual historical boarding locations that users ultimately selected, embodiments of the present application can use these historical boarding locations as training labels, thereby training a recommendation model based on the training features and the historical boarding locations of these historical travel tasks. Optionally, the training model architecture can utilize a machine learning model or other architecture, which is not limited in the present embodiment.

[0100] After training the recommendation model, the embodiment of the present application can use the recommendation model to determine a recommended boarding location from the candidate boarding locations in the first set based on the coverage ratio of each candidate boarding location in the first set. Since the recommendation model combines many features of historical travel tasks and is trained using the historical real boarding locations of historical travel tasks as labels, the embodiment of the present application uses the recommendation model to determine the recommended boarding location after obtaining the coverage ratio of each candidate boarding location in the first set. In addition to being based on the coverage ratio of the candidate boarding locations, the determination of the recommended boarding location can also be combined with many characteristic factors considered in the recommendation model, so that the distance between the final recommended boarding location and the user's location can be minimized as much as possible, thereby recommending a reasonable boarding location to the user and reducing the travel cost of the user to the recommended boarding location.

[0101] Furthermore, in an embodiment of the present application, the recommended boarding location can be transmitted to the user terminal so that the recommended boarding location can be displayed on the map data of the user terminal. The user can select the final boarding location from the displayed recommended boarding locations, so that the user terminal can feedback the final boarding location selected by the user from the recommended boarding locations to the server; furthermore, the server can determine the travel task based on the final boarding location, so that the driver and the user can converge based on the final boarding location agreed in the travel task.

[0102] The method for recommending boarding locations provided in the embodiment of the present application realizes recommending reasonable boarding locations by finely dividing the AOI area into grids and combining factors such as the coverage ratio of candidate boarding locations; Figure 1 and Figure 9 As shown, based on the user's position at the upper left of the AOI, the embodiment of the present application can recommend the boarding location to the recommended points 1, 2 and 3 at the upper left, instead of Figure 1 The AOI area is shown near the door in the lower right corner, thereby reducing the travel cost for the user to reach the recommended boarding location.

[0103] In an application example, the ride location recommendation provided by the embodiment of the present application can be applied to online ride-hailing services. When a user opens the online ride-hailing page through a user terminal, the map data displayed on the page can display a stamp point. The user can adjust the stamp point by dragging or clicking to set the user location. Of course, the initial default user location of the stamp point can also be used as the user location.

[0104] After the user sets the user location, the user terminal can upload the user location to the server of the online car-hailing service, so that the server can determine multiple recommended boarding locations based on the boarding location recommendation method provided in the embodiment of the present application (for example, determine three recommended boarding locations, and the specific number of recommended boarding locations can be defined according to actual conditions), and the server can send the multiple recommended boarding locations to the user terminal;

[0105] Furthermore, the user terminal may display multiple recommended boarding locations on the map data. After the user selects the final boarding location from the multiple recommended boarding locations, the user terminal may send the final boarding location to the server, so that the server can determine the online car-hailing travel task based on the final boarding location. When the driver accepts the task, the driver can go to the final boarding location indicated by the task and meet up with the user.

[0106] In the above process, since the embodiment of the present application can reasonably recommend a recommended boarding location that is close to the user's location, after the user selects the final boarding location, the user can reach the final boarding location and meet the driver at a lower travel cost, thereby reducing the user's travel cost before boarding.

[0107] The embodiments of the present application provide multiple embodiment schemes, and the various optional methods introduced in each embodiment scheme can be combined and cross-referenced with each other without conflict, thereby extending a variety of possible embodiment schemes, which can all be considered as embodiment schemes disclosed and open in the embodiments of the present application.

[0108] The following describes the bus location recommendation device provided in an embodiment of the present application. The bus location recommendation device described below can be considered a server, comprising the functional modules required to implement the bus location recommendation method provided in an embodiment of the present application. The bus location recommendation device described below can be used in conjunction with the bus location recommendation method described above.

[0109] In an optional implementation, Figure 10 An optional block diagram of the vehicle location recommendation device provided in an embodiment of the present application is shown. Figure 10 As shown, the device may include:

[0110] A location acquisition module 100 is used to obtain the user's location;

[0111] A first grid determination module 110 is configured to, if the user position is within the area of ​​interest (AOI), determine the grid where the user position is located within the AOI as a first grid, wherein the AOI is pre-divided into a plurality of grids;

[0112] A second grid determining module 120 is configured to determine a second grid located around the first grid in the AOI;

[0113] The first set acquisition module 130 is configured to acquire candidate boarding locations corresponding to an area formed by the first grid and the second grid to form a first set;

[0114] A second set acquisition module 140 is configured to acquire historical real riding locations corresponding to historical user locations located in the first grid to form a second set;

[0115] The recommended boarding location determination module 150 is used to determine a recommended boarding location from the candidate boarding locations in the first set according to the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set.

[0116] Optionally, the recommended boarding location determining module 150 is configured to determine a recommended boarding location from the candidate boarding locations in the first set according to the distance between the candidate boarding locations in the first set and the historical real boarding locations in the second set, including:

[0117] For any candidate boarding location in the first set, determining the distance between the candidate boarding location and each historical real boarding location in the second set, and determining a coverage ratio of the candidate boarding location over the historical real boarding locations in the second set based on a comparison result of the distance with a distance threshold;

[0118] A recommended boarding position is determined from the candidate boarding positions in the first set according to the coverage ratio corresponding to each candidate boarding position in the first set.

[0119] Optionally, in one aspect, the recommended boarding location determining module 150 is configured to determine, based on a comparison result of the distance with the distance threshold, a coverage ratio of the candidate boarding location over the historical real boarding locations in the second set, including:

[0120] Comparing the distance with a distance threshold, and determining that the historical real boarding position whose distance is less than the distance threshold is the historical real boarding position covered by the candidate boarding position;

[0121] The number of historical real boarding positions covered by the candidate boarding position is divided by the total number of historical real boarding positions in the second set to obtain the coverage ratio corresponding to the candidate boarding position.

[0122] Optionally, on the other hand, the recommended boarding location determining module 150 is configured to determine, based on the comparison result of the distance with the distance threshold, a coverage ratio of the candidate boarding location over the historical real boarding locations in the second set, including:

[0123] The multiple distances corresponding to the candidate boarding location are compared with the distance threshold respectively, and the proportion of distances smaller than the distance threshold among the multiple distances is determined to obtain the coverage ratio corresponding to the candidate boarding location; wherein, a distance corresponding to the candidate boarding location represents the distance between the candidate boarding location and a historical real boarding location in the second set.

[0124] Optionally, the recommended boarding location determining module 150 is configured to determine a recommended boarding location from the candidate boarding locations in the first set according to the coverage ratio corresponding to each candidate boarding location in the first set, including:

[0125] Determine the candidate boarding location with the highest coverage ratio in the first set as the recommended boarding location;

[0126] Alternatively, the candidate boarding locations in the first set are sorted in descending order of coverage ratio, and a set number of candidate boarding locations ranked at the top are determined as recommended boarding locations.

[0127] Optionally, the second grid determining module 120 is configured to determine a second grid located around the first grid in the AOI, including:

[0128] Taking the first grid as the center, grids in the AOI located around the first grid are acquired as second grids, where the second grids at least include grids adjacent to the first grid.

[0129] Optionally, the grid is a hexagonal grid.

[0130] Optionally, the second set acquisition module 140 is configured to acquire historical real ride locations corresponding to historical user locations located in the first grid to form a second set, including:

[0131] According to the correspondence between the historical user positions and the historical real riding positions, a plurality of historical real riding positions corresponding to the historical user positions located in the first grid are determined, and the plurality of historical real riding positions constitute a second set.

[0132] In another optional implementation, the recommended boarding location determining module 150 is configured to determine the recommended boarding location from the candidate boarding locations in the first set according to the coverage ratio corresponding to each candidate boarding location in the first set, including:

[0133] A recommended boarding location is determined from the candidate boarding locations in the first set based on the coverage ratio of each candidate boarding location in the first set using a recommendation model.

[0134] Optional, Figure 11 Another optional block diagram of the vehicle location recommendation device provided by the embodiment of the present application is shown, combined with Figure 10 and Figure 11 As shown, the device may also include:

[0135] The training module 160 is used to obtain training features based on historical travel tasks; the training features include at least: the features of the AOI where the historical user location corresponding to the historical travel task is located, the grid features of the grid where the historical user location is located, and the features of the candidate boarding location corresponding to the area formed by the grid where the historical user location is located and the surrounding grids; the recommendation model is trained based on the training features and the historical actual boarding locations corresponding to the historical travel tasks.

[0136] Optionally, the training feature may further include at least one of the following:

[0137] The time characteristics of historical travel tasks, the distance characteristics of historical travel tasks, and the road characteristics of the road where the candidate boarding location is located.

[0138] Optional, Figure 12 Another optional block diagram of the vehicle location recommendation device provided by the embodiment of the present application is shown, combined with Figure 10 and Figure 12 As shown, the device may also include:

[0139] The location processing module 170 is used to send the recommended boarding location to the user terminal; obtain the final boarding location selected by the user terminal from the recommended boarding locations; and determine the travel task based on the final boarding location.

[0140] The boarding location recommendation device provided in the embodiment of the present application can recommend reasonable boarding locations to users, thereby reducing the travel cost for users to reach the recommended boarding locations.

[0141] The embodiment of the present application also provides a server, which can implement the method for recommending a boarding location provided by the embodiment of the present application by loading the above-described boarding location recommendation device. Figure 13 As shown, it includes: at least one processor 1, at least one communication interface 2, at least one memory 3 and at least one communication bus 4;

[0142] In the embodiment of the present application, the number of the processor 1, the communication interface 2, the memory 3, and the communication bus 4 is at least one, and the processor 1, the communication interface 2, and the memory 3 communicate with each other through the communication bus 4;

[0143] Optionally, the communication interface 2 may be an interface of a communication module for performing network communication;

[0144] Optionally, processor 1 may be a CPU (central processing unit), a GPU (Graphics Processing Unit), an NPU (embedded neural network processor), an FPGA (Field Programmable Gate Array), a TPU (tensor processing unit), an AI chip, an application-specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement an embodiment of the present application.

[0145] The memory 3 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.

[0146] Among them, the memory 3 stores one or more computer-executable instructions, and the processor 1 calls the one or more computer-executable instructions to execute the boarding location recommendation method provided in the embodiment of the present application.

[0147] An embodiment of the present application also provides a storage medium, which can store one or more computer-executable instructions, and the one or more computer-executable instructions are used to execute the boarding location recommendation method provided by the embodiment of the present application.

[0148] Although the embodiments of the present application are disclosed above, the present application is not limited thereto. Any person skilled in the art may make various changes and modifications without departing from the spirit and scope of the present application. Therefore, the scope of protection of the present application shall be based on the scope defined by the claims.

Claims

1. A method for recommending a ride location, wherein: include: Get user location; If the user position is within the area of ​​interest (AOI), the grid where the user position is located in the AOI is used as the first grid, wherein the AOI is pre-divided into multiple grids; Determine a second grid located around the first grid in the AOI; Obtain a first set of candidate boarding locations corresponding to an area formed by the first grid and the second grid; Acquire historical real riding locations corresponding to historical user locations located in the first grid to form a second set; For any candidate boarding location in the first set, determining the distance between the candidate boarding location and each historical real boarding location in the second set, and determining a coverage ratio of the candidate boarding location over the historical real boarding locations in the second set based on a comparison result of the distance with a distance threshold; A recommended boarding position is determined from the candidate boarding positions in the first set according to the coverage ratio corresponding to each candidate boarding position in the first set.

2. The method for recommending a boarding position according to claim 1, wherein: Determining, based on the comparison result between the distance and the distance threshold, the coverage ratio of the candidate boarding location over the historical real boarding locations in the second set includes: Comparing the distance with a distance threshold, and determining that the historical real boarding position whose distance is less than the distance threshold is the historical real boarding position covered by the candidate boarding position; The number of historical real boarding positions covered by the candidate boarding position is divided by the total number of historical real boarding positions in the second set to obtain the coverage ratio corresponding to the candidate boarding position.

3. The method for recommending a boarding position according to claim 1, wherein: Determining, based on the comparison result between the distance and the distance threshold, the coverage ratio of the candidate boarding location over the historical real boarding locations in the second set includes: The multiple distances corresponding to the candidate boarding location are compared with the distance threshold respectively, and the proportion of distances smaller than the distance threshold among the multiple distances is determined to obtain the coverage ratio corresponding to the candidate boarding location; wherein, a distance corresponding to the candidate boarding location represents the distance between the candidate boarding location and a historical real boarding location in the second set.

4. The method for recommending a riding position according to any one of claims 1 to 3, wherein: Determining a recommended boarding location from the candidate boarding locations in the first set according to the coverage ratio corresponding to each candidate boarding location in the first set includes: Determine the candidate boarding location with the highest coverage ratio in the first set as the recommended boarding location; Alternatively, the candidate boarding locations in the first set are sorted in descending order of coverage ratio, and a set number of candidate boarding locations ranked at the top are determined as recommended boarding locations.

5. The method for recommending a boarding position according to claim 1, wherein: The determining of a second grid located around the first grid in the AOI comprises: Taking the first grid as the center, grids in the AOI located around the first grid are acquired as second grids, where the second grids at least include grids adjacent to the first grid.

6. The method for recommending a boarding position according to claim 1, wherein: The grid is a hexagonal grid.

7. The method for recommending a boarding position according to claim 1, wherein: The step of obtaining the historical real riding positions corresponding to the historical user positions located in the first grid to form a second set includes: According to the correspondence between the historical user positions and the historical real riding positions, a plurality of historical real riding positions corresponding to the historical user positions located in the first grid are determined, and the plurality of historical real riding positions constitute a second set.

8. The method for recommending a riding position according to any one of claims 1 to 3, wherein: Determining a recommended boarding location from the candidate boarding locations in the first set according to the coverage ratio corresponding to each candidate boarding location in the first set includes: A recommended boarding location is determined from the candidate boarding locations in the first set based on the coverage ratio of each candidate boarding location in the first set using a recommendation model.

9. The method for recommending a boarding position according to claim 8, wherein: Also includes: Obtain training features based on historical travel tasks; The training features include at least: features of the AOI where the historical user location corresponding to the historical travel task is located, grid features of the grid where the historical user location is located, and features of the candidate boarding location corresponding to the area formed by the grid where the historical user location is located and the surrounding grids; The recommendation model is trained based on the training features and the historical real ride locations corresponding to the historical travel tasks.

10. The method for recommending a boarding position according to claim 9, wherein: The training features also include at least one of the following: The time characteristics of historical travel tasks, the distance characteristics of historical travel tasks, and the road characteristics of the road where the candidate boarding location is located.

11. The method for recommending a boarding position according to claim 1, wherein: Also includes: Sending the recommended boarding location to a user terminal; Obtaining a final boarding location selected by the user terminal from the recommended boarding locations; The travel task is determined according to the final boarding location.

12. A vehicle location recommendation device, wherein: include: Location acquisition module, used to obtain user location; a first grid determination module configured to, if the user position is within an area of ​​interest (AOI), determine the grid where the user position is located within the AOI as a first grid, wherein the AOI is pre-divided into a plurality of grids; A second grid determining module, configured to determine a second grid located around the first grid in the AOI; A first set acquisition module is configured to acquire candidate boarding locations corresponding to an area formed by a first grid and a second grid to form a first set; A second set acquisition module is configured to acquire historical real riding locations corresponding to historical user locations located in the first grid to form a second set; The recommended boarding location determination module is used to determine, for any candidate boarding location in the first set, the distance between the candidate boarding location and each historical real boarding location in the second set; and determine the coverage ratio of the candidate boarding location over the historical real boarding locations in the second set based on the comparison result of the distance and the distance threshold; and determine the recommended boarding location from the candidate boarding locations in the first set based on the coverage ratio corresponding to each candidate boarding location in the first set.

13. A server, wherein: include: At least one memory and at least one processor, the memory storing one or more computer-executable instructions, the processor calling the one or more computer-executable instructions to execute the ride location recommendation method according to any one of claims 1-11.

14. A storage medium, wherein: The storage medium stores one or more computer-executable instructions, and the one or more computer-executable instructions are used to execute the riding location recommendation method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Method and system for determining boarding point recommendation model

    CN111861622A

  • Riding point recommendation method, device and equipment and storage medium

    CN111898042A