Order fulfillment method and system thereof
The order fulfillment system addresses the challenge of unfeasible routes by using hard and soft pruners to incorporate transportation company constraints into the optimization model, ensuring feasible routes are calculated, reducing delays and customer dissatisfaction.
Patent Information
- Application Number
- TW114142057
- Authority / Receiving Office
- TW · TW
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2025-10-17
- Filing Date
- 2025-10-30
- Publication Date
- 2026-07-11
- Estimated Expiration
- 2045-10-29
AI Technical Summary
Existing logistics route optimization methods fail to adequately consider transportation company-specific business constraints, leading to unfeasible routes, delays, and customer dissatisfaction due to changes in transportation company policies or external conditions, and lack a system for quickly handling these situations.
An order fulfillment method and system that uses hard and soft pruners to remove arcs that do not meet transportation company constraints, incorporating these constraints directly into the optimization model, ensuring feasible routes are calculated.
Ensures feasible logistics routes are calculated by directly reflecting transportation company constraints, reducing delays and customer dissatisfaction by avoiding contract violations and external condition impacts.
Smart Images

Figure IMG-2_DRAW_114142057-A0305-14-0001-1 
Figure IMG-2_DRAW_114142057-A0305-14-0002-2 
Figure IMG-2_DRAW_114142057-A0305-14-0003-3
Abstract
Description
Technical Field
[0001] This invention relates to an order fulfillment method and system. Specifically, this invention relates to a method and system for fulfilling an order by removing unsuitable arcs from multiple arcs and using the remaining arcs to determine the optimal logistics route for a buyer's order. Prior Technology
[0002] This invention provides a logistics route optimization technique. This technique utilizes multiple nodes and the connections between them to calculate order fulfillment routes. Traditional methods involve pre-pruning arcs based on order cutline information and using a solver to find the optimal solution for the optimization model, thereby selecting the route with the lowest cost or distance to complete the delivery. This method considers the optimization of general factors such as time, cost, and distance.
[0003] However, even when optimizing order fulfillment routes by considering only general factors such as time, cost, or distance, such routes may still be unfeasible. For example, a transport booking might be rejected due to contractual obligations with the transport companies responsible for the nodes included in the optimized fulfillment routes calculated by the solver. In this case, the fulfillment route must be recalculated, which could delay order delivery completion and lead to customer dissatisfaction with service quality.
[0004] Previously, to account for the transportation company's business constraints, the filtering logic related to these constraints needed to be implemented manually. However, reflecting each business constraint individually was technically extremely challenging, and the system complexity increased with each new condition added. Therefore, the overall logic for determining order fulfillment methods became cumbersome and difficult to maintain.
[0005] Furthermore, traditional route optimization methods have limitations because they fail to adequately reflect the different constraints of each transportation company. For example, constraints such as a transportation company's Cash on Delivery (COD) limits, minimum or maximum commitments, volume restrictions, and cargo size and weight requirements can significantly impact actual operations, but existing simple models typically do not consider these factors. This can lead to planned routes becoming invalid or incurring excessive costs during execution.
[0006] Furthermore, there may be a time lag between order fulfillment planning and order drop, during which time the transportation company's capacity or policies may change. In such cases, the planned route may become infeasible and require replanning. However, existing methods lack a system for quickly handling these situations, which may lead to unnecessary delays or duplicate route calculations.
[0007] Furthermore, existing optimization models fail to adequately reflect the impact of changes in the external environment (such as traffic conditions, weather, and localized unforeseen events). This may result in routes that do not reflect actual transport conditions, potentially leading to service level agreement (SLA) breaches and decreased customer satisfaction.
[0008] Existing technical documents
[0009] Patent documents
[0010] Patent Document 0001: Korean Patent Publication No. 10-2023-0012801
[0011] Patent document 0002: Korean Patent Publication No. 10-2667374 Summary of the Invention
[0012] The problem that the invention aims to solve
[0013] One technical problem to be solved by the embodiments of the present invention is to provide an order fulfillment method and a computing system for performing the method, which removes (prunes) candidate nodes of logistics routes optimized in arc units for connecting nodes, and fulfills orders using logistics routes calculated using the remaining candidate nodes.
[0014] Another technical problem to be solved by the embodiments of the present invention is to provide an order fulfillment method and a computing system for executing the method, which performs arc pruning on multiple arcs corresponding to an order and directly reflects the business constraints of the transportation vehicles corresponding to the remaining arcs into the objective function and constraint formula of the optimization model, thereby calculating the actually executable order fulfillment route.
[0015] Another technical problem to be solved by the embodiments of the present invention is to provide a method for gradually removing unnecessary logistics routes that do not correspond to orders from multiple logistics routes using hard pruners and soft pruners, and a computing system for performing the method.
[0016] Another technical problem to be solved by the embodiments of the present invention is to provide a method for adjusting the applicability of a soft pruning tool by taking into account the physical resources of the server performing route removal (pruning) and a computing system for performing the method.
[0017] The technical problems to be solved by this invention are not limited to those described above. Those skilled in the art will clearly understand other technical problems not mentioned from the content of this invention.
[0018] Solution to the problem
[0019] An order fulfillment method executed by a computing system according to an embodiment of the present invention may include the following steps: acquiring first network information including a plurality of arcs; using a hard pruner corresponding to the arc information of the arcs included in the plurality of arcs based on the order information of the target order; using a soft pruner based on the arc information to remove at least one second arc from a portion of the plurality of arcs other than the at least one first arc from the first network information; and fulfilling the target order using second network information after removing the at least one first arc and the at least one second arc, wherein the arcs may correspond one-to-one with the transportation vehicles connecting the nodes.
[0020] In some embodiments of the present invention, the step of removing the at least one first arc from the first network information using the hard pruner may include the following steps: removing the first arc from the first network information based on the fact that the first transportation company of the first transportation vehicle corresponding to the first arc included in the plurality of arcs does not correspond to the transportation company included in the order information.
[0021] In some embodiments of the present invention, the step of removing the at least one first arc from the first network information using the hard pruner may include the following step: removing the first arc from the first network information based on the fact that the first means of transport corresponding to the first arc included in the plurality of arcs does not support the payment type included in the order information.
[0022] In some embodiments of the present invention, the step of removing the first arc from the first network information based on the fact that the first means of transport does not support the payment type may include the following steps: determining whether at least one of the CVS company and CVS branch corresponding to the convenience store (CVS) payment type included in the order information corresponds to at least one node connected by the first means of transport.
[0023] In some embodiments of the present invention, the payment type may include cash on delivery (COD).
[0024] In some embodiments of the present invention, the step of removing at least one first arc from the first network information using the hard pruning tool may include the following steps: determining whether the region corresponding to the delivery address information included in the order information is included in the internal logistics service region; and based on the region being included in the internal logistics service region, removing at least one arc from the plurality of arcs that corresponds to the external logistics service from the first network information.
[0025] In some embodiments of the present invention, the step of removing at least one first arc from the first network information using the hard pruning tool may include the following step: removing the first arc from the first network information based on the fact that the first service type of the first arc included in the plurality of arcs does not correspond to the service type included in the order information.
[0026] In some embodiments of the present invention, the step of removing the at least one first arc from the first network information using the hard pruning tool may include the following steps: removing the first arc from the first network information based on the correspondence between the product type included in the order information and at least one node connected by a first means of transport that does not correspond to the first arc included in the plurality of arcs.
[0027] In some embodiments of the present invention, the step of removing at least one second arc from the first network information using the soft pruning tool may include the following steps: removing a first arc from the portion of the arcs that corresponds to an external logistics service included in the arc group, wherein the arc group may include a first arc for connecting a first node and a second node and a second arc for connecting the first node and the second node, wherein the first arc may correspond to the external logistics service and the second arc may correspond to an internal logistics service.
[0028] In some embodiments of the present invention, the step of removing the at least one second arc from the first network information using the soft pruning tool may include the following steps: removing the second arc from the first network information based on a pre-set first service type corresponding to the first arc included in the arc group being delivered faster than the second service type corresponding to the second arc included in the arc group, wherein the first arc may correspond to a first transport vehicle for connecting the first node and the second node, and the second arc may correspond to a second transport vehicle for connecting the first node and the second node.
[0029] In some embodiments of the present invention, the step of removing the at least one second arc from the first network information using the soft pruning tool may include the following steps: calculating the optimal solution of the first arc and the second arc included in the arc group of the portion of arcs; and removing the second arc from the first network information whose optimal solution is lower than that of the first arc, the arc group including the first arc for connecting the first node and the second node and the second arc for connecting the first node and the second node, the optimal solution may be calculated using a predefined objective function based on at least one of the cost of the arc, the transportation time and the available transportation capacity.
[0030] In some embodiments of the present invention, the step of removing the at least one second arc from the first network information using the soft pruning tool may include the following steps: obtaining the delivery status of goods included in an order that is assigned to the first arc included in the partial arc and is different from the target order; removing the first arc from the first network information based on whether the delivery status is in transit or waiting, wherein the delivery status can be in transit, waiting, or ready.
[0031] In some embodiments of the present invention, the step of removing at least one second arc from the first network information using the soft pruner may include the following steps: obtaining the amount of available computing resources required for arc removal; and adjusting the weight of the soft pruner based on the amount of available resources, the weight being used to determine the applicability of the soft pruner to the portion of the arcs.
[0032] In some embodiments of the present invention, the step of fulfilling the order using the second network information may include the following steps: inputting the order information and the second network information into an arc-flow-based solver; obtaining information on the logistics route corresponding to the order output by the solver; and using the obtained information on the logistics route to execute the execution process of the logistics route, wherein the solver may output a combination of one or more arcs to make the result value of the objective function satisfy a specified condition under constraints.
[0033] A computing system according to an embodiment of the present invention may include: an arc information management device for managing arc information of arcs contained in a plurality of arcs; a planning device for obtaining order information of a target order, obtaining first network information including the plurality of arcs from the arc information management device, using a hard pruning tool based on the order information and the arc information to remove at least one first arc from the plurality of arcs that does not correspond to the order information, and using a soft pruning tool based on the arc information to remove at least one second arc from a portion of the plurality of arcs other than the at least one first arc; and an order fulfillment execution device for fulfilling the target order using second network information generated by the planning device after removing the at least one first arc and the at least one second arc, wherein the arcs may correspond one-to-one with the transportation vehicles connecting the nodes.
[0034] The solutions to the problems described in this invention are only some examples of this invention. Those skilled in the art can clearly understand various examples reflecting the technical features of this invention based on the following detailed description. Simple Explanation of the Diagram
[0035] Figure 1 is a configuration diagram of an order fulfillment system according to an embodiment of the present invention.
[0036] Figure 2 is a diagram illustrating the referenced arcs in some embodiments of the present invention, illustrating the data structure of the referenced attributes.
[0037] Figure 3 is a diagram illustrating the concept of a cutline as described in some embodiments of the present invention.
[0038] Figure 4 is a block diagram of the planning devices that may be included in an order fulfillment system, with reference to Figure 1.
[0039] Figure 5 is a diagram illustrating a network configuration referenced in some embodiments of the present invention.
[0040] Figure 6 is a diagram illustrating the operation of removing arcs in the network configuration that do not correspond to the order from the network configuration based on the information of generating object orders based on the fulfillment route in some embodiments of the present invention.
[0041] Figure 7 is a diagram illustrating the sequential execution of an arc removal (pruning) operation using a hard pruner and a soft pruner as referenced in some embodiments of the present invention.
[0042] Figure 8 is a flowchart of an order fulfillment method according to another embodiment of the present invention.
[0043] Figure 9 is a flowchart illustrating the method of using a soft pruning tool to remove branches in the order fulfillment process, with reference to Figure 8.
[0044] Figure 10 is a signal flow diagram illustrating the order fulfillment method with reference to Figure 8.
[0045] Figure 11 is a schematic block diagram of a computing device for carrying out some embodiments of the present invention. Implementation
[0046] Preferred embodiments of the invention will be described in detail below with reference to the accompanying drawings. The advantages and features of the invention, as well as methods of implementing them, will become clear from the embodiments described in detail below in conjunction with the accompanying drawings. However, the spirit of the invention is not limited to the following embodiments and can be implemented in various different forms. The following embodiments are provided merely to refine the spirit of the invention and to enable those skilled in the art to fully understand the scope of the invention, which is defined only by the scope of the claims.
[0047] To avoid ambiguity in the concept of this invention, well-known components may be omitted or shown in block diagram form focusing on the core function of each component. Throughout the specification, similar elements are illustrated using the same reference numerals, even if they appear in different figures.
[0048] Unless otherwise defined, the terminology (including technical and scientific terms) used in the following embodiments may be used in the sense commonly understood by one of ordinary skill in the art to which this invention pertains. Furthermore, unless explicitly defined, terms defined in common dictionaries will not be ideally or over-interpreted. The terminology used in this invention is for illustrative purposes and is not intended to limit the scope of the invention. In this specification, singular expressions used in the following examples include plural concepts unless explicitly specified in the context.
[0049] Furthermore, the terminology used in this invention is for illustrative purposes only and is not intended to limit the features, components, or order described in the specification. Terms such as “comprises” and / or “comprising” as used in this invention express the presence of features, components, steps, operations, and / or combinations thereof described in the specification, but do not exclude the presence or addition of one or more other features, components, steps, operations, and / or combinations thereof.
[0050] Furthermore, terms such as first, second, A, B, (a), and (b) used in the following embodiments are only used to distinguish certain components from other components, and these terms are not intended to limit the nature or order of the components. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component, without departing from the scope of the invention.
[0051] Furthermore, in this invention, " / " and "、" should be interpreted as indicating "and / or". For example, "A / B" and "A, B" can mean "A and / or B".
[0052] First, referring to FIG1, the configuration and operation of an order fulfillment system 10 according to an embodiment of the present invention will be described.
[0053] The order fulfillment system 10 according to this embodiment may include at least one of the following: an order receiving device 100, an arc information management device 200, an order fulfillment execution device 300, a planning device 400, a database 500, and a transportation company system 700.
[0054] Furthermore, the order receiving device 100, arc information management device 200, order fulfillment execution device 300, planning device 400, and database 500 can each be a physically independent computing device, but at least some of them can also be independent software modules within a single computing device or a single virtual computing instance. Moreover, the order receiving device 100, arc information management device 200, order fulfillment execution device 300, planning device 400, and database 500 can each be implemented using different virtual computing instances. The virtual computing instance can be a virtual machine, a container, etc.
[0055] The order receiving device 100 can receive information about each order from multiple buyer terminals. In this invention, the order information can be referred to as "order information".
[0056] For example, order information may include, for instance, product identifiers, specified option information, product type (hereinafter referred to as product type) (e.g., refrigerated products, products exclusive to specific regional markets, cross-market products managed by different platforms), payment type (e.g., convenience store payment method, cash on delivery (COD) method), service type (e.g., "same-day delivery", "next-day delivery", "refrigerated delivery"), and delivery address information.
[0057] The product identification number can be a Stock Keeping Unit (SKU). In this case, the order receiving device 100 can be understood as a front-end module that provides online shopping services.
[0058] Furthermore, order information may also include CVS information corresponding to the CVS payment type included in order information from CVS company and / or CVS branches.
[0059] Furthermore, the order receiving device 100 can obtain the order information via a front-end module for receiving order information from the buyer's terminal, or by inserting the order information received from the buyer's terminal into a data structure. For example, the data structure could be a queue for inserting the order information.
[0060] The present invention includes operations for determining fulfillment routes for fulfilling the delivery of goods; therefore, the term "order" in the present invention can be understood as a purchase order for one or more goods.
[0061] The order receiving device 100 can transmit the order information to the planning device 400 and the arc information management device 200.
[0062] Arc information management device 200 refers to master data stored in database 500 about each logistics distribution-related facility and the contracted transportation vehicles connecting each facility, and manages information about the multiple nodes and information about the arcs distributed by the first node and the second node included in the multiple nodes.
[0063] The arc information management device 200 manages multiple nodes and the arc information between each node, which can include information on creating new nodes or new arcs, updating information on existing nodes, updating information on existing arcs, deleting information on closed existing nodes, deleting information on existing arcs whose contracts have been terminated, or updating information on existing arcs.
[0064] Arc information management device 200 can receive updated information about existing arcs from transportation company system 700 in real time or near real time. To update arc information, arc information management device 200 can periodically or irregularly request information about transportation vehicles corresponding to at least one arc from transportation company system 700. In response to the request for information about the transportation vehicles, transportation company system 700 can transmit status information of each transportation resource corresponding to the transportation vehicle to arc information management device 200.
[0065] In other words, if the arc information management device 200 determines that the information of the first transportation vehicle corresponding to the first arc needs to be updated, the arc information management device 200 can request the information of the first transportation vehicle from the transportation company system 700, and the transportation company system 700 can transmit the status information of one or more transportation resources (e.g., each truck running between nodes corresponding to the first arc) to the arc information management device 200.
[0066] Each of the plurality of nodes corresponds one-to-one with all logistics-related facilities traversed by the order fulfillment system of the present invention between the commencement and completion of item delivery. The plurality of nodes may include different types of nodes. The node types may include fulfillment center (FC) type, hub (HUB) type, camp (CAMP) type, and postal code type corresponding to a set of final destinations.
[0067] In this invention, a fulfillment center can refer to a logistics base where goods ordered by a buyer are initially shipped. A fulfillment center is a facility capable of performing goods storage, picking, packing, and outbound operations. A hub is a base facility capable of collecting and sorting goods from multiple fulfillment centers and then redistributing them to various delivery destinations. A camp is a facility capable of collecting and sorting goods sorted and redistributed from the hub into regional units and transporting them to units near the final delivery destination. Therefore, fulfillment centers, hubs, and camps constitute a logistics network at different stages, and the arc managed by the arc information management device 200 can be understood as connecting these nodes.
[0068] Meanwhile, multiple arcs may exist between the first node and the second node. For example, different arcs may exist depending on the type of transport connecting the first node and the second node and the transport company operating that transport. For instance, there might be a first arc corresponding to a truck-type transport vehicle of the first transport company connecting the first fulfillment center and the first hub; a second arc corresponding to a truck-type transport vehicle of the second transport company; a third arc corresponding to a train-type transport vehicle of the first transport company; and a fourth arc corresponding to a train-type transport vehicle of the second transport company. In this case, the first to fourth arcs are independent arcs.
[0069] Each arc may not correspond to a single mode of transport, but rather to multiple modes of transport of the same type. Furthermore, the attribute information contained in each arc may include available capacity, which can be understood as the sum of the available capacity of all modes of transport corresponding to the arc.
[0070] However, in addition to the available transport capacity, the arc's attribute information may also include one or more additional attributes. Furthermore, these additional attributes may include attributes related to business constraints as well as general attributes not related to business constraints. The business constraints may refer to at least one constraint related to the contract terms with the transport company managing the arc's transport vehicles and the transport company's operating policies. The general attributes refer to all types of attributes other than the business constraints.
[0071] Information about an arc may also include information about the transportation vehicle corresponding to the arc and the nodes connected by the transportation vehicle corresponding to the arc. For example, information about the transportation vehicle may include the transportation company information, the type of transportation vehicle, the identification number of the goods allocated to the transportation vehicle, and the delivery status of the allocated goods.
[0072] The delivery status of goods is used to determine whether the means of transporting the goods has commenced. The delivery status can be stored as one of several preset states, corresponding to whether the execution of the logistics route containing the goods has been completed. For example, the delivery status of goods can be stored as one of the following states: in transit, waiting, ready, or delivery completed. In this example, the ready state corresponds to the state where the execution of the logistics route containing the goods has not yet commenced, while the in transit and waiting states correspond to the states where the execution of the logistics route containing the goods has commenced. Furthermore, the delivery status of goods may change from a first state (e.g., waiting state) to a second state (in transit state) over time.
[0073] For example, node information may include the node's identification information, the zip code corresponding to the node, the product type corresponding to the node in the preset relationship, and the whitelist information to which the node belongs.
[0074] In some embodiments, a whitelist containing at least one node can be predefined for order fulfillment, depending on business objectives. For example, the identification information and / or corresponding regions of the nodes included in the whitelist can be predefined.
[0075] In some embodiments, the information of the arc may include information for identifying attributes corresponding to the business constraint. For example, each attribute may include a flag indicating whether the attribute corresponds to a business constraint. Furthermore, in some embodiments, which attributes of the arc correspond to business constraints are predetermined.
[0076] In this invention, the information about the arc can be referred to as "arc information".
[0077] The fields that can be included as attribute information for each arc will be explained with reference to Figure 2.
[0078] As an exemplary arc illustrated with reference to Figure 2, arc A 21a corresponds to the first transport vehicle of the first transport company responsible for transporting goods from the first node 20 (i.e., the fulfillment center) to the second node 30 (i.e., the hub). The data structure 21-1 of arc A 21a contains multiple arc attribute variables 21a to 21h. Each arc attribute variable 21a to 21h will be described below.
[0079] First, arcId 21a is a unique identifier used to identify an arc, which can be used as a primary key to reference or track a specific arc in the system.
[0080] cutlineId 21b is a cutline identifier used to identify the cutline rule applied to an arc. An example of the cutline rule will be illustrated with reference to Figure 3.
[0081] As shown in Figure 3, the cutoff rule can define time constraints for each step, from the order cutoff time 80a to the final customer delivery completion time 84a (PDD). For example, the outbound cutoff time 81a (ExSD) can be defined in step 81 of the fulfillment center, the pickup cutoff time 82a (CPT) in step 82 of the hub, the delivery cutoff time 83a (MAT) in step 83 of the camp, and the promised delivery completion time 84a (PDD) in step 84 of the customer delivery. These time constraints can also be calculated in reverse based on the order's expected delivery date (EDD).
[0082] Therefore, cutlineId 21b is not a simple time value, but an identifier used to refer to the set of cutting line rules, such as the outbound cutting line, pickup cutting line, delivery cutting line and delivery completion cutting line mentioned above.
[0083] The arc information management device 200 can query the cutlineId of the corresponding arc based on the delivery address, service type, and required delivery deadline of each order, and remove arcs that violate the order's cutline during the pruning step. The planning device 400 receives the pruning result reflecting the cutlineId as input and performs optimization calculations based on business constraints without including the cutlineId itself in the constraints of the optimization model.
[0084] In short, cutlineId 21b is attribute information referenced by the arc information management device 200 in the preprocessing step of constructing a specific order-corresponding network, used to remove arcs that do not conform to the order cutting line. Therefore, cutlineId 21b is only used in the preprocessing step performed by the arc information management device 200 and may not be reflected in the constraints or objective function of the optimization model generated by the planning device 400.
[0085] However, the planning device 400 can receive networks that have not yet been pruned by cutlineId 21b as input.
[0086] In one embodiment of the present invention, a planning device 400, receiving network information including multiple arcs from an arc information management device 200, performs preprocessing to remove arcs based on whether the transport vehicle corresponding to the arc and / or the node connected by the transport vehicle corresponding to the arc corresponds to order information. Therefore, the arc information management device 200 does not perform preprocessing to remove arcs based on the cutting line rules applicable to each order, and can provide network information that does not reflect the removal of arcs to the planning device 400.
[0087] The planning device 400 can use hard pruning and / or soft pruning, as described later with reference to Figure 7, to determine the logistics route using network information with arcs that have been removed from the order. Thus, even if cutlineId 21b is not reflected in the constraints or objective function of the optimization model generated by the planning device 400, the solver 410 can perform optimization calculations only on the network with arcs that have been pre-excluded from corresponding to the order information.
[0088] Returning to Figure 2, each property of the arc will be explained.
[0089] `availableArcCapacity 21c` represents the available transport capacity of all multiple vehicles of the same type corresponding to the corresponding arc. For example, if arc A corresponds to 10 trucks, the sum of the current load capacity of each truck can be stored as the available transport capacity.
[0090] shippingCost 21d and shippingCostUnit 21e represent cost information used by the arc. The former can be an absolute cost value, while the latter can be expressed in units, such as "cost per unit distance", "cost per unit weight", or "cost per unit pallet".
[0091] Although not shown in Figure 2, the attribute information of an arc can also include the arc's transport time. Transport time refers to the time required for a transport vehicle to transport goods from a first node to a second node connected to the first node. The transport time of an arc is the average of the transport times of all multiple transport vehicles of the same type corresponding to that arc, or the longest transport time among multiple transport vehicles of the same type. For example, if arc A corresponds to 10 trucks, the average of the sum of the transport times of each truck can be stored as the transport time of arc A. As another example, if arc A corresponds to 10 trucks, and truck A's transport time is longer than that of the other trucks, then truck A's transport time can be stored as the transport time of arc A.
[0092] The `orderCut` 21f is stored in the form of structure 21i, which can contain cutting line information related to the order corresponding to the arc. For example, `orderCutOff` can represent the order receipt deadline, `shippingCutline` can represent the fulfillment center outbound cut-off line, `cpt` can represent the hub departure cut-off line, and `deliveryCutline` can represent the delivery completion cut-off line.
[0093] In this invention, the cutting line information can be managed using a first data structure and a second data structure. The first data structure is the cutting line rule set, which includes a reference time defined relative to the order time. For example, the fulfillment center outbound deadline can be rule-defined as "order time + 1 hour", the hub pickup deadline can be rule-defined as "order time + 3 hours", the camp arrival deadline can be rule-defined as "order time + 6 hours", and the final delivery completion time can be rule-defined as "order time + 23:59 of the same day".
[0094] The cutlineId 21b of the arc attribute is identification information used to reference the cutting line rules applied to the order corresponding to the arc. The arc information management device 200 can perform preprocessing by querying the cutlineId 21b applied to each order and pruning arcs that violate the corresponding rules.
[0095] On the other hand, the second data structure, `orderCut 21f`, determines the relative rules in the first data structure as absolute time values based on the generation time of a specific order. For example, if an order is received at 10:50, the outbound cutoff time recorded in `orderCut 21f` is calculated and stored as 12:50, the hub pickup cutoff time as 13:10, the camp arrival cutoff time as 15:00, and the final delivery completion time as 23:59 of the same day. `orderCut 21f` is created as a snapshot of the solver input time, and it remains unchanged even if the rules in the first data structure subsequently change. This ensures the reproducibility and auditability of the optimization results.
[0096] Therefore, cutlineId 21b is the identification information indicating the relative cutting line rule, while orderCut 21f is the data structure that applies the corresponding rule to the order time and determines it as an absolute time.
[0097] The following summarizes and explains again how to manage cutting line information using the first and second data structures. The arc information management device 200 has a first data structure and, referring to the cutting line rules identified by cutlineId 21b, determines arcs that violate the cutting line based on the order time of the corresponding order and removes (prunes) the arcs that violate the cutting line. The arc information management device 200 may provide network information reflecting the removal status of the arcs to the planning device 400, but it is not mandatory to provide such network information to the planning device 400. As described above, according to an embodiment of the present invention, the planning device 400 uses a hard pruner, which will be described later, to remove (prune) arcs that do not correspond to the order; therefore, the arc information management device 200 may not perform arc removal operations based on the cutting line.
[0098] Meanwhile, the solver 410 can refer to the second data structure orderCut 21f (hereinafter referred to as "order cut"), input the absolute time value of the specific order execution time, such as the confirmed outbound cut line, hub departure cut line and delivery completion cut line, and reflect these values in the optimization model.
[0099] Therefore, the first data structure, as a set of rules defined relative to order time, can be flexibly updated according to policy changes or changes in service conditions. Conversely, the second data structure, order segmentation, is a snapshot of the first data structure determined by converting the first data structure at the specific time of order occurrence into an absolute time value. Therefore, even if the first data structure is subsequently updated, it will not change. This structural separation allows the system to flexibly respond to new orders arising from policy changes, while ensuring reproducibility and auditability, ensuring that existing orders yield the same results for the same input.
[0100] serviceType 21g can indicate the type of service provided by the corresponding arc.
[0101] For example, service types can include delivery service types defined by values such as "same-day delivery", "next-day delivery", "economy delivery", "refrigerated transport", "non-hazardous goods transport", and "standard delivery".
[0102] Delivery service types may have preset correspondences. For example, same-day delivery can be set to correspond to all other delivery service types defined by other values (e.g., next-day delivery, refrigerated transport, standard delivery, etc.). As another example, next-day delivery may not correspond to same-day delivery. Similarly, standard delivery may not correspond to same-day delivery, next-day delivery, or refrigerated transport.
[0103] Furthermore, the service type can include logistics service types defined as Internal Logistics Service (ILS) or External Logistics Service (ELS).
[0104] Logistics companies receiving buyer orders can provide internal logistics services, which use their own transportation vehicles and company nodes (e.g., FCs, hubs, camps) to process orders; or they can provide external logistics services, which outsource order processing to external companies and use those companies' transportation vehicles and nodes to process orders. In this invention, external logistics services can be referred to as third-party logistics (3PL) services.
[0105] Although not shown in Figure 2, the arc's attribute information can include the payment types it supports and / or does not support. For example, the payment type field can be defined as values such as "Cash On Delivery Not Available" or "Convenience Store Payment (CVS)".
[0106] planConstraints 21h is a superordinate structure containing multiple detailed constraint structures 21j, which may include ShipmentConstraint 21k and CarrierConstraint 21m.
[0107] ShipmentConstraint 21k defines constraints on transported goods units. It can contain contract-permitted dimensions (length, width, height, pallet size, etc.) through the ShipmentDimension field and contract-permitted weight information through the ShipmentWeight field.
[0108] CarrierConstraint 21m defines constraints based on the transportation company's contract. For example, consumedArcCapacity can represent the currently used transportation volume, minCommitmentVolume can represent the minimum contractual commitment volume, maxCommitmentVolume can represent the maximum contractual commitment volume, and incrementalCostForUndershootingMin and incrementalCostForOvershootingMax can represent the penalty costs imposed for undershooting or overshooting the committed volume, respectively. Furthermore, CODPolicy 21n can represent the transportation company's cash-on-delivery limit, maxCODLimit can represent the allowed amount limit, and currency can represent the currency unit.
[0109] The following details the attributes related to business constraints within the arc's properties. These business constraint attributes can be those included in CarrierConstraint 21m (excluding consumeArcCapacity) or those included in ShipmentConstraint 21k.
[0110] Business constraints can be directly reflected in the optimization model as constraint expressions, where the optimal solution is obtained by the solver 410 described below; or they can be indirectly reflected as penalty terms in the objective function. Business constraints that are directly reflected in the constraint expressions of the optimization model as penalty terms are called hard constraints, while business constraints that are indirectly reflected in the objective function of the optimization model as penalty terms are called soft constraints.
[0111] Furthermore, business constraints can be subdivided into static constraints and dynamic constraints. Static constraints remain unchanged throughout the contract's validity period, while dynamic constraints change with time, location, and events. From an implementation perspective, business constraints can be represented using a data structure that represents arc attributes, containing fields such as the Cash on Delivery (COD) limit, minimum commitment quantity, maximum commitment quantity, contract-permitted dimensions and weight, and the transportation policies of various transportation companies.
[0112] Each of the exemplary business constraints will be described in more detail below.
[0113] In some embodiments, the arc corresponding to the first means of transport may include business constraints corresponding to the contract cash-on-delivery limit of the transport company of the first means of transport. That is, on the first arc corresponding to a plurality of first means of transport connecting the first node and the second node, the total price of goods delivered by each of the plurality of first means of transport and paid for upon delivery at the time of delivery shall not exceed the cash-on-delivery limit of the first arc.
[0114] The business constraints corresponding to the cash-on-delivery limit can be hard constraints that prohibit exceeding the limit, or soft constraints that impose penalties on behaviors that exceed the permitted range.
[0115] In some embodiments, the arc corresponding to the first means of transport may include business constraints regarding the minimum and maximum commitment amounts of the transport company for the first means of transport. The business constraint corresponding to the minimum commitment amount may be a soft constraint that penalizes actions exceeding permissible limits. Furthermore, the business constraint corresponding to the maximum commitment amount may be a hard constraint that prohibits exceeding the limit.
[0116] In some embodiments, the arc corresponding to the first means of transport may include a business constraint regarding the maximum contracted transport volume of the transport company using the first means of transport. The business constraint corresponding to the maximum transport volume may be a hard constraint prohibiting exceeding the limit. The maximum contracted transport volume and the available transport volume of the first means of transport have different meanings. The maximum contracted transport volume refers to the sum of contracted transport volumes of the transport company using the first means of transport, which must not exceed the maximum transport volume, while the available transport volume refers to the sum of the actual available transport volumes of various means of transport belonging to the first means of transport. Of course, in some embodiments, the business constraint corresponding to the maximum transport volume may be a soft constraint that penalizes the behavior of exceeding the maximum transport volume.
[0117] In some embodiments, the arc corresponding to the first means of transport may include business constraints regarding at least one of the contractually permissible dimensions and contractually permissible weight of the first means of transport for the articles. The contractually permissible weight refers to the weight limit of a single article that the first means of transport can carry under the contractual agreement.
[0118] The contractually permissible size refers to the size limit of a single item that the first means of transport can carry under the contractual agreement. The permissible size can be a single-dimensional value, such as length, width, and height, or a three-dimensional volume composed of these dimensions. Furthermore, the permissible size can be defined based on the packaging condition of the item or units commonly used in logistics operations (such as pallet units or container units).
[0119] For example, if the contract allows dimensions of 120 cm in length, 80 cm in width, and 100 cm in height, items exceeding these specifications may not be transported via the corresponding arc, or may be subject to additional charges or penalties for exceeding these limits. As another example, for air freight arcs, contractually allowed dimensions may be strictly limited according to cargo hold loading specifications. In this case, not only are there upper limits for length, width, and height, but the total volume may also be restricted.
[0120] Furthermore, the permissible dimensions permitted by the contract may apply to a single item or to the sum of multiple items transported simultaneously via the same transport arc. For example, when transporting pallet units, the permissible dimensions are the dimensions of the entire pallet, and the constraints may be evaluated on a pallet unit rather than as individual items.
[0121] The permissible dimensions under the contract may vary depending on the transportation company's policies, the structure of the transport vehicle, and the equipment specifications of the node facilities, and may also change dynamically according to the contract terms at a particular time. The business constraints corresponding to the permissible dimensions or permissible weight under the contract may be soft constraints that penalize actions that exceed the permissible limits, or hard constraints that prohibit exceeding the limits.
[0122] In some embodiments, the arc corresponding to the first means of transport may include business constraints regarding service types that the first means of transport cannot handle. These unhandled service types may include, for example, next-day delivery, refrigerated / frozen transport, hazardous materials handling, inability to handle specific SKU categories, and inability to transport within a specific time period. The business constraints corresponding to these unhandled service types may be hard constraints prohibiting the allocation and transport of items designated as unhandled service types.
[0123] In addition, business constraints may include: pickup and destination time slots based on appointment-based operations, allowed waiting time constraints, minimum freight rates per segment or rates based on distance and weight, and constraints prohibiting specific arc combinations or requiring continuous use of specific transportation companies. Business constraints may also include: insurance terms for the transportation company, compensation limits, contract validity, cancellation fees, and penalty points for breach of Service Level Agreements (SLAs). Furthermore, business constraints may include: return or reverse logistics requirements, pallet return requirements, etc.
[0124] The above examples are not exhaustive; business constraints can be added or modified based on order characteristics, node types, transportation company policies, and external events. In this embodiment, these business constraints are structured and stored as arc attributes. By reflecting hard constraints as constraint formulas and soft constraints as penalty terms in the objective function, the solver can be assisted in calculating feasible routes.
[0125] Unlike traditional techniques that treat the conditions of transportation vehicles and transportation companies defined by arc units as simple network capacity constraints, the order fulfillment system 10 according to this embodiment manages and structures various contract and operational business constraints as arc attributes, thereby enabling them to be directly reflected in the constraints or objective function of the optimization model.
[0126] Existing logistics route calculation methods primarily consider only physical parameters such as distance, cost, and transportation time, resulting in impractical routes that conflict with actual contract terms or transportation company policies. In contrast, the order fulfillment system 10 incorporates business constraints such as cash-on-delivery limits, minimum and maximum commitment quantities, contract-permitted dimensions and weights, service type constraints, and the policies of various transportation companies into each arc, thereby enabling the solver 410 to calculate only routes feasible under the actual contract.
[0127] Therefore, this invention eliminates contract-infeasible routes in advance by excluding contract-infeasible arcs during the optimization process or by minimizing arcs that may violate the contract through penalties imposed by the objective function. This means that the logistics routes derived by the planning device 400 are not merely theoretically optimal solutions, but highly feasible routes that conform to the actual contract terms and operational realities of the transportation company.
[0128] Furthermore, by dividing and managing business constraints into static and dynamic constraints, it is possible to reflect the changing constraints over specific times, regions, and circumstances in real time. For example, business constraints can be dynamically updated based on external events, such as peak season surcharges for specific periods, nighttime travel restrictions in specific regions, or full booking slots for specific transportation companies. Dynamically updated business constraints can be immediately reflected as arc attributes by the arc information management device 200, thereby ensuring the generation of updated routes with calculated feasibility guarantees during the replanning process.
[0129] The planning device 400 can perform planning operations and generate logistics routes based on the order information provided by the order receiving device 100. The planning device 400 can also perform pruning operations on arc units during the planning process for generating logistics routes for orders to be fulfilled. The planning operations of the planning device 400 will be described in detail below with reference to Figure 4.
[0130] As shown in Figure 4, the planning device 400 may include an input data receiving unit 420, an optimization model generation unit 430, a solver 410, and a logistics route output unit 440. The input data receiving unit 420, the optimization model generation unit 430, the solver 410, and the logistics route output unit 440 can all be implemented as independent computing devices or software modules.
[0131] First, the input data receiving unit 420 can request network information corresponding to the order information from the arc information management device 200.
[0132] The arc information management device 200 can respond to requests to configure the network to be transmitted to the input data receiving unit 420. For example, the arc information management device 200 can select multiple nodes corresponding to the order information. The nodes may include destination nodes corresponding to the delivery address information of the order information. The destination nodes may be nodes corresponding to the zip code corresponding to the delivery address information.
[0133] Next, the arc information management device 200 can select one or more intermediate nodes corresponding to the target node. The intermediate nodes may include at least one of one or more camp nodes and one or more hub nodes. Next, the arc information management device 200 can select one or more fulfillment center nodes corresponding to the intermediate nodes.
[0134] The arc information management device 200 can select multiple sets of nodes for the order. That is, the arc information management device 200 can select multiple types of nodes that may be passed through to fulfill the order. Figure 5 shows an example set of nodes selected by the arc information management device 200, including a first node 20 as a fulfillment center, a second node 30 as a hub, a third node 40 as a camp, and a fourth node 50, a fifth node 60, and a sixth node 70 corresponding to different delivery addresses.
[0135] Next, the arc information management device 200 can select the arcs connecting the nodes. The arc information management device 200 can select all arcs connecting each node. In the example of Figure 5, arcs A 21a, B 21b, and C 21c belonging to the first arc group 21 are shown, connecting the first node 20 and the second node 30. In addition, the figure also shows a second arc group 22 connecting the second node 30 and the third node 40. Furthermore, the figure also shows a third arc group 23 connecting the third node 40 and the fourth node 50, and a fourth arc group 24 connecting the third node 40 and the delivery node group 65 containing the fifth node 60 and the sixth node 70. As can be seen from the example of the fourth arc group 24, arc grouping can be performed in advance, so that even if the delivery destination nodes of geographically adjacent postal codes are different, the same arc group can still provide delivery services.
[0136] The input data receiving unit 420 can respond to network information requests and receive network information containing multiple selected arcs and arc information of each arc from the arc information management device 200.
[0137] Next, the input data receiving unit 420 preprocesses the network information, removing arcs from the network information that do not correspond to the order information. Figure 6 shows the result of the planning device 400 removing a portion of the arcs configured by the arc information management device 200, with reasons including non-correspondence with the target order. Figure 6 also shows, but is not limited to, the network information received by the input data receiving unit 420 from the arc information management device 200, which consists of multiple arc groups (first arc group 21, second arc group 22, third arc group 23, and fourth arc group 24), each arc group containing multiple arcs connecting two nodes.
[0138] For example, each arc included in the network information received by the input data receiving unit 420 from the arc information management device 200 may correspond to a different arc group, and multiple arcs corresponding to the same arc group may not be included. That is, the network information received from the arc information management device 200 may include the first arc connecting the first node 20 and the second node 30, and may not include any other arcs connecting the first node 20 and the second node 30 other than the first arc.
[0139] The input data receiving unit 420 can use a hard pruner and a soft pruner to sequentially remove portions of the arcs included in the network information. Figure 7 shows the result of sequentially removing portions of the arcs included in the network.
[0140] The following will describe in detail, with reference to Figure 7, the input data receiving unit 420 for removing arcs using hard pruners and / or soft pruners.
[0141] The input data receiving unit 420 uses a hard pruning tool 70P to perform a first pruning on the network information to remove arcs that do not correspond to the order information (e.g., arc C 21c), and uses a soft pruning tool 80P to perform a second pruning on the network information after the first pruning to remove unnecessary arcs (e.g., arc B 21b) when determining / calculating the optimal logistics route corresponding to the order.
[0142] Figure 7 illustrates the result of the input data receiving unit 420 removing arcs B 21b and 21c from the network information. These arcs belong to the transportation vehicles connecting the first node 20 (i.e., the distribution center) and the second node 30 (i.e., the hub). The operation of the input data receiving unit 420 to remove arcs is not limited to arcs within the same arc group, nor is it limited to arcs corresponding to transportation vehicles connecting the distribution center and the hub.
[0143] For example, the input data receiving unit 420 can receive network information containing multiple arcs belonging to different arc groups from the arc information management device 200, and can use the hard pruner 70P and / or the soft pruner 80P to remove arcs belonging to different arc groups.
[0144] For example, the input data receiving unit 420 can use the hard pruner 70P and / or the soft pruner 80P to remove the arc connecting the hub node and the camp node, or to remove the arc connecting the camp node and the delivery address node.
[0145] In this invention, a "pruner" refers to a predefined condition used to perform arc removal. A pruner may contain one or more conditions, and each condition included in a pruner may be implemented as a separate software module.
[0146] The hard pruning tool 70P includes a condition based on whether the order information of the pending order corresponds to the arc information. The input data receiving unit 420 must use the hard pruning tool 70P to perform arc pruning.
[0147] For example, the hard pruning tool 70P may include a shipping company pruning tool, a convenience store payment (CVS) pruning tool, a cash-on-delivery (COD) pruning tool, and / or a service type pruning tool.
[0148] The shipping company pruning tool is designed to remove the transportation vehicle corresponding to a different shipping company when the order to be fulfilled is an order specified by the shipping company. It can be defined as: when the shipping company of the transportation vehicle corresponding to the arc does not correspond to the shipping company included in the order information, remove (prune) the first arc.
[0149] The CVS pruning tool is designed to remove vehicles that do not support CVS payment when the payment type for an order to be fulfilled is specified as CVS payment type. It can be defined as: removing the first arc when the vehicle corresponding to the first arc does not support the CVS payment type included in the order information.
[0150] The COD pruning tool is designed to remove vehicles that do not support the COD type when the payment type of an order to be fulfilled is specified as COD. It can be defined as: removing the first arc when the vehicle corresponding to the first arc does not support the COD type included in the order information.
[0151] For example, the COD pruning tool may include a condition for removing the first arc if the postal code corresponding to the node connected by the shipping company and / or the first transport vehicle corresponding to the first arc does not correspond to the CVS company and / or CVS branch corresponding to the COD type included in the order information.
[0152] The service type pruner is designed to remove arcs when the service type corresponding to the order to be fulfilled does not match the service type provided by the means of transport corresponding to the arc. It may include logistics service (LS) pruners and / or delivery service pruners.
[0153] The LS pruning tool is designed to remove the transportation vehicle corresponding to the arc providing external logistics services when the postal code corresponding to the delivery address of the order to be fulfilled belongs to the internal logistics service area. It can be defined as: removing the arc corresponding to the external logistics service when the region corresponding to the delivery address information included in the order information is within the internal logistics service area. The region and / or postal code, etc., belonging to the internal and external logistics service areas can be preset.
[0154] The delivery service pruner can be defined as follows: when the delivery service type provided by the first transport vehicle corresponding to the first arc does not correspond to the delivery service type included in the order information, or when the first transport vehicle does not provide the delivery service type included in the order information, the first arc is removed.
[0155] The hard pruning tool 70P is not limited to the above examples. The hard pruning tool 70P may include a pruning tool defined based on the "order information" and "arc information" referenced in the embodiments of the present invention and used to remove arcs with arc information that does not correspond to the order information.
[0156] For example, the hard pruning tool 70P may include a product type pruning tool, which is defined as: when the node connected by the transport vehicle corresponding to the arc does not correspond to the product type included in the order information, the corresponding arc is removed.
[0157] The soft pruning tool 80P includes conditions based on arc information, which are unrelated to the order information of the order to be fulfilled. After the input data receiving unit 420 performs arc removal using the hard pruning tool 70P, it can use the soft pruning tool 80P to perform arc removal.
[0158] The soft pruning tool 80P is used on network information that has already undergone its first pruning with the hard pruning tool 70P, and is used to remove arcs corresponding to order information.
[0159] Therefore, the input data receiving unit 420 can selectively use the soft pruning tool 80P to perform arc removal.
[0160] For example, the soft pruning tool 80P may include an internal logistics service (ILS) priority pruning tool, an accelerated delivery guarantee pruning tool, an optimization pruning tool, and / or a delivery status pruning tool.
[0161] The ILS priority pruning tool aims to provide internal logistics services that take precedence over external logistics services. It can be defined as follows: if the network information after the first pruning contains a first arc and a second arc belonging to the same arc group, where the first arc corresponds to the internal logistics service and the second arc corresponds to the external logistics service, then the second arc is removed.
[0162] The expedited delivery guarantee pruner is designed to support processing orders that can be fulfilled using a delivery type that delivers faster than other delivery types (e.g., same-day delivery, which guarantees a faster arrival time than next-day delivery) when multiple delivery service types are available (e.g., next-day delivery, same-day delivery). The expedited delivery guarantee pruner can be defined as follows: when the network information after the first pruning contains a first arc corresponding to the first delivery service type (e.g., same-day delivery) and a second arc corresponding to the second delivery service type (e.g., next-day delivery), the second arc is removed.
[0163] The optimization pruner aims to prioritize arcs within the same arc group that are more optimized in terms of transportation resources and / or cost. It can be defined as follows: when the network information after the first pruning includes both the first and second arcs from the same arc group, remove the second arc whose optimal solution calculated using the objective function is lower than that of the first arc. The optimization pruner can define the objective function used to calculate the optimal value of the arc.
[0164] The objective function used to calculate the optimal solution for an arc can be defined based on cost information, available transport capacity, and / or the arc's transport time included in the arc information. The objective function can be defined as follows: the lower the arc's cost, the higher its available transport capacity, and the shorter its transport time, the higher the calculated optimal value. For example, the objective function can be defined as a mathematical expression where cost, available transport capacity, and transport time are each assigned a weight.
[0165] The delivery status pruning tool removes arcs assigned to orders that contain items that have already started shipping. More specifically, the delivery status pruning tool removes arcs assigned to orders that have already started shipping based on the delivery status of items included in orders that are different from pending orders.
[0166] Multiple different orders can be assigned to the same arc. For example, the optimal logistics route determined for fulfilling the first order may include the first arc, while the optimal logistics route determined for fulfilling the second order may include the second arc. Therefore, during the planning process of determining the logistics routes and / or arcs to be assigned to the orders to be fulfilled, arcs included in the network information that have undergone the first pruning using the hard pruner 70P may have been assigned to orders different from the orders to be fulfilled. Therefore, the means of transport corresponding to the arcs included in the network information received by the input data receiving unit 420 from the arc information management device 200 may have been assigned to goods included in other orders different from the target order.
[0167] The input data receiving unit 420 can use the network information received from the arc information management device 200 to identify the arc assigned to at least one order different from the order to be fulfilled among multiple arcs corresponding to the order to be fulfilled, identify the delivery status of the goods included in the at least one order, and remove the identified arc using the delivery status pruning tool.
[0168] The delivery status pruner can be defined as: removing the first arc when the delivery status of the goods included in the first order, which is different from the pending order included in the first arc in the network information after the first pruning, is in transit or waiting.
[0169] The soft pruning tool 80P is not limited to the examples above, and may include pruning tools based on the "arc information" definition referenced in the embodiments of the present invention, depending on business objectives.
[0170] For example, the soft pruner 80P may include a pruner based on the proportion of external logistics services. This pruner is used to adjust the proportion of the arcs corresponding to external logistics services to a preset proportion by removing at least one arc corresponding to the external logistics service when the network information after the first pruning includes at least one arc corresponding to the internal logistics service and at least one arc corresponding to the external logistics service.
[0171] For example, the soft pruner 80P may include a whitelist pruner, which is defined as: removing the first arc when at least one node connected to the first arc in the network information included after the first pruning is performed is not included in a predefined whitelist for business purposes.
[0172] Returning to Figure 4, the planning operation of the planning device 400 will be explained.
[0173] During the removal operation using the soft pruning tool 80P, the input data receiving unit 420 can adjust the weight of the soft pruning tool 80P based on the available computing resources required to perform the removal operation. For example, the input data receiving unit 420 can obtain the available computing resources of the computing device required to perform the removal operation and adjust the weight value of the soft pruning tool 80P based on the obtained available resources.
[0174] The weight of the soft pruner 80P refers to the range of arcs included in the network information after the first pruning performed using the hard pruner 70P, when the soft pruner 80P includes multiple pruners (e.g., ILS priority pruner, accelerated delivery guarantee pruner, optimization pruner, and delivery status pruner) as pruning conditions for arcs. In other words, the weight of the soft pruner 80P is the value that determines the removal range such that only a portion of the target arcs determined by the soft pruner 80P are removed, or none are removed. For example, depending on the weight of the soft pruner 80P, a removal operation using the soft pruner 80P may not be performed.
[0175] For example, the weight of the soft pruning tool 80P can be set as the number of pruning tools to be used among the multiple pruning tools included in the soft pruning tool 80P. In this example, some of the pruning tools to be used among the multiple pruning tools included in the soft pruning tool 80P can be determined randomly, or they can be determined in descending order according to the preset priority order of each pruning tool.
[0176] For example, the weight of the soft pruning tool 80P can be set as the ratio of the number of arcs actually to be removed to the number of arcs specified as the pruning target, or the number of arcs actually to be removed from multiple arcs specified as the pruning target, so as to remove only a portion of the multiple arcs specified as the pruning target included in the soft pruning tool 80P.
[0177] The order fulfillment system 10 disclosed in this invention does not unconditionally use the soft pruner 80P to perform removal operations. Instead, it determines whether to refrain from performing the removal operation of the soft pruner 80P or to narrow the target range of the soft pruner 80P based on the available resources of the computing device performing the removal operation. In this way, the order fulfillment system 10 can efficiently utilize computing resources during the preprocessing process of configuring the network corresponding to the order.
[0178] The optimization model generation unit 430 can generate an optimization model 431 using the order information and the network information after arc pruning performed by the input data receiving unit 420. The optimization model 431 may include constraint expressions for enforcing constraints and objective functions for evaluating the arc combinations that are the output of the optimization model 431.
[0179] The objective function can be understood as a combination of terms used to evaluate the suitability of at least one aspect of cost and time, and related terms of soft-constraint type business constraints. For example, the objective function can be defined as: minimizing the sum of the terms used to evaluate said suitability and related terms of soft-constraint type business constraints.
[0180] A constraint can be understood as a combination of one or more basic constraint terms and associated terms of one or more hard constraint types of business constraints. The basic constraints aim to prevent the creation of logistics routes that violate any arc properties other than business constraints. For example, excluding arc combinations that exceed the available transport capacity of a specific arc. In the constraint, the combination of the basic constraint terms and associated terms of the hard constraint types of business constraints can be in the form of "AND" (&&), thereby ensuring that both the basic constraint terms and the hard constraint types of business constraints are satisfied.
[0181] Solver 410 receives optimization model 431 from optimization model generation unit 430, inputs the network information into optimization model 431, and provides the optimal arc combination output by optimization model 431 to logistics route output unit 440. In some embodiments, solver 410 may also input order information into optimization model 431.
[0182] The order is assigned to the combination of arcs included in the logistics route output by the solver 410, and the corresponding logistics route can be used by the logistics route output unit 440 to fulfill the order. For reference, in this invention, the arc assigned to the order refers to the arc included in the logistics route determined corresponding to the order.
[0183] The logistics route output unit 440 provides the logistics route information corresponding to the order output by the solver 410 to the order fulfillment execution device 300, so that the order fulfillment execution device 300 can use the acquired logistics route information to execute the logistics route execution process.
[0184] As described above, the planning device 400 first performs a preprocessing phase, removing arcs that violate the cutting line, and then performs a postprocessing phase, where it parses an optimization model containing business constraints. This two-step structure possesses technical originality that differs from single-step optimization methods.
[0185] In other words, by removing arcs that do not correspond to orders through the arc information management device 200, the network search space that the planning device 400 needs to process can be significantly reduced. This allows the solver 410 to execute an optimization model that reflects business constraints within a simplified network search space, thereby reducing computational complexity and increasing execution speed. Furthermore, business constraints may vary due to contract terms, operational policies, and service constraints. By removing unnecessary arcs through preprocessing steps, the solver 410 can find the optimal solution more stably, even if the optimization model contains complex business constraints.
[0186] Therefore, the order fulfillment system 10 of the present invention provides a two-step route calculation structure that combines "pre-removal of infeasible arcs" and "optimization that reflects business constraints." This enables faster and more accurate calculation of logistics routes that satisfy both feasibility and optimality.
[0187] Let's go back to Figure 1 for an explanation.
[0188] The order fulfillment execution device 300 can receive logistics route information calculated by the planning device 400 and use the acquired logistics route information to execute the logistics route execution process. For example, the order fulfillment execution device 300 can work in conjunction with the transportation company system 700 to book transportation for each arc of the logistics route.
[0189] In this invention, the "execution process of the logistics route" may include, but is not limited to, booking transportation for the arcs that constitute the logistics route. For example, the order fulfillment execution device 300 may work in conjunction with the transportation company system 700 to book transportation slots for the transportation vehicles corresponding to each arc, or send transportation request messages to actually execute the corresponding arc.
[0190] The order fulfillment execution device 300 can obtain the execution results of the logistics route execution process. If, based on the obtained results, it is determined that at least a portion of the transport bookings for the arcs have not been executed normally, a re-planning request can be sent to the planning device 400. The re-planning request may include identification information of the arcs whose bookings were rejected.
[0191] In response to the replanning request, the planning device 400 may again request network information from the arc information management device 200. The arc information management device 200 may receive transportation resource status information (available transportation volume, service availability, policy changes, etc.) from the transportation company system 700, update the information of the arcs contained in the network corresponding to the network information, and then provide the updated network information to the planning device 400.
[0192] In some embodiments, the planning device 400 may proactively respond to the replanning request and first determine the likelihood of successful replanning. After the planning device 400 performs a pruning operation on the updated network information received from the arc information management device 200 using a hard pruner 70P and / or a soft pruner 80P, it determines whether the updated arc information after the pruning operation has been truly updated, and only continues replanning if the update increases the likelihood of success in the execution of the logistics route (e.g., an increase in available transport volume or a reduction / change in business constraints).
[0193] Furthermore, the planning device 400 can use the identification information of the booking rejection arc included in the replanning request to determine whether the booking rejection arc information has been updated according to the updated network information. If the booking rejection arc information has not been updated according to the updated network information, the planning device 400 can determine that the success probability of the replanning is lower than a standard value. In addition, in some embodiments, the planning device 400 only continues to replan if the booking rejection arc information has been updated according to the updated network information, and the update increases the success probability of the logistics route execution process (e.g., increased available transport capacity or relief / change of business constraints).
[0194] If the probability of success of replanning is lower than the standard value, the planning device 400 will not perform replanning, thereby avoiding unnecessary waste of computing resources.
[0195] If the probability of success of replanning exceeds a standard value, the planning device 400 can regenerate the optimization model by reflecting the updated network information. Furthermore, the solver 410 can use the regenerated optimization model to generate an updated logistics route consisting of new arc combinations. The updated logistics route may include replacement arcs to replace arcs that were rejected by the booking.
[0196] In response to the rescheduling request, the planning device 400 provides the updated logistics route to the order fulfillment execution device 300, which can then rebook the replacement arc with the transportation company system 700.
[0197] Next, an order fulfillment method according to another embodiment of the present invention will be described with reference to FIG8.
[0198] The order fulfillment method of this embodiment can be executed by one or more computing systems. Furthermore, some operations of the order fulfillment method of this embodiment can be executed by a first computing device, while other operations can be executed by a second computing device. For example, some operations of the order fulfillment method of this embodiment can be executed by a first server, while other operations can be executed by a second server. In the following text, if the entity performing each operation is omitted, it should be understood that the computing system is the entity performing the operation.
[0199] It should also be noted that, even without further mention, the embodiments of the order fulfillment system illustrated with reference to Figures 1 to 7 can be naturally applied to the order fulfillment method of this embodiment.
[0200] Referring to Figure 8, order information for the target order can be obtained to determine the logistics route for fulfillment (S100). Obtaining order information can trigger logistics route planning to fulfill the target order.
[0201] Next, the first network information of the target order can be obtained (S200). The first network information of the target order may include multiple nodes, multiple arcs connecting these nodes, and arc information for each arc.
[0202] Next, based on the correspondence between the order information and the arc information of the target order, a hard pruning tool 70P is used to remove at least one arc from the multiple arcs included in the first network information that does not correspond to the order information (S300).
[0203] For example, a hard pruning tool 70P (e.g., a transportation company pruning tool) can be used to remove the first arc from the first network information based on the fact that the transportation company of the means of transport corresponding to the first arc included in the multiple arcs does not correspond to the transportation company included in the order information of the target order.
[0204] For example, a hard pruner 70P (e.g., CVS pruner, COD pruner) can be used to remove a first arc from the first network information based on the payment type (e.g., CVS type, COD type) included in the order information where the transportation vehicle corresponding to the first arc in a plurality of arcs does not support the target order. In this example, when the payment type included in the order information is CVS type, node information can be used to determine whether at least one of the CVS company and CVS branch corresponding to that CVS type corresponds to at least one node connected by the transportation vehicle corresponding to the first arc.
[0205] For example, in S300, it is determined whether the region corresponding to the delivery address information included in the order information of the target order is included in the internal logistics service region. Based on the fact that the region corresponding to the delivery address information is included in the internal logistics service region, a hard pruner 70P (e.g., LS pruner) is used to remove at least one arc from the plurality of arcs included in the first network that corresponds to the external logistics service.
[0206] For example, a hard pruning tool 70P (e.g., a delivery service pruning tool) can be used to remove the first arc from the first network information based on the fact that the means of transport corresponding to the first arc included in the multiple arcs does not correspond to the service type included in the order information of the target order.
[0207] By using the hard pruning tool 70P to remove at least one arc from the first network information obtained in S200, second network information including a first portion of the arcs among the multiple arcs included in the first network information can be obtained.
[0208] Next, a soft pruner 80P based on arc information can be used to remove at least one arc from the first portion of the arcs included in the second network information from the first network information (S400).
[0209] For example, a soft pruner 80P (e.g., an LS priority pruner) can be used to remove arcs corresponding to external logistics services from the first network information based on the existence of arcs belonging to the same arc group in the first part of the arcs.
[0210] For example, a soft pruning tool 80P (e.g., an accelerated delivery guarantee pruning tool) can be used to remove the remaining arcs from the first network information, excluding the first arcs in the corresponding arcs that are set to deliver faster than others, based on the existence of arcs belonging to the same arc group in the first part of the arcs.
[0211] For example, in S300, a soft pruner 80P (e.g., an optimized pruner) can be used to calculate the optimal solution for each arc in the arc group based on the existence of arcs belonging to the same arc group in the first part of the arcs, using at least one of the cost, transport time and / or available transport volume of each arc, and remove the first arc whose calculated optimal solution is lower than other arcs from the first network information.
[0212] For example, in S300, when a first arc in the first part of the arc is assigned at least one order different from the target order, the delivery status of the goods included in the at least one order can be identified / obtained. Using a soft pruner 80P (e.g., a delivery status pruner), the first arc is removed from the first network information based on whether the delivery status of the goods in the at least one order is in transit or waiting. In this example, the delivery type of the goods can include: waiting status, where the logistics route of the order has not yet executed the execution process; in transit status, where the execution process has been executed; and waiting status. When an order different from the target order is assigned to the first arc included in the first part of the arc, and there are no orders in either the in-transit or waiting status, it may be in a state where the execution process of at least one logistics route including the first arc has not yet been executed. Conversely, when an order different from the target order is assigned to the first arc included in the first part of the arc, and there are at least one orders in either the in-transit or waiting status, it may be in a state where the execution process of at least one logistics route including the first arc has been executed.
[0213] By removing at least one arc from the second network information using a soft pruning tool 80P, third network information can be obtained, which includes a second portion of the arc included in the first portion of the arc in the second network information.
[0214] Next, from the first network information obtained in S200, the removal target arc based on at least one hard pruner 70P and at least one removal target arc based on a soft pruner 80P are removed, thereby fulfilling the target order using the obtained third network information (S500).
[0215] In S500, based on third-party network information, solver 410 can obtain information on the logistics route of the target order, and use the obtained information to execute the logistics route execution process. The specific order fulfillment method using solver 410 will be described below with reference to Figure 10.
[0216] Next, referring to Figure 9, the method of removing (pruning) the arc by adjusting the application range of the soft pruning tool 80P in S400 as described in Figure 8 will be explained.
[0217] S400 in Figure 9 can correspond to S400 in Figure 8.
[0218] In S400, the available amount of computing resources required to remove arcs using the soft pruning tool 80P can be obtained (S410).
[0219] Next, based on the obtained available quantity, the weights for determining the application scope of the soft pruning tool 80P are adjusted (S420). Then, based on the adjusted weights, removal is performed using the soft pruning tool 80P.
[0220] Next, referring to FIG10, another embodiment of the order fulfillment method of the present invention will be described.
[0221] S100, S200, S300, and S400 in Figure 10 can correspond to S100, S200, S300, and S400 in Figure 8. The operations described with reference to S510, S520, S530, and S500a in Figure 10 can be performed in S500 in Figure 8.
[0222] In S100, the planning device 400 can obtain order information, including the product identifier, specified option information, product type, payment type, service type (e.g., delivery service type) and / or delivery address information.
[0223] In S110, the planning device 400 can request network information from the arc information management device 200. This request can be understood as querying the available transportation resources and network status at the current moment in order to generate a route for the target order.
[0224] In step S120, the arc information management device 200 can determine candidate nodes for constructing the corresponding order logistics route based on order information. The candidate nodes determined in step S120 include not only the final destination node corresponding to the delivery address postal code, but also intermediate nodes such as hubs, camps, and fulfillment centers. Through step S120, the actual set of available nodes in the logistics network can be determined.
[0225] In S200, the arc information management device 200 can provide network information to the planning device 400. The network information includes multiple arcs and may include attribute information, cost information, the transportation company of the transportation vehicle, the type of transportation vehicle, information about the nodes connected by the transportation vehicle, and the delivery status of goods allocated to the transportation vehicle corresponding to the arc, serving as arc information for each arc. Referring to Figure 7, the goods included in the arc information and allocated to the transportation vehicle corresponding to the arc may refer to goods included in an order different from the target order.
[0226] In S300, the planning device 400 can use the order information received in S300 and S100 and the network information received in S200 to perform the first pruning operation on the network information received in S200 using the hard pruner 70P.
[0227] In S400, the planning device 400 can use the network information received in S400 and S200 to perform a second removal operation on the network information after the first removal operation using the soft pruner 80P.
[0228] In step S510, the planning device 400 can generate an optimization model using the network information after the first pruning or the network information after the second pruning. The optimization model generated in S510 can reflect the cost information of each arc included in the network information in the objective function, and use order cutting information as a constraint or penalty term. Thus, a mathematical model that satisfies both feasibility and optimality can be established.
[0229] In step S520, the planning device 400 can input the network information after the first pruning or the network information after the second pruning, as well as the order information, into the optimization model, and run the solver 410 to obtain the optimal solution, thereby obtaining the logistics route information output by the solver 410. The logistics route information calculated in step S510 is not a simple minimum cost or shortest distance route, but an executable route that reflects business constraints and cutting line constraints.
[0230] In step S530, the planning device 400 can provide order information and logistics route information to the order fulfillment execution device 300. Step S530 can serve as an interface to transmit the planning results to the actual execution module. The logistics route information can be directly used in the execution process of transportation booking or outbound instructions.
[0231] In step S500a, the order fulfillment execution device 300 can execute the logistics route execution process. The execution process in step S500a may include booking or requesting transportation for each arc by collaborating with the transportation company system 700. This allows the plan derived from the optimization model to be translated into actual logistics operations.
[0232] According to this embodiment, the arc information management device 200, the planning device 400, and the order fulfillment execution device 300 interact step by step, pre-eliminating infeasible arcs and / or arcs unsuitable for the target order, and generating feasible routes through an optimization model that reflects business constraints and cutting line constraints. This ensures continuity between the planning and execution steps, improving the overall order fulfillment success rate. Furthermore, compared to traditional single optimization methods, this step-by-step execution structure can simultaneously improve computational efficiency and execution reliability.
[0233] The methods of the embodiments of the present invention described above can be implemented by executing a computer program implemented in the form of computer-readable code. The computer program can be transmitted from a first computing device to a second computing device via a network (e.g., the Internet), installed on the second computing device, and then used on the second computing device.
[0234] Figure 11 is a schematic block diagram of a computing device for carrying out some embodiments of the present invention.
[0235] The computing device 1 in Figure 11 can be the order receiving device 100, arc information management device 200, order fulfillment execution device 300, or planning device 400 as illustrated in Figure 1.
[0236] Referring to FIG11, computing device 1 may include one or more processors 101, bus 103, communication interface 104, memory 102 for loading computer programs executed by processor 101, and auxiliary memory 105 for storing computer programs 106. However, FIG11 only shows components relevant to embodiments of the present invention. Therefore, those skilled in the art will understand that other general components may be included in addition to those shown in FIG11. That is, computing device 1 may include various components besides those shown in FIG11. Furthermore, in some cases, computing device 1 may be configured to omit some components shown in FIG11. The components of computing device 1 will be described below.
[0237] Processor 101 can control the overall operation of the various components of computing device 1. Processor 101 may include at least one of a CPU (Central Processing Unit), MPU (Micro Processor Unit), MCU (Micro Controller Unit), GPU (Graphic Processing Unit), NPU (Neural Processing Unit), or any processor known in the art. Furthermore, processor 101 can execute operations of at least one application or program for performing operations / methods according to various embodiments of the present invention. Computing device 1 may include one or more processors.
[0238] Furthermore, the system and / or computing device 1 according to embodiments of the present invention may also include a database, and the processor 101 may store data and / or information created / output according to some embodiments of the present invention into memory 102 and / or the database. The database for storing data and / or information is not limited to the database within the system and / or computing device 1 described in this invention; for example, it may include a database from an external server.
[0239] Memory 102 can store various data, commands, and / or information. Memory 102 can load computer programs 106 from auxiliary memory 105 to perform operations / methods according to various embodiments of the present invention. Memory 102 can be implemented as volatile memory such as RAM, but the scope of the present invention is not limited thereto.
[0240] Bus 103 can provide communication functions between components of computing device 1. Bus 103 can be implemented as various types of buses, such as address bus, data bus, and control bus.
[0241] The communication interface 104 can support wired / wireless Internet communication of the computing device 1. Furthermore, the communication interface 104 can support various communication methods other than Internet communication. Therefore, the communication interface 104 may include communication modules known in the art.
[0242] Auxiliary memory 105 may store one or more computer programs 106 in a non-temporary manner. Auxiliary memory 105 may include non-volatile memory such as ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), flash memory, hard disk, removable magnetic disk, or any type of computer-readable recording medium known in the art.
[0243] Computer program 106 may include one or more instructions that, when loaded into memory 102, cause processor 101 to perform operations / methods according to various embodiments of the present invention. That is, processor 101 may perform operations / methods according to various embodiments of the present invention by executing one or more instructions.
[0244] In this invention, at least one instruction or computer program may be stored in a computer-readable (non-volatile) storage medium, which, when executed by at least one processor, causes the at least one processor to perform methods and / or operations according to some embodiments of the invention.
[0245] For example, computer program 106 may include multiple instructions for performing the following operations: acquiring first network information comprising multiple arcs; using a hard pruner corresponding to the arc information of the arcs included in the multiple arcs based on order information of a target order; using a soft pruner based on the arc information to remove at least one second arc from a portion of the multiple arcs, excluding the at least one first arc, from the first network information; and fulfilling the target order using second network information after removing the at least one first arc and the at least one second arc. Here, each arc may correspond one-to-one with a transportation tool connecting nodes.
[0246] Furthermore, the computing device 1 shown in Figure 11 is not a simple general-purpose computer, but may have a specialized computing and input / output structure for executing the order fulfillment method according to the present invention. For example, the processor 101 runs in a multi-core CPU and GPU environment, capable of handling high-load operations such as pruning, business constraint optimization, and replanning exploration in real time.
[0247] Furthermore, the communication interface 104's functionality extends beyond device-to-device data transmission. It can also collaborate with the transportation company system 700 or external Internet of Things (IoT)-based vehicle sensor networks to collect real-time status information of physical transportation equipment. For example, the communication interface 104 can collect information such as truck load capacity, remaining fuel, available operating status, booking status, and changes in transportation policies from IoT sensors connected to vehicle terminals. This information is stored in memory 102 via system bus 103 and immediately referenced by processor 101, enabling it to be reflected in network information updates and optimization model configuration steps.
[0248] In this way, the communication interface 104 directly acquires the status of actual physical transportation resources and connects them to memory 102 and processor 101 for immediate use. Therefore, the invention is implemented in a form tightly coupled to specific hardware input / output resources, rather than merely implementing an abstract software concept. This ensures that order fulfillment route optimization can be synchronized in real time with the actual transportation environment.
[0249] Furthermore, in some embodiments, the arc information management device 200 can send network information to the memory 102 of the planning device 400 via the communication interface 104 for high-speed transmission. The planning device 400 can directly record the received network information and / or network information generated as a result of arc removal into the memory 102. At this time, the data is loaded into the memory 102 accessible to the processor 101 via the system bus 103, and a direct transmission method bypassing the kernel buffer can be used to minimize data transmission latency.
[0250] The processor 101 of the planning device 400 can immediately reference network information loaded in memory 102 to construct an optimization model. During this process, multiple processor cores can perform computations in parallel. This enables model updates for hundreds of thousands or more arc attribute datasets with ultra-low latency.
[0251] Furthermore, the arc information management device 200 can generate metadata (e.g., hash values, timestamps) for integrity verification and provide it to the planning device 400 via the communication interface 104. The planning device 400 can then refer to this information to verify the integrity of the network information loaded in the memory 102. This structure ensures stable computing performance even when order processing and replanning are performed simultaneously in a distributed environment.
[0252] This configuration is not limited to implementing business logic on a computer; combined with a specific hardware architecture, it can also enable real-time order fulfillment optimization and replanning operations.
[0253] Various embodiments of the present invention and the effects according to the embodiments have been illustrated above with reference to Figures 1 to 11. The effects of the present invention are not limited to those described above, and those skilled in the art will clearly understand other effects not mentioned from the following description.
[0254] Furthermore, although the above embodiments illustrate the combination of multiple components into one or more operations, the spirit of the present invention is not necessarily limited to these embodiments. That is, within the scope of the spirit of the present invention, all components can be selectively combined in one or more combinations to operate.
[0255] Although multiple operations are shown in a specific order in the accompanying drawings, it should not be understood that the multiple operations must be performed in the specific order shown or sequentially, or that all of the shown operations must be performed to obtain the desired result. In some cases, multitasking and parallel processing may be more advantageous. Moreover, the separation of the various components in the above embodiments should not be construed as requiring such separation; the illustrated program components and systems can generally be integrated together as a single software product, or packaged into multiple software products.
[0256] Although various embodiments of the invention have been described with reference to the accompanying drawings, those skilled in the art will understand that the spirit of the invention can be implemented in different specific forms without altering its spirit or essential characteristics. Therefore, the above embodiments should be understood as illustrative in all respects and not restrictive. The scope of protection of this invention should be interpreted as defined in the appended claims, and all technical spirit within the equivalent scope should be interpreted as included within the scope of the technical spirit defined in this invention.
[0257] 10: Order Fulfillment System 100: Order Receiving Device 200: Arc Information Management Device 300: Order Fulfillment Execution Device 400: Planning Device 410: Solver 420: Input Data Receiving Department 430: Optimization Model Generation Department 431: Optimization Model 440: Logistics Route Output Department 500: Database 700: Transportation Company System 20, 30, 40, 50, 60, 70: Nodes 65: Delivery Address Node Group 21, 22, 23, 24: Arc group 21-1: Data Structure 21a, 21b, 21c, 21d, 21e, 21f, 21g, 21h, 21i, 21j, 21k, 21m, 21n: Arc attribute variables 81: Execution Center 82: Hub 83: Camp 84: Customer Delivery 80a: Order acceptance deadline 81a: Outbound Cut-off Time 82a: Deadline for pickup 83a: Delivery Deadline 84a: Delivery completion time 70P: Hard Pruner 80P: Soft Pruner S100, S110, S120, S200, S300, S400, S410, S420, S500, S510, S520, S530, S500a: Steps 1: Computing device 101: Processor 102: Memory 103: Bus 104: Communication Interface 105: Auxiliary Memory 106: Computer Programs
Claims
1. An order fulfillment method, executed by a computing system, comprising the following steps: acquiring first network information including a plurality of arcs; using a hard pruner corresponding to the arc information of the arcs included in the plurality of arcs based on order information of a target order; removing at least one first arc from the plurality of arcs that does not correspond to the order information; Using a soft pruning tool based on the arc information, remove at least one second arc from a portion of the plurality of arcs, excluding the at least one first arc, from the first network information; And using the second network information after removing the at least one first arc and the at least one second arc, the target order is fulfilled, with each arc corresponding one-to-one with the means of transport connecting the nodes.
2. As in request item 1 regarding the order fulfillment method, where, The step of removing the at least one first arc from the first network information using the hard pruning tool includes the following steps: removing the first arc from the first network information based on the fact that the first transportation company of the first transportation vehicle corresponding to the first arc included in the plurality of arcs does not correspond to the transportation company included in the order information.
3. As in request item 1 regarding the order fulfillment method, where, The step of removing the at least one first arc from the first network information using the hard pruning tool includes the following steps: removing the first arc from the first network information based on the fact that the first means of transport corresponding to the first arc included in the plurality of arcs does not support the payment type included in the order information.
4. As in request item 3 regarding the order fulfillment method, where, The step of removing the first arc from the first network information based on the fact that the first means of transport does not support the payment type includes the following steps: determining whether at least one of the CVS company and CVS branch corresponding to the convenience store (CVS) payment type included in the order information corresponds to at least one node connected by the first means of transport.
5. As in request item 3 regarding the order fulfillment method, where, The payment types include Cash on Delivery (COD).
6. As in request item 1, the order fulfillment method, wherein, The step of removing at least one first arc from the first network information using the hard pruning tool includes the following steps: determining whether the region corresponding to the delivery address information included in the order information is included in the internal logistics service region; and based on the region being included in the internal logistics service region, removing at least one arc from the plurality of arcs that corresponds to the external logistics service from the first network information.
7. As in request item 1, the order fulfillment method, wherein, The step of removing at least one first arc from the first network information using the hard pruning tool includes the following steps: removing the first arc from the first network information based on the fact that the first service type of the first arc included in the plurality of arcs does not correspond to the service type included in the order information.
8. As in request item 1, the order fulfillment method, wherein, The step of removing the at least one first arc from the first network information using the hard pruning tool includes the following steps: removing the first arc from the first network information based on the fact that the product type included in the order information does not correspond to at least one node connected by a first means of transport corresponding to the first arc included in the plurality of arcs.
9. As in request item 1, the order fulfillment method, wherein, The step of removing at least one second arc from the first network information using the soft pruning tool includes the following steps: removing a first arc from the portion of the arcs that corresponds to an external logistics service included in the arc group, wherein the arc group includes a first arc for connecting a first node and a second node and a second arc for connecting the first node and the second node, the first arc corresponding to the external logistics service and the second arc corresponding to an internal logistics service.
10. As in request item 1, the order fulfillment method, wherein, The step of removing the at least one second arc from the first network information using the soft pruning tool includes the following steps: removing the second arc from the first network information based on a pre-set first service type corresponding to the first arc included in the arc group being delivered faster than the second service type corresponding to the second arc included in the arc group, wherein the first arc corresponds to a first transport vehicle for connecting the first node and the second node, and the second arc corresponds to a second transport vehicle for connecting the first node and the second node.
11. As in request item 1, the order fulfillment method, wherein, The step of removing at least one second arc from the first network information using the soft pruning tool includes the following steps: calculating the optimal solution for the first and second arcs included in the arc group of the portion of arcs; And the second arc whose optimal solution calculated from the first network information is lower than the first arc, the arc group includes the first arc for connecting the first node and the second node and the second arc for connecting the first node and the second node, and the optimal solution is calculated using a predefined objective function based on at least one of the cost of the arc, the transportation time and the available transportation volume.
12. As in request item 1, the order fulfillment method, wherein, The step of removing the at least one second arc from the first network information using the soft pruning tool includes the following steps: obtaining the delivery status of goods included in an order that is assigned to a first arc included in the partial arc and is different from the target order; removing the first arc from the first network information based on whether the delivery status is in transit or waiting, wherein the delivery status is in transit, waiting, or ready.
13. As in request item 1, the order fulfillment method, wherein, The step of removing the at least one second arc from the first network information using the soft pruning tool includes the following steps: obtaining the available amount of computing resources required for arc removal; and adjusting the weights of the soft pruning tool based on the available amount, the weights being used to determine the applicability of the soft pruning tool to the portion of the arcs.
14. As in request item 1, the order fulfillment method, wherein, The steps of fulfilling the order using the second network information include the following steps: inputting the order information and the second network information into an arc-flow-based solver; obtaining information on the logistics route corresponding to the order output by the solver; and using the obtained logistics route information to execute the logistics route execution process, wherein the solver outputs a combination of one or more arcs to ensure that the result value of the objective function satisfies specified conditions under constraints.
15. A computing system, comprising: Arc information management device, used to manage arc information of arcs contained in multiple arcs; A planning device is used to acquire order information of a target order, acquire first network information including the plurality of arcs from the arc information management device, use a hard pruning device based on the order information and the arc information to remove at least one first arc from the plurality of arcs that does not correspond to the order information, and use a soft pruning device based on the arc information to remove at least one second arc from a portion of the plurality of arcs other than the at least one first arc from the first network information. And an order fulfillment execution device, used to fulfill the target order using second network information generated by the planning device after removing the at least one first arc and the at least one second arc, wherein the arc corresponds one-to-one with the transportation vehicle connecting the nodes.