WO2020199642A1 - Method and device for route planning - Google Patents

Method and device for route planning Download PDF

Info

Publication number
WO2020199642A1
WO2020199642A1 PCT/CN2019/124296 CN2019124296W WO2020199642A1 WO 2020199642 A1 WO2020199642 A1 WO 2020199642A1 CN 2019124296 W CN2019124296 W CN 2019124296W WO 2020199642 A1 WO2020199642 A1 WO 2020199642A1
Authority
WO
WIPO (PCT)
Prior art keywords
order
dispatcher
allocated
matching
delivery
Prior art date
Application number
PCT/CN2019/124296
Other languages
French (fr)
Chinese (zh)
Inventor
张嘉琦
王圣尧
Original Assignee
北京三快在线科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京三快在线科技有限公司 filed Critical 北京三快在线科技有限公司
Publication of WO2020199642A1 publication Critical patent/WO2020199642A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0835Relationships between shipper or supplier and carriers
    • G06Q10/08355Routing methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management

Definitions

  • This application relates to the field of Internet technology, and in particular to a path planning method and device.
  • the online system After the online system receives a new order from a user, it first regards the new order as a pending order to be assigned to the delivery staff, and then uses a preset path planning algorithm to determine all current orders (including all current orders). The orders to be distributed and the orders to be distributed that have been assigned to the distributors) and all distributors re-plan the route. Obviously, according to this path planning scheme, every new order received will bring a greater computational burden to the online system.
  • the embodiments of this specification provide a path planning method and device, which are used to reduce the computational burden of receiving new orders on the online system.
  • the route planning method provided in this manual includes: determining the relevant position corresponding to the order to be distributed; determining the set of dispatchers according to preset rules; for each dispatcher in the set of dispatchers, obtaining the position of the dispatcher, And the relevant position corresponding to the order to be delivered of each dispatcher; for each dispatcher in the set of dispatchers, according to the relevant position corresponding to the order to be allocated, the position of the dispatcher, and the dispatcher's pending order Corresponding relative position, determine the degree of matching between the dispatcher and the order to be allocated; according to the degree of matching, each dispatcher in the dispatcher set and the order to be allocated is selected from the dispatcher set A delivery person who meets a preset condition; according to a preset path planning algorithm, path planning is performed on the order to be distributed and the selected delivery person.
  • the relevant location includes at least one of a pickup location and a delivery location.
  • the determining the degree of matching between the dispatcher and the order to be allocated includes: determining the first degree of matching between the dispatcher and the pickup location of the order to be allocated; determining the degree of matching between the dispatcher and the order to be allocated The second matching degree of the delivery location of the order; according to the first matching degree and the second matching degree, the matching degree between the delivery person and the order to be allocated is determined.
  • determining the degree of matching between the dispatcher and the order to be dispatched according to the relevant position corresponding to the order to be allocated, the position of the dispatcher, and the relevant position corresponding to the dispatcher's order to be dispatched includes: The location of the delivery clerk and the relative location corresponding to the delivery order of the delivery clerk, determine the neighborhood range of the delivery clerk; determine the delivery clerk based on the neighborhood area of the delivery clerk and the relevant location corresponding to the order to be distributed The degree of matching with the order to be allocated.
  • determining the neighborhood range of the delivery person includes: taking the location of the delivery person as the regional center to determine a coverage area of a specified size ; Among the relevant positions corresponding to all pending orders of the delivery person, obtain the relevant positions that fall within the coverage area but have not been processed; determine the average coordinates of the obtained relevant positions as the new regional center, according to the determination The new regional center continues to determine the coverage area of the specified size until all the relevant positions of the delivery personnel's pending orders have been processed, and all the determined coverage areas are determined as the neighborhood area of the distributor.
  • determining the degree of matching between the dispatcher and the order to be allocated according to the neighborhood range of the dispatcher and the relevant position corresponding to the order to be allocated includes: determining whether the relevant position corresponding to the order to be allocated is Within the neighborhood of the dispatcher; if it is, it is determined that the matching degree between the dispatcher and the order to be allocated is the preset maximum matching degree; otherwise, according to the relative position corresponding to the order to be allocated and the delivery The relevant position corresponding to the order to be delivered of the dispatcher determines the degree of matching between the dispatcher and the order to be dispatched.
  • determining the degree of matching between the dispatcher and the order to be dispatched according to the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be dispatched by the dispatcher includes: determining the order to be dispatched The minimum distance between the corresponding relevant position and the relevant position corresponding to the order to be dispatched by the dispatcher, and the first item of matching degree between the dispatcher and the order to be dispatched is determined according to the minimum distance, wherein the minimum The distance is negatively related to the first item of the matching degree; and/or the first direction from the position of the delivery person to the relevant position corresponding to the order to be allocated, and the distance from the position of the delivery person to the delivery person
  • the second direction of the relevant position corresponding to the order to be delivered is determined according to the angle between the first direction and the second direction, and the second item of the degree of matching between the delivery person and the order to be allocated is determined, wherein the The included angle is negatively related to the second term of the matching degree.
  • determining the first item of the degree of matching between the delivery person and the order to be allocated according to the minimum distance specifically includes: if the minimum distance is less than a preset distance threshold, determining that the delivery person is with the waiting order
  • the matching degree of the allocated order is the maximum matching degree.
  • the delivery person meeting the preset conditions specifically includes any one or more of the following: the degree of matching between the delivery person and the order to be allocated is higher than a preset threshold; according to each of the delivery person set The matching degree between the dispatcher and the order to be distributed is from high to low, the matching degree between the dispatcher and the order to be allocated is within a specified range; the current number of the dispatcher's pending orders is less than The preset quantity.
  • the preset rule includes any one or more of the following: determine the dispatcher currently located in the area where the order to be allocated belongs to be a member of the set of dispatchers; and be responsible for the order to be allocated The delivery personnel in the area of which are determined to be members of the delivery personnel set; the current delivery personnel who are willing to continue to take orders are determined to be members of the delivery personnel set.
  • the route planning device includes: a first determining module, used to determine the relevant position corresponding to the order to be allocated; an acquisition module, used to determine the set of delivery personnel according to preset rules, and to target the set of delivery personnel Each dispatcher in, obtains the position of the dispatcher and the relevant position corresponding to the dispatcher’s pending order; the second determining module, for each dispatcher in the dispatcher set, corresponds to the order to be assigned The relevant position of the dispatcher, the position of the dispatcher, and the relevant position corresponding to the dispatcher’s order to be dispatched are determined to determine the degree of matching between the dispatcher and the order to be dispatched; According to the matching degree between the dispatcher and the order to be allocated, the dispatcher who meets the preset conditions is selected from the set of dispatchers; the path planning module, according to the preset path planning algorithm, selects the order to be allocated and the filter The outgoing delivery staff will plan the route.
  • This specification provides a computer-readable storage medium, where the storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned path planning method is implemented.
  • An electronic device includes a memory, a processor, and a computer program that is stored in the memory and can run on the processor, and the processor implements the above-mentioned path planning method when the program is executed.
  • the above-mentioned at least one technical solution adopted in the embodiment of this specification can achieve the following beneficial effects: When there is an order to be allocated, the relevant position corresponding to the order to be allocated, the location of each delivery person, and the relevant correlation corresponding to the order to be delivered by each delivery person Location, determine the respective matching degree of each delivery staff and the order to be assigned, and only screen out a part of the delivery staff according to the matching degree for subsequent path planning, instead of re-planning all the delivery staff, it can be seen that this manual provides The solution helps to reduce the computational burden on the online system when new orders are received.
  • FIG. 1 is a schematic flowchart of a path planning method provided by an embodiment of this specification
  • FIG. 2 is an exemplary schematic diagram of the principle of determining the neighborhood range of a distributor provided by an embodiment of this specification
  • FIG. 3 is an exemplary schematic diagram of a principle for determining a second direction provided by an embodiment of this specification
  • FIG. 4 is a schematic structural diagram of a path planning device provided by an embodiment of this specification.
  • FIG. 5 is a schematic structural diagram of the electronic device corresponding to FIG. 1 provided in an embodiment of the specification.
  • the solution of the present application first uses a relatively simple rough evaluation method to effectively use the matching degree between the dispatcher and the order to be delivered, and screen out the combination of the dispatcher with a relatively low matching degree and the order to be allocated.
  • Accurate path planning is only carried out for the combination of relatively high matching delivery personnel and orders to be distributed, instead of accurate path planning for all possible combinations of delivery personnel and orders to be distributed, thereby helping to reduce the risk of receiving The computational burden on the online system when new orders are placed.
  • the solution of this application will be described in detail below.
  • Fig. 1 is a schematic flow chart of a path planning method provided by an embodiment of this specification.
  • the process is executed by an online system and may specifically include the following steps:
  • S100 Determine the relevant position corresponding to the order to be allocated.
  • the new orders mentioned in the background art generally include orders to be allocated to a delivery person for delivery, that is, orders to be allocated.
  • orders to be allocated The following embodiments mainly take this situation as an example. In practical applications, it may also be allowed to reallocate orders that have been assigned to a delivery person but the delivery person has not yet started to deliver, that is, pending delivery orders, to other delivery employees.
  • the new order may also include such pending orders, and reset such pending orders to pending distribution orders.
  • the execution of the process in Figure 1 can be triggered every time one or more new orders are received.
  • the relevant location generally includes at least one of the pick-up location and the delivery location.
  • the following embodiments mainly take this situation as an example for description.
  • the relevant position in this case is referred to as the taking position.
  • Take takeaway delivery as an example.
  • the pending order can include a new takeaway order initiated by the user to the online system.
  • the pickup location is the location of the restaurant responsible for making the takeaway;
  • the delivery location is the location where the user expects the takeaway to be delivered.
  • Related locations may also include locations other than the pickup location and the delivery location, such as the address of the delivery person.
  • the relevant location can be expressed as coordinates in the electronic map.
  • S102 Determine a set of dispatchers, and for each dispatcher in the set of dispatchers, obtain the position of the dispatcher and the relevant position corresponding to the order to be dispatched by the dispatcher.
  • the set of delivery personnel may be determined according to a preset rule. For example, a collection of multiple dispatchers currently located in the area to which an order is to be allocated (for example, a certain district in a city, a certain residential area, a certain street, etc.), or a collection of multiple dispatchers responsible for the area. For another example, there is currently a collection of multiple delivery personnel willing to continue to take orders; and so on.
  • the location of the delivery person preferably refers to the current real-time location of the delivery person. Since the delivery person is usually on the move most of the time and the position changes frequently, the real-time accuracy requirements for the delivery person's position can be required according to the actual situation. In addition, the location of the delivery person is generally reported by the delivery person's mobile phone.
  • the order to be delivered may refer to an order currently being delivered by a delivery person or an order that has been allocated but has not yet been delivered.
  • the solution of this application mainly considers the situation that the delivery staff currently has at least one pending delivery order.
  • S104 For each delivery person in the delivery person set, determine the delivery person and the delivery person according to the relevant position corresponding to the order to be allocated, the location of the delivery person, and the relevant position corresponding to the order to be delivered by the delivery person. Describe the matching degree of the order to be allocated.
  • the delivery personnel with a better matching degree and the orders to be assigned often have the following characteristics: the pick-up location of the pending orders and the delivery location of the delivery staff's pending orders Coincident or similar (that is, the distance is small, for example, less than 100 meters or only a few hundred meters away); the delivery position of the order to be allocated is in the travel direction of the delivery person, and the direction deviation is small.
  • the distance relationship can indicate the distance between the pick-up location of the order to be allocated and the real-time location and possible future locations of the dispatcher
  • the direction relationship can indicate the degree of deviation between the pick-up location of the order to be allocated and the forward direction of the dispatcher.
  • the degree of matching between the dispatcher and the order to be allocated can be calculated through intuitive mathematical formulas.
  • different terms can be used in the formula to calculate the influence of distance and direction on the matching degree, and the corresponding terms or key parts of the terms can be called distance factors and direction factors.
  • different items can be given different weights to directly adjust the degree of influence of the distance factor and direction factor.
  • the distance factor and direction factor can also be combined in the same term.
  • the formula used to calculate the matching degree can be diverse, as long as it conforms to the idea of the solution of this application, and an example will be described later.
  • the matching degree can be represented by a preset variable.
  • the relationship between the value of the variable and the matching degree is not specifically limited, but depends on how the user prescribes it. For example, it can be specified that the smaller the value of the variable, the higher the matching degree; of course, the reverse is also possible.
  • S106 According to the degree of matching between each delivery person in the delivery person set and the order to be allocated, filter out the delivery person meeting preset conditions from the delivery person set.
  • the preset conditions may be various.
  • the matching degree between the dispatcher and the order to be allocated is higher than the preset threshold; for another example, according to the order of the matching degree between the dispatcher and the order to be allocated, the matching degree between the dispatcher and the order to be allocated is in the specified range ( For example, the top 50%, or the top 50, etc.); etc.
  • the dispatchers are screened according to the matching degree between the dispatcher and the order to be allocated, that is, the combination of the dispatcher with a relatively suitable matching degree and the order to be allocated is selected.
  • each dispatcher can match multiple orders to be allocated at the same time, and each order to be allocated can also be matched with multiple dispatchers at the same time. Later, path planning will be performed on these selected combinations, so that the overall matching result can be finally obtained. In other words, it can initially contain a lot of combinations of different dispatchers and orders to be allocated, and a part of the combinations deemed relatively suitable can be screened out through preset conditions, which may also be referred to as candidate combinations below.
  • S108 Perform path planning on the order to be allocated and the selected delivery personnel according to the preset path planning algorithm.
  • the screening in step S106 is coarse screening, and more precise path planning can be further performed based on the coarse screening results, that is, fine screening is performed to obtain the final order allocation result.
  • each dispatcher and the dispatcher are determined
  • the matching degree of the order, and according to the matching degree select a part of the delivery staff for subsequent path planning, instead of re-planning all the delivery staff in the delivery staff set, it can effectively reduce the burden on the online system when new orders are received. Computational burden.
  • the relevant position was explained earlier.
  • the pickup location or delivery location can be considered to improve the efficiency of the algorithm.
  • the delivery person has to go to both the pickup location and the delivery location.
  • the pickup location and the delivery location can be fully considered when determining the matching degree. It can be considered separately and then integrated, or it can be considered comprehensively from the beginning. Take the previous method as an example. For example, you can determine the first matching degree between the delivery person and the pickup location of the order to be allocated, and determine the second matching degree between the delivery person and the delivery location of the order to be allocated, and then according to the first The matching degree and the second matching degree determine the matching degree of the delivery person with the order to be allocated.
  • the matching degree whether only one of the pick-up location and the delivery location is considered, or both, is not limited here, and there may be multiple specific implementation manners. For example, whether it is to determine the first degree of matching between the delivery person and the pickup location of the order to be allocated, or the second degree of matching between the delivery person and the delivery location of the order to be allocated, the pickup of the delivery person’s order to be delivered can be considered. Goods location and delivery location. For another example, when determining the degree of matching between the delivery person and the pickup location of the order to be distributed, the pickup location of the delivery person’s order to be delivered can be considered accordingly, regardless of the delivery person’s order to be delivered. When determining the second degree of matching between the delivery person and the delivery location of the order to be distributed, the delivery location of the delivery person’s order to be delivered is considered accordingly, regardless of the delivery person’s order to be delivered. Goods location.
  • the separately determined matching degrees can adopt differentiated formulas, or adopt differentiated formula parameter values. For example, when determining the first degree of matching between the delivery person and the pick-up location of the order to be assigned, the influence of distance can be more considered, and the distance factor can be given a relatively high weight. For another example, when determining the matching degree between the delivery person and the delivery location of the order to be assigned, more consideration can be given to the influence of direction, and the direction factor is given a relatively high weight.
  • the concept of the neighborhood range of the dispatcher is used, and the degree of matching between the dispatcher and the order to be allocated is determined based on the neighborhood range.
  • the pick-up location can be conveniently divided into two categories: within the neighborhood of the delivery person and not within the neighborhood of the delivery person. Approximate processing of the same type of situation is helpful to simplify the algorithm.
  • the neighborhood here refers to an area near the delivery person.
  • a circular area with the location of the delivery person as the center and a fixed distance as the radius may be determined as the neighborhood area of the delivery person.
  • the location of the delivery person and the average coordinates of the delivery locations of all pending orders of the delivery person can be obtained; then, the average coordinates can be taken as the center of the circle and can cover the location of the delivery person and the delivery person.
  • the smallest circular area of the pickup position of all pending orders is determined as the neighborhood area of the delivery person.
  • the neighborhood area of the delivery person can be determined according to the delivery person’s location and the delivery location of the delivery person’s order to be delivered, and then according to the delivery person’s neighborhood area and the order to be allocated. Delivery location to determine the degree of match between the delivery person and the order to be allocated.
  • the neighborhood range of the delivery person can be determined according to the location of the delivery person and the distance relationship and direction relationship between the delivery position of the delivery person's order to be delivered. The second example in the previous paragraph adopts this idea.
  • the embodiment of this specification also provides a neighborhood range determination solution that has achieved good results in practice, which is described in detail below.
  • the location of the delivery person can be used as the regional center to determine a coverage area of a specified size, and among all the relevant locations corresponding to the delivery person's pending orders, the relevant locations that fall within the coverage area but have not been processed are obtained , And determine the obtained average coordinates of the relevant position as the new area center; then, continue to determine the new coverage area of the specified size according to the determined new area center, and determine the new area center again based on the new coverage area. According to this, the determination of the coverage area and the regional center is repeated (multiple rounds may be carried out) until the relevant positions of all pending orders of the dispatcher have been processed. Finally, all the determined coverage areas are determined as the neighborhood range of the distributor.
  • the shape of the coverage area can be various, such as circle, triangle, square, honeycomb, etc.
  • the specified size is not easy to be too large, generally a few hundred meters to a few kilometers.
  • This specification also provides an exemplary schematic diagram of the principle of determining the neighborhood range of a distributor, as shown in FIG. 2.
  • points 1 to 6 are the pickup positions of all orders to be delivered by the delivery staff.
  • the shape of the coverage area is circular.
  • the size of the coverage area determined each time is the same, for example, the radius is 300 meters.
  • the average coordinates of the unprocessed pick-up locations that is, the newly-added pick-up locations this time
  • the centers of the successively determined circular coverage areas are respectively marked as points A, B, C, and D (marked with a five-pointed star).
  • the process of determining the neighborhood range of the delivery person is as follows: the location of the delivery person is point A, with point A as the center and 300 meters as the radius, determine the first circular coverage area, and the delivery person covers the first circle
  • the pick-up position in the area includes points 1 and 2. Among them, points 1 and 2 have not been processed.
  • the average coordinates of points 1 and 2 are calculated as point B; with point B as the center and 300 meters as the radius, determine the second Circular coverage area.
  • the delivery position of the delivery person in the second circular coverage area includes points 1, 2, and 3.
  • point 3 is the newly added delivery location, and its average coordinates are point 3 itself, Namely point C; with point C as the center and 300 meters as the radius, determine the third circular coverage area.
  • the delivery position of the delivery person in the third circular coverage area includes points 2, 3, 4, and 5. , 6, where points 4, 5, and 6 are newly added delivery locations, and their average coordinates are point D; with point D as the center and 300 meters as the radius, determine the fourth circular coverage area, where the delivery person is
  • the pick-up locations in the fourth circular coverage area include points 3, 4, 5, and 6. There is no new pick-up location, that is, all pick-up locations of the delivery staff have been processed, and the above are determined in turn
  • the sum of the four circular coverage areas is determined as the neighborhood area of the dispatcher.
  • the matching degree can be determined in the following manner. First, determine whether the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher.
  • the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher, it can be considered that the cost of the dispatcher to deliver the order to be allocated is not too high, even if the order to be allocated is directly allocated to the dispatcher, it is reasonable .
  • the dispatcher matches the order to be allocated, and the matching degree between the dispatcher and the order to be allocated may be determined as the preset maximum matching degree, or another matching degree high enough to be screened out. In this way, the influence of distance and direction can be ignored or no longer considered too carefully, which helps to reduce the computational complexity of the algorithm.
  • the relevant position corresponding to the order to be allocated is not within the neighborhood of the dispatcher, the relevant position of the dispatcher and the dispatcher's order to be dispatched can be determined according to the relevant position corresponding to the order to be allocated suitability. For example, the minimum distance between the relevant position corresponding to the order to be distributed and the relevant position corresponding to the order to be distributed can be determined, and the first item of the matching degree between the dispatcher and the order to be distributed can be determined according to the minimum distance. Wherein, the minimum distance is negatively related to the first term of the matching degree. In practical applications, the minimum distance can also be replaced with the average distance.
  • the negative correlation mentioned here can specifically mean that the relationship is generally negative (generally, the smaller the distance, the closer the distance, the higher the matching degree; the smaller the angle, the greater the degree of deviation Smaller, higher matching degree), but does not necessarily require strict negative correlation within the entire continuous range of values.
  • the included angle can be expressed in degrees or radians.
  • Both the first direction and the second direction may include multiple specific directions.
  • the first direction and the second direction may use one of the multiple specific directions or a comprehensive measure of the multiple specific directions (for example, the average direction, or the most deviated direction). Said.
  • FIG. 3 is an exemplary schematic diagram of the principle of determining the second direction provided by an embodiment of this specification.
  • point A is the location of the delivery person
  • points 7 and 8 are the delivery positions of the delivery person’s orders to be delivered
  • the vector from point A to point 7 and the vector from point A to point 8 can be added
  • the vector AA' is obtained, and the direction of the vector AA' can be used as the second direction.
  • the condition is: according to the historical delivery efficiency of the delivery person, the order to be allocated is assigned to the delivery person, and the delivery person can deliver it on time; or, the delivery position of at least one order to be delivered of the delivery person is to be allocated The pick-up location of the order is close enough; etc.
  • the minimum distance between the pickup position of the order to be allocated and the delivery position of the dispatcher's order to be dispatched can be determined. If the minimum distance is less than the preset distance threshold, the matching degree between the dispatcher and the to-be-allocated order may be determined as the aforementioned maximum matching degree, or other matching degrees high enough to be screened out.
  • the embodiment of this specification also provides an exemplary formula for determining the degree of matching between the dispatcher and the order to be allocated.
  • some pre-defined variables related to the formula are first explained.
  • V i represents the match metric distribution person position i
  • p is the order represents the pickup position to be dispensed
  • d represents the order of the delivery position to be dispensed
  • dist i represents The distance factor
  • a i represents the direction factor
  • Indicates the direction of the vector x Refer to the following formulas (1) to (4).
  • ⁇ and ⁇ represent the preset weight coefficients with a value range of [0,1], inner represents that the relevant location is within the neighborhood of the delivery person, outer represents that the relevant location is not within the neighborhood of the delivery person, and Angle represents Find the angle in radians, Represents the first direction mentioned above, Represents said second direction, matching metric (matching degree measure) Q, V i smaller value indicates a higher degree of matching corresponding (matching degree).
  • the second matching degree metric V d is calculated.
  • ⁇ and (1- ⁇ ) are the weights of the first matching degree metric V p and the second matching degree metric V d , respectively.
  • can be 0.5, which means that the weights of the first matching degree metric V p and the second matching degree metric V d are the same.
  • the weights of the first matching degree metric V p and the second matching degree metric V d may also be different.
  • Both the first matching degree metric V p and the second matching degree metric V d in formula (1) can be calculated by formula (2), which can be specifically calculated based on the distance factor dist i and the direction factor a i , and normalized ⁇ .
  • the formula (2) also has two parts, namely the first item of the matching degree metric determined based on the distance factor dist i and the second item of the matching degree metric determined based on the direction factor a i .
  • the weights of the first item of the matching degree measurement and the second item of the matching degree measurement are ⁇ and (1- ⁇ ) respectively.
  • Formula (3) is the calculation method of the distance factor dist i . If the pickup location of the order to be allocated is within the neighborhood of the dispatcher, the distance factor dist i can be ignored and set to 0 directly; and if the pickup location of the order to be allocated is not within the neighborhood of the dispatcher, then Calculate the distances between the pickup positions of the orders to be allocated and the pickup positions of all the orders to be delivered by the dispatcher, and select the minimum distance min(d ij ). If the minimum distance is less than 100 meters (it can also be modified to other suitable values), the distance factor dist i can also be ignored.
  • Formula (4) is the calculation method of the direction factor a i .
  • the direction factor a i is also 0; and if the distance factor dist i is not 0, the angle between the first direction and the second direction mentioned above is calculated as the direction factor a i .
  • the value of the above-mentioned matching degree metric Q is 0, which can indicate the maximum matching degree.
  • the matching degree can be screened out according to the matching degree to be relatively high and/or the order to be delivered is relatively small (for example, less than the real-time average order quantity in the region) Half) the combination of the delivery staff and the orders to be allocated, and then use the set path planning algorithm to plan the paths of the multiple combinations selected to allocate the orders to be allocated.
  • Pending order 1 Pending order 2
  • Pending order 3 Pending order 4 Delivery person 1 Y Y N N Delivery person 2 N N Y N Delivery person 3 Y N Y Y Delivery person 4 N Y N Y
  • Table 1 exemplarily shows the screening results of the combinations of some delivery personnel and orders to be assigned.
  • Y represents the combination that is screened out, and N represents the combination that is screened out.
  • Half of the combinations in Table 1 are screened out, and these are screened out.
  • the combination of is preferably a combination with a relatively high Q value (indicating a relatively low matching degree).
  • the above is mainly based on the distance factor and the direction factor to allocate pending orders. In practical applications, of course, more influencing factors can be considered. For example, the historical timeout situation of the delivery staff, if the timeout situation is serious, the matching degree will be relatively reduced. For another example, if the number of dispatchers in the current area is lower than the set threshold (for example, 50), the matching degree determination and the selection of dispatchers may not be performed, but all dispatchers are reserved for path planning. Or, if the selected delivery staff is less than 50, you can also add other optional delivery staff to try to keep 50 delivery staff for route planning.
  • the set threshold for example, 50
  • the embodiment of this specification also provides a path planning device corresponding to FIG. 1.
  • Fig. 4 is a schematic diagram of the structure of the device.
  • the device in Fig. 4 includes: a first determining module 400 for determining the relevant position corresponding to an order to be allocated; an acquiring module 402 for determining a collection of delivery personnel according to preset rules and Each dispatcher in the dispatcher set obtains the position of the dispatcher and the relevant position corresponding to the dispatcher’s pending order; the second determination module 404 is used for each dispatcher in the dispatcher set, according to all According to the relevant position corresponding to the order to be distributed, the position of the dispatcher, and the relevant position corresponding to the order to be dispatched by the dispatcher, the degree of matching between the dispatcher and the order to be dispatched is determined; The matching degree of each delivery person in the delivery person set with the order to be distributed is selected from the delivery person set that meets the preset conditions; the path planning module 408 is used to determine the matching degree of the delivery person according to the preset path planning algorithm.
  • the orders to be allocated and the selected delivery personnel perform path
  • the relevant location includes at least one of a pickup location and a delivery location.
  • the second determining module 404 is specifically configured to: determine the first degree of matching between the delivery person and the pickup location of the order to be allocated; determine the first degree of matching between the delivery person and the delivery location of the order to be allocated Second degree of matching; according to the first degree of matching between the dispatcher and the pickup location and the second degree of matching between the dispatcher and the delivery location, the degree of matching between the dispatcher and the order to be distributed is determined.
  • the second determining module 404 is specifically configured to: determine the neighborhood range of the delivery person according to the location of the delivery person and the relevant position corresponding to the order to be delivered; according to the neighborhood range of the delivery person and The relevant position corresponding to the order to be allocated determines the degree of matching between the dispatcher and the order to be allocated.
  • the second determination module 404 is specifically configured to: determine a coverage area of a specified size with the delivery person’s location as the regional center; and obtain the location of the delivery person in all relevant positions corresponding to the orders to be delivered. The relevant locations within the coverage area but have not been processed; the average coordinates of the obtained relevant locations are determined as the new regional center, and the coverage area of the specified size is determined according to the determined new regional center, until all the delivery personnel waiting The relevant locations corresponding to the delivery order are all processed, and then all the determined coverage areas are determined as the neighborhood range of the delivery person.
  • the second determining module 404 is specifically configured to: determine whether the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher; if so, determine the match between the dispatcher and the order to be allocated
  • the degree of matching is the preset maximum matching degree, or other matching degrees high enough to be screened out; otherwise, the delivery is determined according to the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be delivered by the dispatcher The degree of match between the employee and the pending order.
  • the second determining module 404 is specifically configured to: determine the minimum distance between the relevant position corresponding to the order to be distributed and the relevant position corresponding to the order to be distributed of the delivery person, and determine the delivery according to the minimum distance.
  • the first direction of the position, and the second direction from the delivery person’s position to the relevant position corresponding to the delivery person’s order to be delivered which is determined according to the angle between the first direction and the second direction
  • the second determining module 404 is specifically configured to: if the minimum distance is less than a preset distance threshold, determine that the degree of matching between the delivery person and the order to be distributed is the maximum degree of matching, or as high as Other matches sufficient to be filtered out.
  • the screening module 406 is specifically configured to: filter out the dispatchers whose matching degree with the order to be allocated is higher than a preset threshold; or according to the matching degree of each dispatcher with the order to be allocated from high to low In order to filter the specified number of delivery personnel.
  • the embodiment of this specification also provides a computer-readable storage medium, the storage medium stores a computer program, and the computer program can be used to execute a path planning method in FIG. 1.
  • the embodiment of this specification also proposes a schematic structural diagram of the electronic device shown in FIG. 5 corresponding to FIG. 1.
  • the electronic device includes a processor 510, an internal bus 520, a network interface 530, a memory 540, and a non-volatile memory 550.
  • the processor 510 reads the corresponding computer program from the non-volatile memory 550 to the memory 540 and then runs it to implement a path planning method in FIG. 1.
  • this specification does not exclude other implementations, such as logic devices or a combination of software and hardware, etc. That is to say, the execution body of the following processing flow is not limited to each logic unit, and can also be Hardware or logic device.
  • a programmable logic device Programmable Logic Device, PLD
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • ABEL Advanced Boolean Expression Language
  • AHDL Altera Hardware Description Language
  • HDCal JHDL
  • Lava Lava
  • Lola MyHDL
  • PALASM RHDL
  • VHDL Very-High-Speed Integrated Circuit Hardware Description Language
  • Verilog Verilog
  • the controller can be implemented in any suitable manner.
  • the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program codes (such as software or firmware) executable by the (micro)processor. , Logic gates, switches, application specific integrated circuits (ASICs), programmable logic controllers and embedded microcontrollers.
  • controllers include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicon Labs C8051F320, the memory controller can also be implemented as a part of the memory control logic.
  • controller in addition to implementing the controller in a purely computer-readable program code manner, it is entirely possible to program the method steps to make the controller use logic gates, switches, application specific integrated circuits, programmable logic controllers and embedded The same function can be realized in the form of a microcontroller, etc. Therefore, such a controller can be regarded as a hardware component, and the devices included in it for implementing various functions can also be regarded as a structure within the hardware component. Or even, the device for realizing various functions can be regarded as both a software module for realizing the method and a structure within a hardware component.
  • a typical implementation device is a computer.
  • the computer may be, for example, a personal computer, a laptop computer, a cell phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or Any combination of these devices.
  • the embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • a computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.
  • the computing device includes one or more processors (CPU), input/output interfaces, network interfaces, and memory.
  • processors CPU
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-permanent memory in computer readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of computer readable media.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • Computer-readable media include permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology.
  • the information can be computer-readable instructions, data structures, program modules, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media can be used to store information that can be accessed by computing devices. According to the definition in this article, computer-readable media does not include transitory media, such as modulated data signals and carrier waves.
  • this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types.
  • This application can also be practiced in distributed computing environments. In these distributed computing environments, remote processing devices connected through a communication network perform tasks.
  • program modules can be located in local and remote computer storage media including storage devices.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A method and device for route planning. When an order to be assigned is present, determined, on the basis of a relative location corresponding to the order to be assigned, of the locations of deliverers in a deliverer set, and of relative locations corresponding to orders to be delivered by the deliverers in the deliverer set, are the degrees of fit between the deliverers in the deliverer set and the order to be assigned, and some of the deliverers are filtered on the basis of the determined degrees of fit for route planning. This effectively reduces the computational load brought to an online system when a new order is received.

