Electronic device for optimizing allocation of delivery order, and method therefor
Patent Information
- Application Number
- PCT/KR2023/012246
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-08-11
- Filing Date
- 2023-08-18
- Publication Date
- 2025-02-20
Smart Images

Figure KR2023012246_20022025_PF_FP_ABST
Abstract
Description
Electronic device for optimizing the allocation of delivery orders and method therefor
[0001] The present disclosure relates to an electronic device and method for assigning two or more delivery orders to two or more delivery persons.
[0002] Thanks to the advancement of electronic devices, including smartphones, delivery services, which deliver purchased items to a customer's desired location, are becoming increasingly popular. As competition among various delivery service platforms intensifies, the ability to provide high-quality delivery services is increasingly determining a platform's success. This phenomenon is particularly evident in sectors where prompt delivery is essential, such as prepared meals and grocery items.
[0003] To provide high-quality delivery service, orders must be efficiently allocated to delivery drivers. To achieve this, information about both the order and the driver must be considered, and the most appropriate driver must be selected based on reasonable criteria to fulfill the order.
[0004] However, in the past, the allocation of delivery orders was done by considering only the distribution of delivery orders already received and the distribution of delivery personnel at the current point in time, so the possibility of additional delivery orders occurring in the future was not taken into account, and as a result, there was a problem of inefficiency occurring when additional delivery orders were received.
[0005] In this regard, reference may be made to prior literature such as KR 2023-0040302 A.
[0006] The present disclosure is proposed to solve the above-described problem, and aims to provide a device and method for selecting an optimal allocation plan for allocating delivery orders to delivery people by considering both currently unallocated delivery orders and additional delivery orders that may occur in the future.
[0007] The technical tasks to be achieved by this embodiment are not limited to the technical tasks described above, and other technical tasks can be inferred from the following embodiments.
[0008] One aspect of the present disclosure provides a method for optimizing delivery order allocation, the method comprising: identifying a first delivery order in an unallocated state, performed by an electronic device; identifying a plurality of delivery agents capable of processing delivery orders, the delivery agents being located within a predetermined distance from a location where the first delivery order was generated; obtaining information on additional delivery orders that may occur in one or more stores located within a specific area; generating a plurality of allocation plans for allocating a set of target delivery orders to be processed to the plurality of delivery agents based on information on the first delivery order, information on the additional delivery orders, and information on the plurality of delivery agents; calculating at least a portion of a predicted cost or a predicted gain according to each of the plurality of allocation plans; and selecting an optimal allocation plan based on at least a portion of the predicted cost or the predicted gain.
[0009] In addition, according to one embodiment of the present disclosure, the step of identifying the plurality of delivery people may include a step of primarily identifying the plurality of delivery people located within a certain distance from the location where the first delivery order is generated; and a step of secondarily identifying the remaining delivery people, excluding delivery people who are prohibited from allocating delivery orders and delivery people who do not want to allocate delivery orders, among the plurality of primarily identified delivery people, a method for optimizing delivery order allocation may be provided.
[0010] Additionally, according to one embodiment of the present disclosure, information about the additional delivery order may provide a method for optimizing delivery order allocation, including the occurrence probability and occurrence location of the additional delivery order.
[0011] In addition, according to one embodiment of the present disclosure, a method for optimizing delivery order allocation may be provided, in which the probability of occurrence of the additional delivery order is inferred by a prediction algorithm learned based on order history data of one or more stores.
[0012] Additionally, according to one embodiment of the present disclosure, a method for optimizing delivery order allocation may be provided, wherein the information on the additional delivery order further includes at least some of the time of occurrence of the additional delivery order, the order amount, the revenue upon processing, or information on the customer who requested the additional delivery order.
[0013] Additionally, according to one embodiment of the present disclosure, the information on the first delivery order may provide a method for optimizing delivery order allocation, including the location where the first delivery order occurred.
[0014] Additionally, according to one embodiment of the present disclosure, the information on the plurality of delivery persons may provide a method for optimizing delivery order allocation, including the location and movement speed of each of the plurality of delivery persons.
[0015] In addition, according to one embodiment of the present disclosure, a method for optimizing delivery order allocation can be provided, in which the moving speed of each of the plurality of delivery people is estimated based on the delivery history and registered means of transportation of each of the plurality of delivery people.
[0016] In addition, according to one embodiment of the present disclosure, a method for optimizing delivery order allocation may be provided, wherein the step of generating the plurality of allocation plans includes the step of distinguishing the plurality of order occurrence cases based on whether the additional delivery order has occurred; the step of generating one or more sub-allocation plans corresponding to each of the plurality of order occurrence cases; and the step of classifying sub-allocation plans in which the delivery person to whom the first delivery order is allocated has the same sub-allocation plan into the same allocation plan.
[0017] In addition, according to one embodiment of the present disclosure, the step of distinguishing the plurality of order occurrence cases may include a step of correcting the occurrence probability to 100% for additional delivery orders whose occurrence probability is greater than or equal to a first criterion; and a step of correcting the occurrence probability to 0% for additional delivery orders whose occurrence probability is less than or equal to a second criterion. A method for optimizing delivery order allocation may be provided.
[0018] Additionally, according to one embodiment of the present disclosure, the predicted cost may provide a delivery order allocation optimization method, wherein the predicted cost includes an estimated time required to process the target delivery order set according to each of the plurality of allocation plans.
[0019] In addition, according to one embodiment of the present disclosure, a method for optimizing delivery order allocation can be provided, wherein the expected time is calculated based on a sub-expected time required to process the target delivery order set according to each sub-allocation plan included in each of the plurality of allocation plans, and a probability for an order occurrence case corresponding to each of the sub-allocation plans.
[0020] In addition, according to one embodiment of the present disclosure, the predicted gain may include at least a portion of the platform's revenue, the total revenue of the stores, or the total revenue of the plurality of delivery people generated by processing the target delivery order set according to each of the plurality of allocation plans, thereby providing a delivery order allocation optimization method.
[0021] In addition, according to one embodiment of the present disclosure, the predicted gain includes an expected acquisition score corresponding to the target delivery order set processed according to each of the plurality of allocation plans, and the expected acquisition score is calculated by adding up the scores given according to information of a customer who requested the target delivery order for each target delivery order included in the target delivery order set, thereby providing a delivery order allocation optimization method.
[0022] In addition, according to one embodiment of the present disclosure, a method for optimizing delivery order allocation can be provided, in which the prediction cost is calculated by normalizing and then adding up a plurality of sub-prediction costs included in the prediction cost, and the prediction gain is calculated by normalizing and then adding up a plurality of sub-prediction gains included in the prediction gain.
[0023] In addition, according to one embodiment of the present disclosure, the step of selecting the optimal allocation plan may include the step of determining a priority among the plurality of allocation plans by adding the predicted cost and the predicted gain according to a preset standard; and the step of selecting an allocation plan corresponding to the highest priority among the plurality of allocation plans as the optimal allocation plan.
[0024] Another aspect of the present disclosure provides an electronic device for optimizing allocation of delivery orders, including a memory storing instructions and a processor, wherein the processor is connected to the memory and is configured to identify a first delivery order in an unallocated state, identify a plurality of delivery agents located within a certain distance from a location where the first delivery order is generated and capable of processing the delivery order, obtain information about additional delivery orders that may occur in one or more stores located within a specific area, and generate a plurality of allocation plans for allocating the plurality of delivery agents to a set of target delivery orders to be processed based on information about the first delivery order, information about the additional delivery orders, and information about the plurality of delivery agents, and calculate at least a portion of a predicted cost or a predicted gain according to each of the plurality of allocation plans, and select an optimal allocation plan based on at least a portion of the predicted cost or the predicted gain.
[0025] Another aspect of the present disclosure may provide a computer-readable recording medium having recorded thereon a program for implementing a method performed by an electronic device.
[0026] Specific details of other embodiments are included in the detailed description and drawings.
[0027] According to the proposed embodiment, one or more of the following effects can be expected:
[0028] According to the disclosed embodiment, by generating an allocation plan for delivery orders by considering both currently unallocated delivery orders and additional delivery orders that may occur in the future, inefficiency that occurs when allocating delivery orders by considering only current delivery orders can be prevented in advance.
[0029] In addition, according to the disclosed embodiment, by predicting the costs and benefits of each of a plurality of allocation plans and comparing them to select the optimal allocation plan, it is possible to increase the profits of a platform providing a delivery service while providing an improved service experience to customers.
[0030] The effects of the invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
[0031] FIG. 1 is a schematic diagram illustrating an environment in which an electronic device is driven according to one embodiment.
[0032] FIG. 2 is a flowchart of a method for optimizing delivery order allocation of an electronic device according to one embodiment.
[0033] FIG. 3 is a flowchart to more specifically explain the process of identifying a delivery person according to one embodiment.
[0034] FIG. 4 is a flowchart to more specifically explain the process of generating multiple allocation plans according to one embodiment.
[0035] Figure 5 is a flowchart to more specifically explain the process of selecting an optimal allocation plan according to one embodiment.
[0036] Figures 6a to 6c are exemplary drawings showing the process of assigning a delivery order to a delivery person.
[0037] Figure 7 shows a block diagram of an electronic device according to one embodiment.
[0038] Hereinafter, specific embodiments will be described with reference to the drawings. The following detailed description is provided to facilitate a comprehensive understanding of the methods, devices, and / or systems described herein. However, these are merely examples, and the disclosed embodiments are not limited thereto.
[0039] In describing the embodiments, if it is determined that a detailed description of related known technology may unnecessarily obscure the gist of the disclosed embodiments, the detailed description will be omitted. In addition, the terms described below are terms defined in consideration of functions in the disclosed embodiments, and this may vary depending on the intention or custom of the user or operator. Therefore, the definitions should be made based on the contents throughout this specification. The terminology used in the detailed description is only for the purpose of describing the embodiments and should never be limited. Unless clearly used otherwise, the singular form includes the plural form. In this description, expressions such as "comprises" or "having" are intended to indicate certain features, numbers, steps, operations, elements, parts or combinations thereof, and should not be construed to exclude the presence or possibility of one or more other features, numbers, steps, operations, elements, parts or combinations thereof other than those described.
[0040] The terms used in the embodiments have been selected from widely used and common terms, taking into account the functions of the present disclosure. However, these terms may vary depending on the intentions of those skilled in the art, precedents, the emergence of new technologies, etc. Furthermore, in certain cases, terms may be arbitrarily selected by the applicant, in which case their meanings will be described in detail in the relevant description. Therefore, the terms used in this disclosure should not be defined simply as names of terms, but rather based on the meanings of the terms and the overall content of the present disclosure.
[0041] When a part of the specification is said to "include" a component, this does not exclude other components, but rather implies the inclusion of other components, unless otherwise specifically stated. Furthermore, terms such as "part," "module," etc., used in the specification refer to a unit that processes at least one function or operation, which may be implemented in hardware or software, or a combination of hardware and software, and, unlike the illustrated examples, may not be clearly distinguished in their specific operations.
[0042] The expression "at least one of a, b, and c" described throughout the specification may encompass 'a alone', 'b alone', 'c alone', 'a and b', 'a and c', 'b and c', or 'all of a, b, and c'.
[0043] The "terminal" mentioned below may be implemented as a computer or portable terminal that can connect to a server or other terminal via a network. Here, the computer includes, for example, a notebook, desktop, laptop, etc. equipped with a web browser, and the portable terminal may include, for example, a wireless communication device that guarantees portability and mobility, and may include all types of handheld-based wireless communication devices such as communication-based terminals such as IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), LTE (Long Term Evolution), smartphones, tablet PCs, etc.
[0044] In the following description, the terms “transmission,” “communication,” “sending,” “receiving,” or other similar meanings of signals or information include not only direct transmission of signals or information from one component to another, but also transmission via another component.
[0045] In particular, "transmitting" or "sending" a signal or information as a single component indicates the final destination of the signal or information, not the direct destination. The same applies to "receiving" a signal or information. Furthermore, in this specification, "relating" two or more pieces of data or information means that, upon acquiring one piece of data (or information), at least a portion of the other piece of data (or information) can be acquired based on that piece of data (or information).
[0046] Additionally, while terms such as first, second, etc. may be used to describe various components, these components should not be limited by these terms. These terms may be used to distinguish one component from another.
[0047] For example, without departing from the scope of the present invention, a first component could be referred to as a second component, and similarly, a second component could also be referred to as a first component.
[0048] In describing the embodiments, descriptions of technical details that are well-known in the technical field to which the present invention pertains and are not directly related to the present invention will be omitted. This is to avoid obscuring the gist of the present invention by omitting unnecessary explanations and to convey it more clearly.
[0049] For the same reason, some components in the attached drawings are exaggerated, omitted, or schematically depicted. Furthermore, the dimensions of each component do not entirely reflect its actual size. Identical or corresponding components in each drawing are assigned the same reference numbers.
[0050] The advantages and features of the present invention, and the methods for achieving them, will become clearer with reference to the embodiments described in detail below together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. These embodiments are provided only to ensure that the disclosure of the present invention is complete and to fully inform those skilled in the art of the scope of the invention, and the present invention is defined only by the scope of the claims. Like reference numerals designate like elements throughout the specification.
[0051] It will be appreciated that each block of the flowchart drawings and combinations of the flowchart drawings can be performed by computer program instructions. These computer program instructions can be installed in a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, such that the instructions, when executed by the processor of the computer or other programmable data processing equipment, create a means for performing the functions described in the flowchart block(s). These computer program instructions can also be stored in a computer-available or computer-readable memory that can direct a computer or other programmable data processing equipment to perform the functions in a specific manner, such that the instructions stored in the computer-available or computer-readable memory can produce an article of manufacture that includes instruction means for performing the functions described in the flowchart block(s). Since the computer program instructions may be installed on a computer or other programmable data processing device, a series of operational steps may be performed on the computer or other programmable data processing device to create a computer-executable process, and the instructions that cause the computer or other programmable data processing device to perform the steps for performing the functions described in the flowchart block(s) may also provide steps for performing the functions described in the flowchart block(s).
[0052] Additionally, each block may represent a module, segment, or portion of code that contains one or more executable instructions for performing a specific logical function(s). It should also be noted that in some alternative implementation examples, the functions described in the blocks may occur out of order. For example, two blocks depicted in succession may actually be executed substantially concurrently, or the blocks may sometimes be executed in reverse order, depending on their respective functions.
[0053] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings so that those skilled in the art can easily practice the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. The methods illustrated in FIGS. 1 to 6b may be performed, for example, by an electronic device (100) described with reference to FIG. 7. That is, the electronic device (100) is an exemplary device for optimizing delivery order allocation in the present disclosure, and may be a single device, but depending on the embodiment, it may also be a system composed of multiple sub-devices that communicate with each other via a wired or wireless network.
[0054] FIG. 1 is a schematic diagram illustrating an environment in which an electronic device is driven according to one embodiment.
[0055] Referring to FIG. 1, the system may include at least some of an electronic device (100), one or more delivery terminals (200), and a network (300). Meanwhile, the system illustrated in FIG. 1 only illustrates components related to the present embodiment. Therefore, those skilled in the art will appreciate that, in addition to the components illustrated in FIG. 1, other general-purpose components may also be included.
[0056] An electronic device (100) is a device that collects, calculates, and produces various types of information. The electronic device (100) may provide the produced information through an output interface provided in the electronic device (100) or in a form that can be displayed on another terminal.
[0057] The electronic device (100) is a device that provides a delivery service that carries out delivery orders requested by customers through delivery personnel. To provide the delivery service, the electronic device (100) can assign delivery orders that have not yet been assigned to delivery personnel among delivery orders received by the store to delivery personnel. Specifically, when multiple delivery orders are waiting to be assigned, the electronic device (100) can generate a plan that assigns the delivery orders to two or more delivery personnel according to set criteria. In the present disclosure, this is collectively referred to as an "allocation plan." The electronic device (100) may directly assign delivery orders to delivery personnel according to the allocation plan; however, this is not required, and a separate device other than the electronic device (100) may assign delivery orders to delivery personnel based on the allocation plan generated by the electronic device (100).
[0058] Meanwhile, although FIG. 1 depicts the electronic device (100) as a single server, this is merely an example, and the electronic device (100) may also refer to a server group comprising multiple servers located in different locations. For example, among the multiple servers included in the electronic device (100), the server located closest to the delivery terminal that is the target of information collection or provision may communicate with the delivery terminal.
[0059] One or more delivery terminals (200-1, 200-2, ..., 200-n) are terminals used by each delivery person, and the delivery people can receive information necessary for performing delivery work by using their respective delivery terminals (200-1, 200-2, ..., 200-n) or provide information generated according to the delivery person's input to the electronic device (100). The information transmitted between the electronic device (100) and the delivery terminals (200-1, 200-2, ..., 200-n) of each delivery person may include information about delivery history, information about currently assigned delivery orders, information about delivery orders to be newly assigned, information about profiles, etc. However, the information transmitted between the electronic device (100) and the delivery terminals (200-1, 200-2, ..., 200-n) of each delivery person is not limited thereto. Meanwhile, in the present disclosure, a 'delivery person' may include an account of a delivery person connected to a delivery service through a delivery person terminal.
[0060] One or more delivery terminals (200-1, 200-2, ..., 200-n) and an electronic device (100) can communicate with each other within a network (300). The network (300) includes a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile radio communication network, a satellite communication network, a contents delivery network (CDN), and a combination thereof, and is a comprehensive data communication network that enables each network component illustrated in FIG. 1 to communicate smoothly with each other, and may include a wired Internet, a wireless Internet, and a mobile wireless communication network. Wireless communications may include, but are not limited to, wireless LAN (Wi-Fi), Bluetooth, Bluetooth low energy, Zigbee, WFD (Wi-Fi Direct), UWB (ultra wideband), infrared communication (IrDA, infrared Data Association), NFC (Near Field Communication), etc.
[0061] FIG. 2 is a flowchart of a method for optimizing delivery order allocation of an electronic device according to one embodiment.
[0062] In step S210, the electronic device (100) may identify a first delivery order in an unassigned state. Specifically, identifying the first delivery order by the electronic device (100) may include obtaining information about the first delivery order. Furthermore, the information about the first delivery order may be transmitted to the electronic device (100) from a terminal of the store where the first delivery order was received, or may be transmitted from a terminal of the customer who requested the first delivery order.
[0063] In step S220, the electronic device (100) can identify a plurality of delivery people capable of processing a delivery order, located within a certain distance from the location where the first delivery order was generated.
[0064] In one embodiment, the electronic device (100) can identify a delivery person who is capable of processing a delivery order among delivery persons located within a certain radius based on a straight-line distance from the location where the first delivery order was generated.
[0065] In another embodiment, the electronic device (100) can identify a delivery person capable of processing a delivery order among delivery persons located within a certain distance based on the length of a movable path on the map from the location where the first delivery order was generated.
[0066] In step S230, the electronic device (100) may obtain information about additional delivery orders that may occur at one or more stores located within a specific area.
[0067] In the present disclosure, a 'specific area' may mean an administrative area to which the location of the first delivery order belongs, but is not necessarily limited thereto, and may also mean an area on a map located within a certain distance from the location of the first delivery order, or an area on a map designated as an order-concentrated area.
[0068] In one embodiment, the electronic device (100) may collect information on additional delivery orders only during a preset unit of time. This is to allow the electronic device (100) to promptly select an optimal allocation plan based on the information collected during the unit of time, thereby assigning delivery orders to delivery personnel and processing them quickly. In this case, the electronic device (100) may repeatedly perform steps S210 to S260 for each unit of time. However, if no information on additional delivery orders is collected during the unit of time, the electronic device (100) may determine that there are no additional delivery orders and assign the first delivery order to the delivery personnel who can process it most efficiently. Alternatively, the electronic device (100) may continue to collect information on additional delivery orders until the next unit of time without assigning the first delivery order to a delivery personnel.
[0069] In one embodiment, the electronic device (100) may obtain information about an additional delivery order, including the probability of occurrence and location of the additional delivery order. In this regard, the probability of occurrence of the additional delivery order may be inferred by a prediction algorithm learned based on order history data from one or more stores. That is, the probability of occurrence of the additional delivery order may include the probability that an additional delivery order will occur at a store in the order history data used to train the algorithm, or at a store similar thereto.
[0070] Additionally, in one embodiment, the electronic device (100) may obtain information about an additional delivery order, including at least some of the following: the time of occurrence of the additional delivery order, the order amount, the revenue generated upon processing, or information about the customer requesting the additional delivery order. This is intended to improve both the quality and speed of delivery order processing by selecting an optimal allocation plan by considering a wider range of information about the delivery order.
[0071] In step S240, the electronic device (100) may generate multiple allocation plans for assigning a set of target delivery orders to be processed to multiple delivery personnel based on information about the first delivery order, information about additional delivery orders, and information about multiple delivery personnel. In the present disclosure, the "target delivery order set" may collectively refer to the first delivery order and additional delivery orders that will occur probabilistically.
[0072] In one embodiment, the "information on the first delivery order" considered in step S240 may include the location where the first delivery order was generated. The location where the first delivery order was generated may include the GPS (Global Positioning System) coordinates where the first delivery order was generated, or the address of the store where the first delivery order was requested.
[0073] Additionally, in one embodiment, the 'information on multiple delivery people' considered in step S240 may include the location and moving speed of each of the multiple delivery people. The location of the delivery people may include the GPS coordinates of the delivery people or the registered address of the delivery people. Meanwhile, the moving speed of each of the multiple delivery people may be estimated based on the delivery history and registered means of transportation of each of the multiple delivery people. For example, the moving speed of the delivery people may be estimated as the mode or average of the moving speeds of the delivery people when the delivery people used the registered means of transportation to perform a previous delivery order. As another example, when the means of transportation of the delivery people is newly registered, the average moving speed of the means of transportation in the delivery service may be estimated as the moving speed of the delivery people.
[0074] In step S250, the electronic device (100) can calculate at least some of the predicted cost or predicted gain for each of the plurality of allocation plans.
[0075] In this disclosure, "predicted cost" may refer to the resources (e.g., time) required to execute an allocation plan, or the opportunity cost of not selecting a different allocation plan. Furthermore, "predicted gain" may refer to the benefits (e.g., points, profits) that can be obtained by executing an allocation plan.
[0076] In one embodiment, the predicted cost produced by the electronic device (100) may include an estimated time required to process a set of target delivery orders according to each of a plurality of allocation plans.
[0077] Specifically, the expected time can be calculated based on 1) the sub-expected time required to process the target delivery order set according to each sub-allocation plan included in each of the multiple allocation plans, and 2) the probability for the order occurrence case corresponding to each sub-allocation plan. For example, the expected time can be calculated by multiplying each sub-expected time by the probability corresponding to each sub-allocation plan, and then adding up the results of each multiplication operation. That is, when allocation plan A is composed of sub-allocation plans a and b, the expected time t required to process the target delivery order set according to allocation plan A is t, which is the product of the sub-expected time required to process the target delivery order set according to sub-allocation plan a and the probability for sub-allocation plan a. a Wow, the sub-expected time to process the target delivery order set according to sub-allocation plan b multiplied by the probability for sub-allocation plan b is t b can be calculated as the sum of .
[0078] In one embodiment, the predicted profit calculated by the electronic device (100) may include at least a portion of the platform's revenue, the total revenue of stores, or the total revenue of multiple delivery drivers generated by processing the target delivery order set according to each of the multiple allocation plans. For example, the predicted profit may be calculated as the sum of the commissions received by the platform providing the delivery service by processing the target delivery order set.
[0079] Meanwhile, according to another embodiment, the predicted gain calculated by the electronic device (100) may include an expected acquisition score corresponding to a set of target delivery orders processed according to each of a plurality of allocation plans, and the expected acquisition score may be calculated by adding up the scores awarded based on information of the customer who requested the target delivery order for each target delivery order included in the set of target delivery orders. For example, a delivery order requested by Customer A, who is a new subscriber to the platform, may be awarded a higher expected acquisition score than a delivery order requested by Customer B, who is an existing subscriber. As another example, a delivery order requested by Customer B, who is an existing subscriber to the platform, may be awarded a higher expected acquisition score than a delivery order requested by Customer C, who is not a subscriber.
[0080] In one embodiment, the electronic device (100) may calculate a prediction cost by normalizing and then adding up a plurality of sub-prediction costs included in a prediction cost, and may calculate a prediction gain by normalizing and then adding up a plurality of sub-prediction gains included in a prediction gain. This is to prevent the influence of any one element (sub-prediction cost or sub-prediction gain) from becoming excessive by unifying the scales of the prediction cost and the prediction gain, since there may be various methods for calculating the prediction cost and the prediction gain.
[0081] In step S260, the electronic device (100) can select an optimal allocation plan based on at least some of the predicted cost or predicted gain.
[0082] In one embodiment, if the predicted gain is not calculated, the electronic device (100) may select the allocation plan corresponding to the lowest predicted cost as the optimal allocation plan based only on the predicted cost.
[0083] In another embodiment, when the predicted cost is not calculated, the electronic device (100) may select the allocation plan corresponding to the highest predicted gain as the optimal allocation plan based only on the predicted gain.
[0084] Figure 3 is a flowchart to more specifically explain the process (S220) of identifying a delivery person according to one embodiment.
[0085] In step S310, the electronic device (100) can initially identify a plurality of delivery people located within a certain distance from the location where the first delivery order was generated.
[0086] In step S320, the electronic device (100) can secondarily identify the remaining delivery people among the plurality of delivery people identified primarily, excluding delivery people who are prohibited from assigning delivery orders and delivery people who do not want to assign delivery orders.
[0087] In other words, the electronic device (100) can first identify a delivery person based on the location of the first delivery order and the location of the delivery person, and then secondarily identify a delivery person who is capable of assigning a delivery order and who desires to assign a delivery order. This reduces the situation where, during the process of assigning delivery orders to delivery people according to the assignment plan, it is later discovered that the delivery person is unable to assign or does not wish to assign, and thus the delivery order must be reallocated to another delivery person.
[0088] In one embodiment, the electronic device (100) may determine that a delivery person who has already been assigned to a delivery order and is scheduled to process a certain number of delivery orders is prohibited from being assigned to a delivery person. This is intended to prevent an excessive number of delivery orders from being assigned to a specific delivery person, thereby ensuring smooth processing of delivery orders.
[0089] In another embodiment, the electronic device (100) may determine that a delivery person registered in a blacklist previously stored in the electronic device (100) or another storage space is prohibited from being assigned a delivery order. This is to impose a penalty on a delivery person registered in the blacklist for reasons such as not properly processing a delivery order in the past or receiving a complaint from a customer, and the purpose is to provide an incentive for the delivery person to responsibly and faithfully handle the delivery orders assigned to them.
[0090] Meanwhile, if the delivery person's account is set to a state where delivery order assignment is not possible, or if a message inquiring about the delivery person's intention to be assigned a delivery order is sent to the delivery person's terminal but the delivery person refuses to assign the delivery order, the electronic device (100) may determine the delivery person as a delivery person who does not want to be assigned a delivery order. Accordingly, by considering the delivery person's intention when assigning a delivery order, the delivery person can be provided with the option to select and perform a delivery order that satisfies the desired conditions, or the option to perform the delivery work at the desired time and place.
[0091] FIG. 4 is a flowchart for more specifically explaining a process (S240) of generating multiple allocation plans according to one embodiment.
[0092] In step S410, the electronic device (100) can distinguish multiple order occurrence cases depending on whether an additional delivery order has occurred.
[0093] In one embodiment, the electronic device (100) may not divide the order occurrence case into branches when an additional delivery order is definitely generated or not generated, but may divide the order occurrence case into branches when an additional delivery order is probabilistically generated or not generated, into cases where an additional delivery order is generated and cases where an additional delivery order is not generated. For example, when a second delivery order is predicted to be generated with an 80% probability in addition to a first delivery order, the electronic device (100) may divide the case into cases where the first and second delivery orders are generated and cases where only the first delivery order is generated.
[0094] In one embodiment, when distinguishing order occurrence cases, the electronic device (100) may correct the occurrence probability to 100% for additional delivery orders with an occurrence probability greater than or equal to a first criterion, and correct the occurrence probability to 0% for additional delivery orders with an occurrence probability less than or equal to a second criterion. As a result, the electronic device (100) may prevent excessive division of order occurrence cases, thereby preventing excessive resource consumption in generating allocation plans.
[0095] In step S420, the electronic device (100) can generate one or more sub-allocation plans corresponding to each of a plurality of order occurrence cases.
[0096] Specifically, the electronic device (100) can generate a sub-allocation plan that assigns a delivery person to one or more delivery orders existing in each order occurrence case. That is, one or more sub-allocation plans can be generated for all possible order occurrence cases.
[0097] In step S430, the electronic device (100) can classify sub-allocation plans with the same delivery person assigned to the first delivery order into the same allocation plan. Even for the same order occurrence case, there may be multiple corresponding sub-allocation plans, in which case each sub-allocation plan belongs to a different allocation plan. Therefore, since the delivery person assigned to the first delivery order is the first branch that distinguishes the sub-allocation plans, the electronic device (100) can determine which allocation plan each sub-allocation plan belongs to based on this. Consequently, different sub-allocation plans cannot be classified into the same allocation plan for the same order occurrence case.
[0098] Figure 5 is a flowchart illustrating in more detail the process (S260) for selecting an optimal allocation plan according to one embodiment. Specifically, Figure 5 illustrates a process for selecting an optimal allocation plan by considering both predicted costs and predicted gains when both are calculated.
[0099] In step S510, the electronic device (100) can determine a priority among multiple allocation plans by adding up the predicted cost and predicted gain according to preset criteria.
[0100] In one embodiment, the electronic device (100) may determine a priority among multiple allocation plans based on a simple sum or a weighted sum of the predicted cost and the predicted gain, when the units of the predicted cost and the predicted gain are the same.
[0101] In another embodiment, when the units of the prediction cost and the units of the prediction gain are different, the electronic device (100) may normalize the prediction cost and the prediction gain, respectively, and then determine the priority among the multiple allocation plans based on a simple sum or weighted sum of the normalized prediction cost and the normalized prediction gain.
[0102] In step S520, the electronic device (100) can select an allocation plan with the highest priority among multiple allocation plans as the optimal allocation plan.
[0103] Figures 6a to 6c are exemplary diagrams illustrating the process of assigning delivery orders to delivery persons. Figure 6a illustrates a point in time when only the first delivery order in an unassigned state exists, Figure 6b illustrates a point in time when a second delivery order is predicted to occur probabilistically, and Figure 6c illustrates a point in time when a second and third delivery orders are predicted to occur probabilistically. It is assumed that the first and second delivery persons are identified as delivery persons capable of processing delivery orders. It is assumed that the first and second delivery persons have the same moving speed of 10 m / s, and that the probability of the second delivery order occurring is 80%, and the probability of the third delivery order occurring is 50%.
[0104] Referring to Fig. 6a, since the distance from the location of the first delivery order to the location of the first delivery agent is 1 km, and the distance from the location of the first delivery order to the location of the second delivery agent is 1.5 km, the travel time required for the first delivery agent to pick up the items for the first delivery order is calculated to be 100 seconds, and the travel time required for the second delivery agent to pick up the items for the first delivery order is calculated to be 150 seconds. If the second and third delivery orders are not considered, the expected time required to process the first delivery order is shorter when the first delivery agent processes the first delivery order, so if the allocation plan is determined by considering only the expected time as the expected cost, it is reasonable to assign the first delivery order to the first delivery agent.
[0105] However, if the second delivery order occurs with an 80% probability as in Figure 6b, the order occurrence case, allocation plan, sub-allocation plan, and expected time as predicted cost are as shown in Table 1 below.
[0106] Allocation Plan Order Occurrence Cases 1st Allocation 2nd Allocation (by Sub-Allocation Plan) Expected Time (by Allocation Plan) Expected Time Plan 1 2nd Delivery Order Occurrence (80%) 1st Delivery Person - 1st Delivery Order 2nd Delivery Person - 2nd Delivery Order 100 sec + 300 sec = 400 sec 400 sec * 0.8 + 100 sec * 0.2 = 340 sec 2nd Delivery Order Not Occurred (20%) 1st Delivery Person - 1st Delivery Order - 100 sec Plan 2 2nd Delivery Order Occurrence (80%) 2nd Delivery Person - 1st Delivery Order 150 sec + 50 sec = 200 sec 200 sec * 0.8 + 150 sec * 0.2 = 190 sec 2nd Delivery Order Not Occurred (20%) 2nd Delivery Person - 1st Delivery Order - 150 sec
[0107] According to Table 1, if the second delivery order is predicted to occur with an 80% probability, it may take 400 seconds and 100 seconds to execute each of the two sub-allocation plans belonging to Allocation Plan 1, respectively. The probability of each sub-allocation plan is the same as the probability of occurrence / non-occurrence of the second delivery order, which is 80% and 20%. Applying this, the expected value of the expected time according to Allocation Plan 1 is calculated as 340 seconds. Similarly, since it may take 200 seconds and 150 seconds to execute each of the two sub-allocation plans belonging to Allocation Plan 2, the expected value of the expected time according to Allocation Plan 2 is calculated as 190 seconds. As a result, it is reasonable to select Allocation Plan 2, which is expected to take less expected time, as the optimal allocation plan. Therefore, although the distance from the first delivery order to the second delivery person is further, it is desirable to assign the first delivery order to the second delivery person and have the first delivery person wait to perform the second delivery order that may occur probabilistically. Furthermore, as shown in Fig. 6c, if the third delivery order occurs with a 50% probability, the order occurrence cases, allocation plans, sub-allocation plans, and expected times as predicted costs are as shown in Table 2 below. Since the number of delivery people is less than the number of delivery orders, it is assumed that neither the second nor the third delivery order is assigned when up to three delivery orders occur.
[0108] Allocation PlanOrder Occurrence Case1st Allocation2nd Allocation (by Sub-Allocation Plan) Predicted Time (by Allocation Plan) Predicted TimePlan 12nd, 3rd Delivery Order Occurrence (80%*50% = 40%)1st Delivery Person - 1st Delivery Order2nd Delivery Person - 2nd Delivery Order100 sec + 300 sec = 400 sec (Not Selected)300 sec * 40% + 100 sec * 10% + 300 sec * 10% + 400 sec * 40% = 320 sec2nd Delivery Person - 3rd Delivery Order100 sec + 200 sec = 300 sec (Selected)2nd, 3rd Delivery Order Not Occurred (20%*50% = 10%)1st Delivery Person - 1st Delivery Order - 100 sec2nd Delivery Order Not Occurred, 3rd Delivery Order Occurred (20%*50% = 10%)1st Delivery Person - 1st Delivery Order2nd Delivery Person - 3rd Delivery Order 100 seconds + 200 seconds = 300 seconds 2nd delivery order occurs, 3rd delivery order does not occur (80% * 50% = 40%) 1st delivery person - 1st delivery order 2nd delivery person - 2nd delivery order 100 seconds + 300 seconds = 400 seconds Plan 2 2nd, 3rd delivery order occurs (80% * 50% = 40%) 2nd delivery person - 1st delivery order 150 seconds + 50 seconds = 200 seconds (optional) 200 seconds * 40% + 150 seconds * 10% + 250 seconds * 10% + 200 seconds * 40% = 200 seconds 1st delivery person - 3rd delivery order 150 seconds + 100 seconds = 250 seconds (not selected) 2nd, 3rd delivery order does not occur (20% * 50% = 10%) 2nd delivery person - 1st delivery order - 150 seconds 2nd delivery order does not occur, 3rd delivery order occurs (20%*50% = 10%)2nd delivery person - 1st delivery order1st delivery person - 3rd delivery order150 seconds + 100 seconds = 250 seconds2nd delivery order occurs, 3rd delivery order does not occur (80%*50% = 40%)2nd delivery person - 1st delivery order1st delivery person - 2nd delivery order150 seconds + 50 seconds = 200 seconds
[0109] According to Table 2, if the third delivery order is predicted to occur with a 50% probability, it can take 400 seconds, 300 seconds, 100 seconds, 300 seconds, and 400 seconds to execute each of the five sub-allocation plans belonging to Allocation Plan 1, respectively. The probability of each sub-allocation plan is calculated by multiplying the probability of occurrence / non-occurrence of the second delivery order and the probability of occurrence / non-occurrence of the third delivery order, so it is 40%, 10%, 10%, and 40% for each order occurrence case, and when this is applied, the expected value of the expected time according to Allocation Plan 1 is calculated as 320 seconds. In this process, among the sub-allocation plans with the same order allocation case, the sub-allocation plan that takes a shorter expected time can be selected. Similarly, since each of the five sub-allocation plans belonging to Allocation Plan 2 can take 200 seconds, 250 seconds, 150 seconds, 250 seconds, and 200 seconds to execute, respectively, the expected value of the expected time according to Allocation Plan 2 is calculated as 200 seconds. Consequently, it is reasonable to select Allocation Plan 2, which is expected to take a shorter expected time, as the optimal allocation plan. If, in the case where both the second and third delivery orders occur, you want to assign a delivery person to all three delivery orders, the expected time can be calculated by considering the allocation of the third delivery order in the first and second sub-allocation plans of Plan 1 and Plan 2, respectively. In this case as well, the process of multiplying each expected time of the entire sub-allocation plan by each probability and adding them up to calculate the expected time for each allocation plan, and selecting the allocation plan with the lowest expected time as the optimal allocation plan can be performed in the same way.
[0110] Figure 7 shows a block diagram of an electronic device according to one embodiment.
[0111] The electronic device (100) may include, according to one embodiment, a memory (101) and a processor (103). In one embodiment, the electronic device (100) may exchange data with the outside world through an input / output interface.
[0112] The processor (103) can perform at least one of the methods described above with reference to FIGS. 1 to 6B. The memory (101) can store information for performing at least one of the methods described above with reference to FIGS. 1 to 6B. The memory (101) can be a volatile memory or a non-volatile memory.
[0113] The processor (103) can control the electronic device (100) to execute a program and provide information. The code of the program executed by the processor (103) can be stored in the memory (101).
[0114] In one embodiment, the processor (103) is connected to the memory (101) to identify a first delivery order in an unallocated state, identify a plurality of delivery agents located within a certain distance from a location where the first delivery order is generated and capable of processing the delivery order, obtain information about additional delivery orders that may occur in one or more stores located within a specific area, and generate a plurality of allocation plans for allocating the plurality of delivery agents to a set of target delivery orders to be processed based on the information about the first delivery order, the information about the additional delivery orders, and the information about the plurality of delivery agents, calculate a predicted cost or a predicted gain according to each of the plurality of allocation plans, and select an optimal allocation plan based on at least a part of the predicted cost or the predicted gain.
[0115] Additionally, the electronic device (100) according to one embodiment may further include an interface capable of providing information to a user of the electronic device (100).
[0116] The electronic device (100) illustrated in FIG. 7 only illustrates components related to the present embodiment. Therefore, those skilled in the art will understand that, in addition to the components illustrated in FIG. 7, other general-purpose components may be included.
[0117] The device according to the above-described embodiments may include a processor, a memory for storing and executing program data, permanent storage such as a disk drive, a communication port for communicating with an external device, a user interface device such as a touch panel, a key, a button, etc. The methods implemented as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable codes or program instructions executable on the processor. Here, the computer-readable recording medium includes a magnetic storage medium (e.g., read-only memory (ROM), random-access memory (RAM), floppy disk, hard disk, etc.) and an optical reading medium (e.g., CD-ROM, DVD: Digital Versatile Disc)). The computer-readable recording medium may be distributed to computer systems connected to a network, so that the computer-readable code may be stored and executed in a distributed manner. The medium may be readable by a computer, stored in a memory, and executed by a processor.
[0118] The present embodiment may be represented by functional block configurations and various processing steps. These functional blocks may be implemented by various hardware and / or software configurations that perform specific functions. For example, the embodiment may employ direct circuit configurations such as memory, processing, logic, look-up tables, etc., which may perform various functions under the control of one or more microprocessors or other control devices. Similarly, the present embodiment may be implemented in a programming or scripting language such as C, C++, Java, assembler, etc., including various algorithms implemented as a combination of data structures, processes, routines, or other programming configurations. Functional aspects may be implemented as algorithms that execute on one or more processors. Furthermore, the present embodiment may employ conventional techniques for electronic configuration, signal processing, message processing, and / or data processing. Terms like "mechanism," "element," "means," and "composition" can be used broadly and are not limited to mechanical or physical components. These terms can also encompass a series of software routines, such as those associated with a processor.
[0119] The above-described embodiments are merely examples, and other embodiments may be implemented within the scope of the claims set forth below.
Claims
1. In a method performed by an electronic device, Step of identifying a first delivery order in an unassigned state; A step of identifying a plurality of delivery personnel capable of processing a delivery order, the delivery personnel being located within a certain distance from the location where the first delivery order is generated; A step of obtaining information about additional delivery orders that may occur at one or more stores located within a specific area; A step of generating a plurality of allocation plans for assigning a set of target delivery orders to be processed to the plurality of delivery people based on information about the first delivery order, information about the additional delivery order, and information about the plurality of delivery people; A step of calculating at least a portion of the predicted cost or predicted gain according to each of the above multiple allocation plans; and A step of selecting an optimal allocation plan based on at least some of the above predicted costs or the above predicted benefits. A method for optimizing delivery order allocation, comprising:
2. In paragraph 1, The step of identifying the above multiple delivery people is: A step of primarily identifying a plurality of delivery personnel located within a certain distance from the location where the first delivery order is generated; and A step of secondarily identifying the remaining delivery workers, excluding delivery workers who are prohibited from allocating delivery orders and delivery workers who do not wish to allocate delivery orders, among the plurality of delivery workers identified above, How to optimize delivery order allocation.
3. In paragraph 1, For information on the above additional delivery orders, Including the occurrence probability and occurrence location of the above additional delivery order, How to optimize delivery order allocation.
4. In paragraph 3, The probability of occurrence of the above additional delivery order is: Inferred by a prediction algorithm learned based on order history data of one or more of the above stores, How to optimize delivery order allocation.
5. In paragraph 3, For information on the above additional delivery orders, Further including at least some of the information on the time of occurrence of the additional delivery order, the order amount, the revenue upon processing, or the customer who requested the additional delivery order; How to optimize delivery order allocation.
6. In paragraph 1, Information about the above first delivery order, Including the location where the first delivery order occurred, How to optimize delivery order allocation.
7. In paragraph 1, Information about the above multiple delivery people, Including the location and movement speed of each of the plurality of delivery people, How to optimize delivery order allocation.
8. In paragraph 7, The movement speed of each of the above multiple deliverymen is: Estimated based on the delivery history and registered means of transportation of each of the above multiple delivery people. How to optimize delivery order allocation.
9. In paragraph 1, The step of generating the above multiple allocation plans is: A step of distinguishing multiple order occurrence cases based on whether the above additional delivery order occurs; A step of generating one or more sub-allocation plans corresponding to each of the plurality of order occurrence cases; and A step of classifying the delivery person to whom the first delivery order is assigned into the same sub-allocation plan as the same allocation plan, How to optimize delivery order allocation.
10. In paragraph 9, The step of distinguishing the above multiple order occurrence cases is: A step of adjusting the occurrence probability to 100% for additional delivery orders whose occurrence probability is greater than the first criterion; and For additional delivery orders whose occurrence probability is below the second criterion, a step is included to correct the occurrence probability to 0%. How to optimize delivery order allocation.
11. In paragraph 1, The above predicted cost is, Including the estimated time required to process the target delivery order set according to each of the above multiple allocation plans, How to optimize delivery order allocation.
12. In paragraph 11, The above estimated time is, The sub-estimated time required to process the target delivery order set according to each sub-allocation plan included in each of the above multiple allocation plans, and Based on the probability of order occurrence cases corresponding to each of the above sub-allocation plans, How to optimize delivery order allocation.
13. In paragraph 1, The above predicted gain is, Including at least a portion of the platform's revenue, the total revenue of the stores, or the total revenue of the plurality of delivery people generated by processing the target delivery order set according to each of the plurality of allocation plans. How to optimize delivery order allocation.
14. In paragraph 1, The above predicted gain is, Including the expected acquisition score corresponding to the set of target delivery orders processed according to each of the above multiple allocation plans, The above expected score is, The score is calculated by adding up the points awarded based on the information of the customer who requested the target delivery order for each target delivery order included in the target delivery order set. How to optimize delivery order allocation.
15. In paragraph 1, The above predicted cost is, It is calculated by normalizing and adding up multiple sub-prediction costs included in the above prediction cost, The above predicted gain is, It is calculated by normalizing and then adding up multiple sub-prediction gains included in the above prediction gain. How to optimize delivery order allocation.
16. In paragraph 1, The steps for selecting the optimal allocation plan are: A step of determining a priority among the plurality of allocation plans by adding the predicted cost and the predicted gain according to a preset criterion; and A step of selecting an allocation plan having the highest priority among the above multiple allocation plans as the optimal allocation plan, How to optimize delivery order allocation.
17. A non-transitory computer-readable recording medium having recorded thereon a program for executing the method of paragraph 1 on a computer.
18. An electronic device for optimizing the allocation of delivery orders, Contains a memory and a processor that store instructions, The above processor is connected to the above memory, Identify the first delivery order in an unassigned state, Identifying multiple delivery personnel who are capable of processing delivery orders and are located within a certain distance from the location where the first delivery order was generated; Obtain information about additional delivery orders that may occur at one or more stores located within a specific area; Based on the information about the first delivery order, the information about the additional delivery order, and the information about the plurality of delivery people, a plurality of allocation plans are generated for assigning the plurality of delivery people to a set of target delivery orders to be processed, Calculating at least a portion of the predicted cost or predicted benefit according to each of the above multiple allocation plans, An electronic device configured to select an optimal allocation plan based on at least some of the predicted costs or the predicted benefits.
Citation Information
Patent Citations
Delivery order distribution system and providing method thereof
KR1020180042598A
Metal-carbon composite containing 2-dimensional nano-metal particles and method for preparing the same
KR1020240139244A
Electronic device for allocating courier and operating method thereof
KR102250745B1
Method for providing delivery agent mission information and apparatus for the same
KR102399463B1
Electronic apparatus for providing information to terminal of delivery person and method thereof
KR102447882B1