Method and apparatus for determining time information of a route

By dividing the route into multiple segments and determining the navigation time of each segment, the problem of insufficient accuracy of route time information in the prior art is solved, and more accurate route time estimation and more efficient navigation and logistics distribution are achieved.

CN112801401BActive Publication Date: 2025-05-27BEIJING DIDI INFINITY TECH & DEV CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110179170.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-02-09
Publication Date
2025-05-27
Estimated Expiration
2041-02-09

AI Technical Summary

Technical Problem

It is difficult to accurately determine the time information of the route in route planning in the prior art, especially when traffic conditions change, resulting in a large difference between the actual driving time and the estimated time, affecting user experience and logistics distribution efficiency.

Method used

By dividing the target route into segments, the navigation time is determined based on the expected start time of each segment, and the total navigation time of the route or the expected arrival time of the stay position is determined.

Benefits of technology

The time information of the route is determined more accurately, the difference between the estimated time and the actual time is reduced, and the accuracy and efficiency of navigation and logistics distribution are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112801401B_ABST
    Figure CN112801401B_ABST
Patent Text Reader

Abstract

According to an embodiment of the present disclosure, a method, an apparatus, a device, a storage medium, and a program product for determining time information of a route are provided. The method proposed herein includes: dividing a target route into multiple segments based on multiple stop positions in the target route; determining the segment navigation time of each segment based on the expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; and determining the time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of the total navigation time of the target route or the expected arrival time of at least one stop position. Based on such a manner, the influence on the navigation time at different start times can be considered, so as to determine more accurate time information of the route.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure generally relate to the field of computer technology, and more particularly, to methods, apparatuses, devices, storage media, and program products for determining time information of a route. Background Art

[0002] With the development of the times, route planning has become a basic technical issue concerned by many industries. For example, navigation applications need to plan the travel routes for people from the starting point to the destination. Logistics distribution needs to plan the distribution routes for multiple distribution points.

[0003] In the process of route planning, it is usually dependent on the time information between different candidate routes to select a better route. For example, people may expect to select the route with the shortest travel time as the navigation route. Therefore, how to more accurately determine the time information of a route has become the focus of current attention. Summary of the Invention

[0004] According to some embodiments of the present disclosure, a solution for determining the time information of a route is provided.

[0005] In a first aspect of the present disclosure, a method for determining the time information of a route is provided. The method includes: dividing a target route into multiple segments based on multiple stop positions in the target route; determining the segment navigation time of each segment based on the expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; and determining the time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of the total navigation time of the target route or the expected arrival time of at least one stop position.

[0006] In a second aspect of the present disclosure, an apparatus for determining navigation time is provided. The apparatus includes: a segment division module configured to divide a target route into multiple segments based on multiple stop positions in the target route; a first determination module configured to determine the segment navigation time of each segment based on the expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; and a second determination module configured to determine the time information of the target route, where the time information indicates at least one of the total navigation time of the target route or the expected arrival time of at least one stop position.

[0007] In a third aspect of the present disclosure, an electronic device is provided, including one or more processors and a memory, where the memory is used to store computer-executable instructions, and the computer-executable instructions are executed by the one or more processors to implement the method according to the first aspect of the present disclosure.

[0008] In a fourth aspect of the present disclosure, there is provided a computer-readable storage medium having computer-executable instructions stored thereon, wherein the computer-executable instructions, when executed by a processor, implement the method according to the first aspect of the present disclosure.

[0009] In a fifth aspect of the present disclosure, there is provided a computer program product comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to the first aspect of the present disclosure.

[0010] According to an embodiment of the present disclosure, the embodiments of the present disclosure determine the corresponding segment navigation time based on the start time of each segment in the route, so that the time information of the route can be determined more accurately.

[0011] The Summary of the Invention is provided to introduce a selection of concepts in a simplified form, which will be further described in the Detailed Description below. The Summary of the Invention is not intended to identify the key features or essential features of the present disclosure, nor is it intended to limit the scope of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] In conjunction with the drawings and with reference to the following detailed description, the above and other features, advantages, and aspects of the embodiments of the present disclosure will become more apparent. In the drawings, the same or similar reference numerals denote the same or similar elements, where:

[0013] Figure 1 A block diagram showing an example environment in which embodiments of the present disclosure can be implemented;

[0014] Figure 2 A flowchart showing a process for determining the time information of a road according to some embodiments of the present disclosure;

[0015] Figure 3A and Figure 3B A schematic diagram showing a process for determining time information according to some embodiments of the present disclosure;

[0016] Figure 4 A schematic diagram showing a process for constructing a candidate time set according to some embodiments of the present disclosure;

[0017] Figure 5A A schematic diagram showing local sampling according to some embodiments of the present disclosure;

[0018] Figure 5B A local fully connected graph determined by local sampling according to some embodiments of the present disclosure;

[0019] Figure 6A A schematic diagram showing local sampling according to some other embodiments of the present disclosure;

[0020] Figure 6B Shows a local fully-connected graph determined by local sampling according to other embodiments of the present disclosure;

[0021] Figure 7 Shows a block diagram of a device for determining navigation time according to some embodiments of the present disclosure; and

[0022] Figure 8 Shows a block diagram of an electronic device in which one or more embodiments of the present disclosure can be implemented. Detailed Description of Specific Embodiments

[0023] Some example embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to make the present disclosure more thorough and complete, and to fully convey the scope of the present disclosure to those skilled in the art.

[0024] As used herein, the term "comprising" and its variations mean open inclusion, i.e., "including but not limited to". Unless otherwise specified, the term "or" means "and / or". The term "based on" means "at least partially based on". The terms "an example embodiment" and "an embodiment" mean "at least one example embodiment". The term "another embodiment" means "at least one additional embodiment". The terms "first", "second", etc. may refer to different or the same objects. There may be other explicit and implicit definitions hereinafter.

[0025] As discussed above, during the route planning process, time information between different candidate routes is usually relied on to select a better route. For example, people may expect to obtain time information about the total navigation time of a route.

[0026] Some traditional solutions usually only consider determining such a total navigation time based on the traffic conditions of each road segment at the departure time from the starting point. However, during the process of the vehicle traveling along the route, the traffic conditions of the subsequent route may change, which will result in a large difference between the actual travel time and the previously estimated total navigation time. This will greatly affect the user experience.

[0027] In addition, in scenarios such as goods delivery, such errors in navigation time estimation will also affect the normal delivery of goods, which may lead to an increase in user dissatisfaction.

[0028] In view of this, embodiments of the present disclosure propose a solution for determining the time information of a route. In this solution, first, based on multiple stop positions in the target route, the target route is divided into multiple segments. Subsequently, based on the expected start time of each segment among the multiple segments, the segment navigation time of each segment is determined, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment. The segment navigation time of each segment can be used to determine the time information of the target route, where the time information indicates at least one of the total navigation time of the target route or the expected arrival time of at least one stop position.

