Method, device, and recording medium for processing delivery request
The method optimizes e-commerce delivery by generating plans based on cost functions and adapting to task status, addressing inefficiencies and delays for improved user experience.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- COUPANG CORP
- Filing Date
- 2025-03-13
- Publication Date
- 2026-05-07
AI Technical Summary
Existing e-commerce delivery systems face inefficiencies in processing delivery requests and guiding workers on tasks, with potential delays and disruptions leading to suboptimal user experiences.
A method involving an electronic device that generates a delivery plan based on a cost function, transmits tasks to worker terminals, and adjusts plans in response to task status updates, ensuring efficient delivery and recovery from delays.
Enhances user convenience by optimizing delivery processes, minimizing disruptions, and ensuring timely delivery through adaptive task management.
Smart Images

Figure KR2025099802_07052026_PF_FP_ABST
Abstract
Description
Method, device, and recording medium for processing delivery requests
[0001] The present disclosure relates to a method for processing a product delivery request.
[0002] Driven by advancements in communication technology and changes in the social environment, e-commerce services provide a wide range of goods and services to many users through e-commerce platforms (e.g., online platforms). Users can conveniently purchase various goods and services using mobile applications running on electronic devices (e.g., smartphones, tablets, laptops, and desktops). E-commerce services also offer delivery services that deliver products to users in various regions using logistics and distribution networks. Through this, users can conveniently receive ordered goods at their desired location.
[0003] E-commerce services are equipped with logistics networks capable of storing goods in various regions to provide rapid delivery services. For example, they establish multiple logistics centers capable of storing large volumes of goods, enabling the rapid delivery of items from these centers to their destinations upon receiving a delivery request. Such a logistics network offers the advantage of processing deliveries much faster than the traditional method of shipping goods from the seller to the buyer when a delivery order is received. Furthermore, the logistics network of e-commerce services includes various levels of locations for storing goods (e.g., logistics centers, hubs, camps, etc.), allowing for the rapid delivery of products from each location to the buyer.
[0004] The technical problem to be solved by one embodiment of the present disclosure is to generate a delivery plan that can process delivery requests most efficiently, thereby enhancing user convenience and customer experience.
[0005] Another technical problem to be solved by one embodiment of the present disclosure is to clearly guide each worker on the tasks to be performed by transmitting a plurality of tasks included in a delivery plan to a plurality of worker terminals.
[0006] Another technical problem to be solved by one embodiment of the present disclosure is to minimize the impact of problems occurring during delivery by modifying the delivery plan or creating a new delivery plan based on the delay time caused by problems occurring during the execution of the task.
[0007] The technical problems of the present disclosure are not limited to those mentioned above, and other unmentioned technical problems will be clearly understood by a person skilled in the art of the present disclosure from the description below.
[0008] A method for processing a delivery request for a product performed by an electronic device according to one aspect of the present disclosure may include: acquiring a delivery request for a product, wherein the delivery request includes information about at least one of a source, a destination, or a product; generating a first delivery plan consisting of one or more tasks based on the delivery request, wherein the one or more tasks correspond to a delivery operation for at least a portion of the section between the source and the destination; transmitting the first task among the one or more tasks to a first worker terminal; and receiving information about the current status of the first task from the first worker terminal.
[0009] In one embodiment, the step of receiving information about the current status of the first task may include receiving information about the success or failure of the first task from the first worker terminal.
[0010] In one embodiment, the step of receiving information regarding the success or failure of the first task may further include: a step of checking whether a second task, which is the next task of the first task, exists upon receiving information that the first task has succeeded; and a step of transmitting the second task to a second worker terminal upon confirming that the second task exists, and determining that the processing of the delivery request is completed upon confirming that the second task does not exist.
[0011] In one embodiment, the step of receiving information regarding the success or failure of the first task may further include: a step of identifying a problem that occurred during the execution of the first task upon receiving information that the first task has failed; and a step of determining whether the failure of the first task is recoverable based on at least one of the problem that occurred during the execution of the first task and the delay time caused by the problem that occurred during the execution of the first task.
[0012] In one embodiment, the step of determining whether the failure of the first task is recoverable may further include: determining that the failure of the first task is recoverable by determining that the delay time is within a predetermined time; and modifying and re-executing the first task.
[0013] In one embodiment, the step of determining whether the failure of the first task is recoverable may further include: determining that the failure of the first task is unrecoverable as the delay time is determined to exceed a set time; and generating and executing a second delivery plan different from the first delivery plan.
[0014] In one embodiment, the step of generating the first delivery plan may include generating the first delivery plan based on a cost function representing the total sum of time and costs incurred in the process of processing the delivery request.
[0015] In one embodiment, the product is stored at one or more nodes during the delivery process, and the cost function may represent the total sum of time and costs incurred in processing the delivery request based on at least one of the location of each node, the distance between each node, available means of transport, the cost or time required for using each means of transport, drivers currently on duty, the proficiency of each driver, the presence of return / refund products or fresh bags to be collected at the destination, whether delivery is entrusted to an external company, or user requests.
[0016] In one embodiment, the one or more tasks are mapped to one of a plurality of worker terminals and may include information on at least one of a departure node, an arrival node, a time taken, a means of transport, a driver, or a product to be loaded.
[0017] In one embodiment, the step of obtaining the delivery request may further include the step of providing a tracking ID corresponding to the delivery request to the user terminal in response to obtaining the delivery request from the user terminal.
[0018] In one embodiment, the method may further include the step of receiving a status check request from the user terminal—the status check request includes the tracking ID—and the step of providing information about the current status of the delivery request in response to receiving the status check request.
[0019] In one embodiment, the step of obtaining the delivery request may further include: a step of calculating the time required to process the delivery request in response to obtaining the delivery request from the user terminal; and a step of providing information regarding the estimated time of arrival to the user terminal based on the time required.
[0020] In one embodiment, the electronic device provides an e-commerce service, and if the product included in the delivery request is not provided by the e-commerce service, the delivery request includes information about the origin, and if the product included in the delivery request is provided by the e-commerce service, the delivery request may not include information about the origin.
[0021] In one embodiment, the step of receiving information about the current state of the first task may include receiving information about the current state of the first task from the worker terminal at a predetermined time interval.
[0022] An electronic device according to one embodiment of the present disclosure comprises one or more processors and one or more memories in which instructions executed by the one or more processors are stored, and when the instructions are executed by the one or more processors, the one or more processors may be configured to execute a method according to the present disclosure.
[0023] In a non-transient computer-readable recording medium having instructions that cause one or more processors to perform an operation when executed by one or more processors according to one embodiment of the present disclosure, the instructions may be configured to cause the one or more processors to execute a method according to the present disclosure.
[0024] According to various embodiments of the present disclosure, a delivery plan capable of processing delivery requests most efficiently can be generated, thereby enhancing user convenience and customer experience.
[0025] According to various embodiments of the present disclosure, by transmitting a plurality of tasks included in a delivery plan to a plurality of worker terminals, the work to be performed by each worker can be clearly guided.
[0026] According to various embodiments of the present disclosure, the impact of problems occurring during delivery can be minimized by modifying the delivery plan or creating a new delivery plan based on the delay time caused by problems occurring during the execution of a task.
[0027] The effects according to the technical concept of the present disclosure are not limited to those mentioned above, and other unmentioned effects can be clearly understood by a person skilled in the art from the description in the specification.
[0028] FIG. 1 illustrates a logistics network for the delivery of goods according to one embodiment of the present disclosure.
[0029] FIG. 2 is a drawing illustrating an environment in which an electronic device according to one embodiment of the present disclosure can be applied.
[0030] FIG. 3 is a block diagram of an electronic device according to one embodiment of the present disclosure.
[0031] FIG. 4 schematically illustrates information included in a delivery request and a delivery plan according to one embodiment of the present disclosure.
[0032] FIG. 5 is a flowchart of a method for an electronic device to execute a delivery plan according to one embodiment of the present disclosure.
[0033] FIG. 6 is a flowchart of a method for an electronic device to execute a delivery plan according to one embodiment of the present disclosure.
[0034] FIG. 7 is a flowchart of a method for an electronic device to execute a delivery plan according to one embodiment of the present disclosure.
[0035] FIG. 8 is a flowchart of a method for an electronic device to process a delivery request according to one embodiment of the present disclosure.
[0036] The various embodiments described in this document are illustrative for the purpose of clearly explaining the technical concept of the present disclosure and are not intended to limit it to specific embodiments. The technical concept of the present disclosure includes various modifications, equivalents, alternatives, and embodiments optionally combined from all or part of each embodiment described in this document. Furthermore, the scope of the technical concept of the present disclosure is not limited to the various embodiments presented below or the specific descriptions thereof.
[0037] Terms used in this document, including technical or scientific terms, may have the meaning generally understood by those skilled in the art to which this disclosure pertains, unless otherwise defined.
[0038] Expressions used in this document, such as “includes,” “may include,” “is equipped,” “is equipped,” “has,” and “may have,” imply the existence of the subject feature (e.g., function, operation, or component, etc.) and do not exclude the existence of other additional features. In other words, such expressions should be understood as open-ended terms implying the possibility of including other embodiments.
[0039] Singular expressions used in this document may include the meaning of the plural form unless the context otherwise indicates, and this applies likewise to singular expressions described in the claims.
[0040] Expressions such as "first," "second," or "first," "second" used in this document are used to distinguish one object from another when referring to multiple objects of the same kind, unless the context implies otherwise, and do not limit the order or importance of said objects.
[0041] Expressions used in this document such as “A, B, and C”, “A, B, or C”, “A, B, and / or C”, “at least one of A, B, and C”, “at least one of A, B, or C”, “at least one of A, B, and / or C”, etc., may mean each of the listed items or all possible combinations of the listed items. For example, “at least one of A or B” may refer to (1) at least one A, (2) at least one B, and (3) at least one A and at least one B.
[0042] As used in this document, the term “part” may refer to software or hardware components such as FPGAs (field-programmable gate arrays) or ASICs (application-specific integrated circuits). However, “part” is not limited to hardware and software. “Part” may be configured to be stored on an addressable storage medium or configured to execute one or more processors. In one embodiment, “part” may include components such as software components, object-oriented software components, class components, and task components, as well as processors, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.
[0043] The expression "based on" as used in this document is used to describe one or more factors affecting an act or action of a decision or judgment described in the phrase or sentence containing such expression, and this expression does not exclude additional factors affecting said act or action of a decision or judgment.
[0044] As used in this document, the expression that a certain component (e.g., a first component) is "connected" or "connected" to another component (e.g., a second component) may mean not only that the said certain component is directly connected or connected to the said other component, but also that it is connected or connected through a new other component (e.g., a third component).
[0045] As used in this document, the expression "configured to" may have meanings such as "set to," "capable of," "modified to," "made to," or "able to." This expression is not limited to the meaning of "specifically designed in hardware," and, for example, a processor configured to perform a specific action may refer to a generic-purpose processor capable of performing that specific action by executing software.
[0046] Various embodiments of the present disclosure will be described below with reference to the accompanying drawings. In the accompanying drawings and the description thereof, identical or substantially equivalent components may be given the same reference numerals. Furthermore, in the description of the various embodiments below, the description of identical or corresponding components may be omitted, but this does not mean that such components are not included in the embodiments.
[0047] FIG. 1 illustrates a logistics network for the delivery of goods according to one embodiment of the present disclosure.
[0048] A logistics network may refer to a system for managing and optimizing the process of delivering goods or services provided in an e-commerce service from a sender to a recipient (e.g., a consumer). A logistics network may include various nodes that goods or services pass through during the distribution process. For example, each node may correspond to various locations where goods or services are produced or stored. Referring to FIG. 1, each node may correspond to at least one of a shipper, a warehouse (mixed distribution, MXD), a fulfillment center (FC), a camp, or a recipient. For example, the shipper may be a seller selling goods through an online platform, and the recipient may be a consumer purchasing goods through an online platform. According to one embodiment, the shipper node and the recipient node do not have fixed locations, but may be a location where goods for which a delivery request has been received can be obtained (or the shipper's address) and a location designated by the recipient as the place of receipt for the goods (or the recipient's address). Conversely, warehouses, fulfillment centers, hubs, camps, etc., may have fixed locations.
[0049] According to one embodiment, the sender and the recipient may be the same person. That is, although FIG. 1 illustrates that a product supplied by a sender reaches the recipient via a logistics network, a scenario in which a person who requested delivery of a specific item from a first location to a second location receives the item may also be included. Furthermore, delivery of the product is not necessarily to be from the sender to the recipient; if a delivery request is received for a product already stored at a node other than the sender node, the product may be delivered from the node where it is stored to the recipient.
[0050] According to one embodiment, the size of the circle corresponding to each node may indicate the storage capacity of the corresponding node. For example, the capacity of goods or services stored in a warehouse node may be larger than that of a dispatcher node, and the capacity of goods or services stored in a logistics center node may be larger than that of a warehouse node.
[0051] According to one embodiment, each node may have a connection relationship with at least one other node included in the logistics network. According to one embodiment, each node may have a connection relationship with at least one of a parent node corresponding to a place where goods stored at the node were stored in a previous stage of the delivery process, or a child node where goods originating from the node are to be stored. For example, if the child node of the first node is the second node, and the child nodes of the third node are the fourth and fifth nodes, goods stored at the first node may be delivered and stored at the second node in the next stage of the delivery process, and goods stored at the third node may be delivered and stored at the fourth and fifth nodes in the next stage of the delivery process. According to one embodiment, a sender node, a warehouse node, a logistics center node, a camp node, and a recipient node may have a connection relationship with each other. For example, the sender node may be the parent node of the warehouse node, the warehouse node may be the parent node of the logistics center node, the logistics center node may be the parent node of the camp node, and the camp node may be the parent node of the recipient node. For example, referring to FIG. 1, the first camp node is connected to the first hub node and the first recipient node, and the second camp node is connected to the first hub node, the second recipient node, and the third recipient node. The goods delivered to the first camp and the second camp may be at least a portion of the goods stored in the first hub, and the goods stored in the second hub may not be delivered to the first camp and the second camp. Additionally, the goods stored in the first camp may be delivered to the first recipient and may not be delivered to the second or third recipient. Conversely, the goods stored in the second camp may be delivered to the second and third recipients and may not be delivered to the first recipient.
[0052] According to one embodiment, a delivery process for a product using a logistics network may include a plurality of delivery stages. A delivery stage may refer to the operation of delivering a product from one node to the next node. The delivery process of a product or service may consist of multiple delivery stages. For example, the process of delivering a product supplied by a first sender to a first recipient is as follows: First sender > First warehouse > Logistics center > First hub > First camp > First recipient. At this time, the delivery process of the product may include a first delivery stage delivering the product from the first sender to the first warehouse, a second delivery stage delivering the product from the first warehouse to the logistics center, a third delivery stage delivering the product from the logistics center to the first hub, a fourth delivery stage delivering the product from the first hub to the first camp, and a fifth delivery stage delivering the product from the first camp to the first recipient. The logistics network may divide and perform the work for a delivery request by each delivery stage.
[0053] According to one embodiment, the delivery step of delivering a product to a recipient (e.g., a consumer) may be referred to as last-mile delivery, and other delivery steps (First and Middle Mile, FMM) may be referred to as linehole delivery. For example, the delivery step from the camp to the recipient may be referred to as last-mile delivery, and other delivery steps from the sender to the warehouse, from the warehouse to the logistics center, and from the logistics center to the camp may all be referred to as linehole delivery. That is, the first through fourth delivery steps are all linehole delivery, and the fifth delivery step may be last-mile delivery.
[0054] According to one embodiment, product delivery between each node may utilize a designated means of transport. For example, a line-haul truck may be used for line-haul delivery, and a means of transport such as a van or a box truck may be used for last-mile delivery. Each means of transport may travel back and forth between two designated nodes and transport various products according to delivery requests. For example, a first line-haul truck may travel back and forth between a logistics center and a first hub and transport products according to various delivery requests, a second line-haul truck may travel back and forth between a first hub and a second camp and transport products, and a first box truck may transport products from a first camp to a recipient.
[0055] FIG. 2 is a drawing illustrating an environment in which an electronic device according to one embodiment of the present disclosure can be applied.
[0056] The electronic device (210), user terminal (220), and worker terminal (230) are connected via a network and can communicate with each other. The electronic device (210) may be a server, or it may be a different terminal distinct from the user terminal (220) and the worker terminal (230).
[0057] The electronic device (210) may be a server device that provides e-commerce services. That is, the electronic device (210) may be a server device that operates under the management of the operator of the e-commerce service.
[0058] The electronic device (210) can manage information regarding items provided by the electronic commerce service. The electronic commerce service may provide a service to the user that allows the user to purchase goods such as items, food, or products. Alternatively, the electronic commerce service provided by the electronic device (210) may include a service that mediates the sale of goods by some users to other users. The information regarding items managed by the electronic device (210) may include, for example, information regarding the identification of the item, the name of the item, product information corresponding to the item, the price of the item, the capacity of the item, the size of the item, the weight of the item, the attributes of the item, the category, or the unit price. In this case, the item may be a unit of sale of a product, and even in the case of the same product, it may be provided to the user as a different item. For example, even in the case of the same product, it may be sold as a different item by varying the unit quantity and price. Therefore, different items that share product information may exist. The management of information regarding items may collectively refer to a series of actions involving processing that information while having control authority over it. For example, the management of information regarding an item may include storing, updating, or modifying that information.
[0059] Regarding the management method of the electronic device (210), in one embodiment, the electronic device (210) may manage information accompanying the provision of e-commerce services based on user input. For example, the electronic device (210) may communicate with a user terminal (220) to provide data for executing a mobile application (or "app") for using e-commerce services. The mobile application provides various functions necessary for a user to use e-commerce services on a portable electronic device such as a smartphone or tablet, and can interact with the user through a user interface (UI). For example, the user may exchange messages or share photos with other users through a social network app, or manage bank transactions using a financial app. Such mobile apps often have specialized functions and are intended to provide convenience and efficiency to the user. For example, the mobile application may be executed on the user terminal (220).
[0060] In one embodiment, the electronic device (210) may provide a page related to the e-commerce service to a user terminal (220) based on a request from a user utilizing the e-commerce service. Here, the page related to the e-commerce service provided to the user terminal (220) may include a page providing various information regarding items that the user can purchase, a page regarding the purchase of an item requested by the user, a shopping cart page for purchasing an item, a page providing a list of items searched in various ways, a page providing detailed information about an item, etc. The page providing operation may include an operation of providing at least some of all data generated during the process of the user utilizing the e-commerce service to the user. The page may include various graphic interfaces capable of interacting with the user to perform functions supported by the electronic device (210) in a mobile application.
[0061] Additionally, the electronic device (210) can manage transactions regarding e-commerce services provided to the user, that is, transactions regarding online products (e.g., goods or services). In other words, the electronic device (210) can manage a series of processes such as enabling the user to search for, select, purchase, and pay for items and request delivery. As such processing, the electronic device (210) can provide the user with information regarding items and delivery so that the user can search for, select, purchase, and pay for items and request delivery, and can receive the user's purchase, payment, and delivery requests from the user. Furthermore, regarding operations that the electronic device (210) can perform, it should be noted that even if an operation is not mentioned in this disclosure, if it is a general operation that a server device providing known e-commerce services can perform, applying the technical concept of this disclosure by referring to such operation is not excluded from the scope of this disclosure.
[0062] The electronic device (210) may be a server device that manages e-commerce services. That is, the electronic device (210) may be a server device that manages a platform that provides e-commerce services. A user may subscribe to the e-commerce service and purchase items through the e-commerce service. A user terminal (220) transmits an input requesting information about an item to the electronic device (210), and the electronic device (210) may provide information about the item to the user terminal (220).
[0063] According to one embodiment, the electronic device (210) may be a server device that manages a delivery process in response to a delivery request from a user. A delivery request from a user may include, for example, a delivery request from a seller to a user resulting from the purchase of goods provided by a seller, or a delivery request in which the user requests that specific goods be transported from a designated origin to a destination. Upon receiving a delivery request, the electronic device (210) may generate a delivery plan composed of multiple tasks and manage the delivery plan, including the current status and success / failure status of each task. A task refers to a task corresponding to each of the multiple delivery stages included in the delivery plan, and may correspond to a task of delivering goods from one node (origin node) to the next node (arrival node) within a set time using a designated means of transport. For example, the electronic device (210) may transmit a task to a worker terminal (230) that includes information regarding at least one of the origin node, arrival node, time required, means of transport, driver, or goods to be loaded. According to one embodiment, tasks may be generated for each stage of the delivery process, and accordingly, multiple tasks may be generated in a single delivery plan. For example, if a delivery plan includes a first delivery stage, a second delivery stage, and a third delivery stage, a first task, a second task, and a third task corresponding to each delivery stage may be created. According to one embodiment, the electronic device (210) may map a task to a worker terminal (230) based on the entity to perform each task. Accordingly, the electronic device (210) may process a delivery request by transmitting each task to a plurality of different worker terminals (230a, 230b, 230c, 230n).For example, the first task can be processed by the first worker, the second task by the second worker, and the third task by the third worker. In order for the first task to be processed by the first worker, the second task by the second worker, and the third task by the third worker, the first task can be transmitted to the first worker terminal (230a), the second task by the second worker terminal (230b), and the third task by the third worker terminal (230c).
[0064] The electronic device (210) can modify a delivery plan or create a new delivery plan by checking the progress or success / failure status of each task. For example, if a problem occurs in a task and it fails, the electronic device (210) checks whether the problem is solvable, and if it is solvable, it can proceed with the task again after solving the problem. On the other hand, if the problem is not solvable, it can create a new delivery plan to process the delivery request. The electronic device (210) can obtain the progress status of all tasks from the worker terminal (230).
[0065] The aforementioned electronic device (210) may be implemented as one or more computing devices. For example, all functions of the electronic device (210) may be implemented in a single computing device. As another example, the first function of the electronic device (210) may be implemented in a first computing device, and the second function may be implemented in a second computing device. As yet another example, multiple computing devices may be used, each implementing all functions or specific functions of the electronic device (210). The aforementioned computing device may be a desktop computer, a laptop computer, an application server, a proxy server, or a cloud server, but is not limited thereto, and any type of device equipped with computing functions may be a computing device.
[0066] A user terminal (220) may be a device for a user to use an e-commerce service. The user terminal (220) may be implemented as a terminal capable of transmitting and receiving various information to and from an electronic device (210) via a network. For example, the user terminal (220) may be one of a computer, a laptop, a portable communication terminal (such as a smartphone), a portable multimedia device, a wearable device, or an HMD. However, the type of user terminal (220) is not limited thereto, and the user terminal (220) may be any device capable of receiving information from a user or outputting information to a user, and communicating with an electronic device (210) or other devices via a network.
[0067] The user terminal (220) can provide information received from the electronic device (210) to the user and can receive input from the user and transmit it to the electronic device (210). Specifically, the user terminal (220) can obtain input from the user instructing the call of various pages and generate a command instructing the call of various pages in response to the obtained input. The user terminal (220) can transmit the command instructing the call of various pages to the electronic device (210). The input obtained from the user may include various forms of input, such as a click using a mouse, a touch using a touch pad or touch screen, voice recognition, and other electronic inputs. The user terminal (220) can receive various pages from the electronic device (210) and output the received various pages.
[0068] A user terminal (220) may be a device for a user to use a delivery service for a product. The user terminal (220) may be implemented as a terminal capable of transmitting and receiving various information to and from an electronic device (210) via a network. For example, the user terminal (220) may be one of a computer, a laptop, a portable communication terminal (such as a smartphone), a portable multimedia device, a wearable device, or an HMD. However, the type of user terminal (220) is not limited thereto, and the user terminal (220) may be any device capable of receiving information from a user or outputting information to a user, and communicating with an electronic device (210) or other devices via a network.
[0069] The worker terminal (230) receives a task included in a delivery plan from the electronic device (210) and can display information for performing the task on a display. For example, the worker terminal (230) can display information such as a means of transport, truck number, goods to be loaded (in pallets or parcels), origin, destination, and route. For example, the worker terminal (230) can provide information to delivery drivers, such as line-hole truck drivers and box truck drivers.
[0070] The network can serve to connect an electronic device (210), a user terminal (220), a worker terminal (230), or other external devices. For example, the network can provide a connection path so that a user terminal (220), a worker terminal (230), or other external devices can be connected to the electronic device (210) and transmit and receive packet data with the electronic device (210). The network can be implemented as any kind of wired or wireless network, such as a Local Area Network (LAN), a Wide Area Network (WAN), a Mobile Radio Communication Network, or a Wibro (Wireless Broadband Internet).
[0071] An electronic device (e.g., electronic device (210)) according to various embodiments of the present disclosure may be a device of various forms. For example, the electronic device (210) may be a portable communication device, a computer device, a portable multimedia device, a wearable device, a home appliance device, or a device according to one or more of the devices described above. The electronic device (210) of the present disclosure is not limited to the devices described above.
[0072] FIG. 3 is a block diagram of an electronic device according to one embodiment of the present disclosure.
[0073] The electronic device (300) can process information regarding e-commerce services. In one embodiment, the electronic device (300) may include one or more processors (310), one or more memories (320), and a communication interface (330) as components. In one embodiment, at least one of the components of the electronic device (300) may be omitted, or another component may be added to the electronic device (300). In one embodiment, additionally or alternatively, some components may be implemented as an integrated unit or as a singular or plural entity. In the present disclosure, one or more processors (310) may be referred to as processors (310). Unless the context clearly indicates otherwise, the expression processors (310) may mean a set of one or more processors. In the present disclosure, one or more memories (320) may be referred to as memories (320). Unless the context clearly indicates otherwise, the expression memories (320) may mean a set of one or more memories. In one embodiment, at least some of the components inside and outside the electronic device (300) may be connected to each other via a bus, GPIO (General Purpose Input / Output), SPI (Serial Peripheral Interface), or MIPI (Mobile Industry Processor Interface), etc., to exchange information (data, signals, etc.).
[0074] A communication interface (330) can communicate with a user's terminal and an external device. The communication interface (330) can perform wireless or wired communication between an electronic device (300) and a terminal. For example, the communication interface (330) can perform wireless communication according to methods such as 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), or GNSS (Global Navigation Satellite System). For example, the communication interface (330) can perform wired communication according to methods such as USB (Universal Serial Bus), HDMI (High Definition Multimedia Interface), RS-232 (Recommended Standard-232), or POTS (Plain Old Telephone Service). In one embodiment, the electronic device (300) may be implemented by integrating it with another device. In this case, the communication interface (330) may function as a connection circuit or interface connecting the electronic device (300) and the other device.
[0075] The processor (310) can control at least one component of an electronic device (300) connected to the processor (310) by running software (e.g., instructions, programs, etc.). Additionally, the processor (310) can perform various operations related to the present disclosure, such as computation, processing, data generation, and processing. Furthermore, the processor (310) can load data, etc. from memory (320) or store it in memory (320). Moreover, the processor (310) can transmit and receive various information with a user's terminal and an external device through a communication interface (330). In one embodiment, the processor (310) can control the communication interface (330) to transmit various information, such as information about various pages, to the user's terminal.
[0076] The memory (320) can store various information (data). The information stored in the memory (320) is information acquired, processed, or used by at least one component of the electronic device (300), and may include software (e.g., instructions, programs, etc.). The memory (320) may include volatile and / or non-volatile memory. In the present disclosure, instructions or programs are software stored in the memory (320) and may include an operating system for controlling the resources of the electronic device (300), an application, and / or middleware that provides various functions to the application so that the application can utilize the resources of the electronic device (300). In one embodiment, the memory (320) may store instructions that cause the processor (310) to perform calculations when executed by the processor (310). The memory (320) may store at least a portion of information received from a terminal through the communication interface (330) and / or information transmitted to the terminal through the communication interface (330). The processor (310) can store at least a portion of the information received from the terminal through the communication interface (330) and / or the information transmitted to the terminal through the communication interface (330) in the memory (320).
[0077] The processor (310) may receive a delivery request from a user terminal. The delivery request is a request to deliver a product from a source to a destination and may include information about the product, the source, and the destination. The product included in the delivery request may be a product provided by the e-commerce service or a product not provided. The information about the product may include information about the size, shape, and quantity of the product. According to one embodiment, in the case of a delivery request for a product provided by the e-commerce service, the user may use the information stored in the memory (320) without having to separately input information about the product. The information about the source and destination may be the address of a specific location. According to an embodiment, in response to receiving a delivery request from a user terminal, the processor (310) may generate a tracking ID capable of tracking the delivery of the product and transmit it to the user terminal. The tracking ID is a unique number corresponding one-to-one to each delivery request and may be used by the user to check the current status of the delivery request. For example, the processor (310) may transmit the current status of a delivery request corresponding to the received tracking ID to the user terminal in response to receiving a tracking ID from the user terminal. For example, the processor (310) may transmit a phrase indicating the current status of the delivery request, such as "in transit" or "delivery completed," in response to receiving a tracking ID, and may further transmit information about the current location of the product.
[0078] The processor (310) may generate a delivery plan corresponding to the delivery request upon receiving the delivery request. The delivery plan is a plan for delivering goods from a source to a destination and may include multiple tasks corresponding to each of multiple delivery stages. For example, if the delivery process of the goods included in the delivery request includes a first delivery stage, a second delivery stage, and a third delivery stage, the delivery plan may include a first task corresponding to the first delivery stage, a second task corresponding to the second delivery stage, and a third task corresponding to the third delivery stage.
[0079] According to one embodiment, the processor (310) can generate a delivery plan based on a cost function to minimize the time and cost required for the delivery process. Various resources may be required to deliver goods from a source to a destination, and the cost function may represent the total sum of resources required for the delivery process of the goods according to various variables. For example, variables considered in the cost function may include at least one of the following: the location of each node, the distance between each node, available means of transport, the cost or time required to use each means of transport, drivers currently on duty, the skill level of each driver, the presence of return / refund goods or fresh bags to be collected at the destination, whether delivery is outsourced to an external company, or user requests. Based on the cost function, the processor (310) can generate a delivery plan that minimizes the cost required from the source to the destination. That is, the processor (310) can generate multiple tasks based on the cost function that minimize the cost required from the source to the destination.
[0080] The processor (310) can sequentially transmit a plurality of generated tasks to worker terminals. According to one embodiment, each task may be performed by a different worker, and the processor (310) can map the task to the worker terminal based on the entity performing each task. Accordingly, the processor (310) can transmit each task to a different worker terminal. For example, the processor (310) can transmit a first task corresponding to a first delivery stage to a first worker terminal, and after the first task is completed, transmit a second task corresponding to a second delivery stage to a second worker terminal. According to another embodiment, the processor (310) can simultaneously transmit a plurality of generated tasks to worker terminals mapped to each task. When multiple tasks are transmitted simultaneously to multiple worker terminals, there is an advantage that the preparation time for each task is shortened and goods can be delivered efficiently because a relatively large amount of time is given to prepare the next task of the currently performing task. For convenience of explanation, the following description describes transmitting a plurality of tasks to worker terminals sequentially.
[0081] According to one embodiment, the processor (310) may provide the current status of product delivery to the user in response to receiving a status check request from the user terminal. According to one embodiment, the worker terminal may transmit information regarding the current status of a task being performed to the electronic device (300) at predetermined time intervals. For example, the worker terminal may transmit at least one of the following to the electronic device (300): the location of the product currently being delivered, the time taken to perform the task so far, or information regarding the success or failure of the task. The processor (310) may update information regarding the current status of the task stored in the memory (320) based on information obtained from the worker terminal. Based on the information stored in the memory (320), the processor (310) may transmit the current status of product delivery to the user terminal. For example, the processor (310) may transmit a phrase indicating that the product is currently being delivered to the user terminal, or transmit a phrase indicating that the delivery of the product is completed to the user terminal.
[0082] According to another embodiment, the processor (310) may transmit a status check request to a worker terminal currently performing a task in response to receiving a status check request from a user terminal. The processor (310) may obtain information about the current status from the worker terminal and transmit it to the user terminal. For example, if the second task is currently being performed, the processor (310) may transmit a status check request for the second task to a second worker terminal currently performing the second task. The processor (310) may obtain information about the progress of the second task from the second worker terminal and transmit it to the user terminal. The user may request a delivery status check from the electronic device (300) at any time, and the processor (310) may transmit information about the current status of the delivery process to the user terminal.
[0083] According to one embodiment, the processor (310) can check if there is a next task in the delivery plan in response to receiving information that a task has succeeded. A task succeeded may mean that a product has been delivered from a departure node to a destination node within a set time. If there is a next task, the processor (310) can transmit the next task to a mapped worker terminal. If there is no next task, the processor (310) can determine that the delivery plan is complete. According to one embodiment, as the processor (310) determines that the delivery is complete, it can instruct the user terminal to provide a message indicating that the delivery is complete.
[0084] According to one embodiment, the processor (310) can identify problems that occurred during the execution of a task in response to obtaining information that the task has failed. A task failure may mean a state in which the goods cannot be delivered to the destination node within a set time or the goods cannot be delivered to the destination node. The task may fail due to the occurrence of various problems. For example, the goods may not be delivered to the destination node within a set time because a problem occurs with the truck transporting the goods (e.g., body breakdown, tire puncture, etc.), the goods may not be delivered to the destination node because there is insufficient space to store the goods at the destination node, or an excessive time delay may occur due to unexpected traffic congestion. The processor (310) can identify problems that occurred during the execution of the failed task based on information obtained from the worker terminal.
[0085] According to one embodiment, the processor (310) may determine whether the failure is recoverable based on the problem that occurred during the execution of the failed task and the delay time caused by the problem. According to one embodiment, the processor (310) may determine whether the failure is recoverable based on the problem that occurred during the execution of the failed task. For example, if a truck breaks down during the execution of a task, it may be determined as a recoverable failure if there is another available means of transportation, and as an unrecoverable failure if there is no other available means of transportation. For example, if goods are damaged during the execution of a task, the processor (310) may determine as an unrecoverable failure. In addition to the examples mentioned above, the processor (310) may determine whether the failure is recoverable based on various problems that occur during the execution of a task. According to one embodiment, the processor (310) may determine as a recoverable failure if the delay time caused by the problem is within a set time, and as an unrecoverable failure if the delay time exceeds the set time. If it is determined as a recoverable failure, the processor (310) may process the delivery plan by modifying only the failed task without modifying other tasks included in the delivery plan. For example, in a delivery plan including a first task, a second task, and a third task, if a recoverable failure occurs in the first task, the processor (310) may modify only the first task and not modify the second and third tasks. That is, the time required and means of transport for the first task may be modified, and the second and third tasks may be performed according to the original delivery plan. For example, if a truck transporting goods breaks down, the processor (310) may instruct a mechanic to repair the breakdown or to load the goods onto a replacement truck.If the time required for repairing the breakdown or loading the goods onto the replacement truck is within a set time, the processor (310) determines that a recoverable failure has occurred and may instruct the subsequent tasks to be performed as they are without modification.
[0086] Conversely, if it is determined to be an unrecoverable failure, the processor (310) may generate a new delivery plan. That is, if the delay time caused by a problem in the failed task exceeds a set time, the processor (310) may generate a new delivery plan. According to one embodiment, if an unrecoverable failure occurs, the processor (310) may check whether there is a product to be delivered at the origin node of the failed task. If the same product exists at the origin node of the failed task, or if the product can be returned to the origin node of the failed task, the processor (310) may generate a new delivery plan by setting the origin node of the failed task as a new origin. For example, in a delivery plan including a first task, a second task, and a third task, if an unrecoverable failure occurs in the second task, the processor (310) may generate a delivery plan with the origin node of the second task as a new origin. According to one embodiment, if the same product does not exist at the origin node of the failed task, the processor (310) may search for another node where the delivery product exists. For example, if a problem occurs during the execution of the second task, causing the product to stop between the origin node and the destination node, or if the product itself is damaged, the same product may not exist at the origin node of the second task. In such cases, since delivery cannot proceed from the origin node of the second task, the processor (310) may create a new task with a different node as the origin node than the origin node of the second task. Since the first task has already been completed, the first task may be excluded from consideration when creating a new delivery plan. As with creating the initial delivery plan, the processor (310) may use a cost function to create a new delivery plan that minimizes the time and cost required for the delivery of the product.
[0087] FIG. 4 schematically illustrates information included in a delivery request and a delivery plan according to one embodiment of the present disclosure.
[0088] A user terminal can transmit a delivery request (410) to an electronic device. According to one embodiment, the information included in the delivery request (410) may be determined based on whether the delivery request (410) is for a product provided by an e-commerce service. According to one embodiment, in the case of a delivery request (410) for a product provided by an e-commerce service, the delivery request (410) may include information regarding the destination and the product. For example, if a user of an e-commerce service wishes to order a product through an online platform, the user may transmit a delivery request (410) by selecting the product for which delivery is requested and the destination for which the product is to be received. According to another embodiment, in the case of a delivery request (410) for a product not provided by an e-commerce service, the delivery request (410) may include information regarding the origin, destination, and product. For example, if a user requests that a product be moved from a first location to a second location (e.g., consignment by courier), the delivery request (410) may include information regarding the first location (origin), the second location (destination), and the product.
[0089] The processor may generate a delivery plan (420) based on a received delivery request (410). The delivery plan (420) may include a plurality of tasks corresponding to each of a plurality of delivery stages. A task may correspond to the task of delivering goods from one node (departure node) to the next node (arrival node) within a set time using a specified means of transport. For example, the processor may generate a task that includes information on at least one of a departure node, an arrival node, a time required, a means of transport, a driver, or goods to be loaded. According to one embodiment, each task may be mapped to a worker terminal to perform the corresponding task. The processor may transmit the generated task to the mapped worker terminal to guide a suitable worker to perform the corresponding task.
[0090] FIG. 5 is a flowchart of a method for an electronic device to execute a delivery plan according to one embodiment of the present disclosure.
[0091] The electronic device (500) can receive a delivery request from a user terminal (502) (S510). The delivery request may include at least one of information regarding the origin and destination, or the product. In response to receiving the delivery request, the electronic device (500) can generate a tracking ID corresponding to the delivery request and transmit it to the user terminal (502) (S512).
[0092] The electronic device (500) can generate a delivery plan corresponding to the delivery request upon receiving the delivery request (S520). The delivery plan may include a plurality of tasks, and each task may include information regarding at least one of a departure node, a destination node, time required, a means of transport, a driver, or goods to be loaded. The electronic device (500) can generate a delivery plan based on a cost function. Variables considered in the cost function may include at least one of the location of each node, the distance between each node, available means of transport, the cost or time required to use each means of transport, drivers currently on duty, the proficiency of each driver, the presence of return / refund goods or fresh bags to be collected at the destination, whether delivery is entrusted to an external company, or user requests.
[0093] The electronic device (500) can transmit a first task to a worker terminal (504) (S530). The worker terminal (504) of FIG. 5 may include a plurality of worker terminals mapped to different tasks. For example, the worker terminal (504) of FIG. 5 may include a first worker terminal mapped to a first task and a second worker terminal mapped to a second task. The worker terminal (504) can display information about the first task on a display to guide the worker to perform the first task. The worker terminal (504) can transmit information about the current status of the first task to the electronic device (500). According to one embodiment, the worker terminal (504) can transmit information about the current status of the first task to the electronic device (500) at a set time interval.
[0094] The electronic device (500) can receive information regarding the success or failure of the first task from the worker terminal (504). Referring to FIG. 5, the electronic device (500) can receive information that the first task was successful (S532).
[0095] The electronic device (500) may receive a status check request from a user terminal (502) (S540). According to one embodiment, the electronic device (500) may determine that it has received a status check request in response to receiving a tracking ID from the user terminal (502). In response to the status check request, the electronic device (500) may transmit the current status of a currently ongoing task to the user terminal (502) (S542). Referring to FIG. 5, the status of a currently ongoing first task (e.g., "In transit") may be transmitted to the user terminal (502).
[0096] In response to receiving information that the first task has been successful, the electronic device (500) can check whether there is a next task to the first task. In response to confirming that a second task, which is the next task to the first task, exists, the electronic device (500) can transmit the second task to the worker terminal (504) (S550). As previously explained, the worker terminal that received the first task and the worker terminal that received the second task may be different terminals, but in FIG. 5, they are shown as a single terminal for convenience. As in S532, the worker terminal (504) can transmit information that the second task has been successful to the electronic device (500) (S552).
[0097] In response to receiving information that the second task has succeeded, the electronic device (500) can check whether there is a next task to the second task. In response to confirming that there is no next task to the second task, the electronic device (500) can determine that the delivery request has been processed. As the electronic device (500) determines that the delivery request has been processed, it can transmit a message to the user terminal (502) indicating that the delivery request has been processed. According to another embodiment, the user terminal (502) can transmit a status check request to the electronic device (500) after the delivery request has been processed (S560). In response to receiving the status check request, the electronic device (500) can transmit a message to the user terminal (502) indicating that the delivery request has been processed (e.g., "Delivery completed").
[0098] FIG. 6 is a flowchart of a method for an electronic device to execute a delivery plan according to one embodiment of the present disclosure. Descriptions of content that overlap with those described in FIG. 1 to 5 are minimized.
[0099] The electronic device (600) can receive a delivery request from a user terminal (602) (S610). In response to receiving the delivery request, the electronic device (600) can transmit a tracking ID to the user terminal (602) (S612). The electronic device (600) can generate a delivery plan corresponding to the delivery request (S620).
[0100] The electronic device (600) can transmit a first task among one or more tasks included in a delivery plan to a worker terminal (604) (S630). The electronic device (600) can receive information from the worker terminal (604) that the first task was successful (S632).
[0101] The electronic device (600) can check whether there is a next task in response to receiving information that the first task has succeeded. Upon confirming that the next task, the second task, exists, the electronic device (600) can transmit the second task to the worker terminal (604) (S640). At this time, the worker terminal performing the second task may be a different terminal from the worker terminal performing the first task. The electronic device (600) can receive information from the worker terminal (604) that the second task has failed (S642).
[0102] The electronic device (600) can determine whether the failure is recoverable based on the problem that occurred during the execution of the failed task and the delay time caused by the problem. According to one embodiment, the electronic device (600) can determine whether the failure is recoverable based on the problem that occurred during the execution of the failed task. For example, when a truck breaks down during the execution of a task, it may be determined as a recoverable failure if there is another available means of transportation, and as an unrecoverable failure if there is no other available means of transportation. For example, if goods are damaged during the execution of a task, the electronic device (600) may determine that an unrecoverable failure has occurred. According to one embodiment, the electronic device (600) may determine that the failure is recoverable if the delay time caused by the problem is within a set time, and as an unrecoverable failure if the delay time exceeds the set time. If it is determined to be a recoverable failure, the electronic device (600) may process the delivery plan by modifying only the failed task without modifying other tasks included in the delivery plan. Referring to FIG. 6, the electronic device (600) determines that the failure of the second task is a recoverable failure and can modify the second task (S650).
[0103] The electronic device (600) can transmit the modified second task to the worker terminal (604) (S660). The worker terminal performing the modified second task may be the same terminal as the worker terminal performing the second task before modification, or it may be a different terminal. The worker terminal (604) can perform the modified second task based on the received information and can transmit information that the second task was successful to the electronic device (600) (S662).
[0104] FIG. 7 is a flowchart of a method for an electronic device to execute a delivery plan according to one embodiment of the present disclosure. Descriptions of content that overlap with those described in FIG. 1 to 6 are minimized.
[0105] The electronic device (700) can receive a delivery request from a user terminal (702) (S710). In response to receiving the delivery request, the electronic device (700) can transmit a tracking ID to the user terminal (702) (S712). The electronic device (700) can generate a first delivery plan corresponding to the delivery request (S720).
[0106] The electronic device (700) can transmit the first task among one or more tasks included in the first delivery plan to the worker terminal (704) (S730). The electronic device (700) can receive information from the worker terminal (704) that the first task was successful (S732).
[0107] The electronic device (700) can check whether there is a next task in response to receiving information that the first task has succeeded. Upon confirming that the next task, the second task, exists, the electronic device (700) can transmit the second task to the worker terminal (704) (S740). The electronic device (700) can receive information from the worker terminal (704) that the second task has failed (S742).
[0108] The electronic device (700) may determine that a failure is an unrecoverable failure if the delay time caused by a problem occurring during the execution of a failed task exceeds a set time. If it is determined to be an unrecoverable failure, the electronic device (700) may generate a new delivery plan different from the first delivery plan. That is, if the delay time caused by a problem occurring in the failed task exceeds a set time, the electronic device (700) may generate a second delivery plan different from the first delivery plan. According to one embodiment, if an unrecoverable failure occurs, the electronic device (700) may generate a new delivery plan by setting the starting node of the failed task to a new starting point. As with generating the first delivery plan, the electronic device (700) may generate a second delivery plan that minimizes the time and cost required for the delivery of goods by using a cost function.
[0109] The electronic device (600) can transmit the third task included in the second delivery plan to the worker terminal (704) (S760). The worker terminal (704) can perform the third task based on the received information and can transmit information that the third task was successful to the electronic device (700) (S762).
[0110] FIG. 8 is a flowchart of a method for an electronic device to process a delivery request according to one embodiment of the present disclosure.
[0111] The electronic device can obtain a delivery request for a product, including information about at least one of a source, a destination, or a product, in operation S810.
[0112] The electronic device can generate a first delivery plan consisting of one or more tasks based on a delivery request in operation S820.
[0113] The electronic device can transmit a first task among one or more tasks to a first worker terminal in operation S830.
[0114] The electronic device can receive information about the current status of the first task from the first worker terminal in operation S840.
[0115] The electronic device can check whether the first task has succeeded in operation S850. For example, the electronic device can determine whether the first task has succeeded based on information received from the operator terminal.
[0116] In operation S860, the electronic device may check whether a next task exists in response to receiving information from the worker terminal that the first task has been successful. If a next task exists, the electronic device may execute the next task in operation S862. If no next task exists, the electronic device may terminate the delivery request processing.
[0117] In operation S870, the electronic device may determine whether the failure is recoverable in response to receiving information from the operator terminal that the first task has failed. The electronic device may determine whether the failure is recoverable based on the problem that occurred during the execution of the first task and the delay time caused by the problem.
[0118] The electronic device may modify and execute the first task in response to determining in operation S872 that the failure is recoverable. If the electronic device determines that the failure of the first task is recoverable, the electronic device may not modify other tasks included in the first delivery plan.
[0119] The electronic device may generate a second delivery plan in response to determining an unrecoverable failure in operation S874. The electronic device may process a delivery request by generating a new second delivery plan without executing the first task as well as all subsequent tasks included in the first delivery plan. Although each step of the method or algorithm according to the present disclosure is described in a sequential order in the flowcharts illustrated in FIGS. 5 through 8, each step may be performed in an order that can be arbitrarily combined according to the present disclosure, in addition to being performed sequentially. The description according to the flowchart does not exclude making changes or modifications to the method or algorithm and does not imply that any step is essential or desirable. In one embodiment, at least some steps may be performed in parallel, iteratively, or heuristically. In one embodiment, at least some steps may be omitted or other steps may be added.
[0120] Various embodiments of the present disclosure may be implemented as software on a machine-readable storage medium. The software may be software for implementing various embodiments of the present disclosure. The software may be inferred from the various embodiments of the present disclosure by programmers skilled in the art to which the present disclosure pertains. For example, the software may be a program containing machine-readable instructions (e.g., code or code segments). The machine may be a device capable of operating according to instructions called from the storage medium, for example, a computer. In one embodiment, the machine may be an electronic device (300) according to the embodiments of the present disclosure. In one embodiment, the processor of the machine may execute the called instruction to cause the components of the machine to perform a function corresponding to the instruction. In one embodiment, the processor may be a processor (310) according to the embodiments of the present disclosure. The storage medium may mean any type of recording medium in which data is stored that can be read by the machine. The storage medium may include, for example, ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. In one embodiment, the storage medium may be memory (320). In one embodiment, the storage medium may be implemented in a distributed form in a computer system connected by a network, etc. Software may be stored and executed in a distributed form in a computer system, etc. The storage medium may be a non-transitory storage medium. A non-transitory storage medium means a tangible medium that exists regardless of whether data is stored semi-permanently or temporarily, and does not include a signal that is transmitted transitory.
[0121] Although the technical concept of the present disclosure has been described by various embodiments above, the technical concept of the present disclosure includes various substitutions, modifications, and alterations that can be made within the scope of understanding of those skilled in the art to which the present disclosure pertains. Furthermore, it should be understood that such substitutions, modifications, and alterations may be included within the scope of the appended claims.
Claims
1. A method for processing a delivery request for goods performed by an electronic device, Step of obtaining a delivery request for a product - the delivery request includes information about at least one of the origin, destination, or product -; A step of generating a first delivery plan consisting of one or more tasks based on the above delivery request—the one or more tasks correspond to delivery operations for at least a portion of the section between the origin and the destination—; A step of transmitting a first task among the above one or more tasks to a first worker terminal; and A method comprising the step of receiving information about the current status of the first task from the first worker terminal.
2. In Paragraph 1, The step of receiving information about the current state of the first task above is, A method comprising the step of receiving information regarding the success or failure of the first task from the first worker terminal.
3. In Paragraph 2, The step of receiving information regarding the success or failure of the first task above is, A step of checking whether a second task, which is the next task of the first task, exists upon receiving information that the first task has succeeded; and A method further comprising the step of transmitting the second task to a second worker terminal upon confirming that the second task exists, and determining that the processing of the delivery request is completed upon confirming that the second task does not exist.
4. In Paragraph 2, The step of receiving information regarding the success or failure of the first task above is, A step of identifying a problem that occurred during the execution of the first task upon receiving information that the first task has failed; and A method further comprising the step of determining whether the failure of the first task is recoverable based on at least one of a problem that occurred during the execution of the first task and a delay time caused by the problem that occurred during the execution of the first task.
5. In Paragraph 4, The step of determining whether the failure of the first task is recoverable is, A step of determining that the failure of the first task is recoverable by determining that the above delay time is within a set time; and A method further comprising the step of modifying and re-executing the first task.
6. In Paragraph 4, The step of determining whether the failure of the first task is recoverable is, A step of determining that the failure of the first task is unrecoverable as it is determined that the above delay time exceeds a set time; and A method further comprising the step of generating and executing a second delivery plan different from the first delivery plan.
7. In Paragraph 1, The step of generating the above first delivery plan is, A method comprising the step of generating the first delivery plan based on a cost function representing the total sum of time and costs incurred in the process of processing the delivery request.
8. In Paragraph 7, The above product is stored at one or more nodes during the delivery process, and The above cost function represents the total sum of time and cost incurred in processing the delivery request based on at least one of the location of each node, the distance between each node, available means of transport, the cost or time required for using each means of transport, drivers currently on duty, the proficiency of each driver, the presence of return / refund goods or fresh bags to be collected at the destination, whether delivery is outsourced to an external company, or user requests.
9. In Paragraph 8, A method in which one or more of the above tasks are mapped to one of a plurality of worker terminals and include information on at least one of a departure node, a arrival node, a time taken, a means of transport, a driver, or a product to be loaded.
10. In Paragraph 1, The step of obtaining the above delivery request is, A method further comprising the step of providing a tracking ID corresponding to the delivery request to the user terminal in response to receiving the delivery request from the user terminal.
11. In Paragraph 10, Step of receiving a status check request from the user terminal - the status check request includes the tracking ID -; and A method further comprising the step of providing information about the current status of the delivery request in response to receiving the status check request.
12. In Paragraph 1, The step of obtaining the above delivery request is, A step of calculating the time required to process the delivery request in response to receiving the delivery request from the user terminal; and A method further comprising the step of providing information on the estimated time of arrival to the user terminal based on the above-mentioned time.
13. In Paragraph 1, The above electronic device provides e-commerce services, and If the product included in the above shipping request is not provided by the above e-commerce service, the above shipping request includes information about the origin, and A method in which, when the goods included in the above shipping request are provided by the above e-commerce service, the above shipping request does not include information about the origin.
14. In Paragraph 1, The step of receiving information about the current state of the first task above is, A method comprising the step of receiving information about the current status of the first task at a predetermined time interval from the above-mentioned worker terminal.
15. In electronic devices, One or more processors; and It includes one or more memories in which instructions executed by the above one or more processors are stored, and An electronic device configured such that when the instructions are executed by the above one or more processors, the above one or more processors are configured to execute a method according to any one of claims 1 to 14.
16. A non-transient computer-readable recording medium having recorded instructions that cause one or more processors to perform an operation when executed by one or more processors, The above instructions are configured to cause one or more processors to execute a method according to any one of claims 1 through 14, a non-transient computer-readable recording medium.
Citation Information
Patent Citations
Information processing system, information processing program, information processing device, and information processing method
JP2024133120A
Electronic device for managing delivery and controlling method thereof
KR102340339B1
Electronic apparatus for providing information for delivery tasks and method thereof
KR102429437B1
Method and apparatus for creating and providing a delivery route using order information
KR102508630B1
Information providing method and its electronic apparatus thereof
KR102713495B1