CN113222490A - Inventory allocation method and device - Google Patents

Inventory allocation method and device Download PDF

Info

Publication number
CN113222490A
CN113222490A CN202010081878.8A CN202010081878A CN113222490A CN 113222490 A CN113222490 A CN 113222490A CN 202010081878 A CN202010081878 A CN 202010081878A CN 113222490 A CN113222490 A CN 113222490A
Authority
CN
China
Prior art keywords
task
task information
information
inventory
total
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010081878.8A
Other languages
Chinese (zh)
Inventor
季佳月
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Wodong Tianjun Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Wodong Tianjun Information Technology Co Ltd
Priority to CN202010081878.8A priority Critical patent/CN113222490A/en
Publication of CN113222490A publication Critical patent/CN113222490A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Abstract

The invention discloses a stock distribution method and device, and relates to the technical field of logistics storage. One embodiment of the method comprises: acquiring a plurality of task information containing target articles received in a current locking time period; the task information comprises the quantity of the articles and the receiving address information; marking task timeliness for the plurality of task information respectively according to the receiving address information and the set address timeliness relation, and generating task weights for the plurality of task information respectively according to the task timeliness and the set weight generation rule; calculating a first stock of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object number to be less than or equal to the first stock from the plurality of task information; and distributing corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information. The embodiment realizes the balance of inventory and timeliness and improves the overall task timeliness.

Description