[0029] According to such a solution, embodiments of the present disclosure determine the corresponding segment navigation time based on the start time of each segment in the route, so that the time information of the route can be determined more accurately.

[0030] Some exemplary embodiments of the present disclosure will be described below with continued reference to the drawings.

[0031] Example environment

[0032] Figure 1 A block diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. As Figure 1 shown, the environment 100 includes a first computing device 110, which is configured to generate time information 120 of a target route 150. In some implementations, the first computing device 110 can be any suitable type of electronic device. Exemplarily, the first computing device 110 can be a server for planning a delivery route.

[0033] In some implementations, as Figure 1 shown, the target route 150 includes multiple stop positions, for example, a starting point 132 and multiple waypoints 140-1 to 140-5 (individually or collectively referred to as waypoints 140). In the scenario of logistics distribution, the starting point 132 can represent a goods warehouse or a loading location, etc.

[0034] In some implementations, the multiple waypoints 140 can be indicated by coordinate values to correspond to the specific locations of the goods to be delivered in the real world. Alternatively, the multiple waypoints 140 can also be represented by POIs, for example.

[0035] Exemplarily, in the scenario of community group buying, the delivery location 140 can represent the location corresponding to the "group leader" of the combined order, and the group buying application needs to arrange transportation means to deliver the corresponding goods to multiple "group leaders". As another example, in the scenario of express logistics, the delivery location 140 can also represent the location where the express or logistics needs to be delivered, for example.

[0036] In a navigation scenario, a starting point 132 can represent the starting position of navigation, a destination point 134 can represent the destination position of navigation, and multiple waypoints 140 can represent positions where stops are required during the journey.

[0037] As Figure 1 shown, a first computing device 110 can determine time information 120 of a target route 150. In some implementations, the time information 120 can include, for example, the total navigation time 122 of the target route 150. Additionally or alternatively, the time information 120 can also include, for example, the expected arrival time 124 of at least one stop position in the target route 150.

[0038] The following will describe in detail the specific process of determining the time information 120 of the target route 150 in conjunction with Figure 2 .

[0039] Example process

[0040] The following will describe in detail the process of determining the time information of a route according to an embodiment of the present disclosure in conjunction with Figure 2 . Figure 2 FIG. shows a schematic diagram of a process 200 for determining the time information of a route according to some embodiments of the present disclosure. For ease of discussion, reference is made to Figure 1 to discuss the process of determining the time information of a route. The process 200 can be executed, for example, at Figure 1 the first computing device 110 shown. It should be understood that the process 200 can also include blocks not shown and / or can omit the blocks shown. The scope of the present disclosure is not limited in this regard.

[0041] As Figure 2 shown, at block 202, the first computing device 110 divides the target route into multiple segments 155 based on multiple stop positions in the target route 150.

[0042] Exemplarily, as Figure 1 the target route 150 in shows, the first computing device 110 can divide the target route 150 into multiple segments 155-1, 155-2, 155-3, 155-4, and 155-5 according to multiple waypoints 140, for example.

[0043] At block 204, the first computing device 110 determines the segment navigation time of each segment based on the expected start time of each segment in the multiple segments 155, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment.

[0044] The following will describe the process of determining the segment navigation time with reference to Figure 3A . Figure 3AFIG. 300A is a schematic diagram showing time information for determining a route according to some embodiments of the present disclosure.

[0045] As Figure 3A shown, for the first segment 155-1 among the plurality of segments 155, the first computing device 110 can, for example, determine the expected start time of the segment 155-1 according to the expected departure time from the starting point 132. In Figure 3A the example, the first computing device 110 can, for example, determine that the expected time for the delivery party to leave the starting point 132 is 7:00 AM.

[0046] Accordingly, the first computing device 110 can determine the navigation time of the segment 155-1 based on the expected start time of the segment 155-1. In some implementations, the first computing device 110 can, for example, utilize a map service to determine that at 7:00 AM, the navigation time of the segment 155-1 is 10 minutes.

[0047] In still other implementations, the first computing device 110 can, for example, also determine the navigation time of the segment 155-1 according to a plurality of candidate navigation time sets that are expected to be constructed. In some implementations, the plurality of candidate navigation time sets can, for example, be constructed for different time ranges.

[0048] Exemplarily, candidate navigation time sets corresponding to (7:00 - 7:30 AM), (7:30 - 8:00 AM), (8:00 - 8:30 AM), (8:30 - 9:00 AM), (9:00 - 9:30 AM), (9:30 - 10:00 AM), (10:00 - 10:30 AM), and (10:30 - 11:00 AM) can be pre-constructed respectively, which respectively include the navigation times required to travel from one stop location to another stop location during the corresponding time periods. The specific construction process of the navigation time sets will be described in detail below with reference to Figure 4 FIGS. 5 to 6 and will not be elaborated here for the time being.

[0049] In some implementations, the first computing device 110 can determine a target navigation time set corresponding to the expected start time from the plurality of candidate navigation time sets, where the target navigation time set at least indicates the navigation times of the plurality of segments within the corresponding time ranges.

[0050] Taking the segment 155-1 as an example, the first computing device 110 can, for example, determine the candidate navigation time set corresponding to the time range (7:00 - 7:30 AM) from the plurality of candidate navigation time sets as the target navigation time set.

[0051] Additionally, the first computing device 110 may determine segmented navigation times based on a set of target navigation times. Exemplarily, the first computing device 110 may query from the set of target navigation times that the navigation time for segment 155-1 is 10 minutes.

[0052] It should be understood that the first computing device 110 may iteratively determine the navigation times for multiple segments 155. As Figure 3A shown, for segment 155-2, the first computing device 110 may first determine, for example, that the start time of segment 155-2 is 7:10 AM based on the start time and navigation time (10 minutes) of segment 150-1, and based on the methods discussed above, use a map service or determine from the set of target navigation times corresponding to 7:10 AM that the navigation time for segment 155-2 is 30 minutes.

[0053] In some implementations, the start time of segment 155-2 may also consider the expected stay time at stop point 140-1. For example, in a logistics distribution scenario, the first computing device 110 may determine the expected stay time based on the goods to be distributed at stop point 140-1. Accordingly, the first computing device 110 may determine the start time of segment 155-2 based on the start time, navigation time of segment 155-1, and the expected stay time at stop point 140-1.