Description

一种路径规划方法及装置Method and device for path planning 技术领域Technical field
本申请涉及互联网技术领域,尤其涉及一种路径规划方法及装置。This application relates to the field of Internet technology, and in particular to a path planning method and device.
背景技术Background technique
随着互联网技术的迅速发展,很多业务都可以线上进行,给用户带来了便利。一些原本线下进行的业务得到了线上业务的充分支持,从而提高了效率和用户体验,比如,外卖派送、小物品闪送等。用户在使用这类实物配送业务时,一般是在相应的手机应用上下订单,指定所要配送的物品及其取货位置和送货位置。用户成功下单后,线上系统会通过调度处理,将订单分配给某个配送员,由配送员送货上门或者上门取货即可。With the rapid development of Internet technology, many services can be conducted online, which brings convenience to users. Some businesses that were originally carried out offline have been fully supported by online businesses, thereby improving efficiency and user experience, such as food delivery and small items flash delivery. When users use this kind of physical delivery service, they usually place an order on the corresponding mobile phone application, and specify the items to be delivered and their pickup location and delivery location. After the user successfully places the order, the online system will dispatch the order to a certain delivery person, and the delivery person can deliver it to the door or pick it up.
在相关技术中,线上系统接收到用户的新订单后,先将该新订单作为待分配给配送员的待分配订单,再利用预设的路径规划算法,对当前所有的订单(包括当前全部的待分配订单以及已经分配给配送员的待配送订单)和所有的配送员重新进行路径规划。显然,根据这种路径规划方案,每接收一个新订单都会给线上系统带来较大的计算负担。In related technologies, after the online system receives a new order from a user, it first regards the new order as a pending order to be assigned to the delivery staff, and then uses a preset path planning algorithm to determine all current orders (including all current orders). The orders to be distributed and the orders to be distributed that have been assigned to the distributors) and all distributors re-plan the route. Obviously, according to this path planning scheme, every new order received will bring a greater computational burden to the online system.
发明内容Summary of the invention
本说明书实施例提供一种路径规划方法及装置,用于减轻接收新订单给线上系统带来的计算负担。The embodiments of this specification provide a path planning method and device, which are used to reduce the computational burden of receiving new orders on the online system.
本说明书提供的一种路径规划方法,包括:确定待分配订单对应的相关位置;按照预设规则确定配送员集合;针对所述配送员集合中的每个配送员,获取该配送员的位置,以及各配送员的待配送订单对应的相关位置;针对所述配送员集合中的每个配送员,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度;根据所述匹配度配送员集合中各所述配送员与所述待分配订单的,从所述配送员集合中筛选出符合预设条件的配送员;根据预设的路径规划算法,对所述待分配订单和所述筛选出的配送员进行路径规划。The route planning method provided in this manual includes: determining the relevant position corresponding to the order to be distributed; determining the set of dispatchers according to preset rules; for each dispatcher in the set of dispatchers, obtaining the position of the dispatcher, And the relevant position corresponding to the order to be delivered of each dispatcher; for each dispatcher in the set of dispatchers, according to the relevant position corresponding to the order to be allocated, the position of the dispatcher, and the dispatcher's pending order Corresponding relative position, determine the degree of matching between the dispatcher and the order to be allocated; according to the degree of matching, each dispatcher in the dispatcher set and the order to be allocated is selected from the dispatcher set A delivery person who meets a preset condition; according to a preset path planning algorithm, path planning is performed on the order to be distributed and the selected delivery person.
可选地,所述相关位置包括取货位置和送货位置中的至少一种。相应地,所述确定该配送员与所述待分配订单的匹配度,包括:确定该配送员与所述待分配订单的取货位置的第一匹配度;确定该配送员与所述待分配订单的送货位置的第二匹配度;根据所述 第一匹配度和所述第二匹配度,确定该配送员与所述待分配订单的匹配度。Optionally, the relevant location includes at least one of a pickup location and a delivery location. Correspondingly, the determining the degree of matching between the dispatcher and the order to be allocated includes: determining the first degree of matching between the dispatcher and the pickup location of the order to be allocated; determining the degree of matching between the dispatcher and the order to be allocated The second matching degree of the delivery location of the order; according to the first matching degree and the second matching degree, the matching degree between the delivery person and the order to be allocated is determined.
可选地,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度,包括:根据该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员的邻域范围;根据该配送员的邻域范围以及所述待分配订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。Optionally, determining the degree of matching between the dispatcher and the order to be dispatched according to the relevant position corresponding to the order to be allocated, the position of the dispatcher, and the relevant position corresponding to the dispatcher's order to be dispatched includes: The location of the delivery clerk and the relative location corresponding to the delivery order of the delivery clerk, determine the neighborhood range of the delivery clerk; determine the delivery clerk based on the neighborhood area of the delivery clerk and the relevant location corresponding to the order to be distributed The degree of matching with the order to be allocated.
可选地,根据该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员的邻域范围,包括:以该配送员的位置为区域中心,确定指定大小的覆盖区域;在该配送员的所有待配送订单对应的相关位置中,获取落入所述覆盖区域内、但未处理过的相关位置;将获取的相关位置的平均坐标确定为新的区域中心,根据确定的新的区域中心继续确定指定大小的覆盖区域,直至该配送员的所有待配送订单的相关位置均被处理了,并将确定出的全部覆盖区域确定为所述配送员的邻域范围。Optionally, according to the location of the delivery person and the relevant position corresponding to the order to be delivered by the delivery person, determining the neighborhood range of the delivery person includes: taking the location of the delivery person as the regional center to determine a coverage area of a specified size ; Among the relevant positions corresponding to all pending orders of the delivery person, obtain the relevant positions that fall within the coverage area but have not been processed; determine the average coordinates of the obtained relevant positions as the new regional center, according to the determination The new regional center continues to determine the coverage area of the specified size until all the relevant positions of the delivery personnel's pending orders have been processed, and all the determined coverage areas are determined as the neighborhood area of the distributor.
可选地,根据该配送员的邻域范围以及所述待分配订单对应的相关位置,确定该配送员与所述待分配订单的匹配度,包括:判断所述待分配订单对应的相关位置是否在该配送员的邻域范围内;若是,则确定该配送员与所述待分配订单的匹配度为预设的最大匹配度;否则,根据所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。Optionally, determining the degree of matching between the dispatcher and the order to be allocated according to the neighborhood range of the dispatcher and the relevant position corresponding to the order to be allocated includes: determining whether the relevant position corresponding to the order to be allocated is Within the neighborhood of the dispatcher; if it is, it is determined that the matching degree between the dispatcher and the order to be allocated is the preset maximum matching degree; otherwise, according to the relative position corresponding to the order to be allocated and the delivery The relevant position corresponding to the order to be delivered of the dispatcher determines the degree of matching between the dispatcher and the order to be dispatched.
可选地,根据所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度,包括:确定所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置之间的最小距离,根据所述最小距离确定该配送员与所述待分配订单的匹配度第一项,其中,所述最小距离与所述匹配度第一项负相关;和/或确定从该配送员的位置到所述待分配订单对应的相关位置的第一方向,以及从该配送员的位置到所述配送员的待配送订单对应的相关位置的第二方向,根据所述第一方向与所述第二方向之间的夹角确定该配送员与所述待分配订单的匹配度第二项,其中,所述夹角与所述匹配度第二项负相关。Optionally, determining the degree of matching between the dispatcher and the order to be dispatched according to the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be dispatched by the dispatcher includes: determining the order to be dispatched The minimum distance between the corresponding relevant position and the relevant position corresponding to the order to be dispatched by the dispatcher, and the first item of matching degree between the dispatcher and the order to be dispatched is determined according to the minimum distance, wherein the minimum The distance is negatively related to the first item of the matching degree; and/or the first direction from the position of the delivery person to the relevant position corresponding to the order to be allocated, and the distance from the position of the delivery person to the delivery person The second direction of the relevant position corresponding to the order to be delivered is determined according to the angle between the first direction and the second direction, and the second item of the degree of matching between the delivery person and the order to be allocated is determined, wherein the The included angle is negatively related to the second term of the matching degree.
可选地,根据所述最小距离确定该配送员与所述待分配订单的匹配度第一项,具体包括:若所述最小距离小于预设的距离阈值,则确定该配送员与所述待分配订单的匹配度为所述最大匹配度。Optionally, determining the first item of the degree of matching between the delivery person and the order to be allocated according to the minimum distance specifically includes: if the minimum distance is less than a preset distance threshold, determining that the delivery person is with the waiting order The matching degree of the allocated order is the maximum matching degree.
可选地,所述符合预设条件的配送员,具体包括以下任意一个或多个:所述配送员 与所述待分配订单的匹配度高于预设阈值;按照所述配送员集合中各配送员与所述待分配订单的匹配度从高到低的顺序,所述配送员与所述待分配订单的匹配度在指定范围内;所述配送员当前的待配送订单的个数少于预设数量。Optionally, the delivery person meeting the preset conditions specifically includes any one or more of the following: the degree of matching between the delivery person and the order to be allocated is higher than a preset threshold; according to each of the delivery person set The matching degree between the dispatcher and the order to be distributed is from high to low, the matching degree between the dispatcher and the order to be allocated is within a specified range; the current number of the dispatcher's pending orders is less than The preset quantity.
可选地,所述预设规则包括以下任意一个或多个:将当前位于所述待分配订单的所属区域内的配送员,确定为所述配送员集合的成员;将负责所述待分配订单的所属区域的配送员,确定为所述配送员集合的成员;将当前有意愿继续接单的配送员,确定为所述配送员集合的成员。Optionally, the preset rule includes any one or more of the following: determine the dispatcher currently located in the area where the order to be allocated belongs to be a member of the set of dispatchers; and be responsible for the order to be allocated The delivery personnel in the area of which are determined to be members of the delivery personnel set; the current delivery personnel who are willing to continue to take orders are determined to be members of the delivery personnel set.
本说明书提供的一种路径规划装置,包括:第一确定模块,用于确定待分配订单对应的相关位置;获取模块,用于按照预设规则确定配送员集合,并针对所述配送员集合中的每个配送员,获取该配送员的位置以及该配送员的待配送订单对应的相关位置;第二确定模块,针对所述配送员集合中的每个配送员,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度;筛选模块,根据所述配送员集合中各所述配送员与所述待分配订单的匹配度,从所述配送员集合中筛选出符合预设条件的配送员;路径规划模块,根据预设的路径规划算法,对所述待分配订单和所述筛选出的配送员进行路径规划。The route planning device provided in this specification includes: a first determining module, used to determine the relevant position corresponding to the order to be allocated; an acquisition module, used to determine the set of delivery personnel according to preset rules, and to target the set of delivery personnel Each dispatcher in, obtains the position of the dispatcher and the relevant position corresponding to the dispatcher’s pending order; the second determining module, for each dispatcher in the dispatcher set, corresponds to the order to be assigned The relevant position of the dispatcher, the position of the dispatcher, and the relevant position corresponding to the dispatcher’s order to be dispatched are determined to determine the degree of matching between the dispatcher and the order to be dispatched; According to the matching degree between the dispatcher and the order to be allocated, the dispatcher who meets the preset conditions is selected from the set of dispatchers; the path planning module, according to the preset path planning algorithm, selects the order to be allocated and the filter The outgoing delivery staff will plan the route.
本说明书提供的一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述一种路径规划方法。This specification provides a computer-readable storage medium, where the storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned path planning method is implemented.
本说明书提供的一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述一种路径规划方法。An electronic device provided in this specification includes a memory, a processor, and a computer program that is stored in the memory and can run on the processor, and the processor implements the above-mentioned path planning method when the program is executed.
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:由于当有待分配订单时,根据待分配订单对应的相关位置、各配送员的位置,以及各配送员的待配送订单对应的相关位置,确定的各配送员与待分配订单分别的匹配度,并根据匹配度只筛选出一部分配送员进行后续的路径规划,而不是对所有的配送员重新进行路径规划,可见,本说明书提供的方案有助于减轻在接收到新订单时给线上系统带来的计算负担。The above-mentioned at least one technical solution adopted in the embodiment of this specification can achieve the following beneficial effects: When there is an order to be allocated, the relevant position corresponding to the order to be allocated, the location of each delivery person, and the relevant correlation corresponding to the order to be delivered by each delivery person Location, determine the respective matching degree of each delivery staff and the order to be assigned, and only screen out a part of the delivery staff according to the matching degree for subsequent path planning, instead of re-planning all the delivery staff, it can be seen that this manual provides The solution helps to reduce the computational burden on the online system when new orders are received.
附图说明Description of the drawings
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:The drawings described here are used to provide a further understanding of the application and constitute a part of the application. The exemplary embodiments and descriptions of the application are used to explain the application and do not constitute an improper limitation of the application. In the attached picture:
图1为本说明书实施例提供的一种路径规划方法的流程示意图;FIG. 1 is a schematic flowchart of a path planning method provided by an embodiment of this specification;
图2为本说明书实施例提供的示例性的确定配送员的邻域范围的原理示意图;FIG. 2 is an exemplary schematic diagram of the principle of determining the neighborhood range of a distributor provided by an embodiment of this specification;
图3为本说明书实施例提供的示例性的确定第二方向的原理示意图;FIG. 3 is an exemplary schematic diagram of a principle for determining a second direction provided by an embodiment of this specification;
图4为本说明书实施例提供的一种路径规划装置的结构示意图;4 is a schematic structural diagram of a path planning device provided by an embodiment of this specification;
图5为本说明书实施例提供的对应于图1的电子设备的结构示意图。FIG. 5 is a schematic structural diagram of the electronic device corresponding to FIG. 1 provided in an embodiment of the specification.
具体实施方式detailed description
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。In order to make the purpose, technical solutions, and advantages of this specification clearer, the technical solutions of this application will be described clearly and completely below in conjunction with specific embodiments of this specification and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the specification, all other embodiments obtained by a person of ordinary skill in the art without creative work shall fall within the protection scope of this application.
以下结合附图,详细说明本申请各实施例提供的技术方案。The technical solutions provided by the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
本申请的方案首先通过一种相对简单的粗评价方式,有效地利用刻画出来的配送员与待配送订单的匹配度,筛除掉匹配度相对低的配送员与待分配订单的组合,进而可以只针对匹配度相对高的配送员与待分配订单的组合进行精确的路径规划,而不是对全部的配送员与待分配订单的可能组合都进行精确的路径规划,从而有助于减轻在接收到新订单时给线上系统带来的计算负担。下面对本申请的方案进行详细说明。The solution of the present application first uses a relatively simple rough evaluation method to effectively use the matching degree between the dispatcher and the order to be delivered, and screen out the combination of the dispatcher with a relatively low matching degree and the order to be allocated. Accurate path planning is only carried out for the combination of relatively high matching delivery personnel and orders to be distributed, instead of accurate path planning for all possible combinations of delivery personnel and orders to be distributed, thereby helping to reduce the risk of receiving The computational burden on the online system when new orders are placed. The solution of this application will be described in detail below.
图1为本说明书实施例提供的一种路径规划方法的流程示意图,该流程比如由线上系统执行,具体可以包括以下步骤:Fig. 1 is a schematic flow chart of a path planning method provided by an embodiment of this specification. For example, the process is executed by an online system and may specifically include the following steps:
S100:确定待分配订单对应的相关位置。S100: Determine the relevant position corresponding to the order to be allocated.
在本说明书实施例中,背景技术提到的新订单一般包括待分配给配送员进行配送的订单,即待分配订单,下面一些实施例主要以这种情况为例说明。在实际应用中,也可能允许将已分配给配送员、但该配送员还没开始配送的订单,即待配送订单,重新分配给其他配送员。在这种情况下,新订单也可以包括这类待配送订单,并将这类待配送订单重置为待分配订单。可以在每接收到一个或者多个新订单后,触发图1中的流程的执行。In the embodiments of the present specification, the new orders mentioned in the background art generally include orders to be allocated to a delivery person for delivery, that is, orders to be allocated. The following embodiments mainly take this situation as an example. In practical applications, it may also be allowed to reallocate orders that have been assigned to a delivery person but the delivery person has not yet started to deliver, that is, pending delivery orders, to other delivery employees. In this case, the new order may also include such pending orders, and reset such pending orders to pending distribution orders. The execution of the process in Figure 1 can be triggered every time one or more new orders are received.
在本说明书实施例中,相关位置一般包括取货位置和送货位置中的至少一种,下面一些实施例主要以这种情况为例进行说明。为了便于描述,将这种情况下的相关位置称为取送位置。以外卖派送为例,待分配订单可以包括用户向线上系统新发起的外卖订单, 取货位置即为负责制作外卖的饮食店所在位置;送货位置即为该用户期望该外卖的送达位置,一般为该用户的所在位置,比如,用户家或者用户公司等。相关位置也可能包括取货位置和送货位置之外的其他一些位置,比如,配送员的住址等。相关位置可以表示为电子地图中的坐标。In the embodiments of this specification, the relevant location generally includes at least one of the pick-up location and the delivery location. The following embodiments mainly take this situation as an example for description. For ease of description, the relevant position in this case is referred to as the taking position. Take takeaway delivery as an example. The pending order can include a new takeaway order initiated by the user to the online system. The pickup location is the location of the restaurant responsible for making the takeaway; the delivery location is the location where the user expects the takeaway to be delivered. , Generally the location of the user, for example, the user’s home or the user’s company. Related locations may also include locations other than the pickup location and the delivery location, such as the address of the delivery person. The relevant location can be expressed as coordinates in the electronic map.
S102:确定配送员集合,并针对所述配送员集合中的每个配送员,获取该配送员的位置以及该配送员的待配送订单对应的相关位置。S102: Determine a set of dispatchers, and for each dispatcher in the set of dispatchers, obtain the position of the dispatcher and the relevant position corresponding to the order to be dispatched by the dispatcher.
在本说明书实施例中,该配送员集合可以按照预设规则确定。比如,当前位于待分配订单的所属区域(比如,市里的某区、某居民小区、某街道等)的多个配送员构成的集合,或者负责该所属区域的多个配送员构成的集合。再比如,当前还有意愿继续接单的多个配送员构成的集合;等等。In the embodiment of this specification, the set of delivery personnel may be determined according to a preset rule. For example, a collection of multiple dispatchers currently located in the area to which an order is to be allocated (for example, a certain district in a city, a certain residential area, a certain street, etc.), or a collection of multiple dispatchers responsible for the area. For another example, there is currently a collection of multiple delivery personnel willing to continue to take orders; and so on.
在本说明书实施例中,配送员的位置优选地指配送员当前的实时位置。由于配送员通常大部分时间都在移动中,位置变化频繁,因此,对于配送员的位置的实时准确性要求可以根据实际情况进行要求。此外,配送员的位置一般由配送员的手机主动上报。In the embodiment of this specification, the location of the delivery person preferably refers to the current real-time location of the delivery person. Since the delivery person is usually on the move most of the time and the position changes frequently, the real-time accuracy requirements for the delivery person's position can be required according to the actual situation. In addition, the location of the delivery person is generally reported by the delivery person's mobile phone.
在本说明书实施例中,待配送订单可以指配送员当前正在配送途中的订单或者已被分配但还没开始配送的订单。本申请的方案主要考虑配送员当前已经有至少一个待配送订单的情况。In the embodiment of this specification, the order to be delivered may refer to an order currently being delivered by a delivery person or an order that has been allocated but has not yet been delivered. The solution of this application mainly considers the situation that the delivery staff currently has at least one pending delivery order.
当然,也可以考虑尽量将待分配订单分配分配给当前没有一个待配送订单的配送员。不过,对于这种情况下订单如何分配,本领域技术人员可参考任意周知的相关技术,并因此在此仅做简单说明。Of course, you can also consider assigning the pending orders to the delivery staff who currently do not have a pending order. However, for how to allocate orders in this case, those skilled in the art can refer to any well-known related technology, and therefore only a brief description is given here.
S104:针对所述配送员集合中的每个配送员,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。S104: For each delivery person in the delivery person set, determine the delivery person and the delivery person according to the relevant position corresponding to the order to be allocated, the location of the delivery person, and the relevant position corresponding to the order to be delivered by the delivery person. Describe the matching degree of the order to be allocated.
通过对大量历史订单的分配结果进行观察、分析,总结出匹配度较好的配送员与待分配订单,往往具有以下特点:待分配订单的取送位置与配送员的待配送订单的取送位置重合或者相近(也即,距离小,比如,小于100米或者只差几百米);待分配订单的取送位置在配送员的行进方向上,方向偏离程度较小。By observing and analyzing the distribution results of a large number of historical orders, it is concluded that the delivery personnel with a better matching degree and the orders to be assigned often have the following characteristics: the pick-up location of the pending orders and the delivery location of the delivery staff's pending orders Coincident or similar (that is, the distance is small, for example, less than 100 meters or only a few hundred meters away); the delivery position of the order to be allocated is in the travel direction of the delivery person, and the direction deviation is small.
基于上述特点,可以从距离关系和方向关系这两方面,来考虑配送员与待分配订单的组合是否合适。其中,距离关系可以表示待分配订单的取送位置与配送员的实时位置及未来可能位置之间的远近程度,方向关系可以表示待分配订单的取送位置与配送员前 进方向的偏离程度。尤其在配送员已经身负待配送订单的情况下,需要考虑待配送订单的取送位置与待分配订单的取送位置之间的距离关系和方向关系。可以通过直观的数学公式,来计算配送员与待分配订单的匹配度。例如,公式中可以用不同的项分别计算距离、方向对于匹配度的影响,并可以将相应的项或者项的关键部分称为距离因子、方向因子。其中,不同的项可以被赋予不同的权重,用于直接调节距离因子、方向因子各自的影响程度。当然,也可以将距离因子、方向因子融合在同一项中。计算匹配度所采用的公式可以是多样的,符合本申请的方案的思路即可,后面还会举例说明。Based on the above characteristics, we can consider whether the combination of the delivery person and the order to be allocated is appropriate from the two aspects of the distance relationship and the direction relationship. Among them, the distance relationship can indicate the distance between the pick-up location of the order to be allocated and the real-time location and possible future locations of the dispatcher, and the direction relationship can indicate the degree of deviation between the pick-up location of the order to be allocated and the forward direction of the dispatcher. Especially in the case where the delivery person is already carrying an order to be delivered, it is necessary to consider the distance relationship and the direction relationship between the pickup location of the order to be delivered and the pickup location of the order to be allocated. The degree of matching between the dispatcher and the order to be allocated can be calculated through intuitive mathematical formulas. For example, different terms can be used in the formula to calculate the influence of distance and direction on the matching degree, and the corresponding terms or key parts of the terms can be called distance factors and direction factors. Among them, different items can be given different weights to directly adjust the degree of influence of the distance factor and direction factor. Of course, the distance factor and direction factor can also be combined in the same term. The formula used to calculate the matching degree can be diverse, as long as it conforms to the idea of the solution of this application, and an example will be described later.
在本说明书实施例中,匹配度可以用预设的变量进行表示。该变量的值的大小与匹配度大小的关系不做具体限定,而取决于用户预先如何规定。比如,可规定该变量的值越小,表示匹配度越高;当然,反之也可以。In the embodiment of this specification, the matching degree can be represented by a preset variable. The relationship between the value of the variable and the matching degree is not specifically limited, but depends on how the user prescribes it. For example, it can be specified that the smaller the value of the variable, the higher the matching degree; of course, the reverse is also possible.
S106:根据所述配送员集合中各配送员与所述待分配订单的匹配度,从所述配送员集合中筛选出符合预设条件的配送员。S106: According to the degree of matching between each delivery person in the delivery person set and the order to be allocated, filter out the delivery person meeting preset conditions from the delivery person set.
在本说明书实施例中,预设条件可以是多样的。比如,配送员与待分配订单的匹配度高于预设阈值;再比如,按照配送员与待分配订单的匹配度从高到低的顺序,配送员与待分配订单的匹配度位于指定范围(比如,前50%、或者前50个等);等等。In the embodiments of this specification, the preset conditions may be various. For example, the matching degree between the dispatcher and the order to be allocated is higher than the preset threshold; for another example, according to the order of the matching degree between the dispatcher and the order to be allocated, the matching degree between the dispatcher and the order to be allocated is in the specified range ( For example, the top 50%, or the top 50, etc.); etc.
在本说明书实施例中,根据配送员与待分配订单的匹配度来筛选配送员,也就是筛选出匹配度相对合适的配送员与待分配订单的组合。在筛选出的组合中,每个配送员可以同时与多个待分配订单进行匹配,每个待分配订单同时也可以与多个配送员匹配。后续,将对这些筛选出的组合进行路径规划,以最终可以得到整体的匹配结果。换言之,初始可以包含很多个不同的配送员与待分配订单的组合,通过预设条件可以筛选出一部分认为相对合适的组合,以下又可称为候选组合。In the embodiment of this specification, the dispatchers are screened according to the matching degree between the dispatcher and the order to be allocated, that is, the combination of the dispatcher with a relatively suitable matching degree and the order to be allocated is selected. In the selected combination, each dispatcher can match multiple orders to be allocated at the same time, and each order to be allocated can also be matched with multiple dispatchers at the same time. Later, path planning will be performed on these selected combinations, so that the overall matching result can be finally obtained. In other words, it can initially contain a lot of combinations of different dispatchers and orders to be allocated, and a part of the combinations deemed relatively suitable can be screened out through preset conditions, which may also be referred to as candidate combinations below.
S108:根据预设的路径规划算法,对所述待分配订单和筛选出的配送员进行路径规划。S108: Perform path planning on the order to be allocated and the selected delivery personnel according to the preset path planning algorithm.
在本说明书实施例中,步骤S106中的筛选是粗筛选,可以进一步基于粗筛选结果进行更精确的路径规划,即进行细筛选,以得到最终的订单分配结果。In the embodiment of the present specification, the screening in step S106 is coarse screening, and more precise path planning can be further performed based on the coarse screening results, that is, fine screening is performed to obtain the final order allocation result.
通过图1的方法,当有待分配订单时,根据待分配订单对应的相关位置以及配送员集合中各配送员的位置以及各配送员的待配送订单对应的相关位置,确定各配送员与待分配订单的匹配度,并根据匹配度筛选出一部分配送员进行后续的路径规划,而不是对配送员集合中的所有配送员重新进行路径规划,可有效减轻在接收到新订单时给线上系 统带来的计算负担。Through the method shown in Figure 1, when there is an order to be allocated, according to the relevant position corresponding to the order to be allocated, the position of each dispatcher in the set of dispatchers, and the relevant position of each dispatcher's order to be dispatched, each dispatcher and the dispatcher are determined The matching degree of the order, and according to the matching degree, select a part of the delivery staff for subsequent path planning, instead of re-planning all the delivery staff in the delivery staff set, it can effectively reduce the burden on the online system when new orders are received. Computational burden.
基于图1的方法,本说明书实施例还提供了该方法的另一些具体实施方法和扩展方案,下面继续说明。Based on the method in FIG. 1, the embodiments of this specification also provide other specific implementation methods and extension schemes of the method, which will be described below.
前面对相关位置进行了解释。确定匹配度时,一般可以只考虑取货位置或者送货位置,以提高算法效率。但是,毕竟配送员既要前往取货位置也要前往送货位置,为了取得更为合理的派单结果,在确定匹配度时,可以全面考虑取货位置和送货位置。具体可以分别考虑再进行综合,也可以一开始就综合考虑。以前一种方式为例,比如,可以确定配送员与待分配订单的取货位置的第一匹配度,以及确定配送员与待分配订单的送货位置的第二匹配度,然后再根据第一匹配度和第二匹配度,确定配送员与待分配订单的匹配度。The relevant position was explained earlier. When determining the matching degree, generally only the pickup location or delivery location can be considered to improve the efficiency of the algorithm. However, after all, the delivery person has to go to both the pickup location and the delivery location. In order to obtain a more reasonable dispatch result, the pickup location and the delivery location can be fully considered when determining the matching degree. It can be considered separately and then integrated, or it can be considered comprehensively from the beginning. Take the previous method as an example. For example, you can determine the first matching degree between the delivery person and the pickup location of the order to be allocated, and determine the second matching degree between the delivery person and the delivery location of the order to be allocated, and then according to the first The matching degree and the second matching degree determine the matching degree of the delivery person with the order to be allocated.
确定匹配度时到底是只考虑取货位置和送货位置这两者之一,还是两者都考虑,这里不做限定,可以有多种具体实施方式。比如,无论是确定配送员与待分配订单的取货位置的第一匹配度,还是配送员与待分配订单的送货位置的第二匹配度,均可以考虑该配送员的待配送订单的取货位置和送货位置。再比如,可以在确定配送员与待分配订单的取货位置之间的匹配度时,相应地考虑该配送员的待配送订单的取货位置,而不考虑该配送员的待配送订单的送货位置;而在确定配送员与待分配订单的送货位置的第二匹配度时,相应地考虑该配送员的待配送订单的送货位置,而不考虑该配送员的待配送订单的取货位置。When determining the matching degree, whether only one of the pick-up location and the delivery location is considered, or both, is not limited here, and there may be multiple specific implementation manners. For example, whether it is to determine the first degree of matching between the delivery person and the pickup location of the order to be allocated, or the second degree of matching between the delivery person and the delivery location of the order to be allocated, the pickup of the delivery person’s order to be delivered can be considered. Goods location and delivery location. For another example, when determining the degree of matching between the delivery person and the pickup location of the order to be distributed, the pickup location of the delivery person’s order to be delivered can be considered accordingly, regardless of the delivery person’s order to be delivered. When determining the second degree of matching between the delivery person and the delivery location of the order to be distributed, the delivery location of the delivery person’s order to be delivered is considered accordingly, regardless of the delivery person’s order to be delivered. Goods location.
分别确定的匹配度可以采用差异化的公式,或者采用差异化的公式参数取值。比如,在确定配送员与待分配订单的取货位置的第一匹配度时,可以更多地考虑距离的影响,赋予距离因子相对高的权重。再比如,在确定配送员与待分配订单的送货位置的匹配度时,可以更多地考虑方向的影响,赋予方向因子相对高的权重。The separately determined matching degrees can adopt differentiated formulas, or adopt differentiated formula parameter values. For example, when determining the first degree of matching between the delivery person and the pick-up location of the order to be assigned, the influence of distance can be more considered, and the distance factor can be given a relatively high weight. For another example, when determining the matching degree between the delivery person and the delivery location of the order to be assigned, more consideration can be given to the influence of direction, and the direction factor is given a relatively high weight.
在本说明书实施例中,使用了配送员的邻域范围这个概念,并基于邻域范围来确定配送员与待分配订单的匹配度。可以将取送位置方便地划分为在配送员的邻域范围内与不在配送员的邻域范围内这两大类情况,并对同一类情况做近似处理,有助于简化算法。In the embodiment of this specification, the concept of the neighborhood range of the dispatcher is used, and the degree of matching between the dispatcher and the order to be allocated is determined based on the neighborhood range. The pick-up location can be conveniently divided into two categories: within the neighborhood of the delivery person and not within the neighborhood of the delivery person. Approximate processing of the same type of situation is helpful to simplify the algorithm.
这里的邻域范围指配送员邻近的一个区域范围。比如,可将以配送员的位置为圆心、以一个固定距离为半径所构成的圆形区域范围,确定为该配送员的邻域范围。再比如,可求取配送员的位置和该配送员的全部待配送订单的取送位置的平均坐标;然后,可将以该平均坐标为圆心、且能够覆盖该配送员的位置和该配送员的全部待配送订单的取送 位置的最小圆形区域范围,确定为该配送员的邻域范围。The neighborhood here refers to an area near the delivery person. For example, a circular area with the location of the delivery person as the center and a fixed distance as the radius may be determined as the neighborhood area of the delivery person. For another example, the location of the delivery person and the average coordinates of the delivery locations of all pending orders of the delivery person can be obtained; then, the average coordinates can be taken as the center of the circle and can cover the location of the delivery person and the delivery person The smallest circular area of the pickup position of all pending orders is determined as the neighborhood area of the delivery person.
在本说明书实施例中,可以根据配送员的位置以及该配送员的待配送订单的取送位置,确定该配送员的邻域范围,再根据该配送员的邻域范围以及待分配订单的取送位置,确定该配送员与待分配订单的匹配度。比如,可以根据配送员的位置以及该配送员的待配送订单的取送位置之间的距离关系和方向关系,确定配送员的邻域范围。上一段中的第二个例子即采用了该思路,另外,本说明书实施例还提供了一种实践中取得了较好效果的邻域范围确定方案,下面具体说明。In the embodiment of this specification, the neighborhood area of the delivery person can be determined according to the delivery person’s location and the delivery location of the delivery person’s order to be delivered, and then according to the delivery person’s neighborhood area and the order to be allocated. Delivery location to determine the degree of match between the delivery person and the order to be allocated. For example, the neighborhood range of the delivery person can be determined according to the location of the delivery person and the distance relationship and direction relationship between the delivery position of the delivery person's order to be delivered. The second example in the previous paragraph adopts this idea. In addition, the embodiment of this specification also provides a neighborhood range determination solution that has achieved good results in practice, which is described in detail below.
例如,可以以该配送员的位置为区域中心,确定指定大小的覆盖区域,在该配送员的所有待配送订单对应的相关位置中,获取落入该覆盖区域内、但未处理过的相关位置,并将所获取的相关位置的平均坐标确定为新的区域中心;然后,根据所确定的新的区域中心继续确定指定大小的新覆盖区域,并基于该新覆盖区域再次确定新的区域中心。依此重复执行覆盖区域、区域中心的确定(可能会进行多轮),直至该配送员的所有待配送订单的相关位置均被处理了。最后,将所确定出的全部覆盖区域确定为所述配送员的邻域范围。覆盖区域的形状可以是多样的,比如,圆形、三角形、正方形、蜂窝形等。指定大小不易过大,一般为几百米到几公里。For example, the location of the delivery person can be used as the regional center to determine a coverage area of a specified size, and among all the relevant locations corresponding to the delivery person's pending orders, the relevant locations that fall within the coverage area but have not been processed are obtained , And determine the obtained average coordinates of the relevant position as the new area center; then, continue to determine the new coverage area of the specified size according to the determined new area center, and determine the new area center again based on the new coverage area. According to this, the determination of the coverage area and the regional center is repeated (multiple rounds may be carried out) until the relevant positions of all pending orders of the dispatcher have been processed. Finally, all the determined coverage areas are determined as the neighborhood range of the distributor. The shape of the coverage area can be various, such as circle, triangle, square, honeycomb, etc. The specified size is not easy to be too large, generally a few hundred meters to a few kilometers.
本说明书还提供了示例性的确定配送员的邻域范围的原理示意图,如图2所示。This specification also provides an exemplary schematic diagram of the principle of determining the neighborhood range of a distributor, as shown in FIG. 2.
在图2中,点1~6(用小圆标示)为配送员的全部待配送订单的取送位置。覆盖区域的形状为圆形。每次确定的覆盖区域大小相同,比如,半径均为300米。每次将配送员的所有待配送订单对应的取送位置中落入覆盖区域、但未处理过的取送位置(也即,本次新增的取送位置)的平均坐标确定为新的区域中心。依次确定出的各圆形覆盖区域的圆心分别记作点A、B、C、D(用五角星标示)。确定配送员的邻域范围的过程如下:配送员的位置为点A,以点A为圆心、300米为半径,确定第一个圆形覆盖区域,该配送员在该第一个圆形覆盖区域内的取送位置包括点1、2,其中点1、2均未被处理过,求得点1、2的平均坐标为点B;以点B为圆心、300米为半径,确定第二个圆形覆盖区域,该配送员在该第二个圆形覆盖区域内的取送位置包括点1、2、3,其中点3为新增的取送位置,其平均坐标为点3自身、也即点C;以点C为圆心、300米为半径,确定第三个圆形覆盖区域,该配送员在该第三个圆形覆盖区域内的取送位置包括点2、3、4、5、6,其中点4、5、6为新增的取送位置,其平均坐标为点D;以点D为圆心、300米为半径,确定第四个圆形覆盖区域,该配送员在该第四个圆形覆盖区域内的取送位置包括点3、4、5、6,没有新增的取送位置,也即配送员的全部取送位置都被处理过,则 将上面依次确定的四个圆形覆盖区域之和确定为该配送员的邻域范围。In Figure 2, points 1 to 6 (marked with small circles) are the pickup positions of all orders to be delivered by the delivery staff. The shape of the coverage area is circular. The size of the coverage area determined each time is the same, for example, the radius is 300 meters. Each time, the average coordinates of the unprocessed pick-up locations (that is, the newly-added pick-up locations this time) that fall into the coverage area corresponding to all the pending orders of the delivery staff are determined as the new area center. The centers of the successively determined circular coverage areas are respectively marked as points A, B, C, and D (marked with a five-pointed star). The process of determining the neighborhood range of the delivery person is as follows: the location of the delivery person is point A, with point A as the center and 300 meters as the radius, determine the first circular coverage area, and the delivery person covers the first circle The pick-up position in the area includes points 1 and 2. Among them, points 1 and 2 have not been processed. The average coordinates of points 1 and 2 are calculated as point B; with point B as the center and 300 meters as the radius, determine the second Circular coverage area. The delivery position of the delivery person in the second circular coverage area includes points 1, 2, and 3. Among them, point 3 is the newly added delivery location, and its average coordinates are point 3 itself, Namely point C; with point C as the center and 300 meters as the radius, determine the third circular coverage area. The delivery position of the delivery person in the third circular coverage area includes points 2, 3, 4, and 5. , 6, where points 4, 5, and 6 are newly added delivery locations, and their average coordinates are point D; with point D as the center and 300 meters as the radius, determine the fourth circular coverage area, where the delivery person is The pick-up locations in the fourth circular coverage area include points 3, 4, 5, and 6. There is no new pick-up location, that is, all pick-up locations of the delivery staff have been processed, and the above are determined in turn The sum of the four circular coverage areas is determined as the neighborhood area of the dispatcher.
在本说明书实施例中,确定出配送员的邻域范围后,可以按照如下方式确定匹配度。首先,判断待分配订单对应的相关位置是否在该配送员的邻域范围内。In the embodiment of this specification, after determining the neighborhood range of the delivery person, the matching degree can be determined in the following manner. First, determine whether the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher.
若待分配订单对应的相关位置在该配送员的邻域范围内,则可以认为该配送员配送该待分配订单的代价不太大,即使直接将待分配订单分配给该配送员也算比较合理。换言之,可以认为该配送员与该待分配订单比较匹配,并可将该配送员与该待分配订单的匹配度确定为预设的最大匹配度、或者高到足以被筛选出来的其他匹配度。如此,可以忽略或者不再过细地考虑距离和方向的影响,有助于减少算法的运算量。If the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher, it can be considered that the cost of the dispatcher to deliver the order to be allocated is not too high, even if the order to be allocated is directly allocated to the dispatcher, it is reasonable . In other words, it can be considered that the dispatcher matches the order to be allocated, and the matching degree between the dispatcher and the order to be allocated may be determined as the preset maximum matching degree, or another matching degree high enough to be screened out. In this way, the influence of distance and direction can be ignored or no longer considered too carefully, which helps to reduce the computational complexity of the algorithm.
若待分配订单对应的相关位置不在该配送员的邻域范围内,则可以根据待分配订单对应的相关位置与该配送员的待配送订单对应的相关位置,确定该配送员与待分配订单的匹配度。比如,可确定待分配订单对应的相关位置与待配送订单对应的相关位置之间的最小距离,并根据最小距离确定该配送员与该待分配订单的匹配度第一项。其中,该最小距离与所述匹配度第一项负相关。在实际应用中,也可以将最小距离替换为平均距离。再比如,可确定从该配送员的位置到待分配订单对应的相关位置的第一方向,以及从该配送员的位置到该配送员的待配送订单对应的相关位置的第二方向(反映了配送员接下来的行程整体的趋向),并根据第一方向与第二方向之间的夹角确定该配送员与待分配订单的匹配度第二项。其中,该夹角与所述匹配度第二项负相关。然后,可根据上述匹配度第一项和/或上述匹配度第二项,来确定配送员与待分配订单的匹配度。需要说明的是,这里所说的负相关具体可以指关系大体上是负相关的(一般地,距离越小,则离得越近,匹配度越高;夹角越小,则方向偏离程度越小,匹配度越高),而未必要求严格地在整个连续取值范围内负相关。此外,夹角可以用角度或者弧度表示。If the relevant position corresponding to the order to be allocated is not within the neighborhood of the dispatcher, the relevant position of the dispatcher and the dispatcher's order to be dispatched can be determined according to the relevant position corresponding to the order to be allocated suitability. For example, the minimum distance between the relevant position corresponding to the order to be distributed and the relevant position corresponding to the order to be distributed can be determined, and the first item of the matching degree between the dispatcher and the order to be distributed can be determined according to the minimum distance. Wherein, the minimum distance is negatively related to the first term of the matching degree. In practical applications, the minimum distance can also be replaced with the average distance. For another example, it is possible to determine the first direction from the position of the dispatcher to the relevant position corresponding to the order to be distributed, and the second direction from the position of the dispatcher to the relevant position corresponding to the order to be dispatched by the dispatcher (reflecting The overall trend of the delivery person's next itinerary), and the second item of matching degree between the delivery person and the order to be allocated is determined according to the angle between the first direction and the second direction. Wherein, the included angle is negatively related to the second term of the matching degree. Then, according to the first item of the matching degree and/or the second item of the matching degree, the degree of matching between the dispatcher and the order to be allocated can be determined. It should be noted that the negative correlation mentioned here can specifically mean that the relationship is generally negative (generally, the smaller the distance, the closer the distance, the higher the matching degree; the smaller the angle, the greater the degree of deviation Smaller, higher matching degree), but does not necessarily require strict negative correlation within the entire continuous range of values. In addition, the included angle can be expressed in degrees or radians.
无论是第一方向,还是第二方向,都可能包含多个具体的方向。在实际计算时,第一方向和第二方向可以分别用所述多个具体的方向之一或者所述多个具体的方向的综合度量(比如,取平均方向、或者取最偏离方向等)来表示。Both the first direction and the second direction may include multiple specific directions. In actual calculations, the first direction and the second direction may use one of the multiple specific directions or a comprehensive measure of the multiple specific directions (for example, the average direction, or the most deviated direction). Said.
假定取平均方向来表示第二方向,参见图3,图3为本说明书实施例提供的示例性的确定第二方向的原理示意图。在图3中,点A为配送员的位置,点7、8为配送员的待配送订单的取送位置,可以对从点A到点7的向量以及从点A到点8的向量相加得到向量AA',向量AA'的方向即可以作为第二方向。Assuming that the average direction is taken to represent the second direction, refer to FIG. 3, which is an exemplary schematic diagram of the principle of determining the second direction provided by an embodiment of this specification. In Figure 3, point A is the location of the delivery person, points 7 and 8 are the delivery positions of the delivery person’s orders to be delivered, and the vector from point A to point 7 and the vector from point A to point 8 can be added The vector AA' is obtained, and the direction of the vector AA' can be used as the second direction.
在本说明书实施例中,对于待分配订单对应的相关位置不在配送员的邻域范围内的 情况,也可以考虑设定合适的条件。当满足这些条件时,可以忽略或者不再过细地考虑距离和方向的影响。条件比如是:根据以往该配送员的历史配送效率,将待分配订单分派给该配送员,该配送员能够按时送到;或者,该配送员的至少一个待配送订单的取送位置距离待分配订单的取送位置足够近;等等。In the embodiment of this specification, for the situation where the relevant location corresponding to the order to be allocated is not within the neighborhood of the delivery person, it is also possible to consider setting appropriate conditions. When these conditions are met, the influence of distance and direction can be ignored or no longer considered too carefully. For example, the condition is: according to the historical delivery efficiency of the delivery person, the order to be allocated is assigned to the delivery person, and the delivery person can deliver it on time; or, the delivery position of at least one order to be delivered of the delivery person is to be allocated The pick-up location of the order is close enough; etc.
以上一段列举的第二种条件为例。若待分配订单的取送位置不在该配送员的邻域范围内,则可以确定待分配订单的取送位置与该配送员的待配送订单的取送位置之间的最小距离。若最小距离小于预设的距离阈值,则可将该配送员与该待分配订单的匹配度确定为上述的最大匹配度、或者高到足以被筛选出的其他匹配度。Take the second condition listed in the previous paragraph as an example. If the delivery position of the order to be allocated is not within the neighborhood of the dispatcher, the minimum distance between the pickup position of the order to be allocated and the delivery position of the dispatcher's order to be dispatched can be determined. If the minimum distance is less than the preset distance threshold, the matching degree between the dispatcher and the to-be-allocated order may be determined as the aforementioned maximum matching degree, or other matching degrees high enough to be screened out.
本说明书实施例还提供了示例性的用于确定配送员与待分配订单的匹配度的公式。为了便于理解,首先对公式相关的一些预定义变量进行说明。用Q表示配送员与待分配订单的匹配度度量,V i表示配送员与位置i的匹配度度量,p表示待分配订单的取货位置,d表示待分配订单的送货位置,dist i表示距离因子,a i表示方向因子,
Figure PCTCN2019124296-appb-000001
表示向量x的方向。参照如下公式(1)~(4)。
The embodiment of this specification also provides an exemplary formula for determining the degree of matching between the dispatcher and the order to be allocated. In order to facilitate understanding, some pre-defined variables related to the formula are first explained. Represents a distribution person matching metric order to be dispensed by Q, V i represents the match metric distribution person position i, p is the order represents the pickup position to be dispensed, d represents the order of the delivery position to be dispensed, dist i represents The distance factor, a i represents the direction factor,
Figure PCTCN2019124296-appb-000001
Indicates the direction of the vector x. Refer to the following formulas (1) to (4).
Q=αV p+(1-α)V d;     (1) Q=αV p +(1-α)V d ; (1)
Figure PCTCN2019124296-appb-000002
Figure PCTCN2019124296-appb-000002
Figure PCTCN2019124296-appb-000003
Figure PCTCN2019124296-appb-000003
Figure PCTCN2019124296-appb-000004
Figure PCTCN2019124296-appb-000004
其中,α、β表示取值范围为[0,1]的预设的权重系数,inner表示相关位置在配送员的邻域范围内,outer表示相关位置不在配送员的邻域范围内,Angle表示求夹角弧度,
Figure PCTCN2019124296-appb-000005
表示上述的第一方向,
Figure PCTCN2019124296-appb-000006
表示上述的第二方向,匹配度度量(matching degree measure)Q、V i的值越小表示相应的匹配度(matching degree)越高。
Among them, α and β represent the preset weight coefficients with a value range of [0,1], inner represents that the relevant location is within the neighborhood of the delivery person, outer represents that the relevant location is not within the neighborhood of the delivery person, and Angle represents Find the angle in radians,
Figure PCTCN2019124296-appb-000005
Represents the first direction mentioned above,
Figure PCTCN2019124296-appb-000006
Represents said second direction, matching metric (matching degree measure) Q, V i smaller value indicates a higher degree of matching corresponding (matching degree).
公式(1)用于计算配送员与待分配订单的匹配度度量Q,具体基于配送员与待分配订单的取货位置的第一匹配度度量V p和配送员与待分配订单的送货位置的第二匹配度 度量V d来进行计算。其中,α和(1-α)分别为第一匹配度度量V p和第二匹配度度量V d的权重。α比如可以取0.5,则表示第一匹配度度量V p和第二匹配度度量V d的权重相同。当然,第一匹配度度量V p和第二匹配度度量V d的权重也可以是不同的。 Match formula (1) for calculating a distribution person to be dispensed and the order metric Q, particularly the degree of matching based on the first position pickup and delivery staff to be dispensed and the order of V p metric distribution person to be assigned a position order delivery The second matching degree metric V d is calculated. Among them, α and (1-α) are the weights of the first matching degree metric V p and the second matching degree metric V d , respectively. For example, α can be 0.5, which means that the weights of the first matching degree metric V p and the second matching degree metric V d are the same. Of course, the weights of the first matching degree metric V p and the second matching degree metric V d may also be different.
公式(1)中的第一匹配度度量V p和第二匹配度度量V d均可以用公式(2)计算,具体可基于距离因子dist i和方向因子a i来进行计算,并且进行归一化处理。公式(2)也有两部分,分别为基于距离因子dist i确定的匹配度度量第一项和基于方向因子a i确定的匹配度度量第二项。为了便于描述,匹配度度量第一项和匹配度度量第二项各自的权重分别为β和(1-β)。在公式(2)中,若待分配订单的取送位置与配送员的待配送订单的取送位置之间的距离dist i超过1000米(也可以修改为其他合适的值),匹配度度量第一项的取值为最大值1;若上述的第一方向
Figure PCTCN2019124296-appb-000007
与第二方向
Figure PCTCN2019124296-appb-000008
完全反向,则a i=π,匹配度度量第二项的取值为最大值1。
Both the first matching degree metric V p and the second matching degree metric V d in formula (1) can be calculated by formula (2), which can be specifically calculated based on the distance factor dist i and the direction factor a i , and normalized化处理. The formula (2) also has two parts, namely the first item of the matching degree metric determined based on the distance factor dist i and the second item of the matching degree metric determined based on the direction factor a i . For ease of description, the weights of the first item of the matching degree measurement and the second item of the matching degree measurement are β and (1-β) respectively. In formula (2), if the distance dist i between the delivery position of the order to be allocated and the delivery position of the order to be delivered by the dispatcher exceeds 1000 meters (it can also be modified to other suitable values), the matching degree measures the first The value of one item is the maximum value 1; if the above first direction
Figure PCTCN2019124296-appb-000007
And the second direction
Figure PCTCN2019124296-appb-000008
Completely reverse, then a i =π, and the second item of the matching degree metric takes the maximum value of 1.
公式(3)为距离因子dist i的计算方式。若待分配订单的取送位置在配送员的邻域范围内,则距离因子dist i可以忽略不计,直接设为0;而若待分配订单的取送位置不在配送员的邻域范围内,则分别计算待分配订单的取送位置与配送员的全部待配送订单的取送位置之间的距离,选择其中的最小距离min(d ij)。若该最小距离小于100米(也可以修改为其他合适的值),则距离因子dist i也可以忽略不计。 Formula (3) is the calculation method of the distance factor dist i . If the pickup location of the order to be allocated is within the neighborhood of the dispatcher, the distance factor dist i can be ignored and set to 0 directly; and if the pickup location of the order to be allocated is not within the neighborhood of the dispatcher, then Calculate the distances between the pickup positions of the orders to be allocated and the pickup positions of all the orders to be delivered by the dispatcher, and select the minimum distance min(d ij ). If the minimum distance is less than 100 meters (it can also be modified to other suitable values), the distance factor dist i can also be ignored.
公式(4)为方向因子a i的计算方式。在距离因子dist i为0的情况下,方向因子a i也为0;而若距离因子dist i不为0,则计算上述的第一方向与第二方向之间的夹角作为方向因子a iFormula (4) is the calculation method of the direction factor a i . When the distance factor dist i is 0, the direction factor a i is also 0; and if the distance factor dist i is not 0, the angle between the first direction and the second direction mentioned above is calculated as the direction factor a i .
若采用上述公式计算匹配度,则上述匹配度度量Q的值为0可表示最大匹配度。If the above formula is used to calculate the matching degree, the value of the above-mentioned matching degree metric Q is 0, which can indicate the maximum matching degree.
在本说明书实施例中,在确定配送员与待分配订单的匹配度后,可以根据匹配度筛选出匹配程度相对高和/或待配送订单相对少(比如,少于区域内实时平均订单量的一半)的配送员与待分配订单的组合,再利用设定的路径规划算法,对筛选出的多个组合进行路径规划,以分配待分配订单。In the embodiment of this specification, after determining the matching degree between the dispatcher and the order to be distributed, the matching degree can be screened out according to the matching degree to be relatively high and/or the order to be delivered is relatively small (for example, less than the real-time average order quantity in the region) Half) the combination of the delivery staff and the orders to be allocated, and then use the set path planning algorithm to plan the paths of the multiple combinations selected to allocate the orders to be allocated.
沿用上面公式的例子,比如,在对待分配订单与配送员的全部可能组合分别计算出Q 值后,根据Q值由小到大进行排序,筛选出前百分之n的组合保留。以如下表1为例。Following the example of the above formula, for example, after calculating the Q value for all possible combinations of the order to be assigned and the delivery person, sorting according to the Q value from small to large, and filtering out the top n percent of the combinations reserved. Take the following table 1 as an example.
表1:Table 1:
 To 待分配订单1Pending order 1 待分配订单2Pending order 2 待分配订单3Pending order 3 待分配订单4 Pending order 4
