A method, apparatus, device, and storage medium for determining boarding point information
By clustering and correlation of multiple actual vehicle points of the user and determining the target vehicle point information, the increased difficulty and cost of picking up driving when users determine the vehicle point themselves in the prior art is solved, and the efficiency and user experience of picking up driving and picking up driving are improved.
Patent Information
- Application Number
- CN201910726774.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-08-07
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2039-08-07
AI Technical Summary
In the prior art, when users determine the information of the boarding point on the online car-hailing platform, it may increase the difficulty and cost of the driver's pick-up, affecting the passenger's boarding efficiency and the driver's pick-up progress.
By determining multiple actual vehicle points of the user and clustering these points, at least one cluster is obtained. Then, the actual vehicle point associated with the centroid point in each cluster and the actual vehicle point identification information that is the most frequently used in each cluster, and the information is then correlated to obtain the user's target vehicle point information.
It improves the degree to which users recognize the information of the target boarding point, reduces the difficulty and time cost of drivers to pick up the driver, improves the efficiency of drivers to pick up the driver and passengers to get on the bus, and improves the user experience of both drivers and passengers.
Smart Images

Figure CN110533081B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular, to a method, apparatus, device, and storage medium for determining boarding point information. Background Art
[0002] In the prior art, when an online car-hailing platform detects a user's car-hailing order, it will recommend and display some locations beside the road that are beneficial for drivers' navigation and passengers' boarding as general boarding points.
[0003] In practical applications, different users have different preferences for the locations and names of general boarding points, and there are significant differences in the recognition of general boarding points. When a user is not satisfied with the name or location of a general boarding point, the user usually uses the search function to search for a target boarding point that meets their own needs, or uses the drag-and-drop method to obtain an inverse geocoding regeo result (location and name) as the target boarding point.
[0004] However, the target boarding points determined by the user through the search function or the drag-and-drop method may increase the driver's pick-up difficulty and the driver's pick-up cost, affect the driver's pick-up progress and the passenger's boarding efficiency, and thus affect the user experience of both the driver and the passenger. Summary of the Invention
[0005] In view of this, this application provides a method, apparatus, device, and storage medium for determining boarding point information to solve the problems existing in the existing solutions for determining boarding point information.
[0006] Specifically, this application is implemented through the following technical solutions:
[0007] According to the first aspect of this application, a method for determining boarding point information is proposed, including:
[0008] Determine multiple actual boarding points of the user;
[0009] Cluster the multiple actual boarding points to obtain at least one cluster;
[0010] Determine the actual boarding points associated with the centroid point in each cluster and the actual boarding point identification information with the highest usage frequency in each cluster;
[0011] Associate the actual boarding points associated with the centroid point in each cluster with the actual boarding point identification information to obtain the target boarding point information of the user.
[0012] In one embodiment, the determining multiple actual boarding points of the user includes:
[0013] Obtain the trajectory point sequence corresponding to a historical order of the user;
[0014] Match the sequence of trajectory points with the roads in the pre-stored road network data to obtain the matching roads;
[0015] Correct the sequence of trajectory points based on the matching roads;
[0016] Determine an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet the preset conditions.
[0017] In one embodiment, the sequence of trajectory points includes the sequence of trajectory points for dropping off passengers;
[0018] The determining an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet the preset conditions includes:
[0019] Determine the first trajectory point in the corrected sequence of trajectory points as an actual boarding point of the user.
[0020] In one embodiment, the sequence of trajectory points includes: the sequence of trajectory points for picking up and dropping off passengers, or, the sequence of trajectory points for picking up passengers;
[0021] The determining an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet the preset conditions includes:
[0022] Determine the trajectory point corresponding to the occurrence time of the passenger boarding event in the corrected sequence of trajectory points as an actual boarding point of the user.
[0023] In one embodiment, the determining the actual boarding point associated with the centroid point in each cluster includes:
[0024] Calculate the centroid point of each cluster;
[0025] Determine the boarding point closest to the centroid point in each cluster;
[0026] Determine the boarding point closest to the centroid point as the actual boarding point associated with the centroid point.
[0027] In one embodiment, the determining the actual boarding point identification information with the highest usage frequency in each cluster includes:
[0028] Obtain the usage frequencies of multiple actual boarding point identification information in each cluster;
[0029] Determine the actual boarding point identification information with the highest usage frequency in each cluster.
[0030] In one embodiment, the method further includes:
[0031] Determine points of interest (POIs) within a preset range centered on the actual boarding point associated with the centroid point;
[0032] Obtain the associated information of the POIs;
[0033] Generate a description information of the target boarding point information based on the associated information.
[0034] According to a second aspect of the present application, a device for determining boarding point information is proposed, including:
[0035] An actual boarding point determination module, configured to determine a plurality of actual boarding points of a user;
[0036] An actual boarding point clustering module, configured to cluster the plurality of actual boarding points to obtain at least one cluster;
[0037] A point and identifier determination module, configured to determine an actual boarding point associated with the centroid point in each cluster and the actual boarding point identifier information with the highest usage frequency in each cluster;
[0038] A boarding point information determination module, configured to associate the actual boarding point associated with the centroid point in each cluster with the actual boarding point identifier information to obtain the target boarding point information of the user.
[0039] According to a third aspect of the present application, a device for determining boarding point information is proposed, including a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein when the processor executes the program, the method for determining boarding point information as described in any one of the above is implemented.
[0040] According to a fourth aspect of the present application, a computer-readable storage medium is proposed, where the storage medium stores a computer program, and the computer program is used to execute the method for determining boarding point information as described in any one of the above.
[0041] As can be seen from the above technical solutions, in this application, by determining multiple actual boarding points of a user and clustering the multiple actual boarding points to obtain at least one cluster, then determining the actual boarding points associated with the centroid point in each cluster and the identification information of the actual boarding point with the highest usage frequency in each cluster, and further associating the actual boarding points associated with the centroid point in each cluster with the identification information of the actual boarding point, the target boarding point information of the user is obtained. Since clustering is performed using the user's actual boarding points, the subsequently determined target boarding point information can meet the actual needs of the user. And since the identification of the actual boarding point with the highest usage frequency of the user and the actual boarding point associated with the centroid are associated to determine the target boarding point information, the degree of user recognition of the target boarding point information can be improved, and the pick-up difficulty of the driver and the pick-up time cost of the driver can be reduced. Furthermore, the efficiency of the driver's pick-up and the passenger's boarding can be improved, and the user experience of both the driver and the passenger can be enhanced. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] Figure 1 is a flowchart of a method for determining boarding point information shown in an exemplary embodiment of this application;
[0043] Figure 2 is a flowchart of how to determine multiple actual boarding points of a user shown in an exemplary embodiment of this application;
[0044] Figure 3 is a flowchart of how to determine an actual boarding point of a user based on a trajectory point meeting a preset condition in a corrected trajectory point sequence shown in an exemplary embodiment of this application;
[0045] Figure 4 is a flowchart of how to determine the actual boarding points associated with the centroid point in each cluster shown in an exemplary embodiment of this application;
[0046] Figure 5 is a flowchart of how to determine the identification information of the actual boarding point with the highest usage frequency in each cluster shown in an exemplary embodiment of this application;
[0047] Figure 6 is a flowchart of a method for determining boarding point information shown in another exemplary embodiment of this application;
[0048] Figure 7 is a structural diagram of a device for determining boarding point information shown in an exemplary embodiment of this application;
[0049] Figure 8 is a structural diagram of a device for determining boarding point information shown in another exemplary embodiment of this application;
[0050] Figure 9It is a structural diagram of a device for determining boarding point information shown in an exemplary embodiment of the present application. Detailed implementation manners
[0051] Here, the exemplary embodiments will be described in detail, and the examples are shown in the drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation manners described in the following exemplary embodiments do not represent all implementation manners consistent with the present application. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0052] The terms used in the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. The singular forms "a", "the", and "said" used in the present application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0053] It should be understood that although the terms first, second, third, etc. may be used in the present application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present application, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "when" or "while" or "in response to determining".
[0054] Figure 1 It is a flowchart of a method for determining boarding point information shown in the first exemplary embodiment of the present application; this embodiment can be used in the service end of a taxi-hailing platform (for example, a server or a server cluster composed of multiple servers, etc.), and can also be used in terminal devices (such as mobile phones, tablets, personal computers, etc.).
[0055] As Figure 1 shown, the method includes steps S101 - S104:
[0056] In step S101, multiple actual boarding points of the user are determined.
[0057] In one embodiment, in order to determine the target boarding point of the current user (such as a personalized boarding point that conforms to the travel habits of the user, etc.), the service end may first determine multiple actual boarding points of the current user.
[0058] In one embodiment, the above-mentioned actual boarding points may include the boarding points that have been used in the historical orders of the user.
[0059] In one embodiment, for the method of determining multiple actual boarding points of the user, reference can also be made to the following Figure 2 illustrated embodiment, which will not be elaborated here for the time being.
[0060] In step S102, cluster the multiple actual boarding points to obtain at least one cluster.
[0061] In one embodiment, after determining the multiple actual boarding points of the user, a preset clustering method can be used to cluster the multiple actual boarding points to obtain at least one cluster.
[0062] In one embodiment, the above-mentioned preset clustering method may include the DBSCAN algorithm, etc., and this embodiment does not limit this.
[0063] In one embodiment, the parameter eps (which can be used to represent the distance between each boarding point) and the parameter minpts (which can be used to represent the number of at least existing boarding points in each cluster) in the above-mentioned DBSCAN algorithm can be set by developers based on actual business needs.
[0064] In step S103, determine the actual boarding point associated with the centroid point in each cluster and the identification information of the actual boarding point with the highest usage frequency in each cluster.
[0065] In one embodiment, when clustering the multiple actual boarding points to obtain at least one cluster, the centroid point in each cluster can be determined, and then the actual boarding point associated with the centroid point in each cluster can be determined.
[0066] In one embodiment, the actual boarding point associated with the centroid point may include the centroid point itself, or may include the actual boarding point whose distance from the centroid point is less than a preset threshold, etc., and this embodiment does not limit this.
[0067] In another embodiment, for the method of determining the actual boarding point associated with the centroid point, reference can also be made to the following Figure 4 illustrated embodiment, which will not be elaborated here for the time being.
[0068] In one embodiment, after clustering the multiple actual boarding points to obtain at least one cluster, the identification information of the actual boarding point with the highest usage frequency in each cluster can also be determined.
[0069] In one embodiment, the above-mentioned identification information of the actual boarding point may include the name or number of the actual boarding point, etc., and this embodiment does not limit this.
[0070] In one embodiment, for the method of determining the identification information of the actual boarding point with the highest usage frequency in each cluster, reference can be made to the following Figure 5The embodiments shown are not described in detail here for the time being.
[0071] In step S104, the actual boarding points associated with the centroid points in each of the clusters are associated with the actual boarding point identification information to obtain the target boarding point information of the user.
[0072] In one embodiment, after determining the actual boarding points associated with the centroid points in each of the clusters and the actual boarding point identification information with the highest usage frequency in each of the clusters, the actual boarding points associated with the centroid points in each of the clusters can be associated with the actual boarding point identification information to obtain the target boarding point information of the user.
[0073] In one embodiment, the above-mentioned target boarding point information includes the actual boarding points associated with the centroid points in each of the clusters and the actual boarding point identification information.
[0074] It should be noted that since the actual boarding points in each cluster are adjacent in terms of spatial distance (e.g., not exceeding 15 m), that is, the distances between the boarding points in each cluster are not too large, it is reasonable to associate the "actual boarding points associated with the centroid points with the actual boarding point identification information with the highest usage frequency in each cluster".
[0075] From the above description, it can be seen that in this embodiment, by determining multiple actual boarding points of the user, clustering the multiple actual boarding points to obtain at least one cluster, then determining the actual boarding points associated with the centroid points in each of the clusters and the actual boarding point identification information with the highest usage frequency in each of the clusters, and further associating the actual boarding points associated with the centroid points in each of the clusters with the actual boarding point identification information to obtain the target boarding point information of the user. Since clustering is performed using the actual boarding points of the user, the subsequent determined target boarding point information can meet the actual needs of the user, and since the actual boarding point identification information with the highest usage frequency of the user and the actual boarding points associated with the centroid are associated to determine the target boarding point information, the degree of user recognition of the target boarding point information can be improved, and the difficulty of the driver to pick up passengers and the time cost of the driver to pick up passengers can be reduced, thereby improving the efficiency of the driver to pick up passengers and the passengers to board the vehicle, and enhancing the user experience of both the driver and the passengers.
[0076] Figure 2 It is a flowchart showing how to determine multiple actual boarding points of a user shown in an exemplary embodiment of the present application; this embodiment is an exemplary illustration of how to determine multiple actual boarding points of a user on the basis of the above embodiment. As Figure 2 shown, the determination of multiple actual boarding points of the user described in step S101 above may include the following steps S201 - S204:
[0077] In step S201, obtain the sequence of trajectory points corresponding to a historical order of the user.
[0078] In one embodiment, in order to determine an actual boarding point of the current user, the server may obtain the sequence of trajectory points corresponding to a historical order of the current user.
[0079] In one embodiment, the above sequence of trajectory points includes multiple trajectory points in the driving route corresponding to the historical order.
[0080] In step S202, match the sequence of trajectory points with the roads in the pre-stored road network data to obtain the matching roads.
[0081] In one embodiment, after obtaining the sequence of trajectory points corresponding to a historical order of the user, the sequence of trajectory points may be matched with the roads in the pre-stored road network data to obtain the matching roads.
[0082] In one embodiment, the above preset road network data may include the road network data of the current city obtained in advance, etc., and this embodiment does not limit this.
[0083] In one embodiment, the road matched by the sequence of trajectory points may be determined based on the pre-obtained road network data and the coordinates of each point in the sequence of trajectory points.
[0084] In step S203, correct the sequence of trajectory points based on the matching roads.
[0085] In one embodiment, after matching the sequence of trajectory points with the roads in the pre-stored road network data to obtain the matching roads, the sequence of trajectory points may be corrected based on the matching roads.
[0086] For example, the points in the sequence of trajectory points that deviate from the matching roads may be removed. Further, the path points on the matching roads may also be used to make up for the corresponding path points in the above sequence of path points to obtain the corrected sequence of trajectory points.
[0087] In step S204, determine an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet the preset conditions.
[0088] In one embodiment, after correcting the sequence of trajectory points based on the matching roads, an actual boarding point of the user may be determined based on the trajectory points in the corrected sequence of trajectory points that meet the preset conditions.
[0089] In one embodiment, the above preset condition can be set based on the type of the acquired trajectory point sequence. For example, based on different types of trajectory point sequences, the preset condition can be set as the trajectory point at the first position in the trajectory point sequence or the trajectory point at the moment when a preset event occurs, etc. This embodiment does not limit this.
[0090] In one embodiment, the method of determining an actual boarding point of the user based on the trajectory points in the corrected trajectory point sequence that meet the preset condition can also be referred to in the following Figure 3 illustrated embodiment, which will not be elaborated here first.
[0091] As can be seen from the above description, in this embodiment, by acquiring the trajectory point sequence corresponding to a historical order of the user, matching the trajectory point sequence with the roads in the pre-stored road network data to obtain the matching roads, then correcting the trajectory point sequence based on the matching roads, and further determining an actual boarding point of the user based on the trajectory points in the corrected trajectory point sequence that meet the preset condition, it is possible to accurately determine multiple actual boarding points of the user, and then it is possible to determine the target boarding point information of the user based on the multiple actual boarding points, which can improve the degree of user recognition of the target boarding point information, reduce the pick-up difficulty of the driver and the pick-up time cost of the driver, and further improve the efficiency of the driver's pick-up and the passenger's boarding, and enhance the user experience of both the driver and the passenger.
[0092] Figure 3 is a flowchart showing how to determine an actual boarding point of a user based on the trajectory points in the corrected trajectory point sequence that meet the preset condition in an exemplary embodiment of the present application; this embodiment takes how to determine an actual boarding point of a user based on the trajectory points in the corrected trajectory point sequence that meet the preset condition as an example for exemplary illustration. As Figure 3 shown, the determination of an actual boarding point of the user based on the trajectory points in the corrected trajectory point sequence that meet the preset condition in step S204 described above may include the following steps S301 - S303:
[0093] In step S301, it is determined whether the trajectory point sequence includes a pick-up trajectory point sequence: if so, step S302 is executed; if not, step S303 is executed.
[0094] In step S302, the first trajectory point in the corrected trajectory point sequence is determined as an actual boarding point of the user.
[0095] In one embodiment, if the above trajectory point sequence is the trajectory point sequence of the driver delivering the passenger (i.e., the trajectory point sequence that does not include the trajectory points during the pick-up process), then the above preset condition can be the trajectory point at the first position in the trajectory point sequence. That is, the first trajectory point in the corrected trajectory point sequence can be determined as an actual boarding point of the user.
[0096] In step S303, the trajectory point corresponding to the occurrence time of the passenger boarding event in the corrected trajectory point sequence is determined as an actual boarding point of the user.
[0097] In one embodiment, if the above trajectory point sequence is the trajectory point sequence of pick-up and delivery, or the trajectory point sequence of pick-up (i.e., the trajectory point sequence that includes the trajectory points during the pick-up process), then the above preset condition can be the trajectory point corresponding to the occurrence time of the passenger boarding event in the trajectory point sequence. That is, the trajectory point corresponding to the occurrence time of the passenger boarding event in the corrected trajectory point sequence can be determined as an actual boarding point of the user.
[0098] As can be seen from the above description, in this embodiment, by determining whether the trajectory point sequence includes the trajectory point sequence of pick-up, and when the trajectory point sequence is the trajectory point sequence of the driver delivering the passenger, the first trajectory point in the corrected trajectory point sequence is determined as an actual boarding point of the user, and when the trajectory point sequence is the trajectory point sequence of pick-up and delivery or the trajectory point sequence of pick-up, the trajectory point corresponding to the occurrence time of the passenger boarding event in the corrected trajectory point sequence is determined as an actual boarding point of the user. Different methods can be adopted to determine the actual boarding point of the user based on different types of trajectory point sequences, which can improve the accuracy of determining the actual boarding point of the user, and further lay an accurate foundation for determining the target boarding point information of the user based on the actual boarding point of the user.
[0099] Figure 4 It is a flowchart showing how to determine the actual boarding point associated with the centroid point in each cluster in an exemplary embodiment of the present application; in this embodiment, on the basis of the above embodiment, an example of how to determine the actual boarding point associated with the centroid point in each cluster is used for exemplary illustration. As Figure 4 shown, the determination of the actual boarding point associated with the centroid point in each cluster described in step S103 above may include the following steps S401 - S403:
[0100] In step S401, calculate the centroid point of each cluster.
[0101] In one embodiment, after clustering the multiple actual boarding points to obtain at least one cluster, the centroid point of each cluster can be calculated.
[0102] In one embodiment, the above centroid point can be the clustering center of each cluster.
[0103] It should be noted that the method for calculating the centroid point of each of the above clusters can refer to the algorithms in the prior art, and this embodiment does not limit this.
[0104] In step S402, determine the boarding point closest to the centroid point in each of the above clusters.
[0105] In one embodiment, after calculating the centroid point of each of the above clusters, the boarding point closest to the centroid point in each of the above clusters can be determined.
[0106] For example, after calculating the centroid point of each of the above clusters, the distances between each boarding point in each of the above clusters and the centroid point of the cluster can be calculated, and then the boarding point closest to the centroid point in the cluster can be determined.
[0107] In step S403, the boarding point closest to the centroid point is determined as the actual boarding point associated with the centroid point.
[0108] In one embodiment, after determining the boarding point closest to the centroid point in each of the above clusters, the boarding point closest to the centroid point can be determined as the actual boarding point associated with the centroid point.
[0109] From the above description, it can be seen that in this embodiment, by calculating the centroid point of each of the above clusters, determining the boarding point closest to the centroid point in each of the above clusters, and then determining the boarding point closest to the centroid point as the actual boarding point associated with the centroid point, it is possible to accurately determine the actual boarding point associated with the centroid point in each of the above clusters. Furthermore, it is possible to determine the target boarding point information of the user based on the actual boarding point associated with the centroid point subsequently, which can improve the degree of user recognition of the target boarding point information, reduce the pick-up difficulty of the driver and the pick-up time cost of the driver, and thus improve the efficiency of the driver's pick-up and the passenger's boarding, and enhance the user experience of both the driver and the passenger.
[0110] Figure 5 It is a flowchart showing how to determine the actual boarding point identification information with the highest usage frequency in each of the above clusters in an exemplary embodiment of the present application; on the basis of the above embodiment, this embodiment takes how to determine the actual boarding point identification information with the highest usage frequency in each of the above clusters as an example for exemplary illustration. As Figure 4 shown, the determination of the actual boarding point identification information with the highest usage frequency in each of the above clusters described in the above step S103 may include the following steps S501 - S502:
[0111] In step S501, obtain the usage frequencies of the multiple actual boarding point identification information in each of the clusters.
[0112] In one embodiment, after clustering the multiple actual boarding points to obtain at least one cluster, the usage frequencies of the multiple actual boarding point identification information in each of the clusters can be counted and obtained.
[0113] In one embodiment, the method of statistically calculating the usage frequencies of the multiple actual boarding point identification information in each cluster can refer to the explanations and descriptions in the prior art, and this embodiment does not limit it.
[0114] In step S502, determine the actual boarding point identification information with the highest usage frequency in each of the clusters.
[0115] In one embodiment, after obtaining the usage frequencies of the multiple actual boarding point identification information in each of the clusters, the actual boarding point identification information with the highest usage frequency in each of the clusters can be determined.
[0116] In one embodiment, the usage frequencies of the multiple actual boarding point identification information obtained in each cluster can be sorted (for example, sorted in descending or ascending order), and then the actual boarding point identification information with the highest usage frequency in each cluster can be determined based on the sorting result.
[0117] In another embodiment, the actual boarding point identification information with the highest usage frequency in each cluster can also be calculated based on a preset function (for example, a maximum value function).
[0118] As can be seen from the above description, in this embodiment, by obtaining the usage frequencies of the multiple actual boarding point identification information in each cluster and determining the actual boarding point identification information with the highest usage frequency in each cluster, it is possible to accurately determine the actual boarding point identification information with the highest usage frequency in each cluster, and further improve the accuracy of determining the target boarding point information of the user subsequently.
[0119] Figure 6 It is a flowchart of a method for determining boarding point information shown in another exemplary embodiment of the present application; this embodiment can be used in the server of a taxi-hailing platform (for example, a server cluster composed of one server and multiple servers, etc.), and can also be used in a terminal device (for example, a mobile phone, a tablet computer, a personal computer, etc.).
[0120] As Figure 6 shown, the method includes steps S601 - S607:
[0121] In step S601, determine the multiple actual boarding points of the user.
[0122] In step S602, cluster the multiple actual boarding points to obtain at least one cluster.
[0123] In step S603, determine the actual boarding points associated with the centroid point in each cluster and the identification information of the actual boarding point with the highest usage frequency in each cluster.
[0124] In step S604, associate the actual boarding points associated with the centroid point in each cluster with the identification information of the actual boarding point to obtain the target boarding point information of the user.
[0125] Among them, the relevant explanations and descriptions of steps S601 - S603 can be referred to the above embodiments, and will not be elaborated in this embodiment.
[0126] In step S605, determine the point of interest (POI) within a preset range centered on the actual boarding point associated with the centroid point.
[0127] In one embodiment, after obtaining the target boarding point information of the user, the actual boarding point associated with the centroid point (hereinafter referred to as "target boarding point") included in the target boarding point information can be determined, and then the point of interest (POI) within a preset range centered on this boarding point can be determined.
[0128] In one embodiment, the above - mentioned preset range can be freely set according to business needs, such as set as a range of 100 meters around, etc., and this embodiment does not limit it.
[0129] In one embodiment, the above - mentioned point of interest can include popular locations such as office buildings, shops, restaurants, exhibition halls or amusement parks, etc., and this embodiment does not limit it.
[0130] In step S606, obtain the associated information of the POI.
[0131] In one embodiment, after determining the point of interest (POI) within a preset range centered on the target boarding point, the associated information of the POI can be obtained.
[0132] In one embodiment, the above - mentioned associated information of the POI can be freely set by developers according to actual business needs, such as set as the name, type, address and / or orientation relative to the target boarding point of the POI, etc., and this embodiment does not limit it.
[0133] In step S607, generate the description information of the target boarding point information based on the associated information.
[0134] In one embodiment, after obtaining the associated information of the POI, the description information of the target boarding point information can be generated based on the associated information.
[0135] For example, after determining the target boarding point information (i.e., the target boarding point and the boarding point identification information), if it is determined that there are points of interest (POIs) within a preset range centered on the target boarding point, then the address, name, orientation, and distance of the POI relative to the target boarding point can be obtained. Furthermore, a description information of the target boarding point information can be generated based on the address, name, orientation, and distance of the POI relative to the target boarding point, such as "Oriental Theater, No. 10 Fuxing Road, 150 meters southeast of the target boarding point", etc.
[0136] As can be seen from the above description, in this embodiment, by determining the points of interest (POIs) within a preset range centered on the actual boarding point associated with the centroid point and obtaining the associated information of the POI, and then generating the description information of the target boarding point information based on the associated information, it is possible to supplement the associated information of the POIs near the target boarding point, that is, to generate the attribute information of the target boarding point information using the associated information of the surrounding POIs, so as to more specifically describe the target boarding point information, and thus avoid confusion between other boarding point information and the target boarding point information.
[0137] Figure 7 is a structural diagram of a device for determining boarding point information shown in an exemplary embodiment of the present application; as Figure 7 shown, the device includes: an actual boarding point determination module 110, an actual boarding point clustering module 120, a point and identification determination module 130, and a boarding point information determination module 140, where:
[0138] The actual boarding point determination module 110 is configured to determine multiple actual boarding points of a user;
[0139] The actual boarding point clustering module 120 is configured to cluster the multiple actual boarding points to obtain at least one cluster;
[0140] The point and identification determination module 130 is configured to determine the actual boarding point associated with the centroid point in each cluster and the actual boarding point identification information with the highest usage frequency in each cluster;
[0141] The boarding point information determination module 140 is configured to associate the actual boarding point associated with the centroid point in each cluster with the actual boarding point identification information to obtain the target boarding point information of the user.
[0142] As described above, in this embodiment, by determining multiple actual boarding points of a user and clustering the multiple actual boarding points to obtain at least one cluster, then determining the actual boarding points associated with the centroid point in each cluster and the identification information of the actual boarding point with the highest usage frequency in each cluster, and further associating the actual boarding points associated with the centroid point in each cluster with the identification information of the actual boarding point, the target boarding point information of the user is obtained. Since clustering is performed using the actual boarding points of the user, the subsequently determined target boarding point information can meet the actual needs of the user. And since the identification of the actual boarding point with the highest usage frequency of the user and the actual boarding point associated with the centroid are associated to determine the target boarding point information, the degree of user recognition of the target boarding point information can be improved, and the pick-up difficulty of the driver and the pick-up time cost of the driver can be reduced. Furthermore, the efficiency of the driver's pick-up and the passenger's boarding can be improved, and the user experience of both the driver and the passenger can be enhanced.
[0143] Figure 8 It is a structural diagram of a device for determining boarding point information shown in another exemplary embodiment of the present application; among them, the actual boarding point determination module 210, the actual boarding point clustering module 220, the point and identification determination module 230, and the boarding point information determination module 240 are the same as the Figure 7 actual boarding point determination module 110, the actual boarding point clustering module 120, the point and identification determination module 130, and the boarding point information determination module 140 in the embodiment shown above, and will not be elaborated here.
[0144] As Figure 8 shown, the actual boarding point determination module 210 may include:
[0145] A trajectory point sequence acquisition unit 211, configured to acquire a trajectory point sequence corresponding to a historical order of the user;
[0146] A matching road acquisition unit 212, configured to match the trajectory point sequence with roads in pre-stored road network data to obtain a matching road;
[0147] A trajectory point sequence correction unit 213, configured to correct the trajectory point sequence based on the matching road;
[0148] An actual boarding point determination unit 214, configured to determine an actual boarding point of the user based on the trajectory points in the corrected trajectory point sequence that meet a preset condition.
[0149] In one embodiment, the trajectory point sequence may include a trajectory point sequence for dropping off a passenger;
[0150] The actual boarding point determination unit 214 is further configured to determine the first trajectory point in the corrected trajectory point sequence as an actual boarding point of the user.
[0151] In one embodiment, the sequence of trajectory points may include: the sequence of trajectory points for picking up and dropping off passengers, or, the sequence of trajectory points for picking up passengers;
[0152] The actual boarding point determination unit 214 is further configured to:
[0153] Determine the trajectory point corresponding to the occurrence moment of the passenger boarding event in the corrected sequence of trajectory points as an actual boarding point of the user.
[0154] In one embodiment, the point and identification determination module 230 may include:
[0155] The centroid point calculation unit 231 is configured to calculate the centroid point of each cluster;
[0156] The nearest boarding point determination unit 232 is configured to determine the boarding point closest to the centroid point in each cluster;
[0157] The associated boarding point determination unit 233 is configured to determine the boarding point closest to the centroid point as the actual boarding point associated with the centroid point.
[0158] In one embodiment, the point and identification determination module 230 may include:
[0159] The usage frequency acquisition unit 234 is configured to acquire the usage frequency of the identification information of multiple actual boarding points in each cluster;
[0160] The identification information determination unit 235 is configured to determine the identification information of the actual boarding point with the highest usage frequency in each cluster.
[0161] In one embodiment, the apparatus may further include a description information generation module 250;
[0162] The description information generation module 250 may include:
[0163] The point of interest determination unit 251 is configured to determine the point of interest POI within a preset range centered on the actual boarding point associated with the centroid point;
[0164] The associated information acquisition unit 252 is configured to acquire the associated information of the POI;
[0165] The description information generation unit 253 is configured to generate the description information of the target boarding point information based on the associated information.
[0166] It should be noted that all the above optional technical solutions can be combined arbitrarily to form optional embodiments of the present disclosure, which will not be elaborated herein one by one.
[0167] Embodiments of the apparatus for determining boarding point information according to the present invention can be applied to network devices. The apparatus embodiments can be implemented by software, or by hardware, or by a combination of software and hardware. Taking software implementation as an example, as a logically defined apparatus, it is formed by the processor of the device where it is located reading the corresponding computer program instructions in the non-volatile memory into the memory for running, where the computer program is used to execute the above Figures 1 to 6 method for determining boarding point information provided in the illustrated embodiment. In terms of the hardware level, as Figure 9 shown, it is the hardware structure diagram of the apparatus for determining boarding point information according to the present invention. In addition to Figure 9 the processor, network interface, memory, and non-volatile memory shown, the device usually may also include other hardware, such as a forwarding chip responsible for processing packets, etc.; in terms of the hardware structure, the device may also be a distributed device, and may include multiple interface cards for expanding packet processing at the hardware level. On the other hand, the present application also provides a computer-readable storage medium storing a computer program, and the computer program is used to execute the above Figures 1 to 6 method for determining boarding point information provided in the illustrated embodiment.
[0168] For the apparatus embodiments, since they basically correspond to the method embodiments, the relevant parts can refer to the partial descriptions of the method embodiments. The apparatus embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of the present application. Those of ordinary skill in the art can understand and implement it without creative efforts.
[0169] After considering the specification and practicing the invention disclosed herein, those skilled in the art will readily conceive of other embodiments of the present application. The present application is intended to cover any variations, uses, or adaptations of the present application, which follow the general principles of the present application and include known common general knowledge or conventional technical means in the technical field not disclosed in the present application. The specification and embodiments are only regarded as exemplary, and the true scope and spirit of the present application are pointed out by the following claims.
[0170] It should also be noted that the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, commodity or device comprising a series of elements not only includes those elements but also includes other elements not expressly listed, or further includes elements inherent to such process, method, commodity or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, commodity or device comprising said element.
[0171] The above are only the preferred embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included within the scope of protection of the present application.
Claims
1. A method for determining boarding point information, characterized in that, comprising: determining a plurality of actual boarding points of the user; clustering the plurality of actual boarding points to obtain at least one cluster; determining the actual boarding point associated with the centroid point in each cluster and the identification information of the actual boarding point with the highest usage frequency in each cluster; associating the actual boarding point associated with the centroid point in each cluster with the identification information of the actual boarding point to obtain the target boarding point information of the user; The determining a plurality of actual boarding points of the user includes: obtaining a sequence of trajectory points corresponding to a historical order of the user; matching the sequence of trajectory points with roads in pre-stored road network data to obtain matching roads; correcting the sequence of trajectory points based on the matching roads; determining an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet a preset condition; the sequence of trajectory points includes the sequence of trajectory points for delivering passengers; The determining an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet a preset condition includes: determining the first trajectory point in the corrected sequence of trajectory points as an actual boarding point of the user.
2. The method according to claim 1, characterized in that, the sequence of trajectory points includes: the sequence of trajectory points for picking up and delivering passengers, or, the sequence of trajectory points for picking up passengers; The determining an actual boarding point of the user based on the trajectory points in the corrected sequence of trajectory points that meet a preset condition includes: determining the trajectory point corresponding to the occurrence time of the passenger boarding event in the corrected sequence of trajectory points as an actual boarding point of the user.
3. The method according to claim 1, characterized in that, The determining the actual boarding point associated with the centroid point in each cluster includes: calculating the centroid point of each cluster; determining the boarding point closest to the centroid point in each cluster; determining the boarding point closest to the centroid point as the actual boarding point associated with the centroid point.
4. The method according to claim 1, characterized in that, The determining the identification information of the actual boarding point with the highest usage frequency in each cluster includes: obtaining the usage frequencies of the identification information of a plurality of actual boarding points in each cluster; determining the identification information of the actual boarding point with the highest usage frequency in each cluster.
5. The method according to any one of claims 1-4, characterized in that, the method further comprises: determining points of interest (POIs) within a preset range centered on the actual boarding point associated with the centroid point; obtaining the associated information of the POIs; generating a description information of the target boarding point information based on the associated information.
6. A device for determining boarding point information, characterized in that, comprising: an actual boarding point determination module, configured to determine a plurality of actual boarding points of the user, and the determining a plurality of actual boarding points of the user includes: obtaining a sequence of trajectory points corresponding to a historical order of the user; matching the sequence of trajectory points with roads in pre-stored road network data to obtain matching roads; correcting the sequence of trajectory points based on the matching roads; Determine an actual boarding point of the user based on the trajectory points in the corrected trajectory point sequence that meet the preset conditions; the trajectory point sequence includes the trajectory point sequence of driving the user to the destination. The determining an actual boarding point of the user based on the trajectory points in the corrected trajectory point sequence that meet the preset conditions includes: Determine the first trajectory point in the corrected trajectory point sequence as an actual boarding point of the user. An actual boarding point clustering module, configured to cluster the multiple actual boarding points to obtain at least one cluster. A point and identification determination module, configured to determine the actual boarding point associated with the centroid point in each cluster and the identification information of the actual boarding point with the highest usage frequency in each cluster. A boarding point information determination module, configured to associate the actual boarding point associated with the centroid point in each cluster with the identification information of the actual boarding point to obtain the target boarding point information of the user.
7. A device for determining boarding point information, characterized in that it includes a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein when the processor executes the program, it implements the method for determining boarding point information according to any one of claims 1-5 above.
8. A computer-readable storage medium, characterized in that the storage medium stores a computer program, and the computer program is used to execute the method for determining boarding point information according to any one of claims 1-5 above.
Citation Information
Patent Citations
A trajectory matching method for position error correction in vehicle navigation and positioning systems
CN106134434B
Site recommendation method based on time and geographical location information integrally
CN106776930A
Systems and methods for recommending a pick-up location
CN109313846A