[0054] Based on a similar process, the first computing device 110, for example, determines that the start time of segment 155-3 is 7:40 AM, and based on a map service or the set of target navigation times corresponding to 7:10 AM (e.g., the set of candidate navigation times corresponding to the time range (7:30 - 8:00 AM)), determines that the navigation time for segment 155-3 is 20 minutes. Similarly, the first computing device 110 may also determine that the navigation time for segment 155-4 is 20 minutes and the navigation time for segment 155-5 is 18 minutes.

[0055] In block 206, the first computing device 110 determines time information for the target route 150 based on the segmented navigation times of each segment 155, where the time information indicates at least one of the total navigation time of the target route 150 or the expected arrival times at multiple stop locations.

[0056] In some implementations, the first computing device 110 may, for example, determine that the total navigation time for the target route 150 is 98 minutes based on the sum of the segmented navigation times of each segment 155.

[0057] In some other implementations, the first computing device 110 can, for example, determine the expected arrival times of the respective stop positions according to the segment navigation times of the respective segments 155: the expected arrival time at stop 140-1 is 7:10 AM, the expected arrival time at stop 140-2 is 7:40 AM, the expected arrival time at stop 140-3 is 8:00 AM, the expected arrival time at stop 140-4 is 8:20 AM, and the expected arrival time at stop 140-5 is 8:38 AM.

[0058] Based on the methods discussed above, embodiments of the present disclosure can take into account that different segments of a route are traveled through at different time phases. By determining the segment navigation times of the respective segments in the corresponding time phases, embodiments of the present disclosure can more accurately determine the time information of the route, thereby providing better support for navigation or logistics distribution.

[0059] In some implementations, as discussed above, the multiple stop positions include multiple delivery positions for the goods to be delivered.

[0060] In some implementations, the first computing device 110 can determine whether the target route (also referred to as the delivery route) meets a predetermined delivery time constraint based on the time information 120. The delivery time constraint includes at least one of the following: a first time constraint associated with the total navigation time, or a second time constraint associated with the expected arrival time. If it is determined that the target route does not meet the delivery time constraint, the first computing device 110 can adjust the target route.

[0061] For the convenience of comparison with the route shown in Figure 3A the following will describe the process of adjusting the delivery route with reference to Figure 3B FIG. Figure 3B FIG. 300B shows a schematic diagram of determining the time information of a route according to some embodiments of the present disclosure.

[0062] As Figure 3B shown, the first computing device 110 can determine that the total navigation duration of the delivery route is 125 minutes. In some implementations, the first computing device 110 can, for example, determine that the total navigation duration of the delivery route exceeds a predetermined threshold, and thus determine that the delivery route needs to be adjusted.

[0063] In some implementations, the first computing device 110 can, for example, determine that the expected arrival time at stop 140-4 (i.e., the delivery position) is 9:05 AM. If the second time constraint indicates that the consignee corresponding to stop 140-4 requires to receive the goods before 9 o'clock, the computing device 110 can determine that the time information of the target route does not meet the second time constraint.

[0064] In some implementations, the first computing device 110 may adjust the delivery order of multiple delivery locations in the target route. For example, the first computing device 110 may adjust the Figure 3B delivery route shown in Figure 3A to the delivery route shown in

[0065] thereby improving the delivery efficiency. In some implementations, the first computing device 110 may also, for example, adjust multiple delivery locations included in the target route. For example, the first computing device 110 may remove one or more delivery locations from the multiple delivery locations to meet time constraints. In some implementations, the one or more removed delivery locations may, for example, be arranged for other delivery parties to deliver.

[0066] As another example, the first computing device 110 may also, for example, add one or more delivery locations, or exchange one or more delivery locations with multiple delivery locations responsible for delivery by other delivery parties, thereby improving the delivery efficiency.

[0067] Based on such a manner, embodiments of the present disclosure may generate a more reasonable delivery route. Exemplarily, the first computing device 110 may Figure 3B skip frames of the delivery route in Figure 3A to the delivery route shown in Figure 3A and Figure 3B it can be seen that, for example, from stop 140-2 to stop 140-3 is the out-of-town direction, and the navigation time required during the morning rush hour is 20 minutes, while from stop 140-3 to stop 140-2 is the in-town direction, and the navigation time during the morning rush hour is 45 minutes.

[0068] By considering the segmented navigation time of each segment, embodiments of the present disclosure may generate a delivery route with higher delivery efficiency.

[0069] In some implementations, when it is determined that the target route is a delivery route that meets time constraints, the first computing device 110 may also determine the expected delivery time associated with the target delivery location among the multiple delivery locations. For example, taking Figure 3A as an example, the first computing device 110 may determine that the expected delivery time corresponding to stop 140-5 is 8:38 AM. Accordingly, the computing device 110 may provide information about the expected delivery time to the terminal device associated with the target delivery location. For example, the computing device 110 may send a message to the terminal device of the "consignee" corresponding to stop 140-5 that the expected delivery time of the goods is 8:38 AM in the morning, so that the "consignee" can prepare in advance.

[0070] Construction of candidate navigation time set

[0071] The following will describe, with reference to Figure 4 the process of constructing multiple candidate navigation time sets used to determine the segmented navigation time described above according to an embodiment of the present disclosure.

[0072] Figure 4 FIG. 400 shows a schematic diagram of constructing multiple candidate navigation time sets according to some embodiments of the present disclosure. As Figure 4 shown, the loop computing device 420 can obtain a set of locations 410. In some implementations, the set construction device 420 can be any suitable type of electronic device. Exemplarily, the set construction device 420 can be a computing device that is the same as or different from the Figure 1 first computing device 110 in

[0073] In some implementations, a set of locations 410 can include multiple stop locations in a target route. In some implementations, a set of locations 410 can be indicated by coordinate values to correspond to locations in the real world. Exemplarily, the location 410 can represent the location where goods are to be delivered. For example, in the scenario of community group buying, the location 410 can represent the location corresponding to the "group leader" of the combined order, and the group buying application needs to arrange transportation means to deliver the corresponding goods to multiple "group leaders". As another example, in the scenario of express logistics, the location 410 can also represent the location where the express or logistics needs to be delivered, for example.

[0074] In some implementations, for the need of scheduling transportation means and planning routes, the computing device 420 needs to determine the navigation time between any two of the set of locations 410. However, as mentioned above, in the actual scenario, the number of locations 410 may be huge, which makes it difficult for the computing device 420 to determine all the navigation times by calling the map service 430.

[0075] According to an embodiment of the present disclosure, the computing device 420 can construct a sampled navigation time set 440 by using the map service 130 based on sampling. As Figure 4 shown, the sampled navigation time set 440 can include the navigation time 445 between a pair of locations determined according to sampling from a set of locations 410. It should be understood that such a navigation time 445 can include the two-way navigation time between two locations (i.e., both the navigation time from the first location to the second location and the navigation time from the second location to the first location). Or, such a navigation time 445 can also include only the one-way navigation time between two locations.

