WO2021182743A1 - 배달 과정을 관리하기 위한 장치, 방법 및 명령을 기록한 기록 매체 - Google Patents
배달 과정을 관리하기 위한 장치, 방법 및 명령을 기록한 기록 매체 Download PDFInfo
- Publication number
- WO2021182743A1 WO2021182743A1 PCT/KR2021/000712 KR2021000712W WO2021182743A1 WO 2021182743 A1 WO2021182743 A1 WO 2021182743A1 KR 2021000712 W KR2021000712 W KR 2021000712W WO 2021182743 A1 WO2021182743 A1 WO 2021182743A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- delivery
- order
- person
- man
- goods
- Prior art date
Links
- 238000012384 transportation and delivery Methods 0.000 title claims abstract description 1287
- 238000000034 method Methods 0.000 title claims abstract description 138
- 230000015654 memory Effects 0.000 claims abstract description 30
- 229940124447 delivery agent Drugs 0.000 claims description 59
- 238000004891 communication Methods 0.000 claims description 22
- 235000013334 alcoholic beverage Nutrition 0.000 claims description 7
- 238000007726 management method Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 20
- 230000002860 competitive effect Effects 0.000 description 15
- 230000014509 gene expression Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000011176 pooling Methods 0.000 description 6
- 238000010411 cooking Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
Definitions
- the present disclosure relates to techniques for managing the delivery process.
- certain items eg food
- the delivery person may receive the delivery target and deliver it to the customer.
- resources required to perform delivery such as a delivery person, are limited, it is required to allocate a delivery person most suitable for the delivery order to be processed.
- the present disclosure provides techniques for managing the delivery process.
- An apparatus for managing a delivery process includes one or more processors; and one or more memories stored thereon that, when executed by the one or more processors, cause the one or more processors to perform operations, wherein the one or more processors are configured to: a first delivery path for selecting an order, and for performing the first delivery order and one or more second delivery orders held by the first delivery agent by a first delivery person among one or more candidate delivery agents for the first delivery order to determine, among the delivery costs consumed to perform delivery according to the first delivery path, determine a first increase amount of the delivery cost by the first delivery order, and based on the first increase amount, the second 1 may be determined as a delivery man corresponding to the first delivery order, delivery information may be delivered to the first delivery order to the terminal of the first delivery man.
- the one or more processors calculate, based on the first increment, a probability used to determine the first delivery agent as the delivery agent corresponding to the first delivery order, wherein the probability is Having a negative correlation with the first increase amount - , according to the probability, the first delivery man may be determined as the delivery man corresponding to the first delivery order.
- the one or more processors a second delivery agent of the one or more candidate delivery agents, a second delivery for performing the first delivery order and one or more third delivery orders held by the second delivery agent determining a route, and determining a second increase amount of the delivery cost by the first delivery order among delivery costs consumed to perform delivery according to the second delivery route, and the first increase amount and the second increase amount Determining the magnitude of the, according to the determination that the first increase amount is smaller than the second increase amount, it is possible to determine the first delivery man as a delivery man corresponding to the first delivery order.
- the one or more processors are configured to: determine a primary route based on a goods delivery destination and an article delivery destination of one of the first delivery order and the one or more second delivery orders; Based on the path determination operation a plurality of times to determine a K-order route, wherein K is the total number of the first delivery order and the one or more second delivery orders-, the delivery cost is the smallest among the K-order routes A route is determined as the first delivery route, and the route determination operation includes: the first delivery order and the one or more second delivery orders.
- N is an integer less than K and greater than or equal to 1; and an operation of determining one or more (N+1)th-order routes having a small delivery cost among the plurality of routes.
- the delivery cost is, the total time taken to fulfill the delivery order, the time it takes to deliver the goods to the goods delivery destination after receiving the goods from the goods receiving place, and the delivery target time of the goods is exceeded. It may be calculated based on at least one selected from the time period and the time that passes the target time of delivery of the goods.
- the one or more processors determine the one or more candidate delivery agents for the first delivery order, and the preset condition includes: a payment method of a delivery order, a delivery order It may be a condition set based on at least one selected from whether alcoholic beverages are included in the delivery target product, the location of the delivery location, the location of the delivery location, the location of the delivery person, and the transportation means of the delivery person.
- the one or more processors if the first delivery person determined to correspond to the first delivery order is a delivery agent that has selected the delivery order assignment by the first method, for performing the first delivery order
- the first information may be delivered to the terminal of the first delivery man.
- the one or more processors if the first delivery person determined to correspond to the first delivery order is a delivery agent that has selected the delivery order allocation by the second method, select the first delivery order and assign If the first delivery order is not assigned within a preset time interval after the delivery of the second information, the first delivery person and the second method are selected.
- the second information may be additionally transmitted to each of the terminals of the above third delivery man.
- the one or more processors are configured to: if the first delivery order is not assigned within a preset time interval after further delivery of the second information, the first delivery agent, the one or more third delivery agents, and the second delivery agent
- the second information may be additionally transmitted to each of the terminals of two or more fourth deliverymen who have selected the method.
- the one or more processors, the one or more delivery orders may be assigned to a delivery man by sequentially selecting from a delivery order with a large delivery cost.
- it may further include a communication circuit for communicating with the terminal of the first delivery man and the terminal of the user who created the first delivery order.
- a method for managing a delivery process may be proposed.
- a method according to an aspect of the present disclosure is a method performed in an apparatus comprising one or more processors and one or more memories in which instructions for execution by the one or more processors are stored, wherein the one or more processors include: selecting a first delivery order from among one or more delivery orders stored in ; Determining a first delivery path for the first delivery person, the first delivery order and one or more second delivery orders held by the first delivery person among one or more candidate delivery agents for the first delivery order; determining a first increase amount of the delivery cost by the first delivery order among delivery costs consumed for performing delivery according to the first delivery route; Based on the first increase amount, determining the first delivery man as a delivery man corresponding to the first delivery order; And it may include the step of transmitting information about the first delivery order to the terminal of the first delivery man.
- the step of determining the first deliveryman as a deliveryman corresponding to the first delivery order, based on the first increase amount, determining the first deliveryman as a deliveryman corresponding to the first delivery order calculating a probability used to And it may include the step of determining the first delivery man according to the probability as a delivery man corresponding to the first delivery order.
- the second delivery person of the one or more candidate delivery agents determining a second delivery path for performing the first delivery order and one or more third delivery orders held by the second delivery person; And, among the delivery costs consumed to perform delivery according to the second delivery path, further comprising the step of determining a second increase amount of the delivery cost by the first delivery order, the first delivery person to the first Determining the delivery man corresponding to the delivery order, determining the magnitude of the first increase amount and the second increase amount; And according to the determination that the first increase amount is smaller than the second increase amount, it may include the step of determining the first delivery man as a delivery man corresponding to the first delivery order.
- the determining of the first delivery route comprises: determining a primary route based on a goods recipient and an article delivery destination of one of the first delivery order and the one or more second delivery orders. ; based on the primary path, performing a path determination operation a plurality of times to determine a K-order path, wherein K is the total number of the first delivery order and the one or more second delivery orders; and determining, as the first delivery route, a route having the smallest delivery cost among the K-order routes, wherein the route determination operation is performed on an N-order route among the first delivery order and the one or more second delivery orders.
- N is an integer less than K and greater than or equal to 1; and an operation of determining one or more (N+1)th-order routes having a small delivery cost among the plurality of routes.
- the delivery cost is, the total time taken to fulfill the delivery order, the time it takes to deliver the goods to the goods delivery destination after receiving the goods from the goods receiving place, and the delivery target time of the goods is exceeded. It may be calculated based on at least one selected from the time period and the time that passes the target time of delivery of the goods.
- the preset condition is, the payment means of the delivery order, the delivery order It may be a condition set based on at least one selected from whether alcoholic beverages are included in the delivery target product, the location of the delivery location, the location of the delivery location, the location of the delivery person, and the transportation means of the delivery person.
- the step of transmitting the information about the first delivery order to the terminal of the first delivery man, the first delivery person determined to correspond to the first delivery order, delivery order assignment by the first method may include the step of transmitting the first information for performing the first delivery order to the terminal of the first delivery man.
- the step of transmitting information about the first delivery order to the terminal of the first delivery man, the first delivery person determined to correspond to the first delivery order, delivery order assignment by the second method In the case of the selected delivery man, transmitting second information for selecting and receiving the first delivery order to the terminal of the first delivery man; And if the first delivery order is not assigned within a preset time interval after the delivery of the second information, the second information is added to each of the terminals of the first delivery man and one or more third delivery men who have selected the second method It may include the step of delivering.
- a non-transitory computer-readable recording medium recording instructions for managing a delivery process may be proposed.
- the instructions recorded on the recording medium according to one aspect of the present disclosure are instructions to be executed on a computer, and when executed by one or more processors, the one or more processors cause the first delivery order among one or more delivery orders stored in one or more memories.
- a first delivery path for performing the first delivery order and one or more second delivery orders possessed by the first delivery person, and the first delivery person among one or more candidate delivery agents for the first delivery order Determine, among the delivery costs consumed to perform delivery according to the first delivery path, determine a first increase amount of the delivery cost by the first delivery order, based on the first increase amount, the first It is possible to determine the delivery man as a delivery man corresponding to the first delivery order, and to deliver information about the first delivery order to the terminal of the first delivery man.
- FIG. 1 is a diagram illustrating a process in which a delivery order is created and performed according to an embodiment of the present disclosure.
- Figure 2 is a diagram illustrating a process of determining a delivery person corresponding to the device delivery order, according to an embodiment of the present disclosure.
- FIG. 3 is a diagram illustrating a block diagram of an apparatus according to an embodiment of the present disclosure.
- FIG. 4 is a diagram illustrating a process of determining a delivery cost for one delivery order, according to an embodiment of the present disclosure.
- FIG. 5 is a diagram illustrating a process of determining an optimal delivery route, according to an embodiment of the present disclosure.
- Figure 6 is a diagram for explaining a process of probabilistically determining an optimal delivery person for a delivery order, according to an embodiment of the present disclosure.
- FIG. 7 is a diagram illustrating a process in which a range in which an allocation target delivery order is exposed in a delivery order list is expanded in a competitive allocation method according to an embodiment of the present disclosure.
- FIG. 8 is a diagram illustrating a process of notifying an article preparation request and delivery completion expected time, according to an embodiment of the present disclosure.
- FIG. 9 is a diagram illustrating an embodiment of a delivery process management method, which may be performed by an apparatus according to the present disclosure.
- A, B, and C As used herein, “A, B, and C,” “A, B, or C,” “A, B, and/or C,” or “at least one of A, B, and C,” “A, B , or at least one of C,” “at least one of A, B, and/or C,” “at least one selected from A, B, and C,” “at least one selected from A, B, or C,” “A The expression “at least one selected from , B, and/or C” may mean each listed item or all possible combinations of the listed items.
- At least one selected from A and B means (1) at least one of A, (2) at least one of A, (3) at least one of B, (4) B, (5) at least one of A and B (6) at least one of A and B, (7) at least one of B and A, and (8) both A and B.
- the expression "based on” is used to describe one or more factors affecting the act or action of a decision, judgment, or action described in a phrase or sentence in which the expression is included, and the expression is It does not exclude additional factors influencing the actions or actions of decisions, judgments or actions.
- a component eg, a first component
- another component eg, a second component
- the expression “configured to” means “configured to”, “having the ability to”, “modified to”, “made to”, “to do”, depending on the context. It can have the meaning of “can be”.
- the expression is not limited to the meaning of "specially designed in terms of hardware", for example, a processor configured to perform a specific operation means a generic-purpose processor capable of performing the specific operation by executing software. can mean
- the device 100 may manage a process in which an article is delivered according to the delivery process management technology of the present disclosure.
- the device 100 may be an electronic device (eg, a server, a computer, etc.) of a service provider (eg, a delivery management service provider) that manages a delivery process according to the technology of the present disclosure.
- the device 100 may determine an optimal delivery person to perform delivery according to each delivery order, and assign each delivery order to the optimal delivery agent so that each delivery is performed.
- the user 110 may create a delivery order 114 using his/her terminal 112 (eg, a smartphone).
- the user 110 may create a delivery order 114 by using an application program installed in the terminal 112 .
- the user's terminal 112 may transmit the generated delivery order 114 to the device 100 .
- a delivery order may be a delivery request for a specific item.
- the delivery order includes information about the item to be delivered, information about the store 130 that provides the item, information about the user 110, information about payment of goods and delivery order fee, It may include information on the place of receipt and delivery of the goods and/or other information related to the performance of the delivery of the goods.
- the user 110 may be a general customer who requests delivery of a specific item (eg, food) by creating a delivery order and receives the product.
- the device 100 may determine the delivery person 120 corresponding to the delivery order 114 .
- the delivery man 120 may be an optimal delivery person to fulfill the delivery order 114 .
- the process of determining the optimal delivery person will be described later.
- the device 100 may assign a delivery order 114 to the delivery person 120 .
- the device 100 may transmit information about the delivery order 114 to the terminal 122 of the delivery man 120 .
- the delivery person may be a person who performs delivery of goods under the management of the device 100 .
- the delivery man 120 may check the information on the delivery order 114 assigned to him through his terminal 122 and perform the delivery order 114 .
- the delivery man 120 may move to a product receiving location of the target of the delivery order 114 to receive (pick-up) the product.
- the item receiving destination may be a store 130 that provides the item.
- a store may be an offline store (eg, a restaurant) that provides a delivery target product.
- the device 100 may communicate with the store 130 through the store terminal 132 .
- the item pickup location may be a separate location designated by the device 100 , the user 110 , or the store 130 side.
- the delivery man 120 may deliver the goods to the goods delivery site after receiving the goods.
- the goods delivery destination may be a current location of the user's terminal 112 , a location of the user terminal 112 when the user 110 creates a delivery order, a location designated by the user 110 , and the like.
- the fact that delivery of the goods has been completed may be communicated to the device 100 via the delivery person's terminal 122 and/or the user's terminal 112 .
- Figure 2 is a diagram illustrating a process for determining an optimal delivery person corresponding to the delivery order, the device 100, according to an embodiment of the present disclosure.
- Device 100 may determine a delivery person corresponding to each delivery order among all delivery men.
- one or more users may each create one or more delivery orders ( 210 ).
- the generated delivery orders may be transferred from the terminal of each user to the device 100 .
- the device 100 may store the delivered delivery orders in a delivery order pool ( 220 ).
- the delivery order pool may be a set of delivery orders managed by the device 100 .
- delivery orders D1, D2, D3, ..., DN may be stored in a delivery order pool.
- the device 100 may pull delivery orders from the delivery order pool according to a preset period ( 230 ).
- the delivery orders that are pooled may be delivery orders that have no delivery person assigned to them.
- Device 100 may generate a matching pool (matching pool) for collecting the pooled delivery orders to perform the delivery man assignment.
- the device 100 may pull delivery orders in minute increments. Since pooling is performed in units of 1 minute, the pooled delivery orders may be delivery orders created within 1 minute of the pooling time, or delivery orders that failed to be assigned a delivery person in the previous matching pool. For example, the device 100 may pool the delivery orders D1, D2, and D3 from the delivery order pool to create a matching pool.
- the device 100 may select one delivery order from the matching pool, and sequentially match the optimal delivery person (240). Specifically, the device 100 sorts the delivery orders in the matching pool according to a preset criterion and selects them one by one, first determines the optimal delivery person for the selected delivery order, and then selects the optimal delivery agent for the next selected delivery order It can be decided sequentially. In an embodiment, the device 100 may sequentially select a delivery order with a large delivery cost from among delivery orders of the matching pool. When the delivery personnel are allocated in the order of the largest delivery cost, the delivery person who can most efficiently perform the delivery order having the large delivery cost may be allocated preferentially.
- the device 100 may select a delivery order in the order of D2, D1, and D3 from the matching pool. The device 100 may first determine the optimal delivery man corresponding to D2, and then determine the optimal delivery man corresponding to the order of D1, D3. Alternatively, in another embodiment, the device 100 may randomly select a delivery order from the matching pool to match the optimal delivery person.
- the delivery cost may mean an amount of resources consumed to perform a corresponding delivery order.
- the delivery cost is the total time it takes for the delivery person to fulfill the delivery order, the time it takes for the goods to be delivered from the destination to the destination, the time beyond the target point of receipt of the goods. (i.e., the time indicating how far past the target point of receipt of the item when the delivery person receives the item) and the time beyond the target point of delivery of the item (i.e., when the delivery person delivers the item, the target point of delivery of the item) It may be determined based on at least one selected from the time indicating how much time elapses).
- the delivery cost is the amount of resources consumed by the delivery person to perform a delivery order, and may be calculated for a specific delivery person. A specific method of calculating the delivery cost will be described later.
- the delivery cost is only information determined by the property of the delivery order itself regardless of the delivery person. This can be calculated.
- the property of the delivery order itself may refer to factors affecting the amount of resources to be consumed when the delivery order is performed, regardless of which delivery person is assigned.
- information determined by the nature of the delivery order itself may include the preparation time of the item being delivered (eg cooking time), the distance between the delivery destination and the delivery destination, and the amount of time the delivery order has been unassigned.
- a delivery order for coffee with a short cooking time may have a smaller delivery cost than a delivery order for Gamjatang with a long cooking time.
- the device 100 may perform a process for determining an optimal delivery person for the first selected delivery order D2 (see 242 in FIG. 2 ) ( 250 ). In order to determine an optimal delivery person, the device 100 may determine one or more candidate delivery agents capable of performing the corresponding delivery order D2. Subsequently, the device 100 may determine an optimal delivery person for performing the corresponding delivery order D2 among one or more candidate delivery agents.
- the device 100 may determine one or more candidate delivery personnel capable of performing the selected delivery order D2, based on a preset condition.
- a candidate delivery person may mean a delivery person who is physically, legally or politically capable of performing the delivery order. In order to become a candidate delivery person for the delivery order among all delivery workers, it may be necessary to satisfy a preset condition. Candidate deliveries may or may not be already fulfilling other delivery orders.
- the device 100 may determine the delivery agents R2 and R7 as candidate delivery agents for the selected delivery order D2.
- the preset conditions are the payment method of the user 110 for the corresponding delivery order, whether alcoholic beverages are included in the delivery target product of the delivery order, the location of the delivery location, the location of the delivery location, the location of the delivery person, and the delivery person.
- means of transportation e.g. bicycle, kickboard, car, motorcycle, foot, etc.
- the number of delivery restrictions per delivery person may be an upper limit of the number of delivery orders that the delivery person can perform during a preset period (eg, the number of delivery limits per month).
- the operating time limit for each delivery person may be an upper limit of the operating time during which the delivery person can operate the transportation means to fulfill the delivery order for a preset period (eg, the upper limit of the total operating time per week).
- whether alcoholic beverages are included in the delivery target article may be an allocable condition related to the age of the delivery person.
- the above-described preset conditions may be set as a policy by a legal restriction or by a service provider.
- the device 100 may determine an optimal delivery person for performing the corresponding delivery order (D2) among one or more candidate delivery agents (R2 and R7 in FIG. 2).
- the device 100 determines a delivery route for performing both the delivery order D2 and the delivery order already assigned and held for each of one or more candidate delivery agents, and in performing delivery through the delivery route, the delivery order D2 It is possible to determine the amount of increase in the delivery cost by
- the device 100 may perform a process of determining a delivery route and an increase in delivery cost in parallel for each candidate delivery person. A specific method for determining the optimal delivery route will be described later.
- the device 100 may determine an optimal delivery person corresponding to the delivery order D2 based on the determined delivery cost increase for each candidate delivery agent.
- delivery man R7 may currently have delivery orders D_c1 and D_c2 that are already assigned.
- the device 100 may determine an optimal delivery path for the delivery man R7 to perform the delivery orders D_c1, D_c2 and D2 by adding the delivery order D2 to be assigned to the delivery person.
- the device 100 may determine the amount of increase in the delivery cost by the delivery order D2 when the delivery person R7 performs delivery through the optimal delivery route.
- the device 100 subtracts the delivery cost of performing the delivery orders D_c1 and D_c2 along the corresponding delivery path from the total delivery cost of performing the delivery orders D_c1, D_c2, and D2 along the corresponding delivery path. You can determine the amount of increase in cost.
- the optimal delivery path is ⁇ [Carrier R7's current location] - [Destination of goods in D_c1] - [Destination of goods in D2] - [Delivery destination of goods in D_c1] - [Delivery destination of goods in D_c2] - [Items in D2 Delivery destination] - [D_c2 goods delivery destination] ⁇
- This delivery route may be a delivery route that starts from the current location of the delivery man R7, passes through the delivery destination of D_c1, the delivery destination of D2, and the like, and reaches the delivery destination of the article D_c2.
- the total delivery cost for performing the delivery orders D_c1, D_c2, and D2 may mean the delivery cost consumed by the delivery person R7 to perform D_c1, D_c2, and D2 along the corresponding optimal delivery path.
- the delivery cost for carrying out delivery orders D_c1 and D_c2 along the delivery route is the delivery cost of delivery person R7 ⁇ [delivery agent R7's current location] - [delivery destination of D_c1] - [delivery destination of goods in D_c1] - [delivery destination of goods in D_c2 ] - It may mean a delivery cost consumed to perform delivery orders D_c1 and D_c2 along the path of [Destination of delivery of goods in D_c2].
- deliveryman R2 may currently have delivery order D_c3 already assigned.
- the device 100 may determine an optimal delivery path for the delivery person R2 to perform the delivery orders D_c3 and D2 by adding the delivery order D2 to be assigned to the delivery person.
- the device 100 may determine an increase in the delivery cost by the delivery order D2 when the delivery person R2 performs delivery through the corresponding delivery path.
- the device 100 subtracts the delivery cost of performing the delivery order D_c3 along the delivery path from the total delivery cost of performing the delivery orders D_c3 and D2 along the corresponding delivery path, thereby increasing the amount of delivery cost by the delivery order D2 can decide
- the device 100 may determine the optimal delivery person corresponding to the delivery order (D2) based on the calculated delivery cost increase for each of the candidate delivery man R2 and R7 (250). In an embodiment, the device 100 may determine a probabilistically optimal delivery person based on each delivery cost increase. The probabilistic optimal delivery person determination process will be described later.
- the device 100 determines the optimal delivery person corresponding to the delivery order D2, it may transmit information on the delivery order D2 to the terminal of the delivery person. In the example of Figure 2, the delivery man R2 is determined as the optimal delivery man.
- the device 100 When the device 100 completes the delivery man assignment process for the delivery order D2, it may be sequentially selected and then perform the delivery man assignment process for the delivery order D1 (see 244 of Figure 2). Delivery man assignment process for the delivery order D1 may proceed in the same manner as the delivery man assignment process for the delivery order D2 (260). Since the delivery man assignment process proceeds sequentially, in the delivery man assignment process for the delivery order D1, the result of the delivery man assignment process for the delivery order D2 that has been previously carried out may be affected. For example, in the case of deliveryman R2, which is one of the candidate deliverymen of the delivery order D1, in addition to the delivery order D_c3, it is assumed that the delivery order D2 is also currently held, and the delivery agent assignment process may proceed. The device 100 may determine an optimal delivery agent R2 based on each delivery cost increase after calculating an optimal delivery route and a delivery cost increase, respectively, for the candidate delivery agents R1 and R2 for the delivery order D1.
- device 100 may include one or more processors 310 and/or one or more memories 320 .
- processors 310 may be referred to as processors 310 .
- the expression processor 310 may mean a set of one or more processors, unless the context clearly indicates otherwise.
- one or more memories 320 may be referred to as a memory 320 .
- the expression memory 320 may mean a set of one or more memories, unless the context clearly indicates otherwise.
- the internal and external components of the device 100 may include a bus, a general purpose input/output (GPIO), a serial peripheral interface (SPI), or a mobile industry processor interface (MIPI), etc. They may be connected to each other through the interface to transmit and receive data and/or signals.
- GPIO general purpose input/output
- SPI serial peripheral interface
- MIPI mobile industry processor interface
- the processor 310 may control at least one component of the device 100 connected to the processor 310 by driving software (eg, an instruction, a program, etc.). In addition, the processor 310 may perform various operations, processing, data generation, processing, etc. related to the present disclosure. In addition, the processor 310 may load data or the like from the memory 320 or store it in the memory 320 . In one embodiment, the processor 310 pools delivery orders from the delivery order pool to create a matching pool, selects a delivery order to be assigned to a delivery person from the matching pool, determines a candidate delivery person for the delivery order, and then each candidate delivery person determines the delivery cost increment according to the delivery route and the delivery route for the information can be transmitted.
- driving software eg, an instruction, a program, etc.
- the processor 310 may perform various operations, processing, data generation, processing, etc. related to the present disclosure.
- the processor 310 may load data or the like from the memory 320 or store it in the memory 320 .
- the processor 310 pools delivery orders from
- the memory 320 may store various data. Data stored in the memory 320 is data acquired, processed, or used by at least one component of the device 100 , and may include software (eg, instructions, programs, etc.). Memory 320 may include volatile and/or non-volatile memory. In the present disclosure, commands or programs are software stored in the memory 320 , and various functions so that an operating system, an application program, and/or an application program for controlling the resources of the device 100 can utilize the resources of the device 100 . may include middleware that provides the . In one embodiment, the memory 320 may store instructions that cause the processor 310 to perform an operation when executed by the processor 310 . In one embodiment, the memory 320 may store one or more delivery orders, information about delivery people, information about users, information about the store, and the like.
- device 100 may further include communication circuitry 330 .
- the communication circuit 330 may perform wireless or wired communication between the device 100 and a server or between the device 100 and another device.
- the communication circuit 330 may include enhanced Mobile Broadband (eMBB), Ultra Reliable Low-Latency Communications (URLLC), Massive Machine Type Communications (MMTC), Long-Term Evolution (LTE), LTE Advance (LTE-A).
- eMBB enhanced Mobile Broadband
- URLLC Ultra Reliable Low-Latency Communications
- MMTC Massive Machine Type Communications
- LTE Long-Term Evolution
- LTE-A LTE Advance
- NR New Radio
- UMTS Universal Mobile Telecommunications System
- GSM Global System for Mobile communications
- CDMA Code Division Multiple Access
- WCDMA Wideband CDMA
- WiBro Wireless Broadband
- WiFi Wireless Fidelity
- Wireless communication according to a method such as Bluetooth, Near Field Communication (NFC), Global Positioning System (GPS), or Global Navigation Satellite System (GNSS) may be performed.
- the communication circuit 330 performs wired communication according to a method such as Universal Serial Bus (USB), High Definition Multimedia Interface (HDMI), Recommended Standard-232 (RS-232), or Plain Old Telephone Service (POTS).
- USB Universal Serial Bus
- HDMI High Definition Multimedia Interface
- RS-232 Recommended Standard-232
- POTS Plain Old Telephone Service
- the communication circuit 330 may perform communication with devices such as the user's terminal 112, the delivery man's terminal 122, the store terminal 132, and the like.
- the processor 310 may obtain information from a separate server or database by controlling the communication circuit 330 . Information obtained from a separate server or database may be stored in the memory 320 .
- the device 100 may be in various forms other than a server.
- device 100 may be a device according to a portable communication device, a computer device, or a combination of these devices.
- the device 100 of the present disclosure is not limited to the above-described devices.
- FIG. 1 Various embodiments of the apparatus 100 according to the present disclosure may be combined with each other. Each embodiment may be combined according to the number of cases, and the combined embodiment also falls within the scope of the present disclosure.
- internal/external components of the device 100 according to the present disclosure may be added, changed, replaced, or deleted according to embodiments.
- internal/external components of the device 100 may be implemented as hardware components.
- the user's terminal 112 and the delivery man's terminal 122 may be various types of electronic devices.
- each of the user's terminal 112 and the delivery man's terminal 122 is a portable communication device (eg, a smartphone), a computer device (eg, a tablet PC, a laptop), a portable multimedia device, a wearable (wearable) ) device or a combination of these devices.
- a program eg, an application program
- the user's terminal 112 and the delivery man's terminal 122 may access a web page that provides a delivery process management technology according to the present disclosure.
- Each of the user's terminal 112 and the delivery man's terminal 122 may include one or more processors, one or more memories and/or communication circuitry.
- the one or more memories may store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations.
- Each processor of the user's terminal 112 and the delivery man's terminal 122 may perform operations corresponding to the operation of the above-described device 100 according to the delivery process management technology according to the present disclosure.
- the device 100 the user's terminal 112 through the above-described program (eg, an application program) installed in the user's terminal 112 to the delivery man's terminal 122, the user's terminal 112 to the delivery man's terminal 122 can communicate with
- the device 100 may provide a web page for providing the delivery process management technology according to the present disclosure.
- the delivery cost according to a predetermined delivery order may mean the amount of resources consumed to perform the delivery order.
- the delivery cost can be calculated as the amount of resources consumed by a particular delivery person to fulfill the delivery order.
- the delivery cost for a given delivery order is the total time it takes one delivery person to fulfill the delivery order, the time it takes to deliver the goods to the delivery destination after receiving the goods from the destination, the amount of the goods. It may be determined based on at least one selected from a time exceeding a target point of receipt and a time passing over a target point of delivery of the goods. In one embodiment, the delivery cost may be calculated according to the following equation.
- M may mean the total of the time for performing the entire process of the delivery order. That is, M may mean a time from when the delivery order is generated by the user 110 to the time when the delivery of the goods is completed when a specific delivery person performs the delivery order. According to an embodiment, M may mean a time expected to be taken to perform the entire process of the above-described delivery order. Estimated time for the entire process is the time allotted for each time of the store, the time to receive the goods by time of the store, the delivery distance, the weather, the number of deliveries per delivery person, the number of deliveries the delivery person has, and the number of deliveries held by the delivery person for a predetermined time (eg 30 minutes). Various factors such as the number of delivery orders in can be determined based on Coefficients for adjusting the weight of the corresponding information may be applied to each piece of information (eg, a distance coefficient for each weather, etc.).
- A may mean a time beyond the delivery target time.
- the delivery target time may be a fixed value determined by the device 100 according to a preset criterion when a delivery order is created.
- A may mean the time when the actual delivery time of the goods exceeds the delivery target point of the delivery order.
- A may mean a time when the expected delivery time of the product has passed the delivery target point of the delivery order.
- B may mean a time beyond the target point of receipt.
- the device 100 or the delivery person may request the store 130 to prepare the delivery target item (eg, cooking of food).
- the reception target time may be a fixed value determined by the device 100 according to a preset criterion when a request for preparing an article for a delivery order is made.
- B may mean the time when the actual receipt time of the product at the delivery location exceeds the target delivery time point of the delivery order.
- B may mean a time when the expected time of receiving the product at the delivery destination exceeds the target point of receipt of the delivery order.
- C may mean the time from receipt of the goods to the completion of delivery of the goods. In one embodiment, when a specific delivery person performs a delivery order, C may mean a time interval between the delivery time of the actual product and the receipt of the actual product. In one embodiment, when a specific delivery person performs a delivery order, C may mean a time interval between the expected delivery time of the article and the expected receipt of the article.
- A, b, and c in Equation 1 may be parameters for adjusting the quality of delivery.
- a, b, and c may be determined and adjusted by a service provider (delivery management service provider) according to business, sales, and policy reasons.
- a may be a parameter that determines to what extent a delivery target time is complied with
- b may be a parameter that determines to what extent a receipt target time is adhered to.
- the delivery cost according to the time exceeding the delivery target time is calculated to be larger
- b is set to be larger, the delivery cost according to the time exceeding the receiving target time can be calculated to be larger.
- c may be a parameter that determines the degree to which the value of the item decreases over time after receiving the item (eg, food). c may be set differently depending on factors such as the store, the item to be delivered, and the weather. For example, in the case of easily perishable food, the value of the item decreases rapidly with the passage of time, so the value of c may be set large.
- the delivery cost may be calculated for a case where a given delivery person fulfills a given delivery order, as the cost when a given delivery person fulfills all of the delivery orders to be processed by the given delivery person. It may be calculated, or it may be calculated as a cost in the case of performing all delivery orders to be processed by all delivery men in the entire delivery management system. As described above, at the time of selecting the delivery order from the matching pool, the delivery cost may be calculated only with information determined by the attribute itself of the delivery order regardless of the delivery person.
- the device 100 may determine, for each of the candidate delivery agents, an optimal delivery path for performing both the delivery order already held by the candidate delivery person and the delivery order to be newly assigned.
- the processor 310 may determine a delivery path for performing a delivery order D1 to which one candidate delivery man R2 is assigned.
- the candidate delivery man R2 may already have delivery orders D_c2 and D_c3.
- the delivery order D1 may have a goods receiving destination p1 and a goods delivery destination d1.
- the delivery order D_c2 may have a goods receiving destination p_c2 and a goods delivery destination d_c2.
- the delivery order D_c3 may have a goods receiving destination p_c3 and a goods delivery destination d_c3.
- the processor 310 may determine a delivery path by selecting one of the delivery orders D_c2 and D_c3 already held and the delivery order D1 to be allocated, for example, D_c3 ( 510 ).
- the delivery route may be referred to as a primary route.
- only one possible delivery route can be derived ( 512 ). Accordingly, only one optimal delivery route among possible delivery routes may be derived ( 514 ).
- the processor 310 may determine one or more K-order paths by repeatedly performing a path determination operation one or more times based on the determined primary path ( 520 , 530 ).
- K may be the total number of delivery orders D_c2 and D_c3 already held and the delivery order D1 to be allocated (ie, 3 in the example of FIG. 5 ).
- the route determination operation selects a delivery order (for example, D_c2) that is not included in the Nth route (for example, the first route) among delivery orders D_c2 and D_c3 that are already in possession and the delivery order D1 to be assigned, and selects the delivery order It may include an operation to create a plurality of routes by adding the goods receiving destination (eg, p_c2) and delivery destination (eg, d_c2) of (eg, D_c2) to the N-th route (eg, the primary route). Also, the route determination operation may include an operation of determining one or more (N+1)-order routes (eg, secondary routes) having a low delivery cost among the generated plurality of routes.
- N may be an integer smaller than the aforementioned K and greater than or equal to 1.
- the processor 310 may select a delivery order D_c2 that is not included in the primary path 514 from among the delivery orders D_c2 and D_c3 already held and the delivery order D1 to be allocated.
- the processor 310 may generate a plurality of routes 522 by adding the goods receiving destination p_c2 and the goods delivery destination d_c2 of the delivery order D_c2 to the corresponding primary path 514 .
- the goods receiving destination p_c2 and the goods delivery destination d_c2 may be added in combination with, between, or before or after the stopovers p_c3 and d_c3 of the primary route 514, depending on the number of possible cases.
- the plurality of paths 522 may be paths generated according to all possible combinations in which the goods receiving destination p_c2 and the goods delivery destination d_c2 may be added to the primary path 514 .
- the processor 310 may select one or more routes in the order of the smallest delivery cost from among the generated plurality of routes 522 , and determine this as the secondary route 524 .
- the processor 310 may select a preset number of routes in the order of the smallest delivery cost among the plurality of routes. In one embodiment, the number of paths selected may be three.
- the processor 310 may determine the second, third, ..., K-order paths in the same manner.
- the processor 310 may select a delivery order D1 that is not included in the secondary path 524 among the delivery orders D_c2 and D_c3 already held and the delivery order D1 to be assigned.
- the processor 310 may generate a plurality of routes by adding the goods destination p1 and the goods delivery destination d1 of the delivery order D1 to the secondary route 524 . Since one or more secondary paths (eg, three secondary paths) have been determined in the previously performed path determination operation of the secondary path, the processor 310 determines the item recipient p1 by the number of cases for each secondary path 524 . and a delivery destination d1 can be added to create multiple routes.
- a plurality of routes 534 are created by adding the goods receiving destination p1 and the goods delivery destination d1 to one of the secondary routes, and the plurality of routes 536 by adding the goods receiving destination p1 and the goods delivery destination d1 to the other one of the secondary routes.
- the processor 310 may select one or more routes having a small delivery cost from among the generated plurality of routes 534 and 536 , and determine it as the tertiary route 538 .
- the processor 310 may determine one or more K-order paths (eg, tertiary paths) by repeatedly performing the path determination operation in this way.
- the processor 310 selects one path with the smallest delivery cost among one or more K-order paths (eg, a tertiary path), and selects the optimal path for the candidate delivery man R2 to perform the corresponding delivery orders D_c2, D_c3 and D1. can be determined by the delivery route of
- Figure 6 is a diagram for explaining a process of probabilistically determining an optimal delivery person for a delivery order, according to an embodiment of the present disclosure.
- the device 100 determines a delivery path for performing an assignment target delivery order for each candidate delivery person, and increases the delivery cost caused by the assignment target delivery order in performing delivery according to the delivery path. may be determined, and an optimal delivery person corresponding to the delivery order may be determined based on the increase in delivery cost. In an embodiment, the device 100 may determine an optimal delivery person corresponding to the delivery order probabilistically, based on the increase in the delivery cost.
- the processor 310 may calculate a probability (P) that each candidate delivery person is determined to be a delivery person corresponding to the delivery order, based on the increase in the delivery cost determined for each candidate delivery man. For example, the delivery cost increase may be calculated for the optimal delivery route determined in FIG. 5 .
- the probability P may be calculated according to the following equation.
- the probability (P) may have a negative correlation with the increase in delivery cost for each candidate delivery man.
- Processor 310 based on the calculated probability (P) for each candidate delivery man, may determine one of the candidate delivery man as an optimal delivery man corresponding to the assignment target delivery order. For example, for each of the delivery men R1, R2, R3, R4, R5, ..., Rm, the probability P of 25%, 30%, 20%, 5%, 5%, 1%, etc. can be determined. have. According to the corresponding probability P, the processor 310 selects one of the delivery men R1, R2, R3, R4, R5, ..., Rm, for example, the delivery person R3 as the optimal delivery person corresponding to the assigned delivery order. can be decided.
- T may be a parameter set to adjust the probability P.
- the probability that the delivery order is assigned to the candidate delivery agent R2 with the smallest increase in delivery cost may increase.
- the candidate R2 with the smallest increase in delivery cost can always be determined as the optimal delivery person for the delivery order (greedy method).
- the processor 310 may determine the magnitude of the increase in the delivery cost of each candidate delivery man, and determine the candidate delivery man R2 with the smallest increase in the delivery cost as the optimal delivery person corresponding to the delivery order.
- the corresponding delivery order may be assigned to one of the candidate delivery workers (R1, R2, R3, R4, R5, ..., Rm) with almost the same probability. That is, the processor 310 may randomly determine any one delivery person among the candidate delivery agents as the optimal delivery person of the corresponding delivery order.
- the device 100 determines the delivery person with the smallest increase in delivery cost as the optimal delivery agent, the delivery cost can be minimized in the processing of individual delivery orders.
- the device 100 probabilistically determines the optimal delivery agent the total delivery cost consumed in the processing of all delivery orders managed by the device 100 may help to optimize. For example, it may be effective to reduce the delivery cost of the overall delivery management system to assign a short-distance delivery order to a delivery person using a slow transportation means rather than a delivery person using a fast transportation means. This is because it is possible to allocate a long-distance delivery order to a delivery person using a fast moving means only by such allocation.
- the probability calculation process may be adjusted so that the probability (P) of delivery personnel does not differ significantly depending on the transportation means.
- the device 100 may transmit information about the delivery order (D1) to the terminal of the delivery person.
- processing after the best delivery person is determined may depend on how the delivery person determined to be the best delivery agent has chosen to be assigned the delivery order.
- Methods for receiving delivery orders may include an automatic allocation method and a competitive allocation method.
- the automatic allocation method may be a method in which a delivery management service provider automatically allocates an appropriate delivery order to a delivery person. For example, if the delivery person R3 determined as the optimal delivery person for the delivery order D1 is a delivery person who selects the automatic allocation method, the processor 310 may directly assign the delivery agent R3 as the optimal delivery agent of the delivery order D1. In other words, in receiving the delivery order D1 from the processor 310 to the delivery man R3, there is no competition of other delivery men. The processor 310 may control the communication circuit 330 to transmit the first information for performing the delivery order D1 assigned to the terminal of the deliveryman R3.
- the first information includes information indicating that the delivery person R3 is assigned to the delivery order D1, information on the goods receipt and delivery destination of the delivery order D1, information on the delivery target goods, information on the store providing the goods, and performing the delivery order D1 It may include information on an optimal route for doing so, payment information for a delivery target product, and the like.
- the delivery man R3 who has received the first information through his/her terminal may perform the delivery order D1 according to the first information.
- the delivery management service provider provides a list of delivery orders to delivery workers, and the delivery person directly selects a delivery order to be performed by the delivery person from the list, so that the allocation for the delivery order may be performed.
- the processor 310 may expose the delivery order D1 to the delivery order list of the delivery person R1. That is, the processor 310 may transmit the second information for selecting the delivery order D1 to be assigned to the terminal of the corresponding delivery man R1.
- information for the delivery order D1 to be included in the delivery order list information on the delivery order D1's goods receipt and delivery destination, information on the delivery target product, information on the store providing the goods, and performing the delivery order D1
- Information on the optimal route for delivery payment information for the item to be delivered, information on when the delivery order D1 is created, information on the number of delivery personnel for which the delivery order D1 is exposed through the delivery order list, delivery order D1 It may include information on the compensation given to the delivery person when performing
- the terminal of the delivery man R1 may include the information on the delivery order D1 in the delivery order list according to the received second information, and also display the delivery order list through the screen. If the delivery man R1 wants to be assigned the delivery order D1, he can select and assign the delivery order D1 from the delivery order list.
- FIG. 7 is a diagram illustrating a process in which a range in which an allocation target delivery order is exposed in a delivery order list is expanded in a competitive allocation method according to an embodiment of the present disclosure.
- the processor 310 transmits the second information to the terminals of other delivery people in addition to the delivery person R1, the delivery order D1 is the delivery order list You can broaden the scope of your exposure.
- the deliverymen to which the second information is additionally transmitted may be deliverymen who have selected the competitive allocation method.
- the processor 310 may deliver the second information on the delivery order D1 only to the terminal of the previously determined optimal delivery man R1. Accordingly, the delivery order D1 may be exposed for a preset time interval 710 only in the delivery order list of the optimal delivery man R1. That is, during this time interval 710, the delivery order D1 may be recommended exclusively to the optimal delivery person R1. The time interval for exposure only to the optimal deliveryman R1 may be, for example, 15 seconds. If the delivery order D1 is selected by the optimal delivery person R1 within the corresponding time interval (710, for example, 0-15 seconds), the delivery order D1 is assigned to the optimal delivery agent R1, and may be performed by the optimal delivery agent R1.
- the processor 310 transmits the second information about the delivery order D1 to one or more delivery agents, including the optimal delivery agent R1, for example, the delivery agent R5. It can be additionally transmitted to the terminal of R4. In one embodiment, the terminal of the delivery man who delivered the second information in the previous time interval may not deliver the second information again in the next time interval. Accordingly, the delivery order D1 may be exposed to other newly added delivery workers R5 and R4 in addition to the optimal delivery person during a preset time interval (720, for example, 15-30 seconds).
- the delivery workers R5 and R4 to which the delivery order D1 is additionally exposed may be delivery workers of a competitive allocation method who ranked next to the optimal delivery person in the process of selecting the optimal delivery agent based on the preceding probability.
- the number of additionally exposed deliverymen may be two.
- the additionally exposed deliverymen R5 and R4 may be deliverymen determined to be suitable for the delivery order D1 in the second and third places respectively following the optimal delivery person R1 in the above-described optimal delivery agent selection process.
- the ranking among deliverymen who have selected the competitive allocation method according to the probability (P) may be determined.
- deliveryman R5 may be determined to be second and deliveryman R4 may be determined to be third. If the delivery order D1 within the time interval 720 is selected by one of the delivery men R1, R5 and R4, the delivery order D1 may be assigned to the delivery person and performed.
- the processor 310 is configured to include one or more delivery personnel R9 and R7, including the delivery agents R1, R5 and R4 that have previously conveyed the second information.
- the second information on the delivery order D1 may be additionally transmitted to the terminal of . Accordingly, the delivery order D1 may be exposed to a total of five delivery men R1, R5, R4, R9, and R7 during the next time interval (730, for example, 30-45 seconds).
- the two deliverymen R9 and R7 added here may be deliverymen who placed 4th and 5th respectively in the process of selecting the optimal delivery person. If the delivery order D1 within the corresponding time interval 730 is selected by one of the delivery men R1, R5, R4, R9 and R7, the delivery order D1 may be assigned to the delivery person and performed.
- the processor 310 is configured to the deliverymen R1, R5, R4, R9 and R7 who have previously delivered the second information. Including, it is possible to additionally deliver the second information about the delivery order D1 to the terminals of one or more deliverymen R13, R15, R6, R10 and R21. Accordingly, the delivery order D1 may be exposed to a total of 10 deliverymen R1, R5, R4, R9, R7, R13, R15, R6, R10, and R21 during the next time interval (740, for example 45-60 seconds). The five additional deliverymen may be deliverymen ranked 6-10 respectively. If delivery order D1 is selected by one of the deliverymen R1, R5, R4, R9, R7, R13, R15, R6, R10 and R21 within the corresponding time interval 740, the delivery order D1 is assigned to that delivery person can be performed.
- the delivery order D1 is included in the next matching pool (second matching pool). and can go through the second delivery man assignment process.
- the processor 310 creates a matching pool by pooling the delivery orders unassigned by the delivery person at every pooling cycle (eg, 1 minute).
- the processor 310 sends a preset time interval to a total of 10 deliverymen, including 10 deliverymen R1, R5, R4, R9, R7, R13, R15, R6, R10, and R21, who were exposed in the previous matching pool. 1 minute) to expose the delivery order (D1).
- 10 deliverymen R1, R5, R4, R9, R7, R13, R15, R6, R10, and R21 who were exposed in the previous matching pool. 1 minute
- 7 delivery people excluding some (eg, 3 people) who were not previously eligible for referral, were unable to place a delivery order, and ranked 1-3 for delivery order (D1) in the calculation of the second matching pool.
- the delivery order (D1) may be exposed to three deliverymen of the competitive allocation method occupied.
- the delivery order (D1) is placed in the next matching pool (three th matching pool) and can go through the third delivery man assignment process. After the third matching process, the delivery order (D1) may be exposed to the candidate deliverymen of all competing allocation schemes.
- the server may collect delivery orders created between 9:00:00 and 9:00:59 and perform the deliveryman matching calculation at 9:01:00. If the calculation process took 5 seconds and the selected best delivery person is a delivery person with a competitive allocation method, the delivery order can be exclusively recommended to the best delivery person for 15 seconds from 9:01:05. If the delivery order is not assigned by the sole recommendation process, the server can make a competitive recommendation to three deliverymen for 15 seconds from 9:01:20 to 15 seconds. If the delivery order is still not assigned, the server can make a competitive recommendation to five deliverymen for 15 seconds starting at 9:01:35. If the delivery order is still not assigned, the server can make a competitive recommendation to 10 deliverymen for 15 seconds starting at 9:01:50.
- the delivery order is included in the next matching pool, and the delivery man matching calculation may be performed again.
- the calculation may be executed at 9:02:05, one minute after the previous calculation of the matching pool was completed at 9:01:05. Until the calculation is completed, for example, if the calculation took 4 seconds, an empty delivery order list may be exposed to delivery workers until 2 minutes and 4 seconds.
- the number of deliveries (eg, 5) to which additional second information was delivered in one time interval (eg, 740) is equal to the number (eg, 5) deliveries to which additional second information was delivered in a previous time interval (eg, 730).
- the number of delivery personnel exposed to the delivery order in each time interval may be set differently according to the intention of the operator.
- a plurality of delivery orders may be arranged and exposed according to the basic sorting order set in the application program of the delivery man terminal.
- the service provider delivery management service company
- Each branch can set the delivery order allocation method to be applied to the delivery workers.
- the Seoul southern branch may determine whether to allow delivery men belonging to the southern Seoul branch to be assigned according to an automatic allocation method.
- each delivery man of the branch using the automatic allocation method may select the allocation method through the delivery man terminal.
- FIG. 8 is a diagram illustrating a process of notifying an article preparation request and delivery completion expected time, according to an embodiment of the present disclosure.
- the delivery person 120 performing the delivery order 114 may directly request the store 130 to prepare the item (eg, cook food). Delivery man 120 may transmit information for requesting the preparation of goods to the terminal 132 of the store 130 through his terminal 122 .
- the device 100 may request the store to prepare the goods at an appropriate time in anticipation of the delivery time when the delivery person 120 will arrive at the destination or the store 130 . For example, if food that takes 10 minutes to cook needs to be delivered, and it is expected that it will take 15 minutes for the delivery man 120 to move from the current location to the item receiving location, the processor 310 is About 5 minutes after allocating the delivery order, a request for cooking of the corresponding food may be transmitted to the terminal 132 of the store 130 .
- the product preparation request time of the processor 310 may be changed according to the delivery progress status (movement status) of the corresponding delivery man 120, information such as traffic conditions.
- the store terminal 132 is provided on the store side to communicate with the device 100, the user's terminal 112 and/or the delivery man's terminal 122 according to the delivery process management technology according to the present disclosure. It may be a device.
- the store terminal 132 may be a device of various types.
- the store terminal 132 is connected to a portable communication device (eg, a smartphone), a computer device (eg, a tablet PC, a laptop, a desktop), a portable multimedia device, a Point Of Sales (POS) device, or a combination of these devices.
- POS Point Of Sales
- It may be a device according to A program (eg, an application program) providing delivery process management technology according to the present disclosure may be installed in the store terminal 132 .
- the store terminal 132 may access a web page providing delivery process management technology according to the present disclosure.
- the store terminal 132 may communicate with the device 100, the user's terminal 112 and/or the delivery person's terminal 122 through the corresponding program or web page.
- the store terminal 132 may include one or more processors, one or more memories and/or communication circuitry.
- the one or more memories may store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations.
- the processor of the store terminal 132 may perform operations corresponding to the operations of the device 100 described above according to the delivery process management technology according to the present disclosure.
- the processor 310 when the delivery man 120 who is performing the delivery order 114 receives the goods at the goods receiving location, the processor 310 sends the terminal 112 of the user 110 to the expected time at which the goods will arrive at the goods delivery destination. information can be transmitted. The processor 310 may determine an expected time when the goods will arrive at the goods delivery destination based on information such as the moving situation of the delivery man 120, the traffic situation, and the like. Through this, the user 110 may know the expected final delivery time of the goods.
- the delivery person assigned to the delivery order may cancel the assignment of the delivery order. This may be performed by a preset delivery order cancellation API (Application Program Interface).
- the de-allocated delivery order may be included in the next matching pool to go through the delivery worker allocation process again.
- unassigned delivery orders may not be counted in the matching pool and may be exposed to candidate deliverymen of a competitive allocation scheme.
- the delivery order may be de-assigned if the store has already been requested to prepare the item.
- the processor 310 may allocate a virtual delivery person for the corresponding delivery order. The processor 310 may determine the time remaining until the preparation time of the item is completed, and may increase the delivery fee according to the remaining time.
- the delivery fee may be a remuneration paid to the delivery person.
- a delivery charge surcharge may not be applied to delivery fees for some stores.
- the time remaining until the preparation of the goods is completed can be obtained by adding the time required for preparing the goods to the time of requesting the preparation of the goods and subtracting the current time again. If the time remaining until the preparation of the goods is less than 9 minutes, the delivery charge may be increased to 1,000 won, and if it is less than 8 minutes, 1,100 won. If the time remaining until the preparation of the goods is less than or equal to the preset time, the service provider of the device 100 may directly determine the processing direction of the corresponding delivery order.
- FIG. 9 is a diagram illustrating an embodiment of a delivery process management method, which may be performed by the device 100 according to the present disclosure.
- the delivery process management method according to the present disclosure may be a computer-implemented method.
- each step of the method or algorithm according to the present disclosure is described in a sequential order in the illustrated flowchart, each step may be performed according to an order that may be arbitrarily combined by the present disclosure, in addition to being performed sequentially.
- the description according to the present flowchart does not exclude making changes or modifications to the method or algorithm, and does not imply that any step is essential or desirable.
- at least some of the steps may be performed in parallel, iteratively or heuristically.
- at least some steps may be omitted or other steps may be added.
- the device 100 may perform a delivery process management method according to various embodiments of the present disclosure, in allocating a delivery order to a delivery person.
- the delivery process management method according to an embodiment of the present disclosure includes the step of selecting a first delivery order among one or more delivery orders (S910), a first delivery order by a first delivery person among candidate delivery agents, and a first delivery order by the first delivery person.
- Determining a first delivery path for performing one or more second delivery orders (S920), among the delivery costs consumed to perform delivery according to the first delivery route, the first delivery cost by the first delivery order 1 step of determining an increase (S930), a step of determining the first delivery man as a delivery person corresponding to the first delivery order based on the first increase amount (S940), and / or the first delivery order to the terminal of the first delivery person It may include a step (S950) of transmitting the information.
- the processor 310 of the device 100 may select a first delivery order from among one or more delivery orders stored in the memory 320 .
- one or more delivery orders may mean delivery orders included in the matching pool.
- the first delivery order may mean a delivery order to be assigned to a delivery person.
- the processor 310 may select delivery orders from the matching pool in the order in which the delivery costs of the delivery orders are greatest.
- step S920 the processor 310, the first delivery person, one of the one or more candidate delivery agents for the first delivery order, for performing the first delivery order and one or more second delivery orders that the first delivery person has A first delivery route may be determined.
- the process of determining the delivery route is the same as described above.
- the processor 310 may determine one or more candidate deliverymen capable of performing the first delivery order based on a preset condition.
- the preset condition is at least selected from the payment means of the delivery order, whether alcoholic beverages are included in the delivery target of the delivery order, the location of the delivery location, the location of the delivery location, the location of the delivery person, and the delivery means of the delivery person. It may be a condition set based on one.
- the processor 310 may determine a first increase amount, which is an increase amount of the delivery cost by the first delivery order, among the delivery costs consumed for the first delivery person to perform delivery according to the first delivery path.
- the processor 310 based on the first increase amount, the first delivery man may be determined as a delivery man corresponding to the first delivery order.
- the processor 310 may transmit information about the first delivery order to the terminal of the first delivery man by controlling the communication circuit 330.
- step S940 includes, based on the first increment, calculating the probability P and/or determining the first delivery person as the delivery person corresponding to the first delivery order according to the probability P can do.
- Probability (P) is a probability used to determine the first delivery man as a delivery man corresponding to the first delivery order, it may have a negative correlation with the first increase amount. This may correspond to an embodiment of determining the optimal delivery person when T in Equation 2 is set to be greater than 0.
- the processor 310 determines a second delivery route for The process of determining the delivery route is the same as described above.
- the processor 310 may determine a second increase amount, which is an increase amount of the delivery cost by the first delivery order, among the delivery costs consumed by the second delivery person to perform delivery according to the second delivery path.
- step S920 includes determining a primary route based on a goods receipt and goods delivery destination of one of the first delivery order and the one or more second delivery orders, based on the primary route, determining the route
- the operation may be repeated one or more times to determine a K-order route, and/or may include determining a route having the smallest delivery cost among the K-order routes as the first delivery route.
- the path determination operation is the same as described above.
- the route determination operation is an operation of adding the goods recipient and the goods delivery destination of the delivery order that are not included in the N-order route among the first delivery order and the one or more second delivery orders to the N-order route to generate a plurality of routes, and/or It may include an operation of determining one or more (N+1)th-order routes having a small delivery cost among the plurality of routes.
- the delivery cost is calculated as the total time it takes for the delivery person to fulfill the delivery order, the time it takes for the goods to be delivered from the pickup location to the delivery location, and the delivery target time is exceeded. It may be calculated based on at least one selected from the time period and the time that passes the target time of delivery of the goods.
- the delivery cost may be calculated by the processor 310 .
- step S950 when the first delivery person determined to correspond to the first delivery order is the delivery person who has selected the delivery order assignment by the first manner, the first information for performing the first delivery order is first It may include the step of delivering to the terminal of the delivery man.
- the first method may be the aforementioned automatic allocation method.
- step S950 when the first delivery person determined to correspond to the first delivery order is the delivery person who has selected the delivery order assignment by the second method, the second information for selecting the first delivery order to be assigned If the first delivery order is not assigned within a preset time interval after the delivery of the first delivery man's terminal, and / or the delivery of the second information, the terminal of one or more third deliverymen selected the first delivery man and the second method, respectively It may include the step of further transmitting the second information to the.
- the second method may be the aforementioned contention allocation method.
- the one or more third deliverymen are deliverymen who have selected a competitive allocation method among the candidate deliverymen of the first delivery order, and may be deliverymen who are additionally exposed to the first delivery order after a preset time interval. As described above, the third deliveryman may be the deliverymen who ranked next to the optimal deliveryman in the process of determining the optimal deliveryman.
- the software may be software for implementing various embodiments of the present disclosure described above.
- Software may be inferred from various embodiments of the present disclosure by programmers in the art.
- software may be machine-readable instructions (eg, code or code segments) or programs.
- the device is a device capable of operating according to a command called from a recording medium, and may be, for example, a computer.
- the device may be the device 100 according to embodiments of the present disclosure.
- the processor of the device may execute the called command to cause components of the device to perform a function corresponding to the command.
- the processor may be one or more processors 310 according to embodiments of the present disclosure.
- the recording medium may refer to any type of recording medium in which data that can be read by a device is stored.
- the recording medium may include, for example, ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like.
- the recording medium may be one or more memories 320 .
- the recording medium may be implemented as a distributed form in a computer system connected through a network.
- the software may be distributed, stored, and executed in a computer system or the like.
- the recording medium may be a non-transitory recording medium.
- a non-transitory recording medium means a medium that exists regardless of whether data is semi-permanently or temporarily stored, and does not include a transitory propagated signal.
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Automatic Disk Changers (AREA)
Abstract
본 개시는 배달 과정을 관리하기 위한 장치를 제안한다. 본 개시에 따른 장치는, 프로세서 및/또는 메모리를 포함할 수 있다. 프로세서는, 하나 이상의 배달 주문 중 제1 배달 주문을 선택하고, 제1 배달 주문을 위한 후보 배달원 중 제1 배달원이, 제1 배달 주문과 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하고, 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하고, 제1 증가량에 기초하여 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정할 수 있다.
Description
본 개시는 배달 과정을 관리하기 위한 기술에 관한 것이다.
고객의 배달 주문에 따라 특정 물품(예: 음식)이 고객에게 배달될 수 있다. 배달원은 배달 대상 물품을 수령하고 이를 고객에게 배달해 줄 수 있다. 그러나 배달원 등 배달을 수행하는 데에 필요한 자원(resource)은 한정적이기 때문에, 처리되어야 할 배달 주문에 가장 적합한 배달원이 할당될 것이 요구된다.
본 개시는 배달 과정을 관리하기 위한 기술을 제공한다.
본 개시의 한 측면으로서, 배달 과정을 관리하기 위한 장치가 제안될 수 있다. 본 개시의 한 측면에 따른 장치는, 하나 이상의 프로세서; 및 상기 하나 이상의 프로세서에 의한 실행 시, 상기 하나 이상의 프로세서가 동작을 수행하도록 하는 명령들이 저장된 하나 이상의 메모리를 포함하고, 상기 하나 이상의 프로세서는, 상기 하나 이상의 메모리에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택하고, 상기 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 제1 배달원이, 상기 제1 배달 주문과 상기 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하고, 상기 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하고, 상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하고, 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 데에 사용되는 확률을 산출하고 - 상기 확률은 상기 제1 증가량과 음의 상관 관계를 가짐 - , 상기 확률에 따라 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 하나 이상의 후보 배달원 중 제2 배달원이, 상기 제1 배달 주문과 상기 제2 배달원이 보유하고 있는 하나 이상의 제3 배달 주문을 수행하기 위한 제2 배달 경로를 결정하고, 상기 제2 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제2 증가량을 결정하고, 상기 제1 증가량과 상기 제2 증가량의 대소를 결정하고, 상기 제1 증가량이 상기 제2 증가량보다 작다는 결정에 따라, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정 할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 한 배달 주문의 물품 수령지와 물품 배달지에 기초하여 1차 경로를 결정하고, 상기 1차 경로에 기초하여, 경로 결정 연산을 복수 회 수행하여 K차 경로를 결정하고 - 상기 K는 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문의 총 개수임 - , 상기 K차 경로 중 배달 비용이 가장 작은 경로를 상기 제1 배달 경로로 결정하고, 상기 경로 결정 연산은: 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 N차 경로에 포함되지 않은 배달 주문의 물품 수령지와 물품 배달지를 상기 N차 경로에 추가하여 복수의 경로를 생성하는 연산 - 상기 N은 상기 K보다 작고 1보다 크거나 같은 정수임 - ; 및 상기 복수의 경로 중 배달 비용이 작은 하나 이상의 (N+1)차 경로를 결정하는 연산을 포함할 수 있다.
일 실시예에 있어서, 상기 배달 비용은, 상기 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간 및 물품의 배달 목표 시점을 도과하는 시간 중에서 선택된 적어도 하나에 기초하여 산출될 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 미리 설정된 조건에 기초하여, 상기 제1 배달 주문을 위한 상기 하나 이상의 후보 배달원을 결정하고, 상기 미리 설정된 조건은, 배달 주문의 결제 수단, 배달 주문의 배달 대상 물품에 주류가 포함되는지 여부, 물품 수령지의 위치, 물품 배달지의 위치, 배달원의 위치 및 배달원의 이동 수단 중에서 선택된 적어도 하나에 기초하여 설정된 조건일 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제1 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 상기 제1 배달 주문을 수행하기 위한 제1 정보를 상기 제1 배달원의 단말로 전달할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제2 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 상기 제1 배달 주문을 선택하여 할당받기 위한 제2 정보를 상기 제1 배달원의 단말로 전달하고, 상기 제2 정보의 전달 이후 미리 설정된 시간 간격 내에 상기 제1 배달 주문이 할당되지 않으면, 상기 제1 배달원 및 상기 제2 방식을 선택한 하나 이상의 제3 배달원의 단말 각각에 상기 제2 정보를 추가로 전달할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 제2 정보의 추가 전달 이후 미리 설정된 시간 간격 내에 상기 제1 배달 주문이 할당되지 않으면, 상기 제1 배달원, 상기 하나 이상의 제3 배달원 및 상기 제2 방식을 선택한 둘 이상의 제4 배달원의 단말 각각에 상기 제2 정보를 추가로 전달할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 프로세서는, 상기 하나 이상의 배달 주문 중 배달 비용이 큰 배달 주문부터 순차적으로 선택하여 배달원을 할당할 수 있다.
일 실시예에 있어서, 상기 제1 배달 주문을 생성한 사용자의 단말 및 상기 제1 배달원의 단말과 통신하는 통신 회로를 더 포함할 수 있다.
본 개시의 한 측면으로서, 배달 과정을 관리하기 위한 방법이 제안될 수 있다. 본 개시의 한 측면에 따른 방법은, 하나 이상의 프로세서 및 상기 하나 이상의 프로세서에 의해 실행되기 위한 명령들이 저장된 하나 이상의 메모리를 포함하는 장치에서 수행되는 방법에 있어서, 상기 하나 이상의 프로세서가, 상기 하나 이상의 메모리에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택하는 단계; 상기 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 제1 배달원이, 상기 제1 배달 주문과 상기 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하는 단계; 상기 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하는 단계; 상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계; 및 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계는, 상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 데에 사용되는 확률을 산출하는 단계 - 상기 확률은 상기 제1 증가량과 음의 상관 관계를 가짐 - ; 및 상기 확률에 따라 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 하나 이상의 후보 배달원 중 제2 배달원이, 상기 제1 배달 주문과 상기 제2 배달원이 보유하고 있는 하나 이상의 제3 배달 주문을 수행하기 위한 제2 배달 경로를 결정하는 단계; 및 상기 제2 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제2 증가량을 결정하는 단계를 더 포함하고, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계는, 상기 제1 증가량과 상기 제2 증가량의 대소를 결정하는 단계; 및 상기 제1 증가량이 상기 제2 증가량보다 작다는 결정에 따라, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 제1 배달 경로를 결정하는 단계는, 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 한 배달 주문의 물품 수령지와 물품 배달지에 기초하여 1차 경로를 결정하는 단계; 상기 1차 경로에 기초하여, 경로 결정 연산을 복수 회 수행하여 K차 경로를 결정하는 단계 - 상기 K는 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문의 총 개수임 - ; 및 상기 K차 경로 중 배달 비용이 가장 작은 경로를 상기 제1 배달 경로로 결정하는 단계를 포함하고, 상기 경로 결정 연산은: 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 N차 경로에 포함되지 않은 배달 주문의 물품 수령지와 물품 배달지를 상기 N차 경로에 추가하여 복수의 경로를 생성하는 연산 - 상기 N은 상기 K보다 작고 1보다 크거나 같은 정수임 - ; 및 상기 복수의 경로 중 배달 비용이 작은 하나 이상의 (N+1)차 경로를 결정하는 연산을 포함할 수 있다.
일 실시예에 있어서, 상기 배달 비용은, 상기 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간 및 물품의 배달 목표 시점을 도과하는 시간 중에서 선택된 적어도 하나에 기초하여 산출될 수 있다.
일 실시예에 있어서, 미리 설정된 조건에 기초하여, 상기 제1 배달 주문을 수행 가능한 상기 하나 이상의 후보 배달원을 결정하는 단계를 더 포함하고, 상기 미리 설정된 조건은, 배달 주문의 결제 수단, 배달 주문의 배달 대상 물품에 주류가 포함되는지 여부, 물품 수령지의 위치, 물품 배달지의 위치, 배달원의 위치 및 배달원의 이동 수단 중에서 선택된 적어도 하나에 기초하여 설정된 조건일 수 있다.
일 실시예에 있어서, 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하는 단계는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제1 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 상기 제1 배달 주문을 수행하기 위한 제1 정보를 상기 제1 배달원의 단말로 전달하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하는 단계는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제2 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 상기 제1 배달 주문을 선택하여 할당받기 위한 제2 정보를 상기 제1 배달원의 단말로 전달하는 단계; 및 상기 제2 정보의 전달 이후 미리 설정된 시간 간격 내에 상기 제1 배달 주문이 할당되지 않으면, 상기 제1 배달원 및 상기 제2 방식을 선택한 하나 이상의 제3 배달원의 단말 각각에 상기 제2 정보를 추가로 전달하는 단계를 포함할 수 있다.
본 개시의 한 측면으로서, 배달 과정을 관리하기 위한 명령들을 기록한 비일시적 컴퓨터 판독 가능 기록 매체가 제안될 수 있다. 본 개시의 한 측면에 따른 기록 매체에 기록된 명령들은, 컴퓨터 상에서 수행되기 위한 명령들로서, 하나 이상의 프로세서에 의한 실행시, 하나 이상의 프로세서가, 하나 이상의 메모리에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택하고, 상기 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 제1 배달원이, 상기 제1 배달 주문과 상기 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하고, 상기 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하고, 상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하고, 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하도록 할 수 있다.
본 개시의 다양한 실시예들에 의하면, 배달 주문을 수행할 최적의 배달원을 결정할 수 있다.
본 개시의 다양한 실시예들에 의하면, 최적의 배달원을 결정함에 있어 배달 경로를 고려할 수 있다.
본 개시의 다양한 실시예들에 의하면, 전체 배달 시스템에 부하되는 배달 비용을 효율적으로 관리할 수 있다.
도 1은 본 개시의 일 실시예에 따라 배달 주문이 생성되고, 수행되는 과정을 나타낸 도면이다.
도 2는 본 개시의 일 실시예에 따른, 장치가 배달 주문에 대응하는 배달원을 결정하는 과정을 나타낸 도면이다.
도 3은 본 개시의 일 실시예에 따른 장치의 블록도를 나타낸 도면이다.
도 4는 본 개시의 일 실시예에 따른, 하나의 배달 주문에 대한 배달 비용을 결정하는 과정을 나타낸 도면이다.
도 5는 본 개시의 일 실시예에 따른, 최적의 배달 경로를 결정하는 과정을 나타낸 도면이다.
도 6은 본 개시의 일 실시예에 따른, 배달 주문에 대한 최적의 배달원을 확률적으로 결정하는 과정을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시예에 따른 경쟁 할당 방식에 있어, 할당 대상 배달 주문이 배달 주문 리스트에 노출되는 범위가 확장되는 과정을 나타낸 도면이다.
도 8은 본 개시의 일 실시예에 따른, 물품 준비 요청 및 배달 완료 예상 시점 통지 과정을 나타낸 도면이다.
도 9는 본 개시에 따른 장치에 의해 수행될 수 있는, 배달 과정 관리 방법의 일 실시예를 나타낸 도면이다.
본 문서에 기재된 다양한 실시예들은, 본 개시의 기술적 사상을 명확히 설명하기 위한 목적으로 예시된 것이며, 이를 특정한 실시 형태로 한정하려는 것이 아니다. 본 개시의 기술적 사상은, 본 문서에 기재된 각 실시예의 다양한 변경(modifications), 균등물(equivalents), 대체물(alternatives) 및 각 실시예의 전부 또는 일부로부터 선택적으로 조합된 실시예를 포함한다. 또한 본 개시의 기술적 사상의 권리 범위는 이하에 제시되는 다양한 실시예들이나 이에 대한 구체적 설명으로 한정되지 않는다.
기술적이거나 과학적인 용어를 포함해서, 본 문서에서 사용되는 용어들은, 달리 정의되지 않는 한, 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 일반적으로 이해되는 의미를 가질 수 있다.
본 문서에서 사용되는 "포함한다", "포함할 수 있다", "구비한다", "구비할 수 있다", "가진다", "가질 수 있다" 등과 같은 표현들은, 대상이 되는 특징(예: 기능, 동작 또는 구성요소 등)이 존재함을 의미하며, 다른 추가적인 특징의 존재를 배제하지 않는다. 즉, 이와 같은 표현들은 다른 실시예를 포함할 가능성을 내포하는 개방형 용어(open-ended terms)로 이해되어야 한다.
본 문서에서 사용되는 단수형의 표현은, 문맥상 다르게 뜻하지 않는 한 복수형의 의미를 포함할 수 있으며, 이는 청구항에 기재된 단수형의 표현에도 마찬가지로 적용된다.
본 문서에서 사용되는 "제1", "제2", 또는 "첫째", "둘째" 등의 표현은, 문맥상 다르게 뜻하지 않는 한, 복수의 동종 대상들을 지칭함에 있어 한 대상을 다른 대상과 구분하기 위해 사용되며, 해당 대상들간의 순서 또는 중요도를 한정하는 것은 아니다.
본 문서에서 사용되는 "A, B, 및 C," "A, B, 또는 C," "A, B, 및/또는 C" 또는 "A, B, 및 C 중 적어도 하나," "A, B, 또는 C 중 적어도 하나," "A, B, 및/또는 C 중 적어도 하나," "A, B, 및 C 중에서 선택된 적어도 하나," "A, B, 또는 C 중에서 선택된 적어도 하나," "A, B, 및/또는 C 중에서 선택된 적어도 하나" 등의 표현은, 각각의 나열된 항목 또는 나열된 항목들의 가능한 모든 조합들을 의미할 수 있다. 예를 들어, "A 및 B 중에서 선택된 적어도 하나"는, (1) A, (2) A 중 적어도 하나, (3) B, (4) B 중 적어도 하나, (5) A 중 적어도 하나 및 B 중 적어도 하나, (6) A 중 적어도 하나 및 B, (7) B 중 적어도 하나 및 A, (8) A 및 B를 모두 지칭할 수 있다.
본 문서에서 사용되는 "~에 기초하여"라는 표현은, 해당 표현이 포함되는 어구 또는 문장에서 기술되는, 결정, 판단의 행위 또는 동작에 영향을 주는 하나 이상의 인자를 기술하는데 사용되고, 이 표현은 해당 결정, 판단의 행위 또는 동작에 영향을 주는 추가적인 인자를 배제하지 않는다.
본 문서에서 사용되는, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "연결되어" 있다거나 "접속되어" 있다는 표현은, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결 또는 접속되는 것뿐 아니라, 새로운 다른 구성요소(예: 제3 구성요소)를 매개로 하여 연결 또는 접속되는 것을 의미할 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(configured to)"은 문맥에 따라, "~하도록 설정된", "~하는 능력을 가지는", "~하도록 변경된", "~하도록 만들어진", "~를 할 수 있는" 등의 의미를 가질 수 있다. 해당 표현은, "하드웨어적으로 특별히 설계된"의 의미로 제한되지 않으며, 예를 들어 특정 동작을 수행하도록 구성된 프로세서란, 소프트웨어를 실행함으로써 그 특정 동작을 수행할 수 있는 범용 프로세서(generic-purpose processor)를 의미할 수 있다.
이하, 첨부된 도면들을 참조하여, 본 개시의 다양한 실시예들을 설명한다. 첨부된 도면 및 도면에 대한 설명에서, 동일하거나 실질적으로 동등한(substantially equivalent) 구성요소에는 동일한 참조부호가 부여될 수 있다. 또한, 이하 다양한 실시예들의 설명에 있어서, 동일하거나 대응하는 구성요소를 중복하여 기술하는 것이 생략될 수 있으나, 이는 해당 구성요소가 그 실시예에 포함되지 않는 것을 의미하지는 않는다.
도 1은 본 개시의 일 실시예에 따라 배달 주문이 생성되고, 배달이 수행되는 과정을 나타낸 도면이다. 본 개시의 일 실시예에 따른 장치(100)는, 본 개시의 배달 과정 관리 기술에 따라 물품이 배달되는 과정을 관리할 수 있다. 장치(100)는 본 개시의 기술에 따라 배달 과정을 관리하는 서비스 제공자(예: 배달 관리 서비스 업체)의 전자 장치(예: 서버, 컴퓨터 등)일 수 있다. 장치(100)는 각 배달 주문에 따른 배달을 수행하기에 최적인 배달원을 결정하고, 각 배달 주문을 최적의 배달원에게 할당하여 각 배달이 수행되게 할 수 있다.
구체적으로 사용자(110)는 자신의 단말(112)(예: 스마트폰)을 이용하여 배달 주문(114)을 생성할 수 있다. 예를 들어, 사용자(110)는 단말(112)에 설치된 응용 프로그램을 사용하여서, 배달 주문(114)을 생성할 수 있다. 사용자의 단말(112)은 생성된 배달 주문(114)을 장치(100)로 전달할 수 있다. 본 개시에서 배달 주문은 특정 물품의 배달 요청일 수 있다. 일 실시예에서, 배달 주문은 배달의 대상이 되는 물품에 대한 정보, 그 물품을 제공하는 매장(130)에 대한 정보, 사용자(110)에 대한 정보, 물품 및 배달 주문 수수료의 결제에 대한 정보, 물품 수령지 및 물품 배달지에 대한 정보 및/또는 기타 물품의 배달 수행과 관련한 정보 등을 포함할 수 있다. 본 개시에서 사용자(110)는 배달 주문을 생성함으로써 특정 물품(예: 음식)의 배달을 요청하고 해당 물품을 배달받는 일반 고객일 수 있다.
장치(100)는 배달 주문(114)에 대응되는 배달원(120)을 결정할 수 있다. 배달원(120)은 배달 주문(114)을 수행하기에 최적인 배달원일 수 있다. 최적의 배달원을 결정하는 과정은 후술한다. 일 실시예에서, 장치(100)는 해당 배달원(120)에게 배달 주문(114)을 할당할 수 있다. 장치(100)는 배달원(120)의 단말(122)로 배달 주문(114)에 대한 정보를 전달할 수 있다. 본 개시에서 배달원은, 장치(100)의 관리 하에 물품의 배달을 수행하는 자일 수 있다.
배달원(120)은 자신의 단말(122)을 통해 자신에게 할당된 배달 주문(114)에 대한 정보를 확인하고, 배달 주문(114)을 수행할 수 있다. 배달원(120)은 배달 주문(114)의 대상이 되는 물품의 물품 수령지로 이동하여 물품을 수령(픽업(pick-up))할 수 있다. 일 실시예에서, 물품 수령지는 해당 물품을 제공하는 매장(130)일 수 있다. 본 개시에서 매장은 배달 대상 물품을 제공하는 오프라인 매장(예: 음식점)일 수 있다. 일 실시예에서, 장치(100)는 매장(130)과 매장 단말(132)을 통해 통신할 수 있다. 일 실시예에서, 물품 수령지는 장치(100), 사용자(110) 또는 매장(130) 측에 의해 지정된 별도의 위치일 수도 있다.
배달원(120)은 물품을 수령한 후 물품을 물품 배달지로 배달할 수 있다. 일 실시예에서, 물품 배달지는 사용자의 단말(112)의 현재 위치, 사용자(110)가 배달 주문을 생성할 때의 사용자 단말(112)의 위치, 사용자(110)가 지정한 위치 등일 수 있다. 일 실시예에서, 물품의 배달이 완료되었다는 사실이 배달원의 단말(122) 및/또는 사용자의 단말(112)을 통해 장치(100)로 전달될 수 있다.
도 2는 본 개시의 일 실시예에 따른, 장치(100)가 배달 주문에 대응하는 최적의 배달원을 결정하는 과정을 나타낸 도면이다. 장치(100)는 전체 배달원 중 각 배달 주문에 대응하는 배달원을 결정할 수 있다.
구체적으로, 하나 이상의 사용자는 각각 하나 이상의 배달 주문을 생성할 수 있다(210). 생성된 배달 주문들은 각 사용자의 단말로부터 장치(100)로 전달될 수 있다. 장치(100)는 전달받은 배달 주문들을 배달 주문 풀(delivery order pool)에 저장할 수 있다(220). 배달 주문 풀은 장치(100)가 관리하는 배달 주문들의 집합일 수 있다. 예를 들어 배달 주문 풀에는 배달 주문 D1, D2, D3, ..., DN이 저장될 수 있다.
장치(100)는 배달 주문 풀에서 미리 설정된 주기에 따라 배달 주문들을 풀링(pulling)할 수 있다(230). 풀링되는 배달 주문들은 배달원이 할당되지 않은 상태의 배달 주문들일 수 있다. 장치(100)는 풀링된 배달 주문들을 모아 배달원 할당 작업을 수행하기 위한 매칭 풀(matching pool)을 생성할 수 있다. 일 실시예에서, 장치(100)는 1분 단위로 배달 주문들을 풀링할 수 있다. 1분 단위로 풀링이 수행되므로, 풀링되는 배달 주문들은 풀링 시점을 기준으로 1분 이내에 생성된 배달 주문이거나, 이전 매칭 풀에서 배달원 할당에 실패한 배달 주문일 수 있다. 예를 들어 장치(100)는 배달 주문 D1, D2 및 D3를 배달 주문 풀에서 풀링하여 매칭 풀을 생성할 수 있다.
장치(100)는 매칭 풀에서 배달 주문을 하나씩 선택하여, 순차적으로 최적의 배달원을 매칭해 나갈 수 있다(240). 구체적으로, 장치(100)는 매칭 풀의 배달 주문들을 미리 설정된 기준에 따라 정렬하여 하나씩 선택하고, 먼저 선택된 배달 주문에 대한 최적의 배달원을 결정한 뒤, 다음으로 선택되는 배달 주문에 대한 최적의 배달원을 순차적으로 결정해 나갈 수 있다. 일 실시예에서, 장치(100)는 매칭 풀의 배달 주문 중 배달 비용이 큰 배달 주문부터 순차적으로 선택할 수 있다. 배달 비용이 큰 순서대로 배달원을 할당하는 경우, 큰 배달 비용을 가지는 배달 주문을 가장 효율적으로 수행할 수 있는 배달원을 우선적으로 할당할 수 있다. 즉, 큰 배달 비용을 가지는 배달 주문에 대한 최적의 배달원이 다른 작은 배달 비용을 가지는 배달 주문에 할당되어, 큰 배달 비용을 가지는 배달 주문에 할당할 수 없게 되는 것을 피할 수 있다. 예를 들어, 장치(100)는 매칭 풀에서 D2, D1, D3의 순서대로 배달 주문을 선택할 수 있다. 장치(100)는 먼저 D2에 대응되는 최적의 배달원부터 결정한 후, D1, D3의 순서대로 대응되는 최적의 배달원을 결정할 수 있다. 또는, 다른 실시예에서, 장치(100)는 매칭 풀에서 무작위로 배달 주문을 선택하여 최적의 배달원을 매칭해 갈 수도 있다.
본 개시에서 배달 비용은 해당 배달 주문을 수행하는 데에 소모되는 자원(resource)의 양을 의미할 수 있다. 일 실시예에서, 배달 비용은 배달원이 해당 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간(즉, 배달원이 물품을 수령할 때 해당 물품의 수령 목표 시점을 얼마나 도과하는지를 가리키는 시간) 및 물품의 배달 목표 시점을 도과하는 시간(즉, 배달원의 물품을 배달할 때, 해당 물품의 배달 목표 시점을 얼마나 도과하는지를 가리키는 시간) 중에서 선택된 적어도 하나에 기초하여 결정될 수 있다. 일반적으로 배달 비용은 배달원이 배달 주문을 수행하는 데에 소모되는 자원의 양으로서, 특정 배달원에 대하여 산출될 수 있다. 구체적인 배달 비용의 산출 방법은 후술한다. 그러나 장치(100)가 매칭 풀에서 배달 주문을 선택하는 시점에서는, 각 배달 주문에 대해 배달원이 할당되기 전이므로, 이 경우에서는 배달원과 무관하게 해당 배달 주문 자체의 속성에 의해 결정되는 정보만으로 배달 비용이 산출될 수 있다. 여기서 배달 주문 자체의 속성이란, 어떤 배달원이 할당되는지와 무관하게, 해당 배달 주문이 수행될 때 소모될 자원의 양에 영향을 미치는 요소들을 의미할 수 있다. 예를 들어, 배달 주문 자체의 속성에 의해 결정되는 정보에는, 배달 대상 물품의 준비 시간(예: 조리 시간), 물품 수령지와 물품 배달지 사이의 거리, 해당 배달 주문이 미할당 상태로 있었던 시간 등이 있을 수 있다. 예를 들어, 조리 시간이 짧은 커피의 배달 주문은, 조리 시간이 긴 감자탕의 배달 주문보다 배달 비용이 작게 산출될 수 있다.
장치(100)는 가장 먼저 선택된 배달 주문 D2(도 2의 242 참조)에 대해, 최적의 배달원을 결정하기 위한 과정을 수행할 수 있다(250). 최적의 배달원을 결정하기 위하여, 장치(100)는 해당 배달 주문 D2를 수행 가능한 하나 이상의 후보 배달원을 결정할 수 있다. 이어서, 장치(100)는 하나 이상의 후보 배달원 중 해당 배달 주문 D2를 수행하기 위한 최적의 배달원을 결정할 수 있다.
구체적으로, 장치(100)는 미리 설정된 조건에 기초하여, 선택된 배달 주문 D2를 수행 가능한 하나 이상의 후보 배달원을 결정할 수 있다. 후보 배달원은 해당 배달 주문을 물리적, 법률적 또는 정책적으로 수행 가능한 배달원을 의미할 수 있다. 전체 배달원 중 해당 배달 주문에 대한 후보 배달원이 되기 위해서는 미리 설정된 조건을 만족해야 할 수 있다. 후보 배달원들은 다른 배달 주문을 이미 수행하고 있을 수도 있고, 그렇지 않을 수도 있다. 예를 들어, 장치(100)는 선택된 배달 주문 D2에 대한 후보 배달원으로 배달원 R2 및 R7을 결정할 수 있다.
일 실시예에서, 미리 설정된 조건은 해당 배달 주문에 대한 사용자(110)의 결제 수단, 배달 주문의 배달 대상 물품에 주류가 포함되는지 여부, 물품 수령지의 위치, 물품 배달지의 위치, 배달원의 위치 및 배달원의 이동 수단(예: 자전거, 킥보드, 자동차, 오토바이, 도보 등), 현재 배달원과 물품 수령지(내지 매장)까지의 거리, 현재 배달원과 물품 배달지(내지 고객)까지의 거리, 배달원이 이동해야 하는 총 거리, 물품 수령지부터 물품 배달지까지의 거리, 배달원 별 배달 제한 건수, 배달원 별 운행 제한 시간 중에서 선택된 적어도 하나에 기초하여 설정될 수 있다. 일 실시예에서, 배달원 별 배달 제한 건수는 해당 배달원이 미리 설정된 기간 동안 수행할 수 있는 배달 주문 건수의 상한일 수 있다(예: 월별 배달 제한 건수). 일 실시예에서, 배달원 별 운행 제한 시간은 해당 배달원이 미리 설정된 기간 동안 배달 주문의 수행을 위해 이동 수단을 운행할 수 있는 운행 시간의 상한일 수 있다(예: 주 단위 총 운행 시간의 상한). 일 실시예에서, 배달 대상 물품에 주류가 포함되는지 여부는 할당 가능한 배달원의 연령과 관련된 조건일 수 있다. 상술한 미리 설정된 조건은 법률적 제한에 의해, 또는 서비스 제공자에 의해 정책적으로 설정될 수 있다.
장치(100)는 하나 이상의 후보 배달원(도 2에서는 R2과 R7) 중 해당 배달 주문(D2)을 수행하기 위한 최적의 배달원을 결정할 수 있다. 장치(100)는 하나 이상의 후보 배달원 각각에 대하여, 해당 배달 주문 D2 및 이미 할당되어 보유 중인 배달 주문을 모두 수행하기 위한 배달 경로를 결정하고, 해당 배달 경로로 배달을 수행함에 있어서 해당 배달 주문 D2에 의한 배달 비용의 증가량을 결정할 수 있다. 장치(100)는 배달 경로 및 배달 비용 증가량의 결정 과정을 각 후보 배달원에 대해 병렬적으로 수행할 수 있다. 최적의 배달 경로를 결정하는 구체적인 방법은 후술한다. 장치(100)는 각 후보 배달원에 대해 결정된 배달 비용 증가량에 기초하여 배달 주문 D2에 대응되는 최적의 배달원을 결정할 수 있다.
도 2의 예에 있어서, 배달원 R7은 이미 할당되어 있는 배달 주문 D_c1와 D_c2를 현재 가지고 있을 수 있다. 장치(100)는 배달원 할당 대상이 되는 배달 주문 D2를 더하여, 배달원 R7이 배달 주문 D_c1, D_c2 및 D2를 수행하기 위한 최적의 배달 경로를 결정할 수 있다. 장치(100)는 배달원 R7이 그 최적의 배달 경로로 배달을 수행함에 있어서, 배달 주문 D2에 의한 배달 비용의 증가량을 결정할 수 있다. 장치(100)는 해당 배달 경로를 따라 배달 주문 D_c1, D_c2 및 D2를 수행하는 전체 배달 비용에서, 해당 배달 경로를 따라 배달 주문 D_c1 및 D_c2를 수행하는 배달 비용을 뺌으로써, 배달 주문 D2에 의한 배달 비용의 증가량을 결정할 수 있다. 예를 들어, 최적의 배달 경로가 {[배달원 R7의 현 위치] - [D_c1의 물품 수령지] - [D2의 물품 수령지] - [D_c1의 물품 배달지] - [D_c2의 물품 수령지] - [D2의 물품 배달지] - [D_c2의 물품 배달지]}와 같이 결정되었다고 가정할 수 있다. 이 배달 경로는 배달원 R7의 현 위치에서 출발하여, D_c1의 물품 수령지, D2의 물품 수령지 등을 차례로 거쳐, D_c2의 물품 배달지에 이르게 되는 배달 경로일 수 있다. 이 경우, 배달 주문 D_c1, D_c2 및 D2를 수행하는 전체 배달 비용이란, 배달원 R7이 해당 최적의 배달 경로를 따라 D_c1, D_c2 및 D2를 수행하는 데에 소모되는 배달 비용을 의미할 수 있다. 또한, 해당 배달 경로를 따라 배달 주문 D_c1 및 D_c2를 수행하는 배달 비용이란, 배달원 R7이 {[배달원 R7의 현 위치] - [D_c1의 물품 수령지] - [D_c1의 물품 배달지] - [D_c2의 물품 수령지] - [D_c2의 물품 배달지]}의 경로를 따라 배달 주문 D_c1 및 D_c2를 수행하는 데에 소모되는 배달 비용을 의미할 수 있다.
마찬가지로, 배달원 R2는 이미 할당되어 있는 배달 주문 D_c3를 현재 가지고 있을 수 있다. 장치(100)는 배달원 할당 대상이 되는 배달 주문 D2를 더하여, 배달원 R2가 배달 주문 D_c3 및 D2를 수행하기 위한 최적의 배달 경로를 결정할 수 있다. 장치(100)는 배달원 R2가 해당 배달 경로로 배달을 수행함에 있어서, 배달 주문 D2에 의한 배달 비용의 증가량을 결정할 수 있다. 장치(100)는 해당 배달 경로를 따라 배달 주문 D_c3 및 D2를 수행하는 전체 배달 비용에서, 해당 배달 경로를 따라 배달 주문 D_c3를 수행하는 배달 비용을 뺌으로써, 배달 주문 D2에 의한 배달 비용의 증가량을 결정할 수 있다.
장치(100)는 후보 배달원 R2와 R7의 각각에 대해 산출된 배달 비용 증가량에 기초하여, 해당 배달 주문(D2)에 대응되는 최적의 배달원을 결정할 수 있다(250). 일 실시예에서, 장치(100)는 각 배달 비용 증가량에 기초하여 확률적으로 최적의 배달원을 결정할 수 있다. 확률적인 최적 배달원 결정 과정에 대해서는 후술한다. 장치(100)는 해당 배달 주문 D2에 대응되는 최적의 배달원을 결정하면, 해당 배달원의 단말로 배달 주문 D2에 대한 정보를 전달할 수 있다. 도 2의 예에서는 배달원 R2가 최적의 배달원으로 결정된다.
장치(100)는 배달 주문 D2에 대한 배달원 할당 과정을 마치면, 순차적으로 선택된 다음 배달 주문 D1에 대해 배달원 할당 과정을 수행할 수 있다(도 2의 244 참조). 배달 주문 D1에 대한 배달원 할당 과정은 배달 주문 D2에 대한 배달원 할당 과정과 동일한 방식으로 진행될 수 있다(260). 배달원 할당 과정이 순차적으로 진행되므로, 배달 주문 D1에 대한 배달원 할당 과정에서는, 앞서 진행된 배달 주문 D2에 대한 배달원 할당 과정의 결과가 영향을 줄 수 있다. 예를 들어, 배달 주문 D1의 후보 배달원 중 하나인 배달원 R2의 경우, 배달 주문 D_c3 외에 배달 주문 D2 역시 현재 보유하고 있는 것으로 간주하여 배달원 할당 과정이 진행될 수 있다. 장치(100)는 배달 주문 D1 에 대한 후보 배달원 R1와 R2에 대해, 각각 최적의 배달 경로 및 배달 비용 증가량을 산출한 후, 각 배달 비용 증가량에 기초하여 최적의 배달원 R2를 결정할 수 있다.
도 3은 본 개시의 일 실시예에 따른 장치(100)의 블록도를 나타낸 도면이다. 일 실시예에서, 장치(100)는 하나 이상의 프로세서(310) 및/또는 하나 이상의 메모리(320)를 포함할 수 있다. 일 실시예에서, 장치(100)의 구성요소들 중 적어도 하나가 생략되거나, 다른 구성요소가 장치(100)에 추가될 수 있다. 일 실시예에서, 추가적으로(additionally) 또는 대체적으로(alternatively), 일부의 구성요소들이 통합되어 구현되거나, 단수 또는 복수의 개체로 구현될 수 있다. 본 개시에서, 하나 이상의 프로세서(310)는 프로세서(310)라고 표현될 수 있다. 프로세서(310)라는 표현은, 문맥상 명백히 다르게 표현하지 않는 이상, 하나 또는 그 이상의 프로세서의 집합을 의미할 수 있다. 본 개시에서, 하나 이상의 메모리(320)는 메모리(320)라고 표현될 수 있다. 메모리(320)라는 표현은, 문맥상 명백히 다르게 표현하지 않는 이상, 하나 또는 그 이상의 메모리의 집합을 의미할 수 있다. 일 실시예에서, 장치(100) 내, 외부의 구성요소들 중 적어도 일부의 구성요소들은 버스, GPIO(general purpose input/output), SPI(serial peripheral interface) 또는 MIPI(mobile industry processor interface) 등을 통해 서로 연결되어, 데이터 및/또는 시그널을 주고 받을 수 있다.
프로세서(310)는 소프트웨어(예: 명령, 프로그램 등)를 구동하여 프로세서(310)에 연결된 장치(100)의 적어도 하나의 구성요소를 제어할 수 있다. 또한 프로세서(310)는 본 개시와 관련된 다양한 연산, 처리, 데이터 생성, 가공 등의 동작을 수행할 수 있다. 또한 프로세서(310)는 데이터 등을 메모리(320)로부터 로드하거나, 메모리(320)에 저장할 수 있다. 일 실시예에서, 프로세서(310)는 배달 주문 풀에서 배달 주문을 풀링하여 매칭 풀을 생성하고, 매칭 풀에서 배달원 할당 대상인 배달 주문을 선택하고, 해당 배달 주문의 후보 배달원을 결정한 뒤, 후보 배달원 각각에 대해 배달 경로 및 배달 경로에 따른 배달 비용 증가량을 결정하고, 각 배달 비용 증가량에 기초하여 해당 배달 주문에 대응하는 최적의 배달원을 결정하고, 통신 회로를 제어하여 결정된 배달원의 단말로 해당 배달 주문에 대한 정보를 전달할 수 있다.
메모리(320)는 다양한 데이터를 저장할 수 있다. 메모리(320)에 저장되는 데이터는, 장치(100)의 적어도 하나의 구성요소에 의해 획득되거나, 처리되거나, 사용되는 데이터로서, 소프트웨어(예: 명령, 프로그램 등)를 포함할 수 있다. 메모리(320)는 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 본 개시에서, 명령 내지 프로그램은 메모리(320)에 저장되는 소프트웨어로서, 장치(100)의 리소스를 제어하기 위한 운영체제, 어플리케이션 프로그램 및/또는 어플리케이션 프로그램이 장치(100)의 리소스들을 활용할 수 있도록 다양한 기능을 어플리케이션 프로그램에 제공하는 미들웨어 등을 포함할 수 있다. 일 실시예에서, 메모리(320)는 프로세서(310)에 의한 실행 시 프로세서(310)가 연산을 수행하도록 하는 명령들을 저장할 수 있다. 일 실시예에서, 메모리(320)는 하나 이상의 배달 주문, 배달원들에 대한 정보, 사용자들에 대한 정보, 매장에 대한 정보 등을 저장할 수 있다.
일 실시예에서, 장치(100)는 통신 회로(330)를 더 포함할 수도 있다. 통신 회로(330)는, 장치(100)와 서버 또는 장치(100)와 다른 장치 간의 무선 또는 유선 통신을 수행할 수 있다. 예를 들어, 통신 회로(330)는 eMBB(enhanced Mobile Broadband), URLLC(Ultra Reliable Low-Latency Communications), MMTC(Massive Machine Type Communications), LTE(Long-Term Evolution), LTE-A(LTE Advance), NR(New Radio), UMTS(Universal Mobile Telecommunications System), GSM(Global System for Mobile communications), CDMA(Code Division Multiple Access), WCDMA(Wideband CDMA), WiBro(Wireless Broadband), WiFi(Wireless Fidelity), 블루투스(Bluetooth), NFC(Near Field Communication), GPS(Global Positioning System) 또는 GNSS(Global Navigation Satellite System) 등의 방식에 따른 무선 통신을 수행할 수 있다. 예를 들어, 통신 회로(330)는 USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), RS-232(Recommended Standard-232) 또는 POTS(Plain Old Telephone Service) 등의 방식에 따른 유선 통신을 수행할 수 있다. 일 실시예에서, 통신 회로(330)는 사용자의 단말(112), 배달원의 단말(122), 매장 단말(132) 등의 장치와 통신을 수행할 수 있다. 일 실시예에서, 프로세서(310)는 통신 회로(330)를 제어하여 별도의 서버 내지 데이터베이스로부터 정보를 획득할 수 있다. 별도의 서버 내지 데이터베이스로부터 획득된 정보는 메모리(320)에 저장될 수 있다.
일 실시예에서, 장치(100)는 서버 외의 다양한 형태일 수도 있다. 예를 들어, 장치(100)는 휴대용 통신 장치, 컴퓨터 장치 또는 이러한 장치들의 조합에 따른 장치일 수 있다. 다만 본 개시의 장치(100)는 전술한 장치들에 한정되지 않는다.
본 개시에 따른 장치(100)의 다양한 실시예들은 서로 조합될 수 있다. 각 실시예들은 경우의 수에 따라 조합될 수 있으며, 조합된 실시예 역시 본 개시의 범위에 속한다. 또한 본 개시에 따른 장치(100)의 내/외부 구성 요소들은 실시예에 따라 추가, 변경, 대체 또는 삭제될 수 있다. 또한 장치(100)의 내/외부 구성 요소들은 하드웨어 컴포넌트로 구현될 수 있다.
본 개시에서 사용자의 단말(112) 및 배달원의 단말(122)은 다양한 형태의 전자 장치일 수 있다. 예를 들어, 사용자의 단말(112) 및 배달원의 단말(122) 각각은 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치(예: 태블릿 PC, 랩탑(laptop)), 휴대용 멀티미디어 장치, 웨어러블(wearable) 장치 또는 이러한 장치들의 조합에 따른 장치일 수 있다. 사용자의 단말(112) 및 배달원의 단말(122)에는 본 개시에 따른 배달 과정 관리 기술을 제공하는 프로그램(예: 어플리케이션 프로그램)이 설치되어 있을 수 있다. 또는 사용자의 단말(112) 및 배달원의 단말(122)은 본 개시에 따른 배달 과정 관리 기술을 제공하는 웹페이지에 접근(access)할 수 있다. 사용자의 단말(112) 및 배달원의 단말(122) 각각은 하나 이상의 프로세서, 하나 이상의 메모리 및/또는 통신 회로를 포함할 수 있다. 하나 이상의 메모리는, 하나 이상의 프로세서에 의한 실행 시, 하나 이상의 프로세서가 동작을 수행하도록 하는 명령들을 저장할 수 있다. 사용자의 단말(112) 및 배달원의 단말(122) 각각의 프로세서는, 본 개시에 따른 배달 과정 관리 기술에 따라, 전술한 장치(100)의 동작에 대응되는 동작들을 수행할 수 있다. 본 개시에 따른 장치(100)는, 사용자의 단말(112) 내지 배달원의 단말(122)에 설치되는 전술한 프로그램(예: 어플리케이션 프로그램)을 통하여 사용자의 단말(112) 내지 배달원의 단말(122)과 통신할 수 있다. 또한 장치(100)는 본 개시에 따른 배달 과정 관리 기술을 제공하기 위한 웹페이지를 제공할 수 있다.
도 4는 본 개시의 일 실시예에 따른, 하나의 배달 주문에 대한 배달 비용을 결정하는 과정을 나타낸 도면이다. 전술한 바와 같이, 소정의 배달 주문에 따른 배달 비용은 해당 배달 주문을 수행하는 데에 소모하게 되는 자원의 양을 의미할 수 있다. 일반적으로 배달 비용은 특정 배달원이 배달 주문을 수행하는 데에 소모되는 자원의 양으로 산출될 수 있다.
일 실시예에서, 소정의 배달 주문에 대한 배달 비용은 한 배달원이 해당 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간 및 물품의 배달 목표 시점을 도과하는 시간 중에서 선택된 적어도 하나에 기초하여 결정될 수 있다. 일 실시예에서, 배달 비용은 다음의 수학식에 따라 산출될 수 있다.
수학식 1에서, M은 배달 주문의 전 과정을 수행하는 시간의 총합을 의미할 수 있다. 즉, M은 특정 배달원이 해당 배달 주문을 수행함에 있어서, 해당 배달 주문이 사용자(110)에 의해 생성된 시점부터 물품의 배달을 완료한 시점까지의 시간을 의미할 수 있다. 실시예에 따라 M은 상술한 배달 주문의 전 과정의 수행에 소요될 것으로 예상되는 시간을 의미할 수도 있다. 전 과정의 예상 시간은, 매장의 시간대 별 할당 시간, 매장의 시간대 별 물품 수령 시간, 배달 거리, 날씨, 배달원 당 배달 건수, 배달원이 보유하고 있는 배달 건수, 소정의 시간(예: 30분) 동안의 배달 주문 건수, 소정의 시간 동안의 배달 주문 할당 건수, 휴일 정보, 시간대 정보, 배달원 관리 지점, 지난 일정 시간 동안 활동 중인 배달원의 수, 지난 소정의 시간 동안 할당이 이루어진 배달원의 수 등의 다양한 요인에 기초하여 결정될 수 있다. 각각의 정보들에는, 해당 정보들의 경중을 조정하기 위한 계수들이 적용될 수 있다(예: 날씨 별 거리 계수 등).
A는 배달 목표 시점을 넘은 시간을 의미할 수 있다. 배달 목표 시점은 배달 주문이 생성될 때 장치(100)가 미리 설정된 기준에 따라 결정하는 고정 값일 수 있다. 해당 배달 주문을 특정 배달원이 수행함에 있어서, A는 물품의 실제 배달 시점이 해당 배달 주문의 배달 목표 시점을 도과한 시간을 의미할 수 있다. 실시예에 따라, 해당 배달 주문을 특정 배달원이 수행함에 있어, A는 물품의 예상 배달 시점이 해당 배달 주문의 배달 목표 시점을 도과한 시간을 의미할 수도 있다.
B는 수령 목표 시점을 넘은 시간을 의미할 수 있다. 배달 주문이 생성되면, 장치(100) 또는 배달원은 매장(130)으로 배달 대상 물품의 준비를 요청할 수 있다(예: 음식의 조리). 수령 목표 시점은 배달 주문에 대한 물품 준비 요청 시에 장치(100)가 미리 설정된 기준에 따라 결정하는 고정 값일 수 있다. 해당 배달 주문을 특정 배달원이 수행함에 있어서, B는 물품을 물품 수령지에서 실제 수령하는 시점이 해당 배달 주문의 수령 목표 시점을 도과한 시간을 의미할 수 있다. 실시예에 따라, 해당 배달 주문을 특정 배달원이 수행함에 있어, B는 물품을 물품 수령지에서 수령하는 예상 시점이 해당 배달 주문의 수령 목표 시점을 도과한 시간을 의미할 수도 있다.
C는 물품 수령 이후 물품의 배달 완료까지의 시간을 의미할 수 있다. 일 실시예에서, 배달 주문을 특정 배달원이 수행함에 있어, C는 실제 물품의 배달 시점과 실제 물품의 수령 시점 사이의 시간 간격을 의미할 수 있다. 일 실시예에서, 배달 주문을 특정 배달원이 수행함에 있어, C는 예상되는 물품 배달 시점과 예상되는 물품 수령 시점 사이의 시간 간격을 의미할 수도 있다.
수학식 1의 a, b 및 c는 배달의 품질을 조정하기 위한 파라미터일 수 있다. a, b 및 c는 사업, 영업, 정책적 이유 등에 따라 서비스 제공자(배달 관리 서비스 업체)가 결정하고, 조정할 수 있다. a는 배달 목표 시점을 어느 정도로 준수할지 여부를 결정하는 파라미터이고, b는 수령 목표 시점을 어느 정도로 준수할지 여부를 결정하는 파라미터일 수 있다. a가 크게 설정될수록, 배달 목표 시점을 도과한 시간에 따른 배달 비용이 크게 산출되고, b가 크게 설정될수록, 수령 목표 시점을 도과한 시간에 따른 배달 비용이 크게 산출될 수 있다. 예를 들어, 소정의 배달 주문을 특정 배달원이 수행하는 경우, 예상 물품 수령 시점이 수령 목표 시점을 과도하게 넘길 것으로 예상된다면, 해당 배달 주문에 대한 해당 배달원의 배달 비용이 높게 산출되고, 그 배달원에는 해당 배달 주문이 할당되지 않을 수 있다. c는 물품(예: 음식)을 수령한 이후 시간의 흐름에 따라 물품의 가치가 하락하는 정도를 결정하는 파라미터일 수 있다. c는 매장, 배달 대상 물품, 날씨 등의 요인에 따라 다르게 설정될 수 있다. 예를 들어, 쉽게 상하는 음식의 경우 시간의 흐름에 따라 물품의 가치가 빠르게 떨어지므로, c값이 크게 설정될 수 있다.
일 실시예에서, 배달 비용은 소정의 한 배달원이 소정의 한 배달 주문을 수행하는 경우에 대하여 계산될 수도 있고, 소정의 한 배달원이 자신이 처리해야 할 배달 주문들을 모두 수행하는 경우에 드는 비용으로서 계산될 수도 있고, 전체 배달 관리 시스템에서 모든 배달원들이 각자 처리해야 할 배달 주문들을 모두 수행하는 경우에 드는 비용으로서 계산될 수도 있다. 전술한 바와 같이, 매칭 풀에서 배달 주문을 선택하는 시점에서는, 배달원과 무관하게 해당 배달 주문의 속성 자체에 의해 결정되는 정보만으로 배달 비용이 산출될 수도 있다.
도 5는 본 개시의 일 실시예에 따른, 최적의 배달 경로를 결정하는 과정을 나타낸 도면이다. 전술한 바와 같이, 장치(100)는 후보 배달원 각각에 대하여, 해당 후보 배달원이 이미 보유 중인 배달 주문 및 새로이 할당 대상이 되는 배달 주문을 모두 수행하기 위한 최적의 배달 경로를 결정할 수 있다.
구체적으로, 프로세서(310)는 한 후보 배달원 R2이 할당 대상이 되는 배달 주문 D1을 수행하기 위한 배달 경로를 결정할 수 있다. 도 5의 예에서, 해당 후보 배달원 R2는 이미 배달 주문 D_c2 및 D_c3를 보유하고 있을 수 있다. 여기서 배달 주문 D1은 물품 수령지 p1과 물품 배달지 d1을 가질 수 있다. 배달 주문 D_c2는 물품 수령지 p_c2와 물품 배달지 d_c2를 가질 수 있다. 배달 주문 D_c3는 물품 수령지 p_c3와 물품 배달지 d_c3를 가질 수 있다.
프로세서(310)는 이미 보유 중인 배달 주문 D_c2 및 D_c3와 할당 대상이 되는 배달 주문 D1 중 한 배달 주문, 예를 들어 D_c3를 선택하여 배달 경로를 결정할 수 있다(510). 해당 배달 경로는 1차 경로라고 부를 수 있다. 배달 주문이 한 개인 경우에는 물품 수령지가 하나이고, 물품 배달지가 하나이므로, 하나의 가능한 배달 경로만이 도출될 수 있다(512). 따라서 가능한 배달 경로 중 최적의 배달 경로 역시 하나만 도출될 수 있다(514).
프로세서(310)는, 결정된 1차 경로에 기초하여 경로 결정 연산을 1회 이상 반복 수행함으로써, 하나 이상의 K차 경로를 결정할 수 있다(520, 530). K는 이미 보유 중인 배달 주문 D_c2 및 D_c3와 할당 대상이 되는 배달 주문 D1의 총 개수(즉, 도 5의 예에서는 3)일 수 있다. 경로 결정 연산은, 이미 보유 중인 배달 주문 D_c2 및 D_c3와 할당 대상이 되는 배달 주문 D1 중 N차 경로(예: 1차 경로)에 포함되지 않은 배달 주문(예: D_c2)을 선택하여, 해당 배달 주문(예: D_c2)의 물품 수령지(예: p_c2)와 물품 배달지(예: d_c2)를 N차 경로(예: 1차 경로)에 추가하여 복수의 경로를 생성하는 연산을 포함할 수 있다. 또한, 경로 결정 연산은 생성된 복수의 경로 중 배달 비용이 작은 하나 이상의 (N+1)차 경로(예: 2차 경로)를 결정하는 연산을 포함할 수 있다. 여기서 N은 상술한 K보다 작고 1보다 크거나 같은 정수일 수 있다.
구체적으로, 프로세서(310)는 이미 보유 중인 배달 주문 D_c2 및 D_c3와 할당 대상이 되는 배달 주문 D1 중 1차 경로(514)에 포함되지 않은 배달 주문 D_c2를 선택할 수 있다. 프로세서(310)는 해당 1차 경로(514)에 배달 주문 D_c2의 물품 수령지 p_c2와 물품 배달지 d_c2를 추가하여 복수의 경로(522)를 생성할 수 있다. 물품 수령지 p_c2와 물품 배달지 d_c2는, 가능한 경우의 수에 따라, 1차 경로(514)의 경유지 p_c3와 d_c3와 조합되어, 그 사이에, 또는 그 앞이나 뒤에 추가될 수 있다. 즉, 복수의 경로(522)는 1차 경로(514)에 물품 수령지 p_c2와 물품 배달지 d_c2가 추가될 수 있는 모든 가능한 조합에 따라 생성된 경로들일 수 있다. 프로세서(310)는 생성된 복수의 경로(522) 중에서 배달 비용이 작은 순서대로 하나 이상의 경로를 선택하여, 이를 2차 경로(524)로 결정할 수 있다. 일 실시예에서, 프로세서(310)는 복수의 경로 중 배달 비용이 작은 순서대로 미리 설정된 개수의 경로를 선택할 수 있다. 일 실시예에서, 선택되는 경로의 개수는 3개일 수 있다.
프로세서(310)는 마찬가지 방식으로 2, 3, ..., K차 경로를 결정해 갈 수 있다. 도 5의 예에서, 프로세서(310)는 이미 보유 중인 배달 주문 D_c2 및 D_c3와 할당 대상이 되는 배달 주문 D1 중 2차 경로(524)에 포함되지 않은 배달 주문 D1을 선택할 수 있다. 프로세서(310)는 2차 경로(524)에 배달 주문 D1의 물품 수령지 p1과 물품 배달지 d1을 추가하여 복수의 경로를 생성할 수 있다. 앞서 진행된 2차 경로의 경로 결정 연산에서, 하나 이상의 2차 경로(예: 3개의 2차 경로)가 결정되었으므로, 프로세서(310)는 각각의 2차 경로(524)마다 경우의 수 별로 물품 수령지 p1과 물품 배달지 d1을 추가하여 복수의 경로를 생성할 수 있다. 즉, 2차 경로 중 하나에 물품 수령지 p1과 물품 배달지 d1을 추가하여 복수의 경로(534)를 생성하고, 2차 경로 중 다른 하나에 물품 수령지 p1과 물품 배달지 d1을 추가하여 복수의 경로(536)를 생성할 수 있다. 프로세서(310)는 생성된 복수의 경로(534, 536) 중에서 배달 비용이 작은 하나 이상의 경로를 선택하여, 이를 3차 경로(538)로 결정할 수 있다.
프로세서(310)는 이러한 방식으로 경로 결정 연산을 반복 수행하여, 하나 이상의 K차 경로(예: 3차 경로)를 결정할 수 있다. 프로세서(310)는 하나 이상의 K차 경로(예: 3차 경로) 중 배달 비용이 가장 작은 하나의 경로를 선택하여, 이를 해당 후보 배달원 R2가 해당 배달 주문들 D_c2, D_c3 및 D1을 수행하기 위한 최적의 배달 경로로 결정할 수 있다.
도 6은 본 개시의 일 실시예에 따른, 배달 주문에 대한 최적의 배달원을 확률적으로 결정하는 과정을 설명하기 위한 도면이다. 전술한 바와 같이, 장치(100)는 각 후보 배달원에 대하여 할당 대상 배달 주문을 수행하기 위한 배달 경로를 결정하고, 그 배달 경로에 따라 배달을 수행함에 있어 할당 대상 배달 주문에 의해 발생되는 배달 비용 증가량을 결정하고, 배달 비용 증가량에 기초하여 해당 배달 주문에 대응되는 최적의 배달원을 결정할 수 있다. 일 실시예에서, 장치(100)는 해당 배달 비용 증가량에 기초하여, 확률적으로 해당 배달 주문에 대응되는 최적의 배달원을 결정할 수 있다.
구체적으로, 프로세서(310)는 각 후보 배달원에 대해 결정된 배달 비용 증가량에 기초하여, 각 후보 배달원이 해당 배달 주문에 대응되는 배달원으로 결정될 확률(P)을 산출할 수 있다. 예를 들어, 배달 비용 증가량은 도 5에서 결정된 최적의 배달 경로에 대해서 산출될 수 있다. 확률(P)은 다음 수학식에 따라 산출될 수 있다.
수학식 2에서와 같이, 확률(P)은 각 후보 배달원에 대한 배달 비용 증가량과 음의 상관 관계를 가질 수 있다. 다시 말해, 배달 증가량이 클수록 확률(P)이 작고, 배달 증가량이 작을수록 확률(P)이 클 수 있다. 프로세서(310)는 각 후보 배달원에 대해 산출된 확률(P)에 기초하여, 후보 배달원 중 하나를 할당 대상 배달 주문에 대응되는 최적의 배달원으로 결정할 수 있다. 예를 들어, 배달원 R1, R2, R3, R4, R5, ..., Rm의 각각에 대하여 25%, 30%, 20%, 5%, 5%, 1% 등의 확률(P)이 결정될 수 있다. 해당 확률(P)에 따라, 프로세서(310)는 배달원 R1, R2, R3, R4, R5, ..., Rm 중 한 배달원, 예를 들어 배달원 R3가 할당 대상 배달 주문에 대응되는 최적의 배달원으로 결정될 수 있다.
수학식 2에서 T는 확률(P)을 조정하기 위해 설정되는 파라미터일 수 있다. T가 0에 가까운 값으로 설정될수록, 배달 비용 증가량이 가장 작은 후보 배달원(R2)에게 해당 배달 주문이 할당될 확률이 높아질 수 있다. T가 0에 충분히 가까운 값으로 설정되면, 항상 배달 비용 증가량이 가장 작은 후보(R2)가 해당 배달 주문의 최적의 배달원으로 결정될 수 있다(greedy 방식). 이 경우, 프로세서(310)는 각 후보 배달원의 배달 비용 증가량의 대소를 결정하고, 배달 비용 증가량이 가장 작은 후보 배달원(R2)을 해당 배달 주문에 대응하는 최적의 배달원으로 결정할 수 있다. 한편 T가 크게 설정될수록, 해당 배달 주문은 거의 동일한 확률로 후보 배달원들(R1, R2, R3, R4, R5, ..., Rm) 중 하나에게 할당될 수 있다. 즉 프로세서(310)는 무작위로 후보 배달원 중 임의의 한 배달원을 해당 배달 주문의 최적의 배달원으로 결정할 수 있다.
장치(100)가 배달 비용 증가량이 가장 작은 배달원을 최적의 배달원으로 결정하는 경우, 개별적인 배달 주문의 처리에 있어 배달 비용을 최소화할 수 있다. 장치(100)가 확률적으로 최적의 배달원을 결정하는 경우, 장치(100)가 관리하는 전체 배달 주문들의 처리에 소모되는 전체 배달 비용이 최적화하는 데에 도움이 될 수 있다. 예를 들어, 단거리 배달 주문은, 빠른 이동 수단을 이용하는 배달원보다, 느린 이동 수단을 이용하는 배달원에게 할당되는 것이 전체 배달 관리 시스템의 배달 비용을 줄이는 데에 효과적일 수 있다. 이와 같이 할당하여야 장거리 배달 주문을 빠른 이동 수단을 이용하는 배달원에게 할당하는 것이 가능해지기 때문이다. 그러나 이동 수단 간 배달 비용의 차이가 크게 나지 않는 배달 주문은, 느린 이동 수단을 이용하는 배달원에게 할당되는 것이 전체 배달 관리 시스템의 배달 비용을 줄이는 데에 효과적일 수도 있다. 이를 위해 이동 수단 간 배달 비용의 차이가 크게 나지 않는 배달 주문은, 이동 수단에 따라 배달원들의 확률(P)이 크게 차이 나지 않도록 확률 산출 과정이 조정할 수도 있다.
전술한 바와 같이, 한 배달 주문(D1)에 대응하는 최적의 배달원이 결정되면, 장치(100)는 해당 배달원의 단말로 배달 주문(D1)에 대한 정보를 전달할 수 있다. 일 실시예에서, 최적의 배달원이 결정된 이후의 처리는, 최적의 배달원으로 결정된 배달원이 어떠한 방식에 따라 배달 주문을 할당받을 것으로 선택했는지에 따라 달라질 수 있다.
배달 주문을 할당받는 방식에는 자동 할당 방식과 경쟁 할당 방식이 있을 수 있다. 자동 할당 방식은 배달 관리 서비스 업체가 배달원에게 적절한 배달 주문을 자동으로 할당해 주는 방식일 수 있다. 예를 들어, 배달 주문 D1에 대해 최적의 배달원으로 결정된 배달원 R3가 자동 할당 방식을 선택한 배달원이라면, 프로세서(310)는 배달원 R3를 해당 배달 주문 D1의 최적의 배달원으로 바로 할당할 수 있다. 다시 말해, 프로세서(310)로부터 배달 주문 D1을 배달원 R3를 할당받음에 있어서, 다른 배달원의 경쟁이 존재하지 않는다. 프로세서(310)는 통신 회로(330)를 제어하여, 배달원 R3의 단말로 할당된 배달 주문 D1을 수행하기 위한 제1 정보를 전달할 수 있다. 제1 정보에는, 배달원 R3가 배달 주문 D1에 할당되었음을 지시하는 정보, 배달 주문 D1의 물품 수령지 및 물품 배달지에 대한 정보, 배달 대상 물품에 대한 정보, 물품 제공 매장에 대한 정보, 배달 주문 D1을 수행하기 위한 최적의 경로에 대한 정보, 배달 대상 물품에 대한 결제 정보 등이 포함될 수 있다. 제1 정보를 자신의 단말을 통해 전달받은 배달원 R3는 제1 정보에 따라 배달 주문 D1을 수행할 수 있다.
경쟁 할당 방식은 배달 관리 서비스 업체가 배달원들에게 배달 주문의 리스트를 제공하고, 배달원이 해당 리스트에서 자신이 수행할 배달 주문을 직접 선택함으로서, 배달 주문에 대한 할당이 이루어지는 방식일 수 있다. 예를 들어, 배달 주문 D1에 대해 최적의 배달원으로 결정된 배달원 R1이 경쟁 할당 방식을 선택한 배달원이라면, 프로세서(310)는 해당 배달 주문 D1을 배달원 R1의 배달 주문 리스트에 노출시킬 수 있다. 즉, 프로세서(310)는 해당 배달원 R1의 단말로, 해당 배달 주문 D1을 선택하여 할당받기 위한 제2 정보를 전달할 수 있다. 제2 정보에는, 배달 주문 D1이 배달 주문 리스트에 포함되기 위한 정보, 배달 주문 D1의 물품 수령지 및 물품 배달지에 대한 정보, 배달 대상 물품에 대한 정보, 물품 제공 매장에 대한 정보, 배달 주문 D1을 수행하기 위한 최적의 경로에 대한 정보, 배달 대상 물품에 대한 결제 정보, 배달 주문 D1이 생성된 시점에 대한 정보, 배달 주문 D1이 배달 주문 리스트를 통해 노출되고 있는 배달원의 수에 대한 정보, 배달 주문 D1의 수행 시 배달원에게 주어지는 보상에 대한 정보 등이 포함될 수 있다. 배달원 R1의 단말은 전달받은 제2 정보에 따라 해당 배달 주문 D1에 대한 정보를 배달 주문 리스트에 포함시키고, 또한 그 배달 주문 리스트를 화면을 통해 표시할 수 있다. 배달원 R1이 배달 주문 D1을 할당받고자 하면, 배달 주문 리스트 중 배달 주문 D1을 선택하여 할당받을 수 있다.
도 7은 본 개시의 일 실시예에 따른 경쟁 할당 방식에 있어, 할당 대상 배달 주문이 배달 주문 리스트에 노출되는 범위가 확장되는 과정을 나타낸 도면이다. 배달 주문 D1이 배달 주문 리스트에서 미리 설정된 시간 간격 내에 배달원 R1에게 할당되지 않을 경우, 프로세서(310)는 제2 정보를 해당 배달원 R1 외에 다른 배달원들의 단말에도 전달하여, 배달 주문 D1이 배달 주문 리스트를 통해 노출되는 범위를 넓혀나갈 수 있다. 이 때 추가적으로 제2 정보가 전달되는 배달원들은 경쟁 할당 방식을 선택한 배달원들일 수 있다.
구체적으로, 해당 배달 주문 D1이 처음으로 매칭 풀에 포함되어 배달원 할당 과정을 거치는 경우, 프로세서(310)는 배달 주문 D1에 대한 제2 정보를 앞서 결정된 최적의 배달원 R1의 단말에만 전달할 수 있다. 이에 따라 배달 주문 D1은 최적의 배달원 R1의 배달 주문 리스트에만 미리 설정된 시간 간격(710) 동안 노출될 수 있다. 즉, 이 시간 간격(710) 동안 배달 주문 D1이 최적의 배달원 R1에게만 단독 추천될 수 있다. 최적의 배달원 R1에만 노출되는 시간 간격은, 예를 들어 15초일 수 있다. 해당 시간 간격(710, 예: 0-15초) 내에 배달 주문 D1이 최적의 배달원 R1에게 선택되면, 그 배달 주문 D1은 최적의 배달원 R1에게 할당되고, 최적의 배달원 R1에 의해 수행될 수 있다.
시간 간격(710) 내에 배달 주문 D1이 최적의 배달원 R1에게 선택되지 않으면, 프로세서(310)는 배달 주문 D1에 대한 제2 정보를 최적의 배달원 R1을 포함하여 하나 이상의 배달원, 예를 들어 배달원 R5와 R4의 단말에 추가적으로 전달할 수 있다. 일 실시예에서, 이전 시간 간격에 제2 정보를 전달했던 배달원의 단말에는 다음 시간 간격에 제2 정보를 다시 전달하지 않을 수도 있다. 이에 따라 배달 주문 D1은 미리 설정된 시간 간격(720, 예: 15-30초) 동안 최적의 배달원 외에 새로이 추가된 다른 배달원 R5와 R4에게도 노출될 수 있다. 여기서 추가적으로 배달 주문 D1이 노출되는 배달원들 R5와 R4는, 앞선 확률에 기초한 최적의 배달원 선정 과정에서 최적의 배달원 다음 순위를 차지한 경쟁 할당 방식의 배달원들일 수 있다. 일 실시예에서, 추가로 노출되는 배달원들의 수는 2명일 수 있다. 이 경우 추가로 노출되는 배달원들 R5와 R4는, 상술한 최적의 배달원 선정 과정에서 최적의 배달원 R1에 이어 각각 2위와 3위로 해당 배달 주문 D1에 적합한 것으로 결정된 배달원들일 수 있다. 상술한 최적의 배달원 선정 과정에서, 배달원 R1이 25%의 확률에 따라 최적의 배달원으로 결정되면, 확률(P)에 따라 경쟁 할당 방식을 선택한 배달원들 사이의 순위가 결정될 수 있다. 예를 들어 배달원 R5가 2위, 배달원 R4가 3위로 결정될 수 있다. 시간 간격(720) 내에 배달 주문 D1이 배달원들 R1, R5 및 R4 중 하나에 의해 선택되면, 배달 주문 D1은 해당 배달원에게 할당되어 수행될 수 있다.
시간 간격(720) 내에 배달 주문 D1이 배달원들 R1, R5 및 R4에게 선택되지 않으면, 프로세서(310)는 기존에 제2 정보를 전달했던 배달원 R1, R5 및 R4를 포함하여 하나 이상의 배달원 R9와 R7의 단말에 배달 주문 D1에 대한 제2 정보를 추가적으로 전달할 수 있다. 이에 따라 다음 시간 간격(730, 예: 30-45초) 동안 총 5명의 배달원 R1, R5, R4, R9 및 R7에게 해당 배달 주문 D1이 노출될 수 있다. 여기서 추가되는 2명의 배달원 R9과 R7은, 최적의 배달원 선정 과정에서 각각 4위와 5위를 차지한 배달원들일 수 있다. 해당 시간 간격(730) 내에 배달 주문 D1이 배달원들 R1, R5, R4, R9 및 R7 중 하나에 의해 선택되면, 배달 주문 D1은 해당 배달원에게 할당되어 수행될 수 있다.
시간 간격(730) 내에 배달 주문 D1이 배달원들 R1, R5, R4, R9 및 R7에게 선택되지 않으면, 프로세서(310)는 기존에 제2 정보를 전달했던 배달원들 R1, R5, R4, R9 및 R7을 포함하여 하나 이상의 배달원 R13, R15, R6, R10 및 R21의 단말에 배달 주문 D1에 대한 제2 정보를 추가적으로 전달할 수 있다. 이에 따라 다음 시간 간격(740, 예: 45-60초) 동안 총 10명의 배달원 R1, R5, R4, R9, R7, R13, R15, R6, R10 및 R21에게 해당 배달 주문 D1이 노출될 수 있다. 추가된 5명의 배달원들은 각각 6-10위를 차지한 배달원들일 수 있다. 해당 시간 간격(740) 내에 배달 주문 D1이 배달원들 R1, R5, R4, R9, R7, R13, R15, R6, R10 및 R21 중 하나에 의해 선택되면, 배달 주문(D1)은 해당 배달원에게 할당되어 수행될 수 있다.
이와 같은 방식에 따라, 풀링 주기(예: 1분)에 해당하는 시간 간격 동안 배달 주문 D1이 노출되었음에도 불구하고 배달원에게 선택되지 못하면, 해당 배달 주문D1은 다음 매칭 풀(두 번째 매칭 풀)에 포함되어 두 번째로 배달원 할당 과정을 거칠 수 있다. 전술한 바와 같이, 프로세서(310)는 풀링 주기(예: 1분)마다 배달원이 미할당된 배달 주문을 풀링하여 매칭 풀을 생성하기 때문이다.
프로세서(310)는, 이전 매칭 풀에서 노출 대상이었던 10명의 배달원 R1, R5, R4, R9, R7, R13, R15, R6, R10, R21을 포함하여 총 10명의 배달원에게 미리 설정된 시간 간격(예: 1분) 동안 배달 주문(D1)을 노출시킬 수 있다. 일 실시예에서, 이전 추천 대상이었던 10명 중 배달 주문을 수행할 수 없는 일부(예: 3명)를 제외한 7명의 배달원 및 두 번째 매칭 풀 계산에서 배달 주문(D1)에 대해 1-3위를 차지한 경쟁 할당 방식의 3명의 배달원에게 배달 주문(D1)이 노출될 수 있다.
이와 같은 방식에 따라, 두 번째 풀링 주기(예: 1분)에 해당하는 시간 간격 동안 배달 주문(D1)이 노출되었음에도 불구하고 배달원에게 선택되지 못하면, 해당 배달 주문(D1)은 다음 매칭 풀(세 번째 매칭 풀)에 포함되어 세 번째로 배달원 할당 과정을 거칠 수 있다. 세 번째 매칭 과정 이후로는, 배달 주문(D1)은 모든 경쟁 할당 방식의 후보 배달원들에게 노출될 수 있다.
예를 들어, 서버는 9시 00분 00초 ~ 9시 00분 59초 사이에 생성된 배달 주문을 모아, 9시 01분 00초에 배달원 매칭 계산을 수행할 수 있다. 해당 계산 과정에 5초가 소요되었고 선정된 최적의 배달원이 경쟁 할당 방식의 배달원이라면, 9시 01분 05초부터 15초간 최적의 배달원에게 해당 배달 주문이 단독 추천될 수 있다. 단독 추천 과정에 의해 배달 주문이 할당되지 않은 경우, 서버는 9시 01분 20초부터 15초간 3명의 배달원에게 경쟁 추천할 수 있다. 그래도 배달 주문이 할당되지 않으면, 서버는 9시 01분 35초부터 15초간 5명의 배달원에게 경쟁 추천할 수 있다. 그래도 배달 주문이 할당되지 않으면, 서버는 9시 01분 50초부터 15초간 10명의 배달원에게 경쟁 추천할 수 있다. 배달 주문 할당에 실패하면, 해당 배달 주문은 다음 매칭 풀에 포함되고, 다시 배달원 매칭 계산이 수행될 수 있다. 해당 계산은, 이전 매칭 풀의 계산이 완료된 9시 1분 05초의 1분 뒤인 9시 2분 5초에 실행될 수 있다. 계산 완료시까지, 예를 들어 계산에 4초가 소요되었다면 2분 4초까지는 배달원들에게 빈 배달 주문 리스트가 노출될 수 있다.
일 실시예에서, 한 시간 간격(예: 740)에 추가로 제2 정보가 전달된 배달원의 수(예: 5명)는 이전 시간 간격(예: 730)에 추가로 제2 정보가 전달된 배달원의 수(예: 2명)보다 크거나 같을 수 있다. 일 실시예에서, 각 시간 간격에 배달 주문이 노출되는 배달원의 수는 실시자의 의도에 따라 다르게 설정될 수 있다.
일 실시예에서, 복수의 배달 주문이 한 배달원의 배달 주문 리스트에 노출되는 경우, 배달원 단말의 어플리케이션 프로그램에 설정되어 있는 기본 정렬 순서에 따라 복수의 배달 주문이 정렬되어 노출될 수 있다. 일 실시예에서, 서비스 제공자(배달 관리 서비스 업체)는 각 지역별로 배달원을 관리하는 지점(예: 서울 남부 지점)을 가질 수 있다. 지점 각각은 해당 배달원들에게 적용할 배달 주문 할당 방식을 설정할 수 있다. 예를 들어 서울 남부 지점은, 서울 남부 지점에 소속된 배달원들이 자동 할당 방식에 따라 할당받는 것을 허용할 지 여부를 결정할 수 있다. 일 실시예에서, 자동 할당 방식을 사용 중인 지점의 배달원 각각은 배달원 단말을 통해 할당 방식을 선택할 수 있다.
도 8은 본 개시의 일 실시예에 따른, 물품 준비 요청 및 배달 완료 예상 시점 통지 과정을 나타낸 도면이다. 일 실시예에서, 배달 주문(114)을 수행하는 배달원(120)은 직접 매장(130)에 물품의 준비(예: 음식 조리)를 요청할 수 있다. 배달원(120)은 자신의 단말(122)을 통해 매장(130)의 단말(132)로 물품 준비를 요청하는 정보를 전달할 수 있다.
일 실시예에서, 장치(100)가 배달원(120)이 물품 수령지 내지 매장(130)에 도착할 시간을 예상하여 적절한 시점에 매장에 물품의 준비를 요청할 수도 있다. 예를 들어, 조리에 10분의 시간이 소요되는 음식을 배달해야 하고, 배달원(120)이 현재 위치에서 물품 수령지까지 이동하는 데에 15분의 시간이 소요될 것으로 예상되는 경우, 프로세서(310)는 배달 주문 할당 후 약 5분 뒤 매장(130)의 단말(132)로 해당 음식의 조리 요청을 전송할 수 있다. 일 실시예에서, 프로세서(310)의 물품 준비 요청 시점은, 해당 배달원(120)의 배달 진행 상태(이동 상황), 교통 상황 등의 정보에 따라 변동될 수 있다.
본 개시에서, 매장 단말(132)은 본 개시에 따른 배달 과정 관리 기술에 따라 장치(100), 사용자의 단말(112) 및/또는 배달원의 단말(122)과 통신하기 위하여, 매장 측에 마련되는 장치일 수 있다. 매장 단말(132)은 다양한 형태의 장치가 될 수 있다. 예를 들어, 매장 단말(132)은 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치(예: 태블릿 PC, 랩탑, 데스크탑), 휴대용 멀티미디어 장치, POS(Point Of Sales) 장치 또는 이러한 장치들의 조합에 따른 장치일 수 있다. 매장 단말(132)에는 본 개시에 따른 배달 과정 관리 기술을 제공하는 프로그램(예: 어플리케이션 프로그램)이 설치되어 있을 수 있다. 또는, 매장 단말(132)은 본 개시에 따른 배달 과정 관리 기술을 제공하는 웹페이지에 접근할 수 있다. 매장 단말(132)은 해당 프로그램 내지 웹페이지를 통하여 장치(100), 사용자의 단말(112) 및/또는 배달원의 단말(122)과 통신할 수 있다. 매장 단말(132)은, 하나 이상의 프로세서, 하나 이상의 메모리 및/또는 통신 회로를 포함할 수 있다. 하나 이상의 메모리는, 하나 이상의 프로세서에 의한 실행 시, 하나 이상의 프로세서가 동작을 수행하도록 하는 명령들을 저장할 수 있다. 매장 단말(132)의 프로세서는, 본 개시에 따른 배달 과정 관리 기술에 따라, 전술한 장치(100)의 동작에 대응되는 동작들을 수행할 수 있다.
일 실시예에서, 배달 주문(114)을 수행 중인 배달원(120)이 물품 수령지에서 물품을 수령할 때, 프로세서(310)는 사용자(110)의 단말(112)로 물품이 물품 배달지에 도착할 예상 시점에 대한 정보를 전달할 수 있다. 프로세서(310)는 배달원(120)의 이동 상황, 교통 상황 등의 정보에 기초하여 물품이 물품 배달지에 도착할 예상 시점을 결정할 수 있다. 이를 통해 사용자(110)는 물품의 최종 배달 예상 시점을 알 수 있다.
일 실시예에서, 배달 주문을 할당 받은 배달원이 배달 주문의 할당을 취소할 수도 있다. 이는 미리 설정된 배달 주문 취소 API(Application Program Interface)에 의해 수행될 수 있다. 일 실시예에서, 할당이 취소된 배달 주문은 다음 매칭 풀에 포함되어 배달원 할당 과정을 다시 거칠 수 있다. 일 실시예에서, 할당이 취소된 배달 주문은 매칭 풀에서 계산되지 않고 경쟁 할당 방식의 후보 배달원들에게 노출될 수 있다. 일 실시예에서, 이미 매장에 물품 준비가 요청되었는데, 배달 주문의 할당이 취소될 수도 있다. 이 경우 프로세서(310)는 해당 배달 주문에 대해 일단 가상의 배달원을 할당해 둘 수 있다. 프로세서(310)는 물품의 준비 완료 시간까지 남은 시간을 결정하고, 남은 시간에 따라 배달료를 할증할 수 있다. 배달료는 배달원에게 지급되는 보수일 수 있다. 일 실시예에서, 일부 매장에 대한 배달료에 대해서는 배달료 할증이 적용되지 않을 수 있다. 예를 들어 물품 준비 완료까지 남은 시간은, 물품 준비를 요청한 시각에 물품 준비에 소요되는 시간을 더하고 다시 현재 시각을 빼면 구할 수 있다. 물품 준비까지 남은 시간이 9분 미만이면 1,000원, 8분 미만이면 1,100원 등으로 배달료가 할증될 수 있다. 물품 준비까지 남은 시간이 미리 설정된 시간 이하이면, 장치(100)의 서비스 제공자가 직접 해당 배달 주문의 처리 방향을 결정할 수 있다.
도 9는 본 개시에 따른 장치(100)에 의해 수행될 수 있는, 배달 과정 관리 방법의 일 실시예를 나타낸 도면이다. 본 개시에 따른 배달 과정 관리 방법은 컴퓨터로 구현된 방법일 수 있다. 도시된 흐름도에서 본 개시에 따른 방법 또는 알고리즘의 각 단계들이 순차적인 순서로 설명되었지만, 각 단계들은 순차적으로 수행되는 것 외에, 본 개시에 의해 임의로 조합될 수 있는 순서에 따라 수행될 수도 있다. 본 흐름도에 따른 설명은, 방법 또는 알고리즘에 변화 또는 수정을 가하는 것을 제외하지 않으며, 임의의 단계가 필수적이거나 바람직하다는 것을 의미하지 않는다. 일 실시예에서, 적어도 일부의 단계가 병렬적, 반복적 또는 휴리스틱하게 수행될 수 있다. 일 실시예에서, 적어도 일부의 단계가 생략되거나, 다른 단계가 추가될 수 있다.
본 개시에 따른 장치(100)는, 배달 주문을 배달원에게 할당함에 있어서, 본 개시의 다양한 실시예에 따른 배달 과정 관리 방법을 수행할 수 있다. 본 개시의 일 실시예에 따른 배달 과정 관리 방법은, 하나 이상의 배달 주문 중 제1 배달 주문을 선택하는 단계(S910), 후보 배달원 중 제1 배달원이 제1 배달 주문과 제1 배달원이 이미 보유 중인 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하는 단계(S920), 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하는 단계(S930), 제1 증가량에 기초하여 제1 배달원을 제1 배달 주문에 대응하는 배달원으로 결정하는 단계(S940), 및/또는 제1 배달원의 단말로 제1 배달 주문에 대한 정보를 전달하는 단계(S950)를 포함할 수 있다.
단계 S910에서, 장치(100)의 프로세서(310)는 메모리(320)에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택할 수 있다. 여기서 하나 이상의 배달 주문은 매칭 풀에 포함되어 있는 배달 주문을 의미할 수 있다. 제1 배달 주문은 배달원 할당 대상이 된 배달 주문을 의미할 수 있다. 전술한 바와 같이, 프로세서(310)는 배달 주문의 배달 비용이 큰 순서대로 배달 주문을 매칭 풀에서 선택할 수 있다.
단계 S920에서, 프로세서(310)는, 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 하나인 제1 배달원이, 제1 배달 주문과 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정할 수 있다. 배달 경로의 결정 과정은 전술한 바와 같다. 일 실시예에서, 프로세서(310)는 미리 설정된 조건에 기초하여 제1 배달 주문을 수행 가능한 하나 이상의 후보 배달원을 결정할 수 있다. 일 실시예에서, 미리 설정된 조건은, 배달 주문의 결제 수단, 배달 주문의 배달 대상 물품에 주류가 포함되는지 여부, 물품 수령지의 위치, 물품 배달지의 위치, 배달원의 위치 및 배달원의 이동 수단 중에서 선택된 적어도 하나에 기초하여 설정된 조건일 수 있다.
단계 S930에서, 프로세서(310)는 제1 배달원이 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 제1 배달 주문에 의한 배달 비용의 증가량인 제1 증가량을 결정할 수 있다. 단계 S940에서, 프로세서(310)는 제1 증가량에 기초하여, 제1 배달원을 제1 배달 주문에 대응하는 배달원으로 결정할 수 있다. 단계 S950에서, 프로세서(310)는 통신 회로(330)를 제어하여 제1 배달원의 단말로 제1 배달 주문에 대한 정보를 전달할 수 있다.
일 실시예에서, 단계 S940은 제1 증가량에 기초하여, 확률(P)를 산출하는 단계 및/또는 확률(P)에 따라 제1 배달원을 제1 배달 주문에 대응하는 배달원으로 결정하는 단계를 포함할 수 있다. 확률(P)는 제1 배달원을 제1 배달 주문에 대응하는 배달원으로 결정하는 데에 사용되는 확률로서, 제1 증가량과 음의 상관 관계를 가질 수 있다. 이는 수학식 2에서 T가 0보다 크게 설정된 경우에 최적의 배달원을 결정하는 실시예에 대응될 수 있다.
일 실시예에서, 프로세서(310)는 단계 S920, S930과 마찬가지로, 하나 이상의 후보 배달원 중 하나인 제2 배달원이, 제1 배달 주문과 제2 배달원이 이미 보유하고 있는 하나 이상의 제3 배달 주문을 수행하기 위한 제2 배달 경로를 결정할 수 있다. 배달 경로의 결정 과정은 전술한 바와 같다. 프로세서(310)는 제2 배달원이 제2 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 제1 배달 주문에 의한 배달 비용의 증가량인 제2 증가량을 결정할 수 있다. 이 때 단계 S940에서, 프로세서(310)는 제1 증가량과 제2 증가량의 대소를 결정하는 단계, 및/또는 제1 증가량이 제2 증가량보다 작다는 결정에 따라, 제1 배달원을 제1 배달 주문에 대응하는 배달원으로 결정하는 단계를 수행할 수 있다. 이는 수학식 2에서 T=0인 경우, 즉 그리디(greedy) 방식에 따라 최적의 배달원을 결정하는 실시예에 대응될 수 있다.
일 실시예에서, 단계 S920은, 제1 배달 주문 및 하나 이상의 제2 배달 주문 중 한 배달 주문의 물품 수령지와 물품 배달지에 기초하여 1차 경로를 결정하는 단계, 1차 경로에 기초하여, 경로 결정 연산을 한 번 이상 반복 수행하여 K차 경로를 결정하는 단계, 및/또는 K차 경로 중 배달 비용이 가장 작은 경로를 제1 배달 경로로 결정하는 단계를 포함할 수 있다. 경로 결정 연산은 전술한 바와 같다. 경로 결정 연산은, 제1 배달 주문 및 하나 이상의 제2 배달 주문 중 N차 경로에 포함되지 않은 배달 주문의 물품 수령지와 물품 배달지를 N차 경로에 추가하여 복수의 경로를 생성하는 연산, 및/또는 복수의 경로 중 배달 비용이 작은 하나 이상의 (N+1)차 경로를 결정하는 연산을 포함할 수 있다.
일 실시예에서, 배달 비용은, 배달원이 해당 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간 및 물품의 배달 목표 시점을 도과하는 시간 중에서 선택된 적어도 하나에 기초하여 산출될 수 있다. 배달 비용은 프로세서(310)에 의해 산출될 수 있다.
일 실시예에서, 단계 S950은, 제1 배달 주문에 대응하는 것으로 결정된 제1 배달원이 제1 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 제1 배달 주문을 수행하기 위한 제1 정보를 제1 배달원의 단말로 전달하는 단계를 포함할 수 있다. 여기서 제1 방식은 전술한 자동 할당 방식일 수 있다.
일 실시예에서, 단계 S950은, 제1 배달 주문에 대응하는 것으로 결정된 제1 배달원이 제2 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 제1 배달 주문을 선택하여 할당받기 위한 제2 정보를 제1 배달원의 단말로 전달하는 단계, 및/또는 제2 정보의 전달 이후 미리 설정된 시간 간격 내에 제1 배달 주문이 할당되지 않으면, 제1 배달원 및 제2 방식을 선택한 하나 이상의 제3 배달원의 단말 각각에 제2 정보를 추가로 전달하는 단계를 포함할 수 있다. 여기서 제2 방식은 전술한 경쟁 할당 방식일 수 있다. 하나 이상의 제3 배달원은 제1 배달 주문의 후보 배달원들 중 경쟁 할당 방식을 선택한 배달원들로서, 미리 설정된 시간 간격 이후에 추가로 제1 배달 주문이 노출되는 배달원들일 수 있다. 전술한 바와 같이, 제3 배달원은 최적의 배달원 결정 과정에서, 최적의 배달원 다음의 순위를 차지한 배달원들일 수 있다.
본 개시의 다양한 실시예들은 기기(machine)가 읽을 수 있는 기록 매체(machine-readable recording medium)에 기록된 소프트웨어로 구현될 수 있다. 소프트웨어는 상술한 본 개시의 다양한 실시예들을 구현하기 위한 소프트웨어일 수 있다. 소프트웨어는 본 개시가 속하는 기술분야의 프로그래머들에 의해 본 개시의 다양한 실시예들로부터 추론될 수 있다. 예를 들어 소프트웨어는 기기가 읽을 수 있는 명령(예: 코드 또는 코드 세그먼트) 또는 프로그램일 수 있다. 기기는 기록 매체로부터 호출된 명령어에 따라 동작이 가능한 장치로서, 예를 들어 컴퓨터일 수 있다. 일 실시예에서, 기기는 본 개시의 실시예들에 따른 장치(100)일 수 있다. 일 실시예에서, 기기의 프로세서는 호출된 명령을 실행하여, 기기의 구성요소들이 해당 명령에 해당하는 기능을 수행하게 할 수 있다. 일 실시예에서, 프로세서는 본 개시의 실시예들에 따른 하나 이상의 프로세서(310)일 수 있다. 기록 매체는 기기에 의해 읽혀질 수 있는, 데이터가 저장되는 모든 종류의 기록 매체(recording medium)를 의미할 수 있다. 기록 매체는, 예를 들어 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등을 포함할 수 있다. 일 실시예에서, 기록 매체는 하나 이상의 메모리(320)일 수 있다. 일 실시예에서, 기록 매체는 네트워크로 연결된 컴퓨터 시스템 등에 분산된 형태로서 구현될 수도 있다. 소프트웨어는 컴퓨터 시스템 등에 분산되어 저장되고, 실행될 수 있다. 기록 매체는 비일시적(non-transitory) 기록 매체일 수 있다. 비일시적 기록 매체는, 데이터가 반영구적 또는 임시적으로 저장되는 것과 무관하게 실재하는 매체(tangible medium)를 의미하며, 일시적(transitory)으로 전파되는 신호(signal)를 포함하지 않는다.
이상 다양한 실시예들에 의해 본 개시의 기술적 사상이 설명되었지만, 본 개시의 기술적 사상은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 이해할 수 있는 범위에서 이루어질 수 있는 다양한 치환, 변형 및 변경을 포함한다. 또한, 그러한 치환, 변형 및 변경은 첨부된 청구범위 내에 포함될 수 있는 것으로 이해되어야 한다.
Claims (20)
- 하나 이상의 프로세서; 및상기 하나 이상의 프로세서에 의한 실행 시, 상기 하나 이상의 프로세서가 동작을 수행하도록 하는 명령들이 저장된 하나 이상의 메모리를 포함하고,상기 하나 이상의 프로세서는,상기 하나 이상의 메모리에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택하고,상기 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 제1 배달원이, 상기 제1 배달 주문과 상기 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하고,상기 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하고,상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하고,상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하고,상기 제1 배달 경로는, 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 각각의 물품 수령지 및 물품 배달지의 조합에 따른 복수의 경로 중 배달 비용이 가장 작은 경로인, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는,상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 데에 사용되는 확률을 산출하고 - 상기 확률은 상기 제1 증가량과 음의 상관 관계를 가짐 - ,상기 확률에 따라 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는,상기 하나 이상의 후보 배달원 중 제2 배달원이, 상기 제1 배달 주문과 상기 제2 배달원이 보유하고 있는 하나 이상의 제3 배달 주문을 수행하기 위한 제2 배달 경로를 결정하고,상기 제2 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제2 증가량을 결정하고,상기 제1 증가량과 상기 제2 증가량의 대소를 결정하고,상기 제1 증가량이 상기 제2 증가량보다 작다는 결정에 따라, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는,상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 한 배달 주문의 물품 수령지와 물품 배달지에 기초하여 1차 경로를 결정하고,상기 1차 경로에 기초하여, 경로 결정 연산을 복수 회 수행하여 K차 경로를 결정하고 - 상기 K는 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문의 총 개수임 - ,상기 K차 경로 중 배달 비용이 가장 작은 경로를 상기 제1 배달 경로로 결정하고,상기 경로 결정 연산은:상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 N차 경로에 포함되지 않은 배달 주문의 물품 수령지와 물품 배달지를 상기 N차 경로에 추가하여 복수의 경로를 생성하는 연산 - 상기 N은 상기 K보다 작고 1보다 크거나 같은 정수임 - ; 및상기 복수의 경로 중 배달 비용이 작은 하나 이상의 (N+1)차 경로를 결정하는 연산을 포함하는, 장치.
- 제1항에 있어서,상기 배달 비용은, 상기 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간 및 물품의 배달 목표 시점을 도과하는 시간 중에서 선택된 적어도 하나에 기초하여 산출되는, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는, 미리 설정된 조건에 기초하여, 상기 제1 배달 주문을 위한 상기 하나 이상의 후보 배달원을 결정하고,상기 미리 설정된 조건은, 배달 주문의 결제 수단, 배달 주문의 배달 대상 물품에 주류가 포함되는지 여부, 물품 수령지의 위치, 물품 배달지의 위치, 배달원의 위치 및 배달원의 이동 수단 중에서 선택된 적어도 하나에 기초하여 설정된 조건인, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제1 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 상기 제1 배달 주문을 수행하기 위한 제1 정보를 상기 제1 배달원의 단말로 전달하는, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는,상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제2 방식에 의한 배달 주문 할당을 선택한 배달원인 경우, 상기 제1 배달 주문을 선택하여 할당받기 위한 제2 정보를 상기 제1 배달원의 단말로 전달하고,상기 제2 정보의 전달 이후 미리 설정된 시간 간격 내에 상기 제1 배달 주문이 할당되지 않으면, 상기 제1 배달원 및 상기 제2 방식을 선택한 하나 이상의 제3 배달원의 단말 각각에 상기 제2 정보를 추가로 전달하는, 장치.
- 제8항에 있어서,상기 하나 이상의 프로세서는,상기 제2 정보의 추가 전달 이후 미리 설정된 시간 간격 내에 상기 제1 배달 주문이 할당되지 않으면, 상기 제1 배달원, 상기 하나 이상의 제3 배달원 및 상기 제2 방식을 선택한 둘 이상의 제4 배달원의 단말 각각에 상기 제2 정보를 추가로 전달하는, 장치.
- 제1항에 있어서,상기 하나 이상의 프로세서는, 상기 하나 이상의 배달 주문 중 배달 비용이 큰 배달 주문부터 순차적으로 선택하여 배달원을 할당하는, 장치.
- 제1항에 있어서,상기 제1 배달 주문을 생성한 사용자의 단말 및 상기 제1 배달원의 단말과 통신하는 통신 회로를 더 포함하는, 장치.
- 하나 이상의 프로세서 및 상기 하나 이상의 프로세서에 의해 실행되기 위한 명령들이 저장된 하나 이상의 메모리를 포함하는 장치에서 수행되는 방법에 있어서,상기 하나 이상의 프로세서가,상기 하나 이상의 메모리에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택하는 단계;상기 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 제1 배달원이, 상기 제1 배달 주문과 상기 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하는 단계;상기 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하는 단계;상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계; 및상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하는 단계를 포함하고,상기 제1 배달 경로는, 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 각각의 물품 수령지 및 물품 배달지의 조합에 따른 복수의 경로 중 배달 비용이 가장 작은 경로인, 방법.
- 제12항에 있어서, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계는,상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 데에 사용되는 확률을 산출하는 단계 - 상기 확률은 상기 제1 증가량과 음의 상관 관계를 가짐 - ; 및상기 확률에 따라 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계를 포함하는, 방법.
- 제12항에 있어서,상기 하나 이상의 후보 배달원 중 제2 배달원이, 상기 제1 배달 주문과 상기 제2 배달원이 보유하고 있는 하나 이상의 제3 배달 주문을 수행하기 위한 제2 배달 경로를 결정하는 단계; 및상기 제2 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제2 증가량을 결정하는 단계를 더 포함하고,상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계는,상기 제1 증가량과 상기 제2 증가량의 대소를 결정하는 단계; 및상기 제1 증가량이 상기 제2 증가량보다 작다는 결정에 따라, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하는 단계를 포함하는, 방법.
- 제12항에 있어서, 상기 제1 배달 경로를 결정하는 단계는,상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 한 배달 주문의 물품 수령지와 물품 배달지에 기초하여 1차 경로를 결정하는 단계;상기 1차 경로에 기초하여, 경로 결정 연산을 복수 회 수행하여 K차 경로를 결정하는 단계 - 상기 K는 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문의 총 개수임 - ; 및상기 K차 경로 중 배달 비용이 가장 작은 경로를 상기 제1 배달 경로로 결정하는 단계를 포함하고,상기 경로 결정 연산은:상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 중 N차 경로에 포함되지 않은 배달 주문의 물품 수령지와 물품 배달지를 상기 N차 경로에 추가하여 복수의 경로를 생성하는 연산 - 상기 N은 상기 K보다 작고 1보다 크거나 같은 정수임 - ; 및상기 복수의 경로 중 배달 비용이 작은 하나 이상의 (N+1)차 경로를 결정하는 연산을 포함하는, 방법.
- 제12항에 있어서,상기 배달 비용은, 상기 배달 주문을 수행하는 데에 소요되는 총 시간, 물품을 물품 수령지에서 수령 후 물품 배달지로 배달하는 데에 소요되는 시간, 물품의 수령 목표 시점을 도과하는 시간 및 물품의 배달 목표 시점을 도과하는 시간 중에서 선택된 적어도 하나에 기초하여 산출되는, 방법.
- 제12항에 있어서,미리 설정된 조건에 기초하여, 상기 제1 배달 주문을 수행 가능한 상기 하나 이상의 후보 배달원을 결정하는 단계를 더 포함하고,상기 미리 설정된 조건은, 배달 주문의 결제 수단, 배달 주문의 배달 대상 물품에 주류가 포함되는지 여부, 물품 수령지의 위치, 물품 배달지의 위치, 배달원의 위치 및 배달원의 이동 수단 중에서 선택된 적어도 하나에 기초하여 설정된 조건인, 방법.
- 제12항에 있어서, 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하는 단계는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제1 방식에 의한 배달 주문 할당을 선택한 배달원인 경우,상기 제1 배달 주문을 수행하기 위한 제1 정보를 상기 제1 배달원의 단말로 전달하는 단계를 포함하는, 방법.
- 제12항에 있어서, 상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하는 단계는, 상기 제1 배달 주문에 대응하는 것으로 결정된 상기 제1 배달원이 제2 방식에 의한 배달 주문 할당을 선택한 배달원인 경우,상기 제1 배달 주문을 선택하여 할당받기 위한 제2 정보를 상기 제1 배달원의 단말로 전달하는 단계; 및상기 제2 정보의 전달 이후 미리 설정된 시간 간격 내에 상기 제1 배달 주문이 할당되지 않으면, 상기 제1 배달원 및 상기 제2 방식을 선택한 하나 이상의 제3 배달원의 단말 각각에 상기 제2 정보를 추가로 전달하는 단계를 포함하는, 방법.
- 하나 이상의 프로세서에 의한 실행 시, 상기 하나 이상의 프로세서가 동작을 수행하도록 하는 명령들을 기록한 비일시적 컴퓨터 판독 가능 기록 매체에 있어서,상기 명령들은, 상기 하나 이상의 프로세서가,하나 이상의 메모리에 저장된 하나 이상의 배달 주문 중 제1 배달 주문을 선택하고,상기 제1 배달 주문을 위한 하나 이상의 후보 배달원 중 제1 배달원이, 상기 제1 배달 주문과 상기 제1 배달원이 보유하고 있는 하나 이상의 제2 배달 주문을 수행하기 위한 제1 배달 경로를 결정하고,상기 제1 배달 경로에 따라 배달을 수행하는 데에 소모되는 배달 비용 중, 상기 제1 배달 주문에 의한 배달 비용의 제1 증가량을 결정하고,상기 제1 증가량에 기초하여, 상기 제1 배달원을 상기 제1 배달 주문에 대응하는 배달원으로 결정하고,상기 제1 배달원의 단말로 상기 제1 배달 주문에 대한 정보를 전달하도록 하고,상기 제1 배달 경로는, 상기 제1 배달 주문 및 상기 하나 이상의 제2 배달 주문 각각의 물품 수령지 및 물품 배달지의 조합에 따른 복수의 경로 중 배달 비용이 가장 작은 경로인, 컴퓨터 판독 가능한 기록 매체.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2020-0028923 | 2020-03-09 | ||
KR20200028923 | 2020-03-09 | ||
KR10-2020-0070886 | 2020-06-11 | ||
KR1020200070886A KR102252774B1 (ko) | 2020-03-09 | 2020-06-11 | 배달 과정을 관리하기 위한 장치, 방법 및 명령을 기록한 기록 매체 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021182743A1 true WO2021182743A1 (ko) | 2021-09-16 |
Family
ID=76157911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2021/000712 WO2021182743A1 (ko) | 2020-03-09 | 2021-01-19 | 배달 과정을 관리하기 위한 장치, 방법 및 명령을 기록한 기록 매체 |
Country Status (3)
Country | Link |
---|---|
KR (1) | KR102252774B1 (ko) |
TW (1) | TWI823066B (ko) |
WO (1) | WO2021182743A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102403710B1 (ko) * | 2021-10-26 | 2022-05-30 | 쿠팡 주식회사 | 배송 주문을 처리하는 전자 장치 및 그 방법 |
KR102681243B1 (ko) * | 2022-04-05 | 2024-07-04 | 주식회사 부릉 | 하이브리드 배송 배정 방법 및 상기 방법을 수행하는 장치 |
KR102527365B1 (ko) * | 2022-08-05 | 2023-05-02 | 주식회사 스매피 | 물품 배송 서비스 시스템, 서버 및 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016204307A1 (ko) * | 2015-06-15 | 2016-12-22 | 주식회사 메쉬코리아 | 배송 정보를 처리하고 출근을 확인하는 방법과 서버 |
KR20180013843A (ko) * | 2015-01-29 | 2018-02-07 | 베이징 디디 인피니티 테크놀로지 앤드 디벨럽먼트 컴퍼니 리미티드 | 오더 할당 시스템 및 방법 |
KR20180042598A (ko) * | 2016-10-18 | 2018-04-26 | 주식회사 우아한형제들 | 배달주문 분배시스템 및 방법 |
KR101904168B1 (ko) * | 2017-07-06 | 2018-10-04 | 주식회사 플로드 | 물류 배송방법 |
KR102034768B1 (ko) * | 2018-12-11 | 2019-10-22 | (주)델타온 | 배송인 풀(pool)의 확장성을 높인 배송 서비스 제공 방법 및 이를 위한 서버 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWM491221U (zh) * | 2014-07-24 | 2014-12-01 | Chia Nan University Of Phamacy & Science | 宅配人力管理系統 |
CN110648096A (zh) * | 2019-08-19 | 2020-01-03 | 北京三快在线科技有限公司 | 一种配送线路的生成方法和装置 |
CN110807545A (zh) * | 2019-10-22 | 2020-02-18 | 北京三快在线科技有限公司 | 任务时长的预估方法、装置、电子设备和存储介质 |
-
2020
- 2020-06-11 KR KR1020200070886A patent/KR102252774B1/ko active IP Right Grant
-
2021
- 2021-01-19 WO PCT/KR2021/000712 patent/WO2021182743A1/ko active Application Filing
- 2021-03-09 TW TW110108372A patent/TWI823066B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180013843A (ko) * | 2015-01-29 | 2018-02-07 | 베이징 디디 인피니티 테크놀로지 앤드 디벨럽먼트 컴퍼니 리미티드 | 오더 할당 시스템 및 방법 |
WO2016204307A1 (ko) * | 2015-06-15 | 2016-12-22 | 주식회사 메쉬코리아 | 배송 정보를 처리하고 출근을 확인하는 방법과 서버 |
KR20180042598A (ko) * | 2016-10-18 | 2018-04-26 | 주식회사 우아한형제들 | 배달주문 분배시스템 및 방법 |
KR101904168B1 (ko) * | 2017-07-06 | 2018-10-04 | 주식회사 플로드 | 물류 배송방법 |
KR102034768B1 (ko) * | 2018-12-11 | 2019-10-22 | (주)델타온 | 배송인 풀(pool)의 확장성을 높인 배송 서비스 제공 방법 및 이를 위한 서버 |
Also Published As
Publication number | Publication date |
---|---|
KR102252774B1 (ko) | 2021-05-17 |
TWI823066B (zh) | 2023-11-21 |
TW202139083A (zh) | 2021-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021182743A1 (ko) | 배달 과정을 관리하기 위한 장치, 방법 및 명령을 기록한 기록 매체 | |
CN107545338B (zh) | 业务数据处理方法及业务数据处理*** | |
EP3886007A1 (en) | Information processing method and information processing system | |
WO2022131435A1 (ko) | 물품 이관을 관리하는 전자 장치 및 그 정보 관리 방법 | |
JP5814378B2 (ja) | 予約管理装置、予約管理プログラム、予約管理システム | |
WO2023008636A1 (ko) | 정보 제공 방법 및 이를 이용한 전자 장치 | |
JP2020166505A (ja) | 荷物の配送を支援するシステム | |
WO2022004935A1 (ko) | 전자 장치 및 그의 동작 방법 | |
GB2574061A (en) | Baggage delivery system and method | |
CN110304385A (zh) | 一种仓库上架方法和装置 | |
JP5563688B1 (ja) | ポイント充当方法およびそのシステム | |
WO2011142615A2 (ko) | 가상 가치지표를 이용한 댓글 추천 방법, 그 시스템, 웹 서버, 및 웹 서비스시스템 | |
WO2022255556A1 (ko) | 음식 배달을 위한 정보를 처리하는 전자 장치 및 그 방법 | |
WO2021002548A1 (ko) | 온라인 환전 서비스의 제공 방법 | |
JP2020119441A (ja) | 配車プログラム及び配車システム | |
CN111784294A (zh) | 一种预付费行李服务确定方法、装置、服务器及存储介质 | |
WO2019146989A1 (ko) | 주유소 기반의 택배 서비스 방법 및 이를 실행하기 위한 시스템 | |
US9158732B2 (en) | Distributed cache system for delivering contents to display apparatus | |
CN112116120A (zh) | 物流路径规划方法和装置 | |
WO2019013461A1 (ko) | 온라인을 통해 복수의 디지털 콘텐츠들의 거래를 지원하는 디지털 콘텐츠 판매 서비스 장치 및 그 동작 방법 | |
JPH10322262A (ja) | 移動体内携帯情報端末機器通信支援システム | |
CN105792160B (zh) | 一种处理计费请求的装置及方法 | |
CN111083657A (zh) | 一种手机流量充值方法和装置 | |
KR20200134047A (ko) | 대중교통 안내 서비스 방법 | |
WO2024147398A1 (ko) | 포장 정보를 제공하는 전자 장치 및 그 방법 |
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: 21767635 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: 21767635 Country of ref document: EP Kind code of ref document: A1 |