配送员1Delivery person 1 YY YY NN NN
配送员2Delivery person 2 NN NN YY NN
配送员3Delivery person 3 YY NN YY YY
配送员4Delivery person 4 NN YY NN YY
表1示例性地展示了对一些配送员与待分配订单的组合的筛选结果,Y表示筛选出来的组合,N表示被筛除的组合,表1中有一半组合被筛除,这些被筛除的组合优选地是Q值相对高(表示匹配度相对低)的组合。Table 1 exemplarily shows the screening results of the combinations of some delivery personnel and orders to be assigned. Y represents the combination that is screened out, and N represents the combination that is screened out. Half of the combinations in Table 1 are screened out, and these are screened out. The combination of is preferably a combination with a relatively high Q value (indicating a relatively low matching degree).
在实际应用中,若当前存在待配送订单相对少甚至没有的配送员,也可以先筛选出这样的配送员,而未必要考察这些配送员与待分配订单的匹配度,从而有助于充分利用配送员资源。In practical applications, if there are currently delivery staff with relatively few or no orders to be delivered, such delivery staff can also be screened out first. It is not necessary to examine the matching degree between these delivery staff and the orders to be allocated, which will help make full use of Delivery staff resources.
大量真实数据实验表明,在采用本申请的方案的情况下,筛选出一半以上的配送员与待分配订单的组合进行路径规划的分配订单效果,与不进行筛选而全部进行路径规划的效果基本无差异。在单机环境下,在保证各项关键绩效指标(Key Performance Indicator,KPI)不会变差(例如,达到95%的准确率)的前提下,保留匹配程度前50%的组合可节省运算时间25%左右,保留匹配程度前75%的组合可节省运算时间10%左右。而在分布式环境下,效果可能更好。A large number of real data experiments show that, in the case of adopting the scheme of this application, the effect of selecting more than half of the delivery personnel and the combination of orders to be allocated for route planning has basically no effect on the distribution of orders without screening. difference. In a stand-alone environment, under the premise that the Key Performance Indicators (KPIs) will not deteriorate (for example, 95% accuracy), keeping the top 50% of the matching combinations can save computing time25 % Or so, keeping the top 75% of the matching combinations can save about 10% of computing time. In a distributed environment, the effect may be better.
上面主要基于距离因子和方向因子分派待分配订单,在实际应用中,当然也可以考虑更多的影响因素。比如,配送员历史的超时情况,超时情况严重,则使匹配度相对降低。再比如,若当前区域内配送员的数量低于设定的阈值(比如50个),则也可以不进行匹配度的确定和配送员的筛选,而是保留全部配送员进行路径规划。或者,若筛选出的配送员少于50个,则也可以加入其他可选的配送员,以尽量保留50个配送员进行路径规划。The above is mainly based on the distance factor and the direction factor to allocate pending orders. In practical applications, of course, more influencing factors can be considered. For example, the historical timeout situation of the delivery staff, if the timeout situation is serious, the matching degree will be relatively reduced. For another example, if the number of dispatchers in the current area is lower than the set threshold (for example, 50), the matching degree determination and the selection of dispatchers may not be performed, but all dispatchers are reserved for path planning. Or, if the selected delivery staff is less than 50, you can also add other optional delivery staff to try to keep 50 delivery staff for route planning.
基于同样的思路,本说明书实施例还提供了对应于图1的一种路径规划装置。Based on the same idea, the embodiment of this specification also provides a path planning device corresponding to FIG. 1.
图4为该装置的结构示意图,图4中的装置包括:第一确定模块400,用于确定待分配订单对应的相关位置;获取模块402,用于按照预设规则确定配送员集合,并针对配送员集合中的每个配送员,获取该配送员的位置以及该配送员的待配送订单对应的相 关位置;第二确定模块404,用于针对配送员集合中的每个配送员,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度;筛选模块406,用于根据所述配送员集合中各配送员与所述待分配订单的匹配度,从所述配送员集合中筛选出符合预设条件的配送员;路径规划模块408,用于根据预设的路径规划算法,对所述待分配订单和筛选出的配送员进行路径规划。Fig. 4 is a schematic diagram of the structure of the device. The device in Fig. 4 includes: a first determining module 400 for determining the relevant position corresponding to an order to be allocated; an acquiring module 402 for determining a collection of delivery personnel according to preset rules and Each dispatcher in the dispatcher set obtains the position of the dispatcher and the relevant position corresponding to the dispatcher’s pending order; the second determination module 404 is used for each dispatcher in the dispatcher set, according to all According to the relevant position corresponding to the order to be distributed, the position of the dispatcher, and the relevant position corresponding to the order to be dispatched by the dispatcher, the degree of matching between the dispatcher and the order to be dispatched is determined; The matching degree of each delivery person in the delivery person set with the order to be distributed is selected from the delivery person set that meets the preset conditions; the path planning module 408 is used to determine the matching degree of the delivery person according to the preset path planning algorithm. The orders to be allocated and the selected delivery personnel perform path planning.
可选地,所述相关位置包括取货位置和送货位置中的至少一种。在这种情况下,第二确定模块404,具体用于:确定配送员与所述待分配订单的取货位置的第一匹配度;确定配送员与所述待分配订单的送货位置的第二匹配度;根据配送员与所述取货位置的第一匹配度和所述配送员与所述送货位置的第二匹配度,确定配送员与所述待分配订单的匹配度。Optionally, the relevant location includes at least one of a pickup location and a delivery location. In this case, the second determining module 404 is specifically configured to: determine the first degree of matching between the delivery person and the pickup location of the order to be allocated; determine the first degree of matching between the delivery person and the delivery location of the order to be allocated Second degree of matching; according to the first degree of matching between the dispatcher and the pickup location and the second degree of matching between the dispatcher and the delivery location, the degree of matching between the dispatcher and the order to be distributed is determined.
可选地,第二确定模块404,具体用于:根据配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员的邻域范围;根据该配送员的邻域范围以及所述待分配订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。Optionally, the second determining module 404 is specifically configured to: determine the neighborhood range of the delivery person according to the location of the delivery person and the relevant position corresponding to the order to be delivered; according to the neighborhood range of the delivery person and The relevant position corresponding to the order to be allocated determines the degree of matching between the dispatcher and the order to be allocated.
可选地,第二确定模块404,具体用于:以该配送员的位置为区域中心,确定指定大小的覆盖区域;在该配送员的所有待配送订单对应的相关位置中,获取落入所述覆盖区域内、但未处理过的相关位置;将获取的相关位置的平均坐标确定为新的区域中心,根据确定的新的区域中心继续确定指定大小的覆盖区域,直至该配送员的所有待配送订单对应的相关位置都被处理了,则将确定出的全部覆盖区域确定为所述配送员的邻域范围。Optionally, the second determination module 404 is specifically configured to: determine a coverage area of a specified size with the delivery person’s location as the regional center; and obtain the location of the delivery person in all relevant positions corresponding to the orders to be delivered. The relevant locations within the coverage area but have not been processed; the average coordinates of the obtained relevant locations are determined as the new regional center, and the coverage area of the specified size is determined according to the determined new regional center, until all the delivery personnel waiting The relevant locations corresponding to the delivery order are all processed, and then all the determined coverage areas are determined as the neighborhood range of the delivery person.
可选地,第二确定模块404,具体用于:判断所述待分配订单对应的相关位置是否在该配送员的邻域范围内;若是,则确定该配送员与所述待分配订单的匹配度为预设的最大匹配度、或者高到足以被筛选出的其他匹配度;否则,根据所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。Optionally, the second determining module 404 is specifically configured to: determine whether the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher; if so, determine the match between the dispatcher and the order to be allocated The degree of matching is the preset maximum matching degree, or other matching degrees high enough to be screened out; otherwise, the delivery is determined according to the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be delivered by the dispatcher The degree of match between the employee and the pending order.
可选地,第二确定模块404具体用于:确定所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置之间的最小距离,根据所述最小距离确定该配送员与所述待分配订单的匹配度第一项,其中,所述最小距离与所述匹配度第一项负相关;和/或确定从该配送员的位置到所述待分配订单对应的相关位置的第一方向,以及从该配送员的位置到所述配送员的待配送订单对应的相关位置的第二方向,根据所述第一方向 与所述第二方向之间的夹角确定该配送员与所述待分配订单的匹配度第二项,其中,所述夹角与所述匹配度第二项负相关。Optionally, the second determining module 404 is specifically configured to: determine the minimum distance between the relevant position corresponding to the order to be distributed and the relevant position corresponding to the order to be distributed of the delivery person, and determine the delivery according to the minimum distance. The first item of the matching degree between the clerk and the order to be allocated, wherein the minimum distance is negatively related to the first item of the matching degree; and/or the correlation from the location of the delivery person to the order to be allocated is determined The first direction of the position, and the second direction from the delivery person’s position to the relevant position corresponding to the delivery person’s order to be delivered, which is determined according to the angle between the first direction and the second direction The second item of matching degree between the dispatcher and the order to be allocated, wherein the included angle is negatively related to the second item of matching degree.
可选地,第二确定模块404,具体用于:若所述最小距离小于预设的距离阈值,则确定该配送员与所述待分配订单的匹配度为所述最大匹配度、或者高到足以被筛选出的其他匹配度。Optionally, the second determining module 404 is specifically configured to: if the minimum distance is less than a preset distance threshold, determine that the degree of matching between the delivery person and the order to be distributed is the maximum degree of matching, or as high as Other matches sufficient to be filtered out.
可选地,筛选模块406,具体用于:筛选出与所述待分配订单的匹配度高于预设阈值的配送员;或者按照各配送员与所述待分配订单的匹配度从高到低的顺序,筛选指定数量的配送员。Optionally, the screening module 406 is specifically configured to: filter out the dispatchers whose matching degree with the order to be allocated is higher than a preset threshold; or according to the matching degree of each dispatcher with the order to be allocated from high to low In order to filter the specified number of delivery personnel.
本说明书实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行图1的一种路径规划方法。The embodiment of this specification also provides a computer-readable storage medium, the storage medium stores a computer program, and the computer program can be used to execute a path planning method in FIG. 1.
本说明书实施例还提出了图5所示的对应于图1的电子设备的结构示意图。如图5,在硬件层面,该电子设备包括处理器510、内部总线520、网络接口530、内存540以及非易失性存储器550,当然还可能包括其他业务所需要的硬件。处理器510从非易失性存储器550中读取对应的计算机程序到内存540中并然后运行,以实现图1的一种路径规划方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。The embodiment of this specification also proposes a schematic structural diagram of the electronic device shown in FIG. 5 corresponding to FIG. 1. As shown in FIG. 5, at the hardware level, the electronic device includes a processor 510, an internal bus 520, a network interface 530, a memory 540, and a non-volatile memory 550. Of course, it may also include hardware required for other services. The processor 510 reads the corresponding computer program from the non-volatile memory 550 to the memory 540 and then runs it to implement a path planning method in FIG. 1. Of course, in addition to the software implementation, this specification does not exclude other implementations, such as logic devices or a combination of software and hardware, etc. That is to say, the execution body of the following processing flow is not limited to each logic unit, and can also be Hardware or logic device.
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL (Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。In the 1990s, the improvement of a technology can be clearly distinguished between hardware improvements (for example, improvements in circuit structures such as diodes, transistors, switches, etc.) or software improvements (improvements in method flow). However, with the development of technology, the improvement of many methods and processes of today can be regarded as a direct improvement of the hardware circuit structure. Designers almost always get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be realized by hardware entity modules. For example, a programmable logic device (Programmable Logic Device, PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user's programming of the device. It is programmed by the designer to "integrate" a digital system on a PLD without requiring the chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly realized by "logic compiler" software, which is similar to the software compiler used in program development and writing. The original code must also be written in a specific programming language, which is called Hardware Description Language (HDL), and there is not only one type of HDL, but many types, such as ABEL (Advanced Boolean Expression Language) , AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description), etc., currently most commonly used It is VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. It should also be clear to those skilled in the art that just a little bit of logic programming of the method flow in the above-mentioned hardware description languages and programming into an integrated circuit, the hardware circuit that implements the logic method flow can be easily obtained.
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。The controller can be implemented in any suitable manner. For example, the controller can take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program codes (such as software or firmware) executable by the (micro)processor. , Logic gates, switches, application specific integrated circuits (ASICs), programmable logic controllers and embedded microcontrollers. Examples of controllers include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicon Labs C8051F320, the memory controller can also be implemented as a part of the memory control logic. Those skilled in the art also know that in addition to implementing the controller in a purely computer-readable program code manner, it is entirely possible to program the method steps to make the controller use logic gates, switches, application specific integrated circuits, programmable logic controllers and embedded The same function can be realized in the form of a microcontroller, etc. Therefore, such a controller can be regarded as a hardware component, and the devices included in it for implementing various functions can also be regarded as a structure within the hardware component. Or even, the device for realizing various functions can be regarded as both a software module for realizing the method and a structure within a hardware component.
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。The systems, devices, modules, or units illustrated in the above embodiments may be specifically implemented by computer chips or entities, or implemented by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cell phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or Any combination of these devices.
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。For the convenience of description, when describing the above device, the functions are divided into various units and described separately. Of course, when implementing this application, the functions of each unit can be implemented in the same one or more software and/or hardware.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art should understand that the embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程 图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention is described with reference to flowcharts and/or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and/or block in the flowchart and/or block diagram, and the combination of processes and/or blocks in the flowchart and/or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing equipment to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing equipment are generated It is a device that realizes the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device. The device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment. The instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。In a typical configuration, the computing device includes one or more processors (CPU), input/output interfaces, network interfaces, and memory.
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。The memory may include non-permanent memory in computer readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of computer readable media.
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。Computer-readable media include permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media can be used to store information that can be accessed by computing devices. According to the definition in this article, computer-readable media does not include transitory media, such as modulated data signals and carrier waves.
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包 含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。It should also be noted that the terms "include", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, product or equipment including a series of elements not only includes those elements, but also includes Other elements that are not explicitly listed, or include elements inherent to this process, method, commodity, or equipment. If there are no more restrictions, the element defined by the sentence "including a..." does not exclude the existence of other identical elements in the process, method, commodity, or equipment that includes the element.
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art should understand that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。This application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments. In these distributed computing environments, remote processing devices connected through a communication network perform tasks. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。The various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, as for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment.
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。The above descriptions are only examples of this application and are not used to limit this application. For those skilled in the art, this application can have various modifications and changes. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this application shall be included in the scope of the claims of this application.

Claims (13)

  1. 一种路径规划方法,包括:A path planning method including:
    确定待分配订单对应的相关位置;Determine the relevant position corresponding to the order to be allocated;
    按照预设规则确定配送员集合;Determine the collection of delivery personnel according to preset rules;
    针对所述配送员集合中的每个配送员,获取该配送员的位置以及该配送员的待配送订单对应的相关位置;For each dispatcher in the dispatcher set, obtain the position of the dispatcher and the relevant position corresponding to the order to be dispatched by the dispatcher;
    针对所述配送员集合中的每个配送员,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度;For each delivery person in the delivery person set, determine the delivery person and the delivery person according to the relevant position corresponding to the order to be allocated, the position of the delivery person, and the relevant position corresponding to the order to be delivered by the delivery person. The matching degree of the allocated order;
    根据所述配送员集合中各所述配送员与所述待分配订单的匹配度,从所述配送员集合中筛选出符合预设条件的配送员;According to the degree of matching between each of the dispatchers in the set of dispatchers and the order to be distributed, filter out the dispatchers meeting the preset conditions from the set of dispatchers;
    根据预设的路径规划算法,对所述待分配订单和所述筛选出的配送员进行路径规划。According to a preset path planning algorithm, path planning is performed on the orders to be distributed and the selected delivery personnel.
  2. 如权利要求1所述的方法,其特征在于,The method of claim 1, wherein:
    所述相关位置包括取货位置和送货位置中的至少一种;The relevant location includes at least one of a pickup location and a delivery location;
    所述确定该配送员与所述待分配订单的匹配度,包括:The determining the degree of matching between the dispatcher and the order to be allocated includes:
    确定该配送员与所述待分配订单的取货位置的第一匹配度;Determining the first degree of matching between the delivery person and the pickup location of the order to be allocated;
    确定该配送员与所述待分配订单的送货位置的第二匹配度;Determining the second degree of matching between the delivery person and the delivery location of the order to be allocated;
    根据所述第一匹配度和所述第二匹配度,确定该配送员与所述待分配订单的匹配度。According to the first matching degree and the second matching degree, the matching degree between the dispatcher and the order to be allocated is determined.
  3. 如权利要求1所述的方法,其特征在于,确定该配送员与所述待分配订单的匹配度,包括:8. The method of claim 1, wherein determining the degree of matching between the delivery person and the order to be allocated comprises:
    根据该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员的邻域范围;Determine the neighborhood range of the delivery person according to the location of the delivery person and the relevant position corresponding to the delivery order of the delivery person;
    根据该配送员的邻域范围以及所述待分配订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。According to the neighborhood range of the dispatcher and the relevant position corresponding to the order to be allocated, the degree of matching between the dispatcher and the order to be allocated is determined.
  4. 如权利要求3所述的方法,其特征在于,根据该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员的邻域范围,包括:8. The method of claim 3, wherein determining the neighborhood range of the delivery person according to the location of the delivery person and the relative position corresponding to the delivery order of the delivery person includes:
    以该配送员的位置为区域中心,确定指定大小的覆盖区域;Use the location of the delivery person as the regional center to determine the coverage area of the specified size;
    在该配送员的所有待配送订单对应的相关位置中,获取落入所述覆盖区域内、但未处理过的相关位置;Among the relevant positions corresponding to all pending orders of the dispatcher, obtain the relevant positions that fall within the coverage area but have not been processed;
    将获取的相关位置的平均坐标确定为新的区域中心,Determine the obtained average coordinates of the relevant position as the new area center,
    根据确定的新的区域中心继续确定指定大小的覆盖区域,直至该配送员的所有待配送订单的相关位置均被处理了,并将确定出的全部覆盖区域确定为所述配送员的邻域范围。Continue to determine the coverage area of the specified size according to the determined new regional center, until all the relevant positions of the delivery personnel's pending orders have been processed, and determine all the determined coverage areas as the neighborhood area of the delivery personnel .
  5. 如权利要求3所述的方法,其特征在于,根据该配送员的邻域范围以及所述待分配订单对应的相关位置,确定该配送员与所述待分配订单的匹配度,包括:The method of claim 3, wherein determining the degree of matching between the dispatcher and the order to be allocated according to the neighborhood range of the dispatcher and the relative position corresponding to the order to be allocated comprises:
    判断所述待分配订单对应的相关位置是否在该配送员的邻域范围内;Determine whether the relevant position corresponding to the order to be allocated is within the neighborhood of the dispatcher;
    若是,则确定该配送员与所述待分配订单的匹配度为预设的最大匹配度;If yes, it is determined that the matching degree between the dispatcher and the order to be distributed is the preset maximum matching degree;
    否则,根据所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度。Otherwise, the degree of matching between the dispatcher and the order to be dispatched is determined according to the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be dispatched by the dispatcher.
  6. 如权利要求5所述的方法,其特征在于,根据所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度,包括:The method of claim 5, wherein the degree of matching between the dispatcher and the dispatch order is determined based on the relevant position corresponding to the dispatch order and the dispatch dispatcher's dispatch order. ,include:
    确定所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置之间的最小距离,根据所述最小距离确定该配送员与所述待分配订单的匹配度第一项,其中,所述最小距离与所述匹配度第一项负相关。Determine the minimum distance between the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be dispatched by the dispatcher, and determine the matching degree between the dispatcher and the order to be dispatched according to the minimum distance. , Wherein the minimum distance is negatively related to the first item of the matching degree.
  7. 如权利要求5或6所述的方法,其特征在于,根据所述待分配订单对应的相关位置与所述配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度,包括:The method according to claim 5 or 6, characterized in that, according to the relevant position corresponding to the order to be allocated and the relevant position corresponding to the order to be dispatched by the dispatcher, it is determined that the dispatcher and the order to be dispatched Matching degree, including:
    确定从该配送员的位置到所述待分配订单对应的相关位置的第一方向,以及从该配送员的位置到所述配送员的待配送订单对应的相关位置的第二方向,根据所述第一方向与所述第二方向之间的夹角确定该配送员与所述待分配订单的匹配度,其中,所述夹角与匹配度负相关。Determine the first direction from the position of the dispatcher to the relevant position corresponding to the order to be distributed, and the second direction from the position of the dispatcher to the relevant position corresponding to the order to be dispatched by the dispatcher, according to the The included angle between the first direction and the second direction determines the degree of matching between the dispatcher and the order to be distributed, wherein the included angle is negatively related to the degree of matching.
  8. 如权利要求6所述的方法,其特征在于,根据所述最小距离确定该配送员与所述待分配订单的匹配度第一项,具体包括:7. The method of claim 6, wherein determining the first item of the matching degree between the delivery person and the order to be allocated according to the minimum distance specifically includes:
    若所述最小距离小于预设的距离阈值,则确定该配送员与所述待分配订单的匹配度为所述最大匹配度。If the minimum distance is less than the preset distance threshold, it is determined that the degree of matching between the dispatcher and the order to be allocated is the maximum degree of matching.
  9. 如权利要求1所述的方法,其特征在于,所述符合预设条件的配送员,具体包括以下任意一个或多个:The method according to claim 1, wherein the delivery person meeting the preset conditions specifically includes any one or more of the following:
    所述配送员与所述待分配订单的匹配度高于预设阈值;The degree of matching between the delivery person and the order to be allocated is higher than a preset threshold;
    按照所述配送员集合中各配送员与所述待分配订单的匹配度从高到低的顺序,所述配送员与所述待分配订单的匹配度在指定范围内;According to the order of the matching degree between each distributor in the set of distributors and the order to be allocated from high to low, the degree of matching between the distributor and the order to be allocated is within a specified range;
    所述配送员当前的待配送订单的个数少于预设数量。The current number of orders to be delivered by the distributor is less than the preset number.
  10. 如权利要求1所述的方法,其特征在于,所述预设规则包括以下任意一个或多个:The method according to claim 1, wherein the preset rule includes any one or more of the following:
    将当前位于所述待分配订单的所属区域内的配送员,确定为所述配送员集合的成员;Determining the dispatchers currently located in the area where the orders to be allocated belong to be members of the dispatcher set;
    将负责所述待分配订单的所属区域的配送员,确定为所述配送员集合的成员;Determine the dispatcher responsible for the area to which the order to be allocated belongs to be a member of the dispatcher set;
    将当前有意愿继续接单的配送员,确定为所述配送员集合的成员。The current delivery personnel who are willing to continue to take orders are determined as members of the delivery personnel set.
  11. 一种路径规划装置,包括:A path planning device includes:
    第一确定模块,用于确定待分配订单对应的相关位置;The first determining module is used to determine the relevant position corresponding to the order to be allocated;
    获取模块,用于按照预设规则确定配送员集合,并针对所述配送员集合中的每个配送员,获取该配送员的位置以及该配送员的待配送订单对应的相关位置;The obtaining module is used to determine the set of dispatchers according to preset rules, and for each dispatcher in the set of dispatchers, obtain the position of the dispatcher and the relevant position corresponding to the order to be dispatched by the dispatcher;
    第二确定模块,用于针对所述配送员集合中的每个配送员,根据所述待分配订单对应的相关位置、该配送员的位置以及该配送员的待配送订单对应的相关位置,确定该配送员与所述待分配订单的匹配度;The second determining module is used to determine, for each delivery person in the delivery person set, according to the relevant position corresponding to the order to be allocated, the position of the delivery person, and the relevant position corresponding to the order to be delivered of the delivery person The degree of matching between the delivery person and the order to be allocated;
    筛选模块,用于根据所述配送员集合中各所述配送员与所述待分配订单的匹配度,从所述配送员集合中筛选出符合预设条件的配送员;The screening module is configured to screen out the dispatchers who meet the preset conditions from the set of dispatchers according to the degree of matching between each of the dispatchers in the set of dispatchers and the order to be distributed;
    路径规划模块,用于根据预设的路径规划算法,对所述待分配订单和所述筛选出的配送员进行路径规划。The path planning module is used to plan the path of the order to be distributed and the selected delivery personnel according to a preset path planning algorithm.
  12. 一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-9任一所述的方法。A computer-readable storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1-9 is realized.
  13. 一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1-9任一所述的方法。An electronic device, comprising a memory, a processor, and a computer program stored on the memory and running on the processor, wherein the processor implements any one of claims 1-9 when the program is executed Methods.
PCT/CN2019/124296 2019-03-29 2019-12-10 Method and device for route planning WO2020199642A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910251894.4 2019-03-29
CN201910251894.4A CN111754151A (en) 2019-03-29 2019-03-29 Path planning method and device

Publications (1)

Publication Number Publication Date
WO2020199642A1 true WO2020199642A1 (en) 2020-10-08

Family

ID=72664505

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/124296 WO2020199642A1 (en) 2019-03-29 2019-12-10 Method and device for route planning

Country Status (2)

Country Link
CN (1) CN111754151A (en)
WO (1) WO2020199642A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116341878B (en) * 2023-05-23 2023-08-18 苏州万店掌网络科技有限公司 Task allocation method, device, equipment and readable storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107220789A (en) * 2017-05-15 2017-09-29 浙江仟和网络科技有限公司 A kind of logistics distribution dispatching method and system
CN107845012A (en) * 2017-09-07 2018-03-27 北京小度信息科技有限公司 Order processing method and apparatus
CN107886245A (en) * 2017-11-10 2018-04-06 北京小度信息科技有限公司 Order method for pushing and device
CN107909261A (en) * 2017-11-10 2018-04-13 北京小度信息科技有限公司 Order method for pushing and device
US20180247263A1 (en) * 2016-03-31 2018-08-30 Beijing Xiaodu Information Technology Co., Ltd. Method and apparatus for adjusting merchant delivery range

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111950959A (en) * 2017-06-27 2020-11-17 北京星选科技有限公司 Order scheduling method and device
CN108074031B (en) * 2017-06-29 2021-02-02 北京小度信息科技有限公司 Order group distribution method and device
CN109389237B (en) * 2017-08-08 2022-05-24 阿里巴巴集团控股有限公司 Path planning method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180247263A1 (en) * 2016-03-31 2018-08-30 Beijing Xiaodu Information Technology Co., Ltd. Method and apparatus for adjusting merchant delivery range
CN107220789A (en) * 2017-05-15 2017-09-29 浙江仟和网络科技有限公司 A kind of logistics distribution dispatching method and system
CN107845012A (en) * 2017-09-07 2018-03-27 北京小度信息科技有限公司 Order processing method and apparatus
CN107886245A (en) * 2017-11-10 2018-04-06 北京小度信息科技有限公司 Order method for pushing and device
CN107909261A (en) * 2017-11-10 2018-04-13 北京小度信息科技有限公司 Order method for pushing and device

Also Published As

Publication number Publication date
CN111754151A (en) 2020-10-09

Similar Documents

Publication Publication Date Title
CN110414731B (en) Order distribution method and device, computer readable storage medium and electronic equipment
WO2018113787A1 (en) Region division method and device, and storage medium
JP6673906B2 (en) Method and server for transmitting information to a user terminal
CN110619412B (en) Logistics distribution site planning method and server
TWI718379B (en) Evaluation method, device and equipment for users using shared items
CN110525855B (en) Goods warehousing method and device
US10586273B1 (en) Managing couriers for fast deliveries
JP2020523650A (en) Method and apparatus for determining a geofence index grid
CN110633989B (en) Determination method and device for risk behavior generation model
CN113033820B (en) Federal learning method, device and equipment
CN107040886A (en) The method and device that a kind of information is determined
WO2021143370A1 (en) Method and device for processing resource data
CN108287856A (en) Service range determines method, apparatus and electronic equipment
WO2020199642A1 (en) Method and device for route planning
CN111475746B (en) Point-of-interest mining method, device, computer equipment and storage medium
CN111061276A (en) Mobile robot repositioning method based on dynamic area division
WO2021175319A1 (en) Entrance and exit marking and route planning
CN109598925B (en) Taxi gathering alarm method, terminal equipment and storage medium
CN107357657A (en) A kind of method and apparatus for being used to provide the sub- APP channels of target in application
Lange et al. On a generic uncertainty model for position information
US11537622B2 (en) K-nearest neighbour spatial queries on a spatial database
US11113777B1 (en) Techniques for detecting and managing congestion within a workspace
CN111027592B (en) Fine-grained object flow analysis method and device
US20220147887A1 (en) Efficient routing
CN112686924B (en) Intelligent forklift and method for positioning tray

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19923281

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19923281

Country of ref document: EP

Kind code of ref document: A1