[0076] Note that the navigation time of the same route may vary greatly within different time ranges. For example, the navigation time of the same road section during peak hours and non-peak hours may vary by several times.

[0077] To improve the accuracy of navigation time, the second computing device 420 may construct multiple sets of sampled navigation times 440 corresponding to different time ranges. Exemplarily, the second computing device 420 may determine multiple time ranges as needed. For example, the second computing device 420 may divide the time range in a half-hour cycle. Accordingly, from 7:00 AM to 11:00 AM, it can be divided into the following time ranges [T1, T2, T3, T4, T5, T6, T7, T8]. Taking T1 and T8 as examples, where T1 represents the time range from 7:00 AM to 7:30 AM, and T8 represents the time range from 10:30 AM to 11:00 AM. Accordingly, the second computing device 420 may construct 8 sets of sampled navigation times corresponding to the above 8 time ranges. It should be understood that such a division method is only illustrative, and any other appropriate division method may also be used.

[0078] In some implementations, the multiple sets of sampled navigation times 440 may be represented, for example, by a data structure of a directed graph. As will be described in detail below, the sampling used in the present disclosure may be based on local sampling and connectivity sampling, thereby ensuring that the directed graph constructed based on the sampling is globally connected and has sufficient local details. In addition, compared with the traditional method of determining all navigation times based on the map service 430 to construct a fully connected graph between all locations, the embodiments of the present disclosure can significantly reduce the amount of calls to the map service 430, thereby reducing network overhead.

[0079] As Figure 4 shown, when the navigation time between, for example, location A and location B is not determined based on sampling, the computing device 420 may infer the target navigation time between location A and location B based on other associated navigation times 445. It should be understood that although in Figure 4 , the target navigation time is only shown to include one-way navigation time, but the target navigation time may also include, for example, the navigation time from location B to location A.

[0080] As Figure 4 shown, the second computing device 420 may construct multiple sets of candidate navigation times 450 based on the target navigation time and multiple sampled candidate times 440. The multiple sets of candidate navigation times 450 may correspond to different time ranges and indicate the navigation times between every two locations in a set of locations 410 within the corresponding time range.

[0081] Process of determining target navigation time

[0082] The process of determining the target navigation time according to an embodiment of the present disclosure will be described below. For ease of description, the process of determining the target navigation time will be described below by taking the set of sampled navigation times 440 corresponding to one time range as an example.

[0083] In some implementations, the computing device 420 may determine a set of sampled navigation times 440 associated with a set of locations 410 based on the map service 430. The set of sampled navigation times 440 includes navigation times 445 associated with multiple pairs of sampled locations, and the multiple pairs of sampled locations are determined based at least on local sampling and connectivity sampling for a set of locations. Local sampling is used to determine neighboring locations associated with locations in the set of locations 410 to construct pairs of sampled locations, and connectivity sampling constructs pairs of sampled locations based on sequential selection of the set of locations 410.

[0084] In some implementations, local sampling may be performed based on a geographic grid. The following will refer to Figure 5A and Figure 5B to describe the process of performing local sampling based on a geographic grid. Figure 5A FIG. 500A is a schematic diagram showing local sampling according to some embodiments of the present disclosure.

[0085] As shown in FIG. 5, for a target location 520 in the set of locations 410, the computing device 420 may determine a target geographic grid 515 corresponding to the target location.

[0086] In some implementations, different coordinate regions may be divided into multiple geographic grids 510 of a predetermined size. Such geographic grids 510 may have different shapes, typically square or regular hexagon. Accordingly, for the target location 520, the second computing device 420 may determine the corresponding target geographic grid based on its coordinates.

[0087] Additionally, the second computing device 420 may determine neighboring locations associated with the target location based on neighboring geographic grids adjacent to the target geographic grid 515.

[0088] In some implementations, for example, the second computing device 420 may determine the geographic grids adjacent to the position of the target geographic grid 515 as neighboring geographic grids. By Figure 5A way of example, the second computing device 420 may determine, for example, the 6 geographic grids surrounding the target geographic grid 515 as neighboring geographic grids, and determine the locations 525 included in these neighboring geographic grids as neighboring locations associated with the target location 520. In contrast, the location 530 will not be determined as a neighboring location associated with the target location 520.

[0089] In some implementations, in order to ensure the sufficiency of local sampling, the second computing device 420 may, for example, sequentially traverse multiple layers of the target geographic grid 515 for local sampling. Specifically, the second computing device 420 may first obtain the 6 adjacent geographic grids of the target geographic grid 515 and obtain the locations included therein as neighboring locations.

[0090] If the number of neighboring positions does not exceed a predetermined threshold, the second computing device 420 may further obtain positions in 12 geographical grids of the 6 outer layers of geographical grids as neighboring positions.

[0091] In some implementations, to reduce the number of calls to the map service 150, the second computing device 420 may iteratively perform such traversals until the obtained neighboring positions reach a predetermined number threshold.

[0092] In some implementations, to avoid the distance between the obtained neighboring positions and the target position 520 being too far, the second computing device 420 may also limit the number of layers of geographical grids to be traversed, so that the grid distance between the obtained neighboring geographical grids and the target geographical grid is less than a predetermined distance threshold, where the grid distance may indicate the distance between the center points of geographical grids. Exemplarily, the second computing device 420 may terminate after traversing 2 layers of geographical grids, regardless of the number of obtained neighboring positions.

[0093] In some implementations, the second computing device 420 may also consider the above two traversal termination conditions simultaneously, and terminate the traversal process when one of the traversal termination conditions is met.

[0094] In some implementations, the second computing device 420 may construct sampling position pairs based on the target position 520 and the determined neighboring positions 525. In some implementations, the second computing device 420 may, for example, construct at least one sampling position pair corresponding to every two positions among the target position 520 and the neighboring positions 525.

[0095] In some implementations, the second computing device 420 may perform the above-described local sampling process based on geographical grids on some or all of the positions in a set of positions 110. It should be understood that when the navigation times of two positions have been determined based on a previous sampling process, the navigation times of these two positions will not be repeated in subsequent sampling processes.

[0096] As Figure 5B shown, the second computing device 420 may construct a local fully connected graph 500B based on the target position 520 and the determined neighboring positions 525. Each vertex in the fully connected graph 500B represents the target position 520 or a neighboring position 525, and each edge (unidirectional or bidirectional) represents the navigation time (unidirectional navigation time or bidirectional navigation time) between two positions determined based on the map service 150.

[0097] In some implementations, local sampling may be performed based on distance. The following will refer to Figure 6A and Figure 6B to describe the process of performing local sampling based on distance.Figure 6A FIG. 600A is a schematic diagram showing local sampling according to some embodiments of the present disclosure.