Inventory allocation method and device
Technical Field
The invention relates to the technical field of logistics storage, in particular to a stock allocation method and device.
Background
After the user places an order on the e-commerce platform, the e-commerce platform performs the fulfillment according to the order information, such as the timeliness, the freight, the preference and the like, by using the order fulfillment system. Order fulfillment is the entire process from the time the order transaction is generated until the customer finally receives the purchased item, including after sales. Existing order fulfillment systems typically allocate inventory according to the generation time of an order, and if the current inventory can meet the quantity of items in the order, allocate inventory for the order; and if the front stock can not meet the quantity of the articles in the order, transferring to a higher-level warehouse for production, and further completing the order through the processes of packaging, sorting and the like.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
the method comprises the steps that inventory is distributed according to order generation time, so that order generation time is late, but orders with high timeliness requirements cannot be distributed due to the fact that the orders with high timeliness requirements cannot be distributed according to timeliness requirements, and customer experience is poor; since the number of each warehouse, the cost, and the like are different, the warehouses cannot be effectively used by simply allocating the inventory according to the order generation time.
Disclosure of Invention
In view of this, embodiments of the present invention provide an inventory allocation method and apparatus, where task weights are respectively generated for a plurality of pieces of task information received within a locking time period, so as to select a task combination with a maximum total task weight and meeting a first inventory limit from the plurality of pieces of task information according to a first inventory, and further allocate inventory to the task information in the task combination, thereby implementing balance between inventory and aging, and improving overall task aging and customer experience.
To achieve the above object, according to an aspect of an embodiment of the present invention, there is provided an inventory allocation method.
The inventory allocation method of the embodiment of the invention comprises the following steps: acquiring a plurality of task information containing target articles received in a current locking time period; wherein the task information comprises the quantity of the articles and the receiving address information; marking task timeliness for the plurality of task information respectively according to the receiving address information and a set address timeliness relation, and generating task weights for the plurality of task information respectively according to the task timeliness and a set weight generation rule; calculating a first stock quantity of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object quantity to be less than or equal to the first stock quantity from the plurality of task information; and distributing corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information.
Optionally, selecting a task combination having a maximum total task weight and a total item number equal to or less than the first inventory amount from the plurality of task information includes: establishing an objective function; the objective function is task information with the largest total task weight selected from the plurality of task information, and the total task weight is the sum of task weights corresponding to the selected task information; constructing constraint conditions; the constraint condition is that the total quantity of articles of the task information selected from the plurality of task information is less than or equal to the first inventory quantity, and the total quantity of articles is the sum of the quantities of articles corresponding to the selected task information; and solving a target solution of the target function under the limitation of the constraint condition by using a dynamic programming algorithm so as to obtain the composition of the target solution according to the backtracking of the target solution, wherein the composition of the target solution forms the selected task combination.
Optionally, the solving a target solution of the objective function under the constraint of the constraint condition by using a dynamic programming algorithm includes: describing the structural characteristics of a target solution; wherein the structural features are: the target solution of the original problem comprises the target solutions of the sub-problems thereof; selecting a task combination which enables the total task weight to be the maximum and enables the total article quantity to be less than or equal to the first stock quantity from the plurality of task information; the subproblems are task combinations which enable the total task weight to be maximum and enable the total article number to be less than or equal to the current inventory amount are selected from the previous i task information; determining the recurrence relation of the original problem and the subproblems, and calculating the target solution of the subproblems in a bottom-up mode; wherein the recurrence relation comprises: if the current inventory amount is less than the quantity of the articles corresponding to the ith task information, the total task weight corresponding to the first i task information is equal to the total task weight corresponding to the first i-1 task information; and if the current inventory is more than or equal to the quantity of the articles corresponding to the ith task information, the total task weight corresponding to the first i task information is equal to the larger value of the total task weight corresponding to the selected or unselected ith task information.
Optionally, obtaining the composition of the target solution according to the target solution backtracking includes: according to a set searching principle, starting from a task information serial number corresponding to the target solution and the current stock, and ending when traversing to the task information serial number is 0, so as to obtain the composition of the target solution; wherein, the searching principle is as follows: if the total task weight corresponding to the first i task information under the current inventory is equal to the total task weight corresponding to the first i-1 task information under the current inventory, the target solution does not contain the ith task information; if the total task weight corresponding to the first i task information under the current inventory is equal to the sum of the total task weight corresponding to the first i-1 task information under the new inventory and the task weight corresponding to the ith task information, the target solution contains the ith task information; and the new stock quantity is the difference between the current stock quantity and the quantity of the articles corresponding to the ith task information.
Optionally, the address aging relationship is: theoretical timeliness corresponding to the three-level address of the province, city and county or the four-level address of the street of the province, city and county; the weight generation rule is as follows: the higher the task age of the task information is, the higher the assigned task weight is.
Optionally, the warehouse is a front warehouse; the method further comprises the following steps: calculating a second inventory amount of the target object in a central warehouse in the current locking time period and a difference value between the first inventory amount and the total object quantity corresponding to the plurality of task information; if the difference is larger than 0, updating the difference to a first inventory amount of the target article in the front bin in the next locking time period; and if the difference is less than 0, sequentially consuming the second inventory according to the task generation time and the quantity of the articles of the unallocated task information after the first inventory is allocated.
Optionally, the method further comprises: if the second inventory is less than the difference value, counting the residual task information after the second inventory is completely consumed, and updating the residual task information into the task information acquired in the next locking time period; and the residual task information is the task information which is not distributed after the first inventory and the second inventory are completely consumed.
To achieve the above object, according to another aspect of the embodiments of the present invention, an inventory allocation apparatus is provided.
An inventory allocation device according to an embodiment of the present invention includes: the information acquisition module is used for acquiring a plurality of task information containing the target object received in the current locking time period; wherein the task information comprises the quantity of the articles and the receiving address information; the mark generation module is used for marking task timeliness for the plurality of task information respectively according to the relation between the receiving address information and the set address timeliness, and generating task weights for the plurality of task information respectively according to the task timeliness and the set weight generation rule; the calculation selection module is used for calculating a first stock of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object number to be less than or equal to the first stock from the plurality of task information; and the inventory allocation module is used for allocating corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information.
Optionally, the calculation selection module is further configured to: establishing an objective function; the objective function is task information with the largest total task weight selected from the plurality of task information, and the total task weight is the sum of task weights corresponding to the selected task information; constructing constraint conditions; the constraint condition is that the total quantity of articles of the task information selected from the plurality of task information is less than or equal to the first inventory quantity, and the total quantity of articles is the sum of the quantities of articles corresponding to the selected task information; and solving a target solution of the target function under the limitation of the constraint condition by using a dynamic programming algorithm so as to obtain the composition of the target solution according to the backtracking of the target solution, wherein the composition of the target solution forms the selected task combination.
Optionally, the calculation selection module is further configured to: describing the structural characteristics of a target solution; wherein the structural features are: the target solution of the original problem comprises the target solutions of the sub-problems thereof; selecting a task combination which enables the total task weight to be the maximum and enables the total article quantity to be less than or equal to the first stock quantity from the plurality of task information; the subproblems are task combinations which enable the total task weight to be maximum and enable the total article number to be less than or equal to the current inventory amount are selected from the previous i task information; determining the recurrence relation of the original problem and the subproblems, and calculating the target solution of the subproblems in a bottom-up mode; wherein the recurrence relation comprises: if the current inventory amount is less than the quantity of the articles corresponding to the ith task information, the total task weight corresponding to the first i task information is equal to the total task weight corresponding to the first i-1 task information; and if the current inventory is more than or equal to the quantity of the articles corresponding to the ith task information, the total task weight corresponding to the first i task information is equal to the larger value of the total task weight corresponding to the selected or unselected ith task information.
Optionally, the calculation selection module is further configured to: according to a set searching principle, starting from a task information serial number corresponding to the target solution and the current stock, and ending when traversing to the task information serial number is 0, so as to obtain the composition of the target solution; wherein, the searching principle is as follows: if the total task weight corresponding to the first i task information under the current inventory is equal to the total task weight corresponding to the first i-1 task information under the current inventory, the target solution does not contain the ith task information; if the total task weight corresponding to the first i task information under the current inventory is equal to the sum of the total task weight corresponding to the first i-1 task information under the new inventory and the task weight corresponding to the ith task information, the target solution contains the ith task information; and the new stock quantity is the difference between the current stock quantity and the quantity of the articles corresponding to the ith task information.
Optionally, the address aging relationship is: theoretical timeliness corresponding to the three-level address of the province, city and county or the four-level address of the street of the province, city and county; the weight generation rule is as follows: the higher the task age of the task information is, the higher the assigned task weight is.
Optionally, the warehouse is a front warehouse; the device further comprises: the inventory consumption module is used for calculating a second inventory amount of the target item in the central bin in the current locking time period and a difference value between the first inventory amount and the total item quantity corresponding to the plurality of task information; if the difference is larger than 0, updating the difference to a first inventory amount of the target article in the front bin in the next locking time period; and if the difference is less than 0, sequentially consuming the second inventory according to the task generation time and the quantity of the articles of the unallocated task information after the first inventory is allocated.
Optionally, the apparatus further comprises: the quantity updating module is used for counting the residual task information after the second stock is completely consumed if the second stock is smaller than the difference value, and updating the residual task information into the task information acquired in the next locking time period; and the residual task information is the task information which is not distributed after the first inventory and the second inventory are completely consumed.
To achieve the above object, according to still another aspect of embodiments of the present invention, there is provided an electronic apparatus.
An electronic device of an embodiment of the present invention includes: one or more processors; a storage device, configured to store one or more programs, which when executed by the one or more processors, cause the one or more processors to implement an inventory allocation method according to an embodiment of the present invention.
To achieve the above object, according to still another aspect of embodiments of the present invention, there is provided a computer-readable medium.
A computer-readable medium of an embodiment of the present invention has a computer program stored thereon, which when executed by a processor implements an inventory allocation method of an embodiment of the present invention.
One embodiment of the above invention has the following advantages or benefits: the task weight is respectively generated for the plurality of task information received in the locking time period, so that the task combination with the maximum total task weight and meeting the first stock limit is selected from the plurality of task information according to the first stock, and then the task information in the task combination is distributed to the stock, the balance of the stock and the timeliness is realized, and the whole task timeliness and the customer experience are improved; the problem that the task combination with the largest total task weight and the total article quantity smaller than or equal to the first inventory amount is selected from the task information is described as a knapsack problem, and the problem is solved based on a dynamic planning algorithm, so that the total task timeliness of the tasks which are preferentially allocated is maximized, and the overall timeliness in the order fulfillment process is improved.
One embodiment of the above invention has the following advantages or benefits: when the inventory of the front bin is larger than the consumption required by the current locking time period, the rest inventory is updated to the next locking time period for consumption, and the reasonability and the correctness of the inventory statistics of each locking time period are ensured; the stock of the front warehouse is consumed preferentially, and the stock of the central warehouse is consumed again when the stock of the front warehouse is insufficient, so that all levels of warehouses are effectively utilized; when the inventory of the front bin and the central bin is less than the consumption required by the current locking time period, the inventory is distributed to the remaining task information when the next locking time period comes, and the performance of each task information is ensured.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
FIG. 1 is a schematic diagram of the main steps of an inventory allocation method according to a first embodiment of the invention;
FIG. 2 is a schematic flow chart of a second embodiment of the inventory allocation method according to the present invention;
FIG. 3 is a table-filling sequence diagram of a second inventory allocation method according to the second embodiment of the invention;
FIG. 4 is a schematic diagram of an implementation principle of a third inventory allocation method according to the embodiment of the invention;
FIG. 5 is a schematic flow chart of a third embodiment of the inventory allocation method according to the present invention;
fig. 6(a) is a schematic view of a case where the first stock amount is equal to the total item amount in the inventory allocation method according to the third embodiment of the present invention;
fig. 6(b) is a schematic view of a case where the first stock amount is larger than the total item amount in the inventory allocation method according to the third embodiment of the present invention;
fig. 6(c) is a schematic view of a case where the first stock amount is smaller than the total item amount in the inventory allocation method according to the third embodiment of the present invention;
FIG. 7 is a schematic diagram of the main modules of an inventory distribution device according to an embodiment of the invention;
FIG. 8 is an exemplary system architecture diagram in which embodiments of the present invention may be employed;
FIG. 9 is a schematic diagram of a computer apparatus suitable for use in an electronic device to implement an embodiment of the invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 is a schematic diagram of main steps of an inventory allocation method according to a first embodiment of the present invention. As shown in fig. 1, the inventory allocation method according to the first embodiment of the present invention mainly includes the following steps:
step S101: and acquiring a plurality of task information containing the target object received in the current locking time period. The task system receives task information in real time, and the inventory allocation device acquires all the task information received in the current locking time period from the task system through an application program interface, wherein the task information comprises task identification, receiving address information, article identification and article quantity. And screening the task information containing the target item from all the received task information according to the item identification.
Step S102: marking task timeliness for the plurality of task information respectively according to the receiving address information and the set address timeliness relation, and generating task weights for the plurality of task information respectively according to the task timeliness and the set weight generation rule. The address aging relation is theoretical aging corresponding to the province, city and county three-level address or the province, city and county street four-level address; the weight generation rule is that the higher the task timeliness of the task information is, the higher the assigned task weight is.
The receiving address information comprises provincial, municipal, district and county streets, and the receiving address information is matched with the address timeliness relation, so that the task timeliness corresponding to the task information can be obtained. For example, the receiving address information is the XX building in the financial street in the western city of beijing, and the theoretical aging of the address corresponding to the address in the address aging relationship is the next-day arrival, so that the task aging corresponding to the task information is the next-day arrival. The task weight may be a numerical value, such as a task weight of 90 for the next day and a task weight of 50 for the next day.
Step S103: and calculating a first stock quantity of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object quantity to be less than or equal to the first stock quantity from the plurality of task information. Counting a first stock of the target object in the warehouse within the current locking time period, taking the task information with the maximum total task weight selected from the plurality of task information as a target function, taking the total object quantity of the task information selected from the plurality of task information less than or equal to the first stock as a constraint condition, calculating a target solution of the target function by using a dynamic programming algorithm, and obtaining a composition of the target solution according to the backtracking of the target solution, wherein the composition of the target solution is the selected task combination.
Step S104: and distributing corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information. And respectively allocating corresponding inventory for each task information in the task combination according to the quantity of the articles specified in the task information.
The above embodiment dynamically makes decisions by comprehensively considering three factors of task timeliness, article quantity and inventory quantity of the current locking time period, and realizes balance of inventory and task timeliness. And under the condition that the first inventory is not exceeded, the inventory is preferentially allocated to the task information with high task timeliness, the advance occupation of the inventory by the task information with low task timeliness is avoided, and the overall task timeliness in the task fulfillment process is improved.
Fig. 2 is a schematic main flow chart of an inventory allocation method according to a second embodiment of the present invention. As shown in fig. 2, the inventory allocation method according to the second embodiment of the present invention mainly includes the following steps:
step S201: and acquiring a received task information set in the current locking time period, and screening a plurality of task information containing the target object from the task information set. In an embodiment, the task information is order information, and includes an order identifier (such as an order number), an item identifier, an item quantity, shipping address information, and the like. The method comprises the steps of obtaining order information from an application program interface of an order system in real time, and screening a plurality of order information including target articles from an order information set obtained in a current locking time period. In a preferred embodiment, the shipping address information includes address information of province, city, county, township, etc. to which the user belongs. Table 1 shows fields included in the order information in the embodiment.
TABLE 1
Figure BDA0002380592170000091
Step S202: and marking the task timeliness for the plurality of task information respectively according to the receiving address information in the task information and the set address timeliness relation. The address aging relationship is a data table maintained by the logistics system, and may include fields such as province, city, county, third-level addresses and corresponding theoretical aging, or province, city, county, fourth-level addresses and corresponding theoretical aging. And marking the task timeliness for each order information according to the receiving address and the address timeliness relation of each screened order information. Wherein, the time period refers to the time interval from ordering to completing the delivery of the goods by the user. Table 2 is the result of marking the task age for the order information in the example.
TABLE 2
Figure BDA0002380592170000092
Step S203: and respectively generating task weights for the plurality of task information according to the task timeliness and the set weight generation rule. The weight generation rule is that the task time efficiency of the task information is higher, and the assigned task weight is higher. The task weights generated by orders for different task timeliness are illustrated below. It should be noted that the following weight values are only for illustration and are not to be construed as limiting the invention, and other values may be adopted by those skilled in the art.
Such as: 211 the task weight of the aging order is a random integer between 91 and 100; the task weight of the next day up to the time order is a random integer between 81 and 90; the task weight of the every other day time order is a random integer between 41 and 50; the task weight of the order of the four days to the time effect is a random integer between 31 and 40; the task weight of the five-day-by-time order is a random integer between 21 and 30; the task weight of the six-day-up-to-time order is a random integer between 11 and 20; the task weight of other aging orders is a random integer between 1 and 10. Wherein the 211 aging order means placing an order before 11 am and delivering the order in the afternoon; orders were placed 11 am later, 11 pm later, and delivered the next morning. Table 3 is the result of generating task weights for order information in the example.
TABLE 3
Figure BDA0002380592170000101
The task weight of each order information in the current locking time period and the quantity of the object items are determined through the steps S201 to S203.
Step S204: a first inventory amount of the target item in the warehouse for the current lock time period is calculated. And counting a first stock quantity of the target object in the warehouse for stock allocation in the current locking time period so as to facilitate the subsequent dynamic consumption of the first stock quantity. A warehouse here is any one or more warehouses that may be allocated for inventory.
Step S205: and establishing an objective function and constructing constraint conditions. In an embodiment, the objective function is order information with the largest total task weight selected from the plurality of order information, and the total task weight is the sum of task weights corresponding to the selected order information. The constraint condition is that the total quantity of the items of the order information selected from the plurality of order information is less than or equal to the first stock quantity, and the total quantity of the items is the sum of the quantities of the items corresponding to the selected order information.
In an embodiment, the expression of the objective function is:
Figure BDA0002380592170000102
in the formula, viThe task weight of the ith order information; x is the number ofi1 or 0 is taken to represent that the ith order information is selected or not selected; n is the amount of the screened order information containing the target object;
the expression of the constraint is:
Figure BDA0002380592170000111
in the formula, siThe item quantity of the target item in the screened ith order information is obtained; s is the first inventory amount.
Step S206: and solving a target solution of the target function by using a dynamic programming algorithm under the limitation of the constraint condition. The dynamic programming algorithm divides the original problem into sub-problems, solves one sub-problem by searching the recurrence relation of the original problem and the sub-problems, and finally achieves the effect of solving the original problem. And the dynamic programming has memorability, all the answers of the solved subproblems are recorded through filling the table, and the subproblems needed to be used in the new problem can be directly extracted, so that the repeated calculation is avoided, and the time is saved.
The original problem is described as follows: there are n order messages with their respective quantity of items and weight of tasks (i.e., value), how the packs of a given capacity (i.e., the first quantity of inventory S) exist, and how the order messages loaded in the packs have the greatest sum of values. The sub-problems are described as follows: the maximum value that can be obtained by putting the first i order information into the backpack with the current capacity (i.e. the current stock s). The specific implementation of the step is as follows:
(1) and analyzing the property of the optimal solution and describing the structural characteristics of the target solution.
The value range of the current order information i is more than or equal to 1 and less than or equal to n, and the article quantity s of the target article in the ith order informationiS is not less than 0iS ≦ S, definition
Figure BDA0002380592170000112
Where V [ i, s ] represents the maximum value that the order set {1,2,. i } can take under the constraints of the current inventory amount s.
The original problem is to solve V [ n, S ]]If, if
Figure BDA0002380592170000113
And sigmaj∈TsjIf s is less than or equal to s, T is the problem of knapsack V [ i, s >](ii) a feasible solution; if it is not
Figure BDA0002380592170000114
And sigmaj∈Tsj=V[i,s]Then T is the knapsack problem V [ n, S ]]The optimal solution (i.e., the target solution) of (c).
(2) The values of the target solution are defined recursively. The optimality principle is the basis of dynamic programming, and the principle means that the optimal solution of the original problem contains the optimal solutions of the sub-problems. There are two possibilities for the current order information:
firstly, the capacity of the backpack is smaller than the quantity of the items in the order information, and the backpack cannot be put down, and the value of the backpack is the same as the value of the first i-1, namely V [ i, s ] ═ V [ i-1, s ];
second, there is sufficient capacity in the backpack to load the order information, but the load does not necessarily reach the current optimum value, so the optimum one is selected between load and unload, i.e., the load and unload are selected
V[i,s]=max{V[i-1,s],V[i-1,s-si]+νi}
Equation 4
In the formula, V [ i-1, s]Indicating the value obtained without loading the ith order information; v [ i-1, s-si]+νiIndicating that the ith order information is filled and the backpack capacity is reduced by siBut with increased value of vi
Therefore, a recursion relational expression of the original problem and the subproblem can be obtained:
Figure BDA0002380592170000121
(3) the target solution for the sub-problem is computed in a bottom-up manner. Filling in the table, first initializing boundary conditions, V [0, s]=V[i,0]0; then one row for one line, and filling the table from top to bottom and from left to right. Since V [ i-1, s ] is obtained]And V [ i-1, s-si]Can only solve for V [ i, s]Therefore, table filling needs to be performed in the above manner. Fig. 3 is a schematic diagram of a filling sequence of the inventory allocation method according to the second embodiment of the present invention, that is, filling is performed according to the direction of the arrow. The following examples are given.
Assuming that the number of pieces of order information including the target item screened out is 4 and the first stock quantity is 8, the number of items and the task weight including the target item in each piece of order information are shown in table 4.
TABLE 4
i 1 2 3 4
Number of articles 2 3 4 5
Task weight 3 4 5 6
For example, when i is 1, s1=2,v 13, s < s1Therefore, V1, 1]=V[1-1,1]=0;
For another example, when i is 1 and s is 2, s is1=2,v1Is 3, s is s1Therefore, V1, 2]=max{V[1-1,2],V[1-1,2-s1]+v1}=max{0,0+3}=3;
In the above manner, when filling the last table, i is 4, and s is 8, s is filled4=5,v46, since s > s4Therefore, V4, 8]=max{V[4-1,8],V[4-1,8-s4]+v4Max {9,4+6} 10. Filled-in formThe table is shown in Table 5.
TABLE 5
V[i,s] s=0 s=1 s=2 s=3 s=4 s=5 s=6 s=7 s=8
i=0 0 0 0 0 0 0 0 0 0
i=1 0 0 3 3 3 3 3 3 3
i=2 0 0 3 4 4 7 7 7 7
i=3 0 0 3 4 5 7 8 9 9
i=4 0 0 3 4 5 7 8 9 10
As can be seen from table 5, the optimal solution is V [4,8] ═ 10, but it is not known which order information the optimal solution is composed of at this time, and further processing is required using step S207.
Step S207: and obtaining the composition of the target solution according to the information backtracking obtained by calculating the target solution. According to the principle of table filling, the following finding modes can be provided: if V [ i, s]=V[i-1,s]When the order is selected, the ith order information is not selected; if V [ i, s]=V[i-1,s-si]+νiNow, the description selects the ith order information, which is part of the optimal solution, and then returns to before selecting the order information, i.e., returns to V [ i-1, s-s ]i](ii) a And traversing until the i is equal to 0 in the above manner, and ending, so that all components of the optimal solution can be found. The following description is made with reference to the above examples.
1) Optimal solution V4, 8]10, and V4, 8]!=V[3,8]But V4, 8]=V[3,8-s4]+v4=V[3,3]+ 6-10, so the 4 th order information is selected, go back to V [3,8-s4]=V[3,3];
2) V [3,3] ═ V [2,3] ═ 4, so the 3 rd order information is not selected, return to V [2,3 ];
3)V[2,3]!=V[1,3]but V2, 3]=V[1,3-s2]+v2=V[1,0]+ 4-4, so the 2 nd order information is selected, back to V [1,3-s2]=V[1,0];
4) Since V [1,0] is equal to V [0,0] is equal to 0, the 1 st order information is not selected.
Thus, the 1 st and 4 th order information can be obtained to form the optimal solution of the objective function.
In an alternative embodiment, an additional array keep [ i, s ] may be added]If V [ i, s]Including the ith order information, then keep [ i, s ]]1, otherwise keep [ i, s]0. By the array keep [ i, s]Composition of the optimal solution sought: if keep [ n, s ]]1, then n ∈ T,by [ n-1, S-S ]n]Continuing to search; if keep [ n, s ]]When the value is equal to 0, then
Figure BDA0002380592170000131
By [ n-1, S ]]The search continues.
Step S208: and distributing corresponding inventory for the task information contained in the target solution according to the quantity of the articles in the task information. In the embodiment, according to the quantity of the articles specified in the order information, corresponding inventory quantities are respectively distributed for each order information contained in the target solution. With reference to the above example, 2 stocks are allocated to the 1 st order information, and 5 stocks are allocated to the 4 th order information, so that the stock allocation can obtain the maximum value (i.e. the total task weight is the maximum) under the constraint of the first stock amount.
In an actual business scene, some warehouses belong to a central warehouse, and some warehouses belong to a front warehouse below a certain central warehouse. In the second embodiment, when allocating the inventory, although the optimal solution of the knapsack problem is found by using a dynamic programming algorithm, the warehouse levels (i.e. the front warehouse and the central warehouse) are not considered, and the inventory allocation should be distinguished according to the specific conditions of the warehouses at all levels because the warehouse opening numbers, costs and the like at different levels are different. In order to more reasonably and effectively utilize all levels of warehouses, the third embodiment provides an improved inventory allocation method, which is as follows.
Fig. 4 is a schematic diagram illustrating an implementation principle of the inventory allocation method according to the third embodiment of the present invention. As shown in fig. 4, the inventory allocation method according to the third embodiment of the present invention is implemented by three parts, namely, order calculation, inventory calculation and performance rules. The order calculation part is used for acquiring a plurality of pieces of order information containing the target object received in each locking time period; matching the attribution area of the order information, marking task timeliness for each order information, and sequencing the order information according to the task timeliness; and generating task weight for the ordered order information according to the principle that the task time efficiency is high and the task weight is high.
An inventory calculation section for calculating a first inventory amount of the front bin and a second inventory amount of the center bin in each of the lock periods; dynamically consuming the first inventory, and if the first inventory has surplus, calculating the next locking time period for consumption; if the first inventory amount is insufficient, after the first inventory amount is consumed, the second inventory amount is dynamically consumed, and after the current locking time period is ended, the next locking time period is started. Wherein the central bin may be a Regional Distribution Center (RDC) and the front bin may be a Front Distribution Center (FDC). There are multiple FDCs under each RDC.
Fig. 4 illustrates the processing of an RDC and an FDC under the RDC in three locking periods T1, T2, and T3. The calculation modes of different RDCs are the same, and for the condition that a plurality of FDCs exist in one RDC, the first stock quantities of the plurality of FDCs and the quantity of the order information items are respectively summed and collected to the corresponding RDC.
The inventory calculation part can lock the inventory in the current time period, and does not occupy the inventory before the dynamic allocation of the inventory is finished; in the dynamic inventory allocation process, any condition that the ending condition is met occurs, and the inventory is finally occupied and enters the next locking time period. By the method, the problem that the order information with low task timeliness occupies the stock in advance, so that the order information with high task timeliness in the later period is not distributed in the stock, and the total task timeliness is reduced.
The fulfillment rules section includes overall fulfillment rules, FDC fulfillment rules, and RDC fulfillment rules. Overall fulfillment, i.e., the first inventory is consumed by preferentially placing FDC fulfillment rules during the current lockout period, followed by the second inventory being consumed in accordance with RDC fulfillment rules. The FDC fulfillment rules, i.e., the order information of higher task timeliness, consume the inventory in turn according to rules, such as selecting the order information that can obtain the greatest value for inventory allocation under the first inventory constraint. RDC fulfillment rules, i.e., order information for lower mission timeliness, consume inventory in turn by rule, where rules consume inventory in turn, such as by order time.
Fig. 5 is a schematic main flow chart of an inventory allocation method according to a third embodiment of the present invention. As shown in fig. 5, the inventory allocation method according to the third embodiment of the present invention mainly includes the following steps:
step S501: and acquiring a received task information set in the current locking time period, and screening a plurality of task information containing the target object from the task information set. In an embodiment, the task information is order information. The implementation process of this step is the same as step S201, and is not described herein again.
Step S502: and marking the task timeliness for the plurality of task information respectively according to the receiving address information in the task information and the set address timeliness relation. The implementation process of this step is the same as step S202, and is not described here again.
Step S503: and respectively generating task weights for the plurality of task information according to the task timeliness and the set weight generation rule. The implementation process of this step is the same as step S203, and is not described herein again.
Step S504: a first inventory amount of the target item in the front bin and a second inventory amount in the central bin during the current lockout period are calculated. And counting a first stock quantity of the target object contained in the front bin and a second stock quantity of the target object contained in the central bin in the current locking time period.
Step S505: and dynamically consuming the first stock quantity of the front bin until the first stock quantity is consumed when the set ending condition is met. The ending condition here may be any one of that the current lock period ends, that the first stock quantity is completely consumed, that all order information that needs to be processed in the current lock period is distributed to stock, and the like. According to the processing procedure of step S205 to step S208, the first stock quantity is dynamically consumed.
Step S506: judging the size of the total quantity of the articles corresponding to the first stock quantity and the plurality of task information, and executing the step S507 if the first stock quantity is larger than the total quantity of the articles; if the first inventory amount is less than the total quantity of items, executing step S508; if the first stock quantity is equal to the total quantity of the items, step S511 is performed. Judging whether the first inventory of the front warehouse is enough to be consumed this time, if so, executing step S507; if the current consumption is not enough, executing step S508; if the current consumption is just satisfied, step S511 is executed.
Fig. 6(a) -6 (c) are schematic diagrams respectively illustrating the cases where the first inventory amount (see the hatched portion in the figure) is equal to, greater than, and less than the total quantity of the items in the inventory allocation method according to the third embodiment of the present invention. For convenience of drawing, the order information in the figure only marks the item quantity of the target item in two orders, namely 211 an aging order (in a black part in the figure) and a next-day aging order (in a white part in the figure), and the two orders represent all the order information in the current locking time period.
Step S507: the difference between the first stock quantity and the total quantity of the items is added to the first stock quantity of the target item in the front bin in the next lockout period, and step S511 is performed. And if the first inventory of the front warehouse is enough to fulfill all the order information, the rest inventory is calculated into the first inventory of the next locking time period for consumption.
Step S508: and sequentially consuming the second inventory of the central warehouse according to the task generation time and the quantity of the articles of the unallocated task information. In an actual business scene, the stock of the front bin is relatively tense, so the optimal solution is obtained based on the dynamic planning knapsack problem of the second embodiment. Most of the stock of the central bin is quite abundant, and the second stock can be consumed in an early-time single-early distribution mode in the process of calculating the consumption of the second stock. The unassigned task information here is task information that has not been assigned inventory after the first inventory amount is completely consumed. The unallocated task information in the embodiment is unallocated order information.
In an embodiment, if the first stock quantity of the front warehouse is not enough to fulfill all the order information, the second stock quantity may be consumed in turn according to the order placing time (i.e., the task generating time) of the unallocated order information. It is understood that, when allocating the second inventory amount, the allocation may also be performed in a manner of solving the optimal solution according to the dynamic planning knapsack problem in the second embodiment.
Step S509: judging whether the second stock quantity is larger than the difference value between the first stock quantity and the total quantity of the goods, if so, executing the step S510; if it is greater than or equal to the difference, step S511 is performed. Judging whether the second stock quantity of the central warehouse is enough to perform the unallocated order information, if not, executing step S510; if sufficient fulfillment has not been assigned order information, step S511 is performed.
Step S510: and (4) counting the residual task information, updating the residual task information into the task information acquired in the next locking time period, and executing the step (S511). And the residual task information is the task information of the unallocated inventory after the second inventory of the central warehouse is completely consumed. The remaining task information in the embodiment is remaining order information. The remaining order information is not fulfilled within the current lock time period, and is added to the next lock time period for fulfillment.
Step S511: and waiting for the end of the current locking time period and entering the next locking time period. After the next lock time period comes, the steps S501 to S511 are repeatedly executed to perform stock allocation in accordance with the new order information, the new first stock quantity, and the new second stock quantity.
According to the inventory allocation method, the task weights are respectively generated for the plurality of task information received in the locking time period, so that the task combination with the largest total task weight and meeting the first inventory limit is selected from the plurality of task information according to the first inventory, and then the inventory is allocated to the task information in the task combination, so that the balance between the inventory and the timeliness is realized, and the whole task timeliness and the customer experience are improved; the problem that the task combination with the largest total task weight and the total article quantity smaller than or equal to the first inventory amount is selected from the task information is described as a knapsack problem, and the problem is solved based on a dynamic planning algorithm, so that the total task timeliness of the tasks which are preferentially allocated is maximized, and the overall timeliness in the order fulfillment process is improved.
FIG. 7 is a schematic diagram of the main modules of an inventory dispensing device according to an embodiment of the invention. As shown in fig. 7, the inventory distribution device 700 according to the embodiment of the present invention mainly includes:
the information obtaining module 701 is configured to obtain a plurality of task information including the target item received in the current locking time period. The task system receives task information in real time, and the inventory allocation device acquires all the task information received in the current locking time period from the task system through an application program interface, wherein the task information comprises task identification, receiving address information, article identification and article quantity. And screening the task information containing the target item from all the received task information according to the item identification.
A mark generating module 702, configured to mark task timeliness for the plurality of task information according to the relation between the shipping address information and the set address timeliness, and to generate task weights for the plurality of task information according to the task timeliness and the set weight generating rule. The address aging relation is theoretical aging corresponding to the province, city and county three-level address or the province, city and county street four-level address; the weight generation rule is that the higher the task timeliness of the task information is, the higher the assigned task weight is. The receiving address information comprises provincial, municipal, district and county streets, and the receiving address information is matched with the address timeliness relation, so that the task timeliness corresponding to the task information can be obtained. The task weight may be a numerical value, such as a task weight of 90 for the next day corresponding to the task information.
A calculation selection module 703, configured to calculate a first inventory amount of the target item in the warehouse within the current locking time period, and select a task combination that maximizes the total task weight and makes the total item number less than or equal to the first inventory amount from the plurality of task information. Counting a first stock of the target object in the warehouse within the current locking time period, taking the task information with the maximum total task weight selected from the plurality of task information as a target function, taking the total object quantity of the task information selected from the plurality of task information less than or equal to the first stock as a constraint condition, calculating a target solution of the target function by using a dynamic programming algorithm, and obtaining a composition of the target solution according to the backtracking of the target solution, wherein the composition of the target solution is the selected task combination.
And the inventory allocation module 704 is configured to allocate corresponding inventory to the task information in the task combination according to the quantity of the items in the task information. And respectively allocating corresponding inventory for each task information in the task combination according to the quantity of the articles specified in the task information.
In addition, the inventory allocation device 700 of the embodiment of the present invention may further include: an inventory depletion module and an information update module (not shown in FIG. 7). The inventory consumption module is used for calculating a second inventory amount of the target item in a central warehouse in the current locking time period and a difference value between the first inventory amount and the total item quantity corresponding to the plurality of task information; if the difference is larger than 0, updating the difference to a first inventory amount of the target article in the front bin in the next locking time period; and if the difference is less than 0, sequentially consuming the second inventory according to the task generation time and the quantity of the articles of the unallocated task information after the first inventory is allocated.
The information updating module is used for counting the residual task information after the second stock is completely consumed if the second stock is smaller than the difference value, and updating the residual task information into the task information acquired in the next locking time period; and the residual task information is the task information which is not distributed after the first inventory and the second inventory are completely consumed.
From the above description, it can be seen that the task weights are respectively generated for the plurality of task information received within the locking time period, so that the task combination with the largest total task weight and meeting the first inventory limit is selected from the plurality of task information according to the first inventory, and then the task information in the task combination is allocated to the inventory, so that the balance between the inventory and the aging is realized, and the overall task aging and the customer experience are improved.
Fig. 8 illustrates an exemplary system architecture 800 of an inventory allocation method or apparatus to which embodiments of the invention may be applied.
As shown in fig. 8, the system architecture 800 may include terminal devices 801, 802, 803, a network 804, and a server 805. The network 804 serves to provide a medium for communication links between the terminal devices 801, 802, 803 and the server 805. Network 804 may include various types of connections, such as wire, wireless communication links, or fiber optic cables, to name a few.
A user may use the terminal devices 801, 802, 803 to interact with a server 805 over a network 804 to receive or send messages or the like. The terminal devices 801, 802, 803 may have installed thereon various communication client applications, such as shopping applications, web browser applications, search applications, instant messaging tools, mailbox clients, social platform software, and the like.
The terminal devices 801, 802, 803 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 805 may be a server that provides various services, such as a background management server that processes order information sent by a user using a terminal device. The background management server can acquire order information, generate task weight, select task combination, allocate inventory and the like, and feed back a processing result (for example, the order is allocated and completed) to the terminal device.
It should be noted that the inventory allocation method provided in the embodiment of the present application is generally executed by the server 805, and accordingly, the inventory allocation apparatus is generally disposed in the server 805.
It should be understood that the number of terminal devices, networks, and servers in fig. 8 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
The invention also provides an electronic device and a computer readable medium according to the embodiment of the invention.
The electronic device of the present invention includes: one or more processors; a storage device for storing one or more programs that, when executed by the one or more processors, cause the one or more processors to implement the inventory allocation method of embodiments of the invention.
The computer readable medium of the present invention has stored thereon a computer program which, when executed by a processor, implements an inventory allocation method of embodiments of the present invention.
Referring now to FIG. 9, shown is a block diagram of a computer system 900 suitable for use in implementing an electronic device of an embodiment of the present invention. The electronic device shown in fig. 9 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 9, the computer system 900 includes a Central Processing Unit (CPU)901 that can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)902 or a program loaded from a storage section 908 into a Random Access Memory (RAM) 903. In the RAM 903, various programs and data necessary for the operation of the computer system 900 are also stored. The CPU 901, ROM 902, and RAM 903 are connected to each other via a bus 904. An input/output (I/O) interface 905 is also connected to bus 904.
The following components are connected to the I/O interface 905: an input portion 906 including a keyboard, a mouse, and the like; an output section 907 including components such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 908 including a hard disk and the like; and a communication section 909 including a network interface card such as a LAN card, a modem, or the like. The communication section 909 performs communication processing via a network such as the internet. The drive 910 is also connected to the I/O interface 905 as necessary. A removable medium 911 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 910 as necessary, so that a computer program read out therefrom is mounted into the storage section 908 as necessary.
In particular, the processes described above with respect to the main step diagrams may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program containing program code for performing the method illustrated in the main step diagram. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 909, and/or installed from the removable medium 911. The above-described functions defined in the system of the present invention are executed when the computer program is executed by a Central Processing Unit (CPU) 901.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes an information acquisition module, a tag generation module, a calculation selection module, and an inventory allocation module. The names of the modules do not limit the modules themselves in some cases, for example, the information acquisition module may also be described as a module for acquiring a plurality of task information including the target item received in the current locking period.
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise: acquiring a plurality of task information containing target articles received in a current locking time period; wherein the task information comprises the quantity of the articles and the receiving address information; marking task timeliness for the plurality of task information respectively according to the receiving address information and a set address timeliness relation, and generating task weights for the plurality of task information respectively according to the task timeliness and a set weight generation rule; calculating a first stock quantity of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object quantity to be less than or equal to the first stock quantity from the plurality of task information; and distributing corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information.
According to the technical scheme of the embodiment of the invention, the task weight is respectively generated for the plurality of task information received in the locking time period, so that the task combination with the maximum total task weight and meeting the first inventory limit is selected from the plurality of task information according to the first inventory, and then the task information in the task combination is distributed to the inventory, thereby realizing the balance between the inventory and the timeliness and improving the overall task timeliness and the customer experience.
The product can execute the method provided by the embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method. For technical details that are not described in detail in this embodiment, reference may be made to the method provided by the embodiment of the present invention.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. An inventory allocation method, comprising:
acquiring a plurality of task information containing target articles received in a current locking time period; wherein the task information comprises the quantity of the articles and the receiving address information;
marking task timeliness for the plurality of task information respectively according to the receiving address information and a set address timeliness relation, and generating task weights for the plurality of task information respectively according to the task timeliness and a set weight generation rule;
calculating a first stock quantity of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object quantity to be less than or equal to the first stock quantity from the plurality of task information;
and distributing corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information.
2. The method according to claim 1, wherein selecting a task combination from the plurality of task information that maximizes a total task weight and has a total item quantity equal to or less than the first inventory quantity comprises:
establishing an objective function; the objective function is task information with the largest total task weight selected from the plurality of task information, and the total task weight is the sum of task weights corresponding to the selected task information;
constructing constraint conditions; the constraint condition is that the total quantity of articles of the task information selected from the plurality of task information is less than or equal to the first inventory quantity, and the total quantity of articles is the sum of the quantities of articles corresponding to the selected task information;
and solving a target solution of the target function under the limitation of the constraint condition by using a dynamic programming algorithm so as to obtain the composition of the target solution according to the backtracking of the target solution, wherein the composition of the target solution forms the selected task combination.
3. The method of claim 2, wherein solving the target solution of the objective function under the constraint of the constraint using a dynamic programming algorithm comprises:
describing the structural characteristics of a target solution; wherein the structural features are: the target solution of the original problem comprises the target solutions of the sub-problems thereof; selecting a task combination which enables the total task weight to be the maximum and enables the total article quantity to be less than or equal to the first stock quantity from the plurality of task information; the subproblems are task combinations which enable the total task weight to be maximum and enable the total article number to be less than or equal to the current inventory amount are selected from the previous i task information;
determining the recurrence relation of the original problem and the subproblems, and calculating the target solution of the subproblems in a bottom-up mode; wherein the recurrence relation comprises: if the current inventory amount is less than the quantity of the articles corresponding to the ith task information, the total task weight corresponding to the first i task information is equal to the total task weight corresponding to the first i-1 task information; and
and if the current inventory amount is more than or equal to the quantity of the articles corresponding to the ith task information, the total task weight corresponding to the first i task information is equal to the larger value of the total task weight corresponding to the selected or unselected ith task information.
4. The method of claim 2, wherein obtaining the composition of the target solution according to the target solution backtracking comprises:
according to a set searching principle, starting from a task information serial number corresponding to the target solution and the current stock, and ending when traversing to the task information serial number is 0, so as to obtain the composition of the target solution; wherein, the searching principle is as follows:
if the total task weight corresponding to the first i task information under the current inventory is equal to the total task weight corresponding to the first i-1 task information under the current inventory, the target solution does not contain the ith task information;
if the total task weight corresponding to the first i task information under the current inventory is equal to the sum of the total task weight corresponding to the first i-1 task information under the new inventory and the task weight corresponding to the ith task information, the target solution contains the ith task information; and the new stock quantity is the difference between the current stock quantity and the quantity of the articles corresponding to the ith task information.
5. The method of claim 1, wherein the address aging relationship is: theoretical timeliness corresponding to the three-level address of the province, city and county or the four-level address of the street of the province, city and county;
the weight generation rule is as follows: the higher the task age of the task information is, the higher the assigned task weight is.
6. The method of claim 1, wherein the warehouse is a front-end warehouse; the method further comprises the following steps:
calculating a second inventory amount of the target object in a central warehouse in the current locking time period and a difference value between the first inventory amount and the total object quantity corresponding to the plurality of task information;
if the difference is larger than 0, updating the difference to a first inventory amount of the target article in the front bin in the next locking time period;
and if the difference is less than 0, sequentially consuming the second inventory according to the task generation time and the quantity of the articles of the unallocated task information after the first inventory is allocated.
7. The method of claim 6, further comprising:
if the second inventory is less than the difference value, counting the residual task information after the second inventory is completely consumed, and updating the residual task information into the task information acquired in the next locking time period; and the residual task information is the task information which is not distributed after the first inventory and the second inventory are completely consumed.
8. An inventory allocation device, comprising:
the information acquisition module is used for acquiring a plurality of task information containing the target object received in the current locking time period; wherein the task information comprises the quantity of the articles and the receiving address information;
the mark generation module is used for marking task timeliness for the plurality of task information respectively according to the relation between the receiving address information and the set address timeliness, and generating task weights for the plurality of task information respectively according to the task timeliness and the set weight generation rule;
the calculation selection module is used for calculating a first stock of the target object in the warehouse in the current locking time period, and selecting a task combination which enables the total task weight to be maximum and enables the total object number to be less than or equal to the first stock from the plurality of task information;
and the inventory allocation module is used for allocating corresponding inventory for the task information in the task combination according to the quantity of the articles in the task information.
9. An electronic device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-7.
10. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-7.
CN202010081878.8A 2020-02-06 2020-02-06 Inventory allocation method and device Pending CN113222490A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010081878.8A CN113222490A (en) 2020-02-06 2020-02-06 Inventory allocation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010081878.8A CN113222490A (en) 2020-02-06 2020-02-06 Inventory allocation method and device