[0098] In some implementations, for a target position 610 in a set of positions 410, the second computing device 420 may determine the distances between the target position 610 and other positions in the set of positions 410.

[0099] Additionally, the second computing device 420 may determine a predetermined number of neighboring positions 620 from the set of positions based on the sorting of the distances. Exemplarily, the second computing device 420 may, for example, select 20 positions closest to the target position 610 as the neighboring positions 620.

[0100] Alternatively, the second computing device 420 may, for example, determine positions with distances less than a predetermined distance threshold as the neighboring positions 620.

[0101] In some implementations, the second computing device 420 may construct sampling position pairs based on the target position 610 and the determined neighboring positions 620. In some implementations, the second computing device 420 may, for example, construct at least one sampling position pair corresponding to each two positions among the target position 610 and the neighboring positions 620.

[0102] In some implementations, the second computing device 420 may perform the above distance-based local sampling process on some or all of the positions in the set of positions 410. It should be understood that when the navigation times of two positions have been determined based on a previous sampling process, the navigation times of these two positions will not be repeated in subsequent sampling processes.

[0103] As Figure 4 As shown in FIG. 600B, the second computing device 420 may construct a local fully connected graph 600B based on the target position 620 and the determined neighboring positions 620. Each vertex in the fully connected graph 600B represents the target position 610 or a neighboring position 620, and each edge (unidirectional or bidirectional) represents the navigation time (unidirectional navigation time or bidirectional navigation time) between two positions determined based on the map service 430.

[0104] In some implementations, in some cases where some positions are relatively isolated, local sampling based on a geographic grid may not obtain sufficient sampling position pairs. The second computing device 420 may also perform both local sampling based on a geographic grid and distance-based position sampling on some or all of the positions in the set of positions 410, thereby ensuring local connectivity at a single position.

[0105] In some implementations, to ensure that the determined directed graph based on the sampling positions is globally connected and that a path between two positions can always be found in the directed graph, the second computing device 420 also needs to perform connectivity sampling for a set of positions 410.

[0106] In some implementations, the second computing device 420 can perform connectivity sampling based on a random sequential selection of a set of positions 410. Specifically, the second computing device 420 can select a first position from the set of positions 410 and iteratively perform the following process until all positions in the set of positions 410 are selected: select a second position from the remaining unselected positions in the set of positions; construct a sampling position pair based on the first position and the second position; and determine the second position as the new first position.

[0107] Exemplarily, when there are 100 positions in a set of positions, the second computing device 420 can first randomly select a position from the 100 positions as the starting position, and then select subsequent positions from the remaining 99 positions, and construct sampling position pairs based on the starting position and the subsequent positions. Subsequently, the second computing device 420 can continue to randomly select positions from the remaining 98 positions and construct them into sampling position pairs with the previously selected positions until all 100 positions are selected.

[0108] In some implementations, if the navigation time determined based on the sampling position pair is a two-way navigation time, the second computing device 420 can ensure that the directed graph constructed based on the sequential selection is connected.

[0109] In some implementations, if the navigation time determined based on the sampling position pair is a one-way navigation time, the second computing device 420 can also construct a sampling position pair based on the last selected position and the starting position to construct a one-way closed loop, and can also ensure that the constructed directed graph is connected.

[0110] In some implementations, the second computing device 420 can, for example, perform multiple connectivity samplings based on sequential selection to enrich the global connectivity.

[0111] In some implementations, the second computing device 420 can, for example, also perform random sampling for a set of positions to determine sampling position pairs, where random sampling is used to randomly construct sampling position pairs based on a set of positions. Such random sampling is also called Monte Carlo random sampling. Specifically, the second computing device 420 can randomly select a pair of positions from a set of positions and determine the pair of positions as the sampling position pair. It should be understood that the second computing device 420 can perform multiple random samplings to enhance the connectivity of the constructed directed graph.

[0112] As can be seen, based on the sampling process discussed above, the embodiments of the present disclosure have a call magnitude of O(N) for the map service invoked, where N represents the number of positions in a set of positions. This is compared with the traditional O(N 2 ) call magnitude, which greatly reduces the call pressure on the map service and network overhead.

[0113] In some implementations, if the sampled navigation time set 440 does not include the target navigation time between a pair of target positions, the second computing device 420 may determine the target navigation time based on multiple associated navigation times 445 in the sampled navigation time set 440.

[0114] In some implementations, the second computing device 420 may determine multiple associated navigation times associated with a pair of target positions from the sampled navigation time set based on a shortest path algorithm. As discussed above, the second computing device 420 may construct a directed graph based on the sampled navigation time set 440. Accordingly, the second computing device 420 may use any suitable shortest path algorithm to determine the shortest path of a pair of target positions in the directed graph and obtain multiple associated navigation times indicated by multiple edges included in the shortest path.

[0115] Additionally, the second computing device 420 may determine the target navigation time based on the determined multiple associated navigation times. Exemplarily, when the target navigation time from position A to position B is not included in the sampled navigation time set 140, the second computing device 420 may determine that the shortest path from position A to position B is "position A > position C > position B", and the navigation time from position A to position C is 1 minute and 30 seconds, and the navigation time from position C to position B is 30 seconds. Then, the second computing device 420 may determine the target navigation time from position A to position B as the sum of the two navigation times from position A to position C and from position C to position B.

[0116] Based on such a manner, the embodiments of the present disclosure can construct a sampled navigation time set through local sampling and connectivity sampling, and determine the navigation time between other positions based on the sampled navigation time set, which can reduce the call volume for the map service.

[0117] In some implementations, the second computing device 420 may also construct multiple candidate navigation time sets 450 based on multiple sampled navigation time sets 440 and the target navigation time. The candidate navigation time set 450 may include the navigation time between each two positions in a set of positions 410. Specifically, the second computing device 420 may, for example, complete the non-fully connected graph constructed based on the sampled navigation time set 440 into a fully connected graph, that is, there is an edge connection between each vertex in the graph.

[0118] Example devices and equipment

[0119] Figure 7 FIG. 2 shows a schematic structural block diagram of a device 700 for determining time information of a route according to some embodiments of the present disclosure. The device 700 may be implemented as or included in the first computing device 110, the second computing device 420, or other devices implementing the above processes of the present disclosure.

[0120] As Figure 7 shown, the device 700 includes: a segment division module 710 configured to divide a target route into multiple segments based on multiple stop positions in the target route. The device 700 further includes a first determination module 720 configured to determine a segment navigation time for each segment based on an expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment. The device 700 further includes a second determination module 730 configured to determine time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of a total navigation time of the target route or an expected arrival time of at least one stop position.

[0121] In some implementations, the first determination module 720 includes: a target time set determination module configured to determine a target navigation time set corresponding to the expected start time from multiple candidate navigation time sets, where the target navigation time set at least indicates navigation times of multiple segments within a corresponding time range; and a set query module configured to determine the segment navigation time based on the target navigation time set.

[0122] In some implementations, the device 700 further includes: a first construction module configured to construct multiple sampled navigation time sets associated with a set of positions including multiple stop positions based on a map service, where the multiple sampled navigation time sets are associated with different time ranges, and the sampled navigation time set includes navigation times associated with multiple pairs of sampled positions, and the multiple pairs of sampled positions are determined at least based on local sampling and connectivity sampling for the set of positions, where local sampling is used to determine adjacent positions associated with positions in the set of positions to construct sampled position pairs, and connectivity sampling constructs sampled position pairs based on sequential selection of the set of positions; and a second construction module configured to construct multiple candidate navigation time sets based on the multiple sampled navigation time sets.

[0123] In some implementations, the multiple pairs of sampled positions are further determined based on random sampling for the set of positions, where random sampling is used to randomly construct sampled position pairs based on the set of positions.

[0124] In some implementations, the apparatus 700 further includes a first sampling module configured to perform local sampling based on the following process: for a target position in a set of positions, determine a target geographical grid corresponding to the target position; based on neighboring geographical grids adjacent to the target geographical grid, determine neighboring positions associated with the target position; and based on the target position and the neighboring positions, construct sampling position pairs.

[0125] In some implementations, the number of neighboring positions is less than a number threshold.

[0126] In some implementations, the neighboring geographical grid and the target geographical grid have a grid distance less than a distance threshold, where the grid distance indicates the distance between the center points of the geographical grids.

[0127] In some implementations, the geographical grid is square or regular hexagon.

[0128] In some implementations, the apparatus 700 further includes a second sampling module configured to perform local sampling based on the following process: for a target position in a set of positions, determine the distances between the target position and other positions in the set of positions; based on the sorting of the distances, determine a predetermined number of neighboring positions from the set of positions; and based on the target position and the neighboring positions, construct sampling position pairs.

[0129] In some implementations, the first sampling module or the second sampling module further includes: a position pair construction module configured to construct at least one sampling position pair corresponding to each two positions among the target position and the neighboring positions.

[0130] In some implementations, the apparatus 700 further includes a third sampling module configured to perform connectivity sampling based on the following process: select a first position from a set of positions; and iteratively perform the following process until all positions in the set of positions are selected: select a second position from the remaining unselected positions in the set of positions; based on the first position and the second position, construct a sampling position pair; and determine the second position as the new first position.

[0131] In some implementations, the connectivity sampling is performed at least twice.

[0132] In some implementations, the second construction module includes: a shortest path calculation module configured to, for a sampling navigation time set among a plurality of sampling navigation time sets: if the target navigation time between a pair of target positions is not indicated by the sampling navigation time set, use the shortest path algorithm to determine the target navigation time based on the sampling navigation time set; and a third construction module configured to construct a candidate navigation time set corresponding to the sampling navigation time set based on the target navigation time.

[0133] In some implementations, the multiple stay positions include multiple delivery positions of goods to be delivered.

[0134] In some implementations, the apparatus 700 further includes: a constraint judgment module configured to determine, based on time information, whether a target route meets a predetermined delivery time constraint, where the delivery time constraint includes at least one of the following: a first time constraint associated with the total navigation time, or a second time constraint associated with the expected arrival time; and a route adjustment module configured to adjust the target route in response to determining that the target route does not meet the delivery time constraint.

[0135] In some implementations, the route adjustment module includes: a first adjustment module configured to adjust the delivery order of multiple delivery locations in the target route; or a second adjustment module configured to adjust the multiple delivery locations included in the target route.

[0136] In some implementations, the apparatus 700 further includes: a time determination module configured to determine an expected delivery time associated with a target delivery location among multiple delivery locations; and a providing module configured to provide information about the expected delivery time to a terminal device associated with the target delivery location.

[0137] Figure 8 A block diagram of an electronic device 800 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that Figure 8 The illustrated electronic device 800 is merely exemplary and should not impose any limitation on the functions and scope of the embodiments described herein. Figure 8 The illustrated electronic device 800 may be included in or implemented as Figure 1 the first computing device 110 in Figure 4 the second computing device 420 in or other devices implementing the above processes of the present disclosure.

[0138] As Figure 8 shown, the electronic device 800 is in the form of a general-purpose computing device. The electronic device 800 may also be any type of computing device or server. The components of the electronic device 800 may include, but are not limited to, one or more processors or processing units 810, a memory 820, a storage device 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860. The processing unit 810 may be an actual or virtual processor and be capable of performing various processes according to programs stored in the memory 820. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing ability of the electronic device 800.

[0139] The electronic device 800 generally includes multiple computer storage media. Such media can be any available media accessible to the electronic device 800, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 820 can be volatile memory (such as registers, caches, random access memory (RAM)), non-volatile memory (such as read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 830 can be removable or non-removable media and can include machine-readable media, such as a flash drive, a magnetic disk, or any other media that can be capable of storing information and / or data (such as map data) and can be accessed within the electronic device 800.

[0140] The electronic device 800 can further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in Figure 8 , a disk drive for reading from or writing to a removable, non-volatile magnetic disk (such as a "floppy disk") and an optical disk drive for reading from or writing to a removable, non-volatile optical disk can be provided. In these cases, each drive can be connected to a bus (not shown) by one or more data media interfaces. The memory 820 can include a computer program product 825 having one or more program modules that are configured to perform the various methods or actions of the various embodiments of the present disclosure.

[0141] The communication unit 840 enables communication with other computing devices via a communication medium. Additionally, the functions of the components of the electronic device 800 can be implemented in a single computing cluster or multiple computer machines that are capable of communicating via a communication connection. Thus, the electronic device 800 can operate in a networked environment using a logical connection with one or more other servers, network personal computers (PCs), or another network node.

[0142] The input device 850 can be one or more input devices, such as a mouse, a keyboard, a trackball, etc. The output device 860 can be one or more output devices, such as a display, a speaker, a printer, etc. The electronic device 800 can also communicate with one or more external devices (not shown) as needed via the communication unit 840, such as storage devices, display devices, etc., communicate with one or more devices that enable a user to interact with the electronic device 800, or communicate with any device that enables the electronic device 800 to communicate with one or more other computing devices (such as a network card, a modem, etc.). Such communication can be performed via an input / output (I / O) interface (not shown).

[0143] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions or programs are stored, and the computer-executable instructions or programs are executed by a processor to implement the methods or functions described above. The computer-readable storage medium may include a non-transitory computer-readable medium. According to an exemplary implementation of the present disclosure, a computer program product is also provided, including computer-executable instructions or programs, and the computer-executable instructions or programs are executed by a processor to implement the methods or functions described above. The computer program product may be tangibly embodied on a non-transitory computer-readable medium.

[0144] Aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-executable instructions or programs.

[0145] These computer-executable instructions or programs can be provided to the processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is produced that implements the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-executable instructions or programs can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other devices to work in a specific manner. Thus, the computer-readable medium storing the instructions includes a manufactured article that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0146] The computer-executable instructions or programs can be loaded onto a computer, other programmable data processing device, or other device, such that a series of operation steps are executed on the computer, other programmable data processing device, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing device, or other device implement the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0147] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various implementations of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a portion of an instruction, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions noted in the blocks may occur in an order different from that noted in the accompanying drawings. For example, two consecutive blocks may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or actions, or by a combination of dedicated hardware and computer instructions.