Publications (1)

Publication Number Publication Date
CN113222490A true CN113222490A (en) 2021-08-06

Family

ID=77085635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010081878.8A Pending CN113222490A (en) 2020-02-06 2020-02-06 Inventory allocation method and device

Country Status (1)

Country Link
CN (1) CN113222490A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113627856A (en) * 2021-08-18 2021-11-09 北京沃东天骏信息技术有限公司 Inventory distribution method and device
CN116280512A (en) * 2023-02-06 2023-06-23 荣耀终端有限公司 Method and device for generating object placement mode

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108960691A (en) * 2017-05-18 2018-12-07 北京京东尚科信息技术有限公司 The method and apparatus of determination article inventory for server system
CN109359759A (en) * 2018-08-07 2019-02-19 深圳市易达云科技有限公司 Intelligence divides storehouse method, equipment and computer readable storage medium
CN110197350A (en) * 2018-02-26 2019-09-03 北京京东尚科信息技术有限公司 A kind of article warehouse-out method and device
CN110363476A (en) * 2019-07-08 2019-10-22 上海天籍信息科技有限公司 Warehousing allocation processing method and device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108960691A (en) * 2017-05-18 2018-12-07 北京京东尚科信息技术有限公司 The method and apparatus of determination article inventory for server system
CN110197350A (en) * 2018-02-26 2019-09-03 北京京东尚科信息技术有限公司 A kind of article warehouse-out method and device
CN109359759A (en) * 2018-08-07 2019-02-19 深圳市易达云科技有限公司 Intelligence divides storehouse method, equipment and computer readable storage medium
CN110363476A (en) * 2019-07-08 2019-10-22 上海天籍信息科技有限公司 Warehousing allocation processing method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曾强;赵文帅;: "备件仓储管理新模式", 中外酒业・啤酒科技, no. 07, pages 41 - 44 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113627856A (en) * 2021-08-18 2021-11-09 北京沃东天骏信息技术有限公司 Inventory distribution method and device
CN116280512A (en) * 2023-02-06 2023-06-23 荣耀终端有限公司 Method and device for generating object placement mode
CN116280512B (en) * 2023-02-06 2023-09-22 荣耀终端有限公司 Method and device for generating object placement mode