[0148] The various implementations of the present disclosure have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed implementations. Many modifications and variations are obvious to those of ordinary skill in the art in the field of this technology without departing from the scope and spirit of the described implementations. The selection of the terms used herein is intended to best explain the principles of the implementations, the practical application, or the improvement of the technology in the market, or to enable other ordinary skilled persons in the field of this technology to understand the various implementation manners disclosed herein.

[0149] Example implementation

[0150] TS 1. A method for determining the time information of a route, comprising:

[0151] Dividing a target route into multiple segments based on multiple stop positions in the target route;

[0152] Determining the segment navigation time of each segment based on the expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; and

[0153] Determining the time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of the total navigation time of the target route or the expected arrival time of at least one stop position.

[0154] TS 2. The method according to TS 1, wherein determining the segment navigation time of each segment comprises:

[0155] Determining a target navigation time set corresponding to the expected start time from multiple candidate navigation time sets, where the target navigation time set at least indicates the navigation time of the multiple segments within the corresponding time range; and

[0156] Determine the segmented navigation time based on the target navigation time set.

[0157] TS 3. According to the method of TS 2, it further includes:

[0158] Based on the map service, construct multiple sampled navigation time sets associated with a set of locations including multiple stop locations. The multiple sampled navigation time sets are associated with different time ranges. The sampled navigation time set includes navigation times associated with multiple pairs of sampled locations, and the multiple pairs of sampled locations are determined at least based on local sampling and connectivity sampling for a set of locations. The local sampling is used to determine neighboring locations associated with the locations in the set of locations to construct pairs of sampled locations, and the connectivity sampling constructs pairs of sampled locations based on the sequential selection of a set of locations; and

[0159] Based on the multiple sampled navigation time sets, construct multiple candidate navigation time sets.

[0160] 4. According to the method of TS 3, wherein the multiple pairs of sampled locations are also determined based on random sampling for a set of locations, and the random sampling is used to randomly construct pairs of sampled locations based on a set of locations.

[0161] TS 5. According to the method of TS 3, it further includes performing local sampling based on the following process:

[0162] For a target location in a set of locations,

[0163] Determine the target geographical grid corresponding to the target location;

[0164] Based on neighboring geographical grids adjacent to the target geographical grid, determine neighboring locations associated with the target location; and

[0165] Based on the target location and the neighboring locations, construct pairs of sampled locations.

[0166] TS 6. According to the method of TS 5, wherein the number of neighboring locations is less than the number threshold.

[0167] TS 7. According to the method of TS 5, wherein the grid distance between the neighboring geographical grid and the target geographical grid is less than the distance threshold, and the grid distance indicates the distance between the center points of the geographical grids.

[0168] TS 8. According to the method of TS 5, wherein the geographical grid is square or regular hexagon.

[0169] TS 9. According to the method of TS 3, it further includes performing local sampling based on the following process:

[0170] For a target location in a set of locations,

[0171] Determine the distances between other positions and a target position in a set of positions;

[0172] Based on the distance-based sorting, determine a predetermined number of neighboring positions from the set of positions; and

[0173] Based on the target position and the neighboring positions, construct pairs of sampling positions.

[0174] TS 10. According to the method of TS 5 or 9, wherein constructing pairs of sampling positions based on the target position and the neighboring positions includes:

[0175] Construct at least one pair of sampling positions corresponding to every two positions among the target position and the neighboring positions.

[0176] TS 11. According to the method of TS 3, further comprising performing connectivity sampling based on the following process:

[0177] Select a first position from the set of positions; and

[0178] Iteratively perform the following process until all positions in the set of positions are selected:

[0179] Select a second position from the remaining unselected positions in the set of positions;

[0180] Based on the first position and the second position, construct a pair of sampling positions; and

[0181] Determine the second position as the new first position.

[0182] TS 12. According to the method of TS 11, wherein the connectivity sampling is performed at least twice.

[0183] TS 13. According to the method of TS 3, wherein constructing multiple candidate navigation time sets based on multiple sets of sampling navigation times includes:

[0184] For a sampling navigation time set in the multiple sets of sampling navigation times:

[0185] If the target navigation time between a pair of target positions is not indicated by the sampling navigation time set, use the shortest path algorithm to determine the target navigation time based on the sampling navigation time set; and

[0186] Based on the target navigation time, construct a candidate navigation time set corresponding to the sampling navigation time set.

[0187] TS 14. According to the method of TS 1, wherein the multiple stop positions include multiple delivery positions of goods to be delivered.

[0188] TS 15. According to the method of TS 14, further comprising:

[0189] Based on time information, determine whether a target route meets a predetermined delivery time constraint, where the delivery time constraint includes at least one of the following: a first time constraint associated with a total navigation time, or a second time constraint associated with an expected arrival time; and

[0190] In response to determining that the target route does not meet the delivery time constraint, adjust the target route.

[0191] TS 16. According to the method of TS 15, where adjusting the target route includes:

[0192] Adjust the delivery order of multiple delivery locations in the target route; or

[0193] Adjust the multiple delivery locations included in the target route.

[0194] TS 17. According to the method of TS 14, further includes:

[0195] Determine the expected delivery time associated with a target delivery location among multiple delivery locations; and

[0196] Provide information about the expected delivery time to a terminal device associated with the target delivery location.

[0197] TS 18. A device for determining time information of a route, comprising:

[0198] A segmentation module configured to divide a target route into multiple segments based on multiple stop locations in the target route;

[0199] A first determination module configured to determine a segment navigation time for each segment based on an expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; and

[0200] A second determination module configured to determine time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of the total navigation time of the target route or the expected arrival times of multiple stop locations.

[0201] TS 19. An electronic device, comprising:

[0202] A memory and a processor;

[0203] Where the memory is used to store one or more computer instructions, and one or more of the computer instructions are executed by the processor to implement the method according to any one of TS 1 to 17.

[0204] TS 20. A computer-readable storage medium having one or more computer instructions stored thereon, wherein the one or more computer instructions are executed by a processor to implement the method according to any one of TS 1 to 17.

[0205] TS 21. A computer program product comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to any one of TS 1 to 17.

Claims

1. A method for determining time information of a route, comprising: dividing a target route into multiple segments based on multiple stop positions in the target route; the target route includes a logistics distribution route; the target route further includes a starting position and a destination position; determining the segment navigation time for each segment based on the expected start time of each segment in the multiple segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; the determining the segment navigation time for each segment includes: constructing multiple sets of sampled navigation times associated with a set of positions including the multiple stop positions based on a map service, the multiple sets of sampled navigation times are associated with different time ranges, and the set of sampled navigation times includes navigation times associated with multiple pairs of sampled positions, and the multiple pairs of sampled positions are determined at least based on local sampling and connectivity sampling for the set of positions; constructing multiple candidate navigation time sets based on the multiple sets of sampled navigation times; determining a target navigation time set corresponding to the expected start time from the multiple candidate navigation time sets, the multiple candidate navigation time sets are constructed for different time ranges, and the target navigation time set at least indicates the navigation times of the multiple segments within the corresponding time ranges; determining the segment navigation time based on the target navigation time set; and determining the time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of the total navigation time of the target route or the expected arrival time of at least one stop position.

2. The method according to claim 1, further comprising: the local sampling is used to determine adjacent positions associated with the positions in the set of positions to construct pairs of sampled positions, and the connectivity sampling constructs pairs of sampled positions based on sequential selection of the set of positions.

3. The method according to claim 2, wherein the multiple pairs of sampled positions are further determined based on random sampling for the set of positions, and the random sampling is used to randomly construct pairs of sampled positions based on the set of positions.

4. The method according to claim 2, further comprising performing the local sampling based on the following process: for a target position in the set of positions, determining a target geographic grid corresponding to the target position; determining the adjacent positions associated with the target position based on adjacent geographic grids adjacent to the target geographic grid; and constructing pairs of sampled positions based on the target position and the adjacent positions.

5. The method according to claim 4, wherein the number of the adjacent positions is less than a number threshold.

6. The method according to claim 4, wherein the grid distance between the adjacent geographic grid and the target geographic grid is less than a distance threshold, and the grid distance indicates the distance between the center points of the geographic grids.

7. The method according to claim 4, wherein the geographic grid is square or regular hexagon.

8. The method according to claim 2, further comprising performing the local sampling based on the following process: for a target position in the set of positions, Determine the distances between other positions in the set of positions and the target position; Based on the sorting of the distances between other positions in the set of positions and the target position, determine a predetermined number of the neighboring positions from the set of positions; and Based on the target position and the neighboring positions, construct sampling position pairs.

9. The method according to claim 4 or 8, wherein constructing sampling position pairs based on the target position and the neighboring positions includes: Construct at least one of the sampling position pairs corresponding to every two positions among the target position and the neighboring positions.

10. The method according to claim 2, further comprising performing the connectivity sampling based on the following process: Select a first position from the set of positions; and Iteratively perform the following process until all positions in the set of positions are selected: Select a second position from the remaining unselected positions in the set of positions; Based on the first position and the second position, construct a sampling position pair; and Determine the second position as the new first position.

11. The method according to claim 10, wherein the connectivity sampling is performed at least twice.

12. The method according to claim 2, wherein constructing the plurality of candidate navigation time sets based on the plurality of sampling navigation time sets includes: For a sampling navigation time set in the plurality of sampling navigation time sets: If the target navigation time between a pair of target positions is not indicated by the sampling navigation time set, use the shortest path algorithm to determine the target navigation time based on the sampling navigation time set; and Based on the target navigation time, construct a candidate navigation time set corresponding to the sampling navigation time set.

13. The method according to claim 1, wherein the plurality of stop positions include a plurality of delivery positions for goods to be delivered.

14. The method according to claim 13, further includes: Based on the time information, determine whether the target route meets a predetermined delivery time constraint, the delivery time constraint including at least one of the following: a first time constraint associated with the total navigation time, or a second time constraint associated with the expected arrival time; and In response to determining that the target route does not meet the delivery time constraint, adjust the target route.

15. The method according to claim 14, wherein adjusting the target route includes: Adjust the delivery order of the plurality of delivery positions in the target route; or Adjust the plurality of delivery positions included in the target route.

16. The method according to claim 13, further includes: Determine the expected delivery time associated with a target delivery position among the plurality of delivery positions; and Provide information about the expected delivery time to a terminal device associated with the target delivery position.

17. A device for determining time information of a route, comprising: A segmentation module, configured to divide a target route into a plurality of segments based on a plurality of stop positions in the target route; The target route includes a logistics delivery route; The target route further includes a starting position and a destination position; A first determination module, configured to determine a segment navigation time for each of the plurality of segments based on an expected start time of each segment in the plurality of segments, where the expected start time is a predetermined moment or is determined based on the segment navigation time of the previous segment; A first construction module, configured to construct, based on a map service, a plurality of sets of sampled navigation times associated with a set of locations including the plurality of stop locations, where the plurality of sets of sampled navigation times are associated with different time ranges, and the set of sampled navigation times includes navigation times associated with multiple pairs of sampled locations, and the multiple pairs of sampled locations are determined based at least on local sampling and connectivity sampling for the set of locations; A second construction module, configured to construct a plurality of candidate navigation time sets based on the plurality of sets of sampled navigation times; and The first determination module further includes a target time set determination module and a set query module: The target time set determination module, configured to determine a target navigation time set corresponding to the expected start time from the plurality of candidate navigation time sets, where the plurality of candidate navigation time sets are constructed for different time ranges, and the target navigation time set at least indicates the navigation times of the plurality of segments within the corresponding time range; The set query module, configured to determine the segment navigation time based on the target navigation time set; And A second determination module, configured to determine time information of the target route based on the segment navigation time of each segment, where the time information indicates at least one of a total navigation time of the target route or an expected arrival time of at least one stop location.

18. An electronic device, comprising: a memory and a processor; wherein the memory is used to store one or more computer instructions, and the one or more computer instructions are executed by the processor to implement the method according to any one of claims 1 to 16.

19. A computer-readable storage medium, on which one or more computer instructions are stored, and the one or more computer instructions are executed by a processor to implement the method according to any one of claims 1 to 16.

20. A computer program product, including computer-executable instructions, where the computer-executable instructions implement the method according to any one of claims 1 to 16 when being executed by a processor.

Citation Information

Patent Citations

  • System and method for path determination

    CN111998865A

  • Navigation information processing method, terminal and server

    CN112325895A