Similar Documents

Publication Publication Date Title
CN107845012B (en) Order processing method and device
CN110751497A (en) Commodity replenishment method and device
CN111932161B (en) Vehicle scheduling method and device for articles, electronic equipment and computer medium
CN111932189B (en) Inventory related information display method, device, electronic equipment and computer medium
CN111401619A (en) Purchase order processing method and device, electronic equipment and storage medium
CN113259144A (en) Storage network planning method and device
CN109934427B (en) Method and device for generating item distribution scheme
CN109961306B (en) Method and device for distributing inventory of articles
CN110633928A (en) Commodity inverse matching decision method and device
CN112215530A (en) Bin selection method and device
CN112884405A (en) Inquiry system and scheduling method thereof
CN110689157A (en) Method and device for determining call relation
CN114118888A (en) Order ex-warehouse method and device
CN113222490A (en) Inventory allocation method and device
CN110555641A (en) storage allocation method and device
CN112785025B (en) Warehouse layout method and device
CN112784212B (en) Inventory optimization method and device
CN113650997A (en) Method and device for positioning articles in warehouse-out process
CN116629495A (en) Method and device for outputting information
CN113780914A (en) Inventory allocation method and device
CN109902847B (en) Method and device for predicting amount of orders in branch warehouse
CN113554380A (en) Method and device for positioning articles in warehouse-out process
CN113780611A (en) Inventory management method and device
CN112085441A (en) Information generation method and device, electronic equipment and computer readable medium
CN112132642A (en) Order combination method and device based on multi-objective optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination