A tobacco product-based logistics warehouse intelligent scheduling system
Patent Information
- Application Number
- CN202611183415.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-05
- Publication Date
- 2026-10-30
AI Technical Summary
固定库存下限难以表征烟仓预计耗尽时刻、托盘预计到达时刻和搬运资源占用之间的时序关系,容易导致分拣线缺烟等待、托盘提前拆分和尾盘重复存取,进而影响仓储补货调度与分拣作业节拍的协同控制
本发明通过将订单波次数据转换为分拣烟仓件烟需求时序,并结合当前搬运任务队列进行离散事件仿真,使补货判断由固定库存下限转为基于烟仓预计耗尽时刻和补货预计到达时刻的时序判断;进一步结合尾盘货位占用状态、候选库存托盘路径关系和当前任务顺序构建补货调度状态,使托盘选择、补货口占用和尾盘回库对搬运资源的影响在同一调度过程中被表达;再通过图结构状态编码和策略排程生成补货搬运任务队列,有利于降低分拣线缺烟等待、减少托盘提前拆分和尾盘重复存取,提高仓储补货调度与分拣作业节拍的协同程度。
Smart Images

Figure CN123014531A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of logistics scheduling technology, specifically an intelligent scheduling system for logistics and warehousing based on tobacco products. Background Technology
[0002] In tobacco commercial logistics and distribution centers, warehousing and sorting operations typically use inventory pallets for inbound registration and in-warehouse handling, with sorting bins serving as buffer units for cigarette supply to the sorting line. Once a cigarette order enters wave processing, the warehouse management system needs to generate replenishment tasks based on the inventory status of the sorting bins and transport the inventory pallets to the corresponding replenishment points using handling equipment. Existing warehouse scheduling methods mostly trigger replenishment tasks based on the lower limit of cigarette warehouse inventory and arrange inventory pallets for outbound processing according to the task generation sequence. This approach can maintain cigarette supply to the sorting line when the order structure is stable and the handling load is balanced.
[0003] In actual delivery, the demand for specific product types within an order wave is time-concentrated, and the rate of inventory depletion in the sorting tobacco warehouse varies with the order release cycle. The arrival time of replenished inventory pallets is also affected by the current handling task queue, the occupancy status of the replenishment gate, and the return of last-minute pallets to the warehouse. A fixed lower inventory limit is insufficient to represent the temporal relationship between the expected depletion time of the tobacco warehouse, the expected arrival time of pallets, and the occupancy of handling resources. This can easily lead to waiting times for tobacco on the sorting line, premature pallet splitting, and repeated storage and retrieval of last-minute pallets, thereby affecting the coordinated control of warehouse replenishment scheduling and sorting operation cycle. Summary of the Invention
[0004] The present invention aims to solve at least one of the technical problems existing in the prior art; to this end, the present invention proposes an intelligent scheduling system for logistics and warehousing based on tobacco products.
[0005] To achieve the above objectives, the present invention provides an intelligent logistics and warehousing scheduling system based on tobacco products, comprising: The generation module is used to generate the demand sequence for sorting cigarettes in the cigarette warehouse based on order wave data; and to generate the current handling task queue based on the warehouse operation execution record. The simulation module is used to write the demand sequence of cigarettes in the sorting cigarette warehouse into a discrete event simulation process with the current handling task queue as the event source, and generate the inventory pallet replenishment lead time. The correction module is used to correct the inventory pallet replenishment lead time based on the occupancy status of the end-of-season inventory and generate the replenishment scheduling status represented by graph-structured data. The scheduling module is used to encode the replenishment scheduling status through a graph neural network and generate pallet replenishment schedules through a reinforcement learning policy network. The update module is used to convert the pallet replenishment schedule into a replenishment handling task queue, and to incorporate the last pallet return tasks generated based on the number of pre-outbound cigarette items and the number of cigarette items in the inventory pallets corresponding to the pallet replenishment schedule into the replenishment handling task queue, thus obtaining an updated handling task queue; the updated handling task queue is used to update the current handling task queue of the discrete event simulation process.
[0006] Compared with the prior art, the beneficial effects of the present invention are: This invention converts order wave data into a time-series of cigarette demand in the sorting warehouse and performs discrete event simulation in conjunction with the current handling task queue. This transforms replenishment judgment from a fixed inventory lower limit to a time-series judgment based on the expected depletion time of the cigarette warehouse and the expected arrival time of replenishment. Furthermore, it constructs a replenishment scheduling state by combining the occupancy status of the end-of-line pallet, the path relationship of candidate inventory pallets, and the current task sequence. This allows the impact of pallet selection, replenishment port occupancy, and end-of-line pallet return on handling resources to be expressed in the same scheduling process. Finally, it generates a replenishment handling task queue through graph structure state encoding and strategy scheduling. This helps reduce cigarette shortage waiting time on the sorting line, reduce premature pallet splitting and repeated storage and retrieval of end-of-line pallets, and improve the coordination between warehouse replenishment scheduling and sorting operation cycle time. Attached Figure Description
[0007] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0008] Figure 1 This is a block diagram of the system of the present invention. Detailed Implementation
[0009] The technical solution of the present invention will be clearly and completely described below with reference to the embodiments. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0010] Please see Figure 1This embodiment provides an intelligent logistics and warehousing scheduling system based on tobacco products. This system is communicatively connected to an order management system, a warehouse management system, a sorting control system, an inventory pallet management system, and a handling equipment scheduling system. The order management system provides order wave data; the warehouse management system provides warehouse operation execution records, end-of-line pallet location occupancy status, and packaging conversion relationships; the sorting control system provides sorting tobacco warehouse inventory data, product specification warehouse correspondence, replenishment port occupancy status, and replenishment port operation parameters; the inventory pallet management system provides inventory pallet status data; and the handling equipment scheduling system provides replenishment access path data, location path data, and handling equipment status data. The handling equipment status data includes the handling equipment identifier, current location, equipment availability time, and rated operating speed. All of the above data is provided by the corresponding business system at the current scheduling time, and the system performs a scheduling calculation based on the current scheduling time. The system includes: The generation module 101 is used to generate the demand sequence of cigarettes in the sorting warehouse based on order wave data; and to generate the current handling task queue based on the warehouse operation execution record. Simulation module 102 is used to write the demand sequence of cigarettes in the sorting cigarette warehouse into a discrete event simulation process with the current handling task queue as the event source, and generate the inventory pallet replenishment lead time. The correction module 103 is used to correct the inventory pallet replenishment lead time based on the end-of-season pallet occupancy status and generate the replenishment scheduling status represented by graph structure data. The scheduling module 104 is used to encode the replenishment scheduling status through a graph neural network and generate a pallet replenishment schedule by a reinforcement learning policy network. The update module 105 is used to convert the pallet replenishment schedule into a replenishment handling task queue, and to incorporate the last pallet return task generated based on the number of pre-outbound cigarette items and the number of cigarette items in the inventory pallet corresponding to the pallet replenishment schedule into the replenishment handling task queue, thereby obtaining an updated handling task queue; the updated handling task queue is used to update the current handling task queue of the discrete event simulation process.
[0011] Specifically, the generation module 101 receives order wave data and warehousing operation execution records. Order wave data includes wave identifier, wave release time, order detail identifier, cigarette specifications, required quantity, and required unit. Warehouse operation execution records include handling task identifier, handling equipment identifier, inventory pallet identifier, task start point, task end point, task status, estimated completion time, replenishment port number, handling path identifier, and operation sequence. The generation module 101 uses the wave release time as the demand occurrence time and the unreleased tasks in the warehousing operation execution records as the current workload, forming demand-side data and execution-side data respectively.
[0012] Specifically, the step of generating the demand sequence for sorting cigarettes in the cigarette warehouse based on order wave data includes: Cigarette specification requirements are extracted from order wave data according to the release time of each wave, forming a specification requirement time sequence; Specifically, the generation module 101 arranges order details according to the release time of each wave. It sums the demand quantities of order details belonging to the same cigarette specification and with the same demand unit within the same release time wave, obtaining the cigarette specification demand recorded in that demand unit. The temporal sequence of each cigarette specification demand is preserved, forming a specification demand time sequence. The specification demand time sequence includes the cigarette specification, release time wave, demand quantity, and demand unit. This process transforms the discrete order details in the order wave into a demand sequence organized by cigarette specification and time, facilitating subsequent inventory deduction and replenishment decisions based on the sorting warehouse.
[0013] Based on the correspondence between product specifications and cigarette warehouses and the conversion relationship between packaging, the product specification demand sequence is converted into the sorting cigarette warehouse package demand sequence; Further, the generation module 101 reads the packaging conversion relationship, which records the conversion relationships between strips, boxes, and cases, and records them separately according to cigarette specifications. The generation module 101 multiplies the demand quantity recorded by each demand unit by the conversion factor from that demand unit to a case, to obtain the number of cases of each cigarette specification at the corresponding release time. For example, one case corresponds to... When converting from item to piece, the conversion factor is: .
[0014] The generation module 101 reads the correspondence between cigarette specifications and sorting warehouses to determine the supply correspondence between cigarette specifications and sorting warehouses. When the same cigarette specification is supplied by only one sorting warehouse, the warehouse allocation coefficient for that sorting warehouse is... When the same cigarette specification is supplied by multiple sorting bins, the allocation coefficient of each sorting bin is determined based on the sorting line activation status, the sorting bin activation status, and the sorting task configuration data. The sum of the allocation coefficients for each sorting bin corresponding to the same cigarette specification is... The generation module 101 calculates the required number of cigarettes for sorting the cigarette bins according to the following formula: ; In the formula, For sorting tobacco bins At the moment of wave release The number of cigarettes required; Cigarette specifications At the moment of wave release The number of cigarettes required; Cigarette specifications At the moment of wave release Distributed to the sorting bin The allocation coefficient for the same cigarette brand. Collection of tobacco sorting bins ,satisfy: ; Therefore, the demand for the same cigarette specification is allocated among multiple sorting warehouses according to the warehouse allocation coefficient, and will not be counted repeatedly in multiple sorting warehouses. The timing sequence of cigarette demand in a sorting warehouse includes the sorting warehouse identifier, cigarette specification, wave release time, quantity of cigarettes required, replenishment port number, and sorting line number. This process directly links order demand with the cigarette supply relationship of the sorting warehouses, which can avoid the inflated demand in scenarios with multiple cigarette warehouses.
[0015] Among them, the correspondence between the cigarette specifications and the sorting cigarette warehouses is recorded, and the replenishment port number and sorting line number corresponding to the sorting cigarette warehouses are also recorded.
[0016] Specifically, the correspondence between product specification cigarette warehouses can also record the distribution relationship between warehouses. The replenishment port number is used to determine the destination location of the handling when replenishing inventory pallets; the sorting line number is used to determine the sorting operation area to which the sorting cigarette warehouse belongs. The generation module 101 synchronously retains the replenishment port number and sorting line number in the cigarette demand sequence of the sorting cigarette warehouse, so that the subsequent simulation process can locate the replenishment port and the range of handling resources according to the sorting cigarette warehouse.
[0017] The generation module 101 also generates a current handling task queue based on the warehouse operation execution records. Specifically, the generation module 101 retains handling tasks with the status of pending execution, in execution, or arrived but not released; where "arrived but not released" means that the handling action has reached the task endpoint, but the handling equipment, handling path, or replenishment port has not yet been released. Handling tasks that have been completed and whose related resources have all been released are not written into the current handling task queue. The generation module 101 then organizes the above handling tasks according to the handling equipment identifier, expected completion time, and operation sequence to generate the current handling task queue. The current handling task queue is generated from existing warehouse operation execution records and does not depend on newly generated replenishment handling tasks.
[0018] Specifically, the simulation module 102 receives the demand sequence of cigarettes in the sorting cigarette warehouse and the current handling task queue, and reads the sorting cigarette warehouse inventory data, the correspondence between cigarette specifications and warehouses, the replenishment access path data, and the handling equipment status data. The sorting cigarette warehouse inventory data includes the sorting cigarette warehouse identifier, cigarette specifications, the current inventory quantity of cigarettes in a package, and the inventory record time; the replenishment access path data includes the warehouse outbound handover point, the replenishment port number, the replenishment access path identifier, and the replenishment access time. The discrete event simulation process uses the current handling task queue as the event source and processes the sorting cigarette warehouse inventory deduction event, the current handling task occupancy event, the expected replenishment arrival event, and the handling resource release event in chronological order.
[0019] Specifically, the process of writing the timing sequence of cigarette demand in the sorting cigarette warehouse into a discrete event simulation process with the current handling task queue as the event source includes: Subtract the sorting cigarette warehouse inventory data from the demand for cigarettes in the sorting cigarette warehouse to form a demand-driven inventory change curve for the sorting cigarette warehouse. Specifically, simulation module 102 starts from the inventory record time and, along each demand time node of the cigarette demand sequence in the sorting cigarette warehouse, sequentially deducts the corresponding demand quantity of cigarettes in the sorting cigarette warehouse from the current cigarette inventory quantity to obtain the remaining quantity of cigarettes at each demand time node. Simulation module 102 uses the demand time nodes as the horizontal time sequence and the remaining quantity of cigarettes as the inventory status value to form a demand-driven inventory change curve for the sorting cigarette warehouse. This curve reflects the consumption process of the sorting cigarette warehouse inventory over time under the current order wave release conditions.
[0020] The estimated arrival time of replenishment is determined based on the current handling task queue, and the estimated arrival time of replenishment is inserted into the inventory change curve of the sorting tobacco warehouse; Furthermore, the number of remaining cigarettes is less than or equal to the demand timeframe. The sorting bin for cigarettes was determined to have a replenishment need; the number of remaining cigarettes was consistently greater than [a certain quantity]. For the sorting tobacco warehouse, no replenishment arrival event is generated in this round of scheduling. For sorting tobacco warehouses with replenishment needs, simulation module 102 determines the access time of the handling resource pool and the availability time of the replenishment port based on the current handling task queue.
[0021] The set of handling equipment eligible for replenishment on this sorting line is determined by the equipment configuration of the handling equipment scheduling system. If a handling device in the set has incomplete tasks in the current handling task queue, the estimated completion time of those tasks is used as the device's available time; otherwise, the current scheduling time is used. The access time for the handling resource pool is the earliest available time among all devices in this set. ; In the formula, For sorting tobacco bins The corresponding transport resource pool can be accessed at any time; This is a collection of handling equipment that can participate in replenishing the sorting line where the sorting tobacco warehouse is located; For handling equipment The available time for the equipment. This time only indicates the time window during which the material handling resource pool can accept new replenishment requests; no specific material handling equipment has been selected.
[0022] The method for determining the availability time of the replenishment port is as follows: The replenishment port number corresponding to the sorting tobacco warehouse is read from the product specification warehouse correspondence; if there are incomplete handling tasks in the current handling task queue with the replenishment port as the task endpoint or occupying the replenishment port, the latest estimated completion time is taken; if there are no such tasks, the current scheduling time is taken. The simulation module 102 takes the maximum value between the access time of the handling resource pool and the availability time of the replenishment port as the access time of the replenishment demand, and adds the replenishment access time from the warehouse outbound handover point read from the replenishment access path data to the replenishment port to obtain the estimated arrival time of the replenishment. The simulation module 102 generates an estimated arrival event of the replenishment based on the estimated arrival time of the replenishment, and inserts the estimated arrival event of the replenishment into the inventory change curve of the sorting tobacco warehouse in chronological order. This process, before binding specific inventory pallets and specific handling equipment, first uses the current task load to form an access time window, which can avoid prematurely occupying specific equipment resources that have not yet been determined.
[0023] Extract the expected depletion time of the sorting tobacco warehouse from the inventory change curve of the expected arrival event of the inserted replenishment, and generate the inventory pallet replenishment lead time based on the expected depletion time of the sorting tobacco warehouse; Specifically, the simulation module 102 identifies when the number of remaining cigarettes is first less than or equal to the inventory change curve of the sorting cigarette warehouse along the expected arrival event of the insertion replenishment. The demand time point is used as the expected depletion time of the sorting cigarette warehouse, and the inventory pallet replenishment lead time is generated based on the time relationship between the expected arrival time of replenishment and the expected depletion time of the sorting cigarette warehouse. This time relationship can be represented by the difference between the two: the difference is less than... This indicates that the expected arrival time of replenishment is earlier than the expected depletion time of the sorting tobacco warehouse; the difference is equal to This indicates that the two are the same; the difference is greater than 1. This indicates that the expected arrival time of replenishment is later than the expected time when the sorting tobacco warehouse is depleted.
[0024] In the aforementioned inventory pallet replenishment lead time, the expected depletion time of the sorting tobacco warehouse, the expected arrival time of replenishment, the cigarette type, and the sorting tobacco warehouse identifier are recorded, and the inventory pallet replenishment lead time is characterized by the time relationship between the expected arrival time of replenishment and the expected depletion time of the sorting tobacco warehouse.
[0025] Specifically, each inventory pallet replenishment lead time record also records the available time for replenishment requests, but does not record candidate inventory pallet identifiers or pre-determine specific handling equipment. This record serves as input data for subsequent candidate inventory pallet screening and route correction.
[0026] Furthermore, the correction module 103 receives the inventory pallet replenishment lead time and reads the inventory pallet status data, the occupancy status of the end-of-line pallet location, the location path data, the current handling task queue, and the replenishment port operation parameters. The inventory pallet status data includes the inventory pallet identifier, cigarette specifications, the quantity of cigarettes in the pallet, the pallet location, the pallet status, and the outbound status; the end-of-line pallet location occupancy status includes the end-of-line pallet location identifier, the occupancy status, and the receive status; the location path data includes the replenishment handling path from the inventory pallet location to the replenishment port, the end-of-line pallet return path from the replenishment port to the end-of-line pallet location, the handling path identifier, and the handling distance; the replenishment port operation parameters include the unloading time at the replenishment port and the cigarette handling rate for transferring cigarettes into the replenishment port.
[0027] Specifically, the adjustment of inventory pallet replenishment lead time based on the occupancy status of end-of-day inventory includes: The corresponding cigarette specifications and the expected depletion time of the sorting tobacco warehouse are extracted from the inventory pallet replenishment lead time, and the inventory pallets corresponding to the cigarette specifications are screened from the inventory pallet status data to form a candidate inventory pallet set; Specifically, the correction module 103 reads the replenishment lead time of each inventory pallet, extracting the cigarette specifications, sorting bin identifier, and expected depletion time of the sorting bin. Based on the cigarette specifications, it queries the inventory pallet status data, selecting pallets with the same specifications and a "ready to ship" status, and adds them to the candidate inventory pallet set. Pallets with statuses of frozen, occupied during inventory checks, locked by quality inspection, or unavailable for shipping are not added to the candidate inventory pallet set. Each record in the candidate inventory pallet set uses the inventory pallet identifier, quantity of cigarettes on the pallet, pallet location, pallet status, and "ready to ship" status from the inventory pallet status data. This process limits replenishment needs to inventory pallets that can actually be shipped, avoiding the inclusion of unavailable pallets in scheduling calculations.
[0028] Write the occupancy status of the end-of-life pallet locations into the location path data corresponding to the candidate inventory pallet set, and correct the inventory pallet replenishment lead time based on the handling distance relationship corresponding to the location path data to obtain the corrected inventory pallet replenishment lead time. Specifically, the correction module 103 reads the replenishment handling path from the pallet location of the candidate inventory pallet to the corresponding replenishment port and the return path from the replenishment port to each end-of-line pallet location, forming the location path data corresponding to the candidate inventory pallet set, and writes the end-of-line pallet location occupancy status into the end-of-line pallet return path data. End-of-line pallet locations with an occupancy status of "occupied" or an unacceptable status of "unacceptable" are marked as unacceptable return paths; other end-of-line pallet return paths are marked as acceptable paths.
[0029] The quantity of cigarettes triggered by replenishment is determined by the cumulative demand sequence of cigarettes in the sorting warehouse within the replenishment window. The replenishment window starts at the current scheduling time and ends at the estimated depletion time of the sorting warehouse or the next replenishment access time for the same product specification. The next replenishment access time for the same product specification refers to the earliest estimated completion time of any in-transit replenishment handling task in the current handling task queue that has this replenishment port as its task endpoint and carries the same cigarette specification as the sorting warehouse. If no such task exists, the endpoint is the estimated depletion time of the sorting warehouse. The estimated quantity of cigarettes to be shipped out is the minimum of the quantity of cigarettes in the candidate inventory pallet and the quantity of cigarettes triggered by replenishment in the sorting warehouse within the replenishment window. Candidate inventory pallets with a quantity of cigarettes in inventory greater than the estimated quantity of cigarettes to be shipped out are marked as involving end-of-line path association; those that are equal are marked as not involving end-of-line path association. This quantity and this mark are only used for path correction and resource occupancy estimation. When updating module 105 generates end-of-line return tasks, the pre-shipment quantity of cigarettes in the pallet replenishment schedule is used as the standard.
[0030] The correction module 103 determines the pallet outbound preparation completion time for candidate inventory pallets. The pallet outbound preparation completion time is the current scheduling time plus the pallet outbound preparation time. The pallet outbound preparation time is determined by the operation occupancy status, inventory registration status, and outbound availability status of the pallet's storage location. When the pallet is in an outbound availability state and its storage location is not occupied, the pallet outbound preparation time is [calculated as follows]. The replenishment start time for the corresponding sorting tobacco warehouse of the candidate inventory pallet is taken as the maximum value between the available access time of the replenishment demand recorded in the inventory pallet replenishment lead time and the pallet outbound preparation completion time. This process ensures that the macro replenishment access time and the outbound preparation status of the specific candidate pallet are consistent in time.
[0031] For candidate inventory pallets involving end-of-line routing, the top-ranked end-of-line return route from the acceptable routes is selected in ascending order of handling distance, and its handling distance is used as the end-of-line return distance for the handling equipment. For pallets not involving end-of-line routing, the end-of-line return distance for the handling equipment is recorded as... The transport distance of the replenishment transport path is used to correct the estimated arrival time of replenishment, and the transport distance of the end-of-line pallet return path is used to correct the release time of the transport equipment. The corrected estimated arrival time of replenishment is the replenishment start time plus the replenishment transport travel time. The replenishment transport travel time is the transport distance from the pallet location to the corresponding replenishment port divided by the estimated operating speed. The estimated operating speed is the average of the rated operating speeds of all transport equipment in the set of transport equipment that can participate in replenishment on this sorting line, or the standard operating speed preset according to the type of transport equipment.
[0032] It should be noted that the distance for returning the last pallet to the warehouse is not included in the revised estimated arrival time for replenishment. The revised estimated arrival time for replenishment represents the time when the inventory pallet arrives at the replenishment port; the release time of the handling equipment represents the time when the handling equipment can be re-accessed after completing replenishment and the necessary return of the last pallet to the warehouse. The method for determining the release time of the handling equipment is as follows: for candidate inventory pallets not involved in the last pallet path association, the revised estimated arrival time for replenishment is taken plus the unloading time at the corresponding replenishment port; for those involved in the last pallet path association, the time for transferring cigarette packs and the travel time for the last pallet to the warehouse are added to the above. The time for transferring cigarette packs is the estimated number of cigarette packs to be dispatched divided by the cigarette pack transfer processing rate at the corresponding replenishment port; the travel time for the last pallet to the warehouse is the handling distance from the replenishment port to the selected location that can receive the last pallet divided by the estimated running speed. The correction module 103 recalculates the difference between the corrected estimated arrival time of replenishment and the estimated depletion time of the sorting tobacco warehouse, updates the time relationship in the inventory pallet replenishment lead time, and writes the release time of the handling equipment into the resource occupancy record of the corresponding candidate inventory pallet, thus obtaining the corrected inventory pallet replenishment lead time. This process distinguishes between material arrival time and equipment release time, avoiding the premature inclusion of return time into the replenishment arrival time. It should be understood that the selected end-of-line pallet return path here is only used for the feature expression and resource estimation of the replenishment scheduling status; the actual end-of-line pallet return path is independently generated by the subsequent update module 105.
[0033] Based on the corrected inventory pallet replenishment lead time, candidate inventory pallet set, and current handling task queue, a graph structure data is constructed to generate the replenishment scheduling status represented by the graph structure data; Specifically, the correction module 103 organizes the corrected inventory pallet replenishment lead time, candidate inventory pallet set, and current handling task queue into graph structure data. The cigarette specification node records the cigarette specification and the quantity of cigarettes required per case within the replenishment window; the inventory pallet node records the inventory pallet identifier, the quantity of cigarettes per case on the pallet, the pallet's location, and its availability for shipment; the sorting warehouse node records the sorting warehouse identifier, the estimated depletion time of the sorting warehouse, the replenishment port number, and the sorting line number; and the handling task node records the handling task identifier, handling equipment identifier, task endpoint, estimated completion time, and operation sequence. For idle handling equipment that is not currently assigned a handling task, the correction module 103 generates a virtual handling task node based on the handling equipment status data. The virtual handling task node's task start and end points are both configured to the current location of the idle handling equipment, the estimated completion time is configured to the current scheduling time, and the operation sequence is configured to be the first priority. Thus, the status of idle handling equipment is entered into the graph structure data through the handling task node, without needing to add a new graph structure node type.
[0034] The supply relationship edge connects the cigarette specification node and the sorting cigarette warehouse node, recording the warehouse allocation coefficient; the pallet path edge connects the inventory pallet node and the sorting cigarette warehouse node, recording the corrected estimated arrival time of replenishment, the replenishment start time, the replenishment handling distance, the release time of the handling equipment, the handling path identifier, and the tail pallet path association marker; the task sequence edge connects the handling task nodes belonging to the same handling equipment or occupying the same replenishment port, recording the order of operations. This process uses a graph structure to simultaneously express demand, inventory, path, and task sequence, enabling the subsequent scheduling network to read multiple types of scheduling constraints within the same state space.
[0035] In the graph structure data, node data records cigarette specifications, inventory pallets, sorting cigarette bins, and handling tasks, while edge data records cigarette supply relationships, pallet paths, and task sequences.
[0036] Specifically, the correction module 103 outputs the replenishment scheduling status in graph structure data. The replenishment scheduling status carries the candidate inventory pallet set, the corrected inventory pallet replenishment lead time, the current handling task queue, and the status of idle handling equipment in the above-mentioned node data and edge data, for the scheduling module 104 to perform status encoding.
[0037] Furthermore, the scheduling module 104 receives the replenishment scheduling status and reads the current handling task queue, replenishment port occupancy status, and replenishment port operation parameters. The replenishment port occupancy status includes the replenishment port number, occupancy start time, occupancy end time, and occupancy task identifier.
[0038] Specifically, the step of encoding the replenishment scheduling state using a graph neural network and generating a pallet replenishment schedule using a reinforcement learning policy network includes: The replenishment scheduling status is input into a graph neural network to generate graph embedding features; Specifically, the scheduling module 104 converts node data into node feature vectors and edge data into edge feature vectors. Node feature vectors include node type codes and the attribute features of the corresponding node records, while edge feature vectors include edge type codes and the attribute features of the corresponding edge records. Each time-series feature is represented by its time difference relative to the current scheduling time, and each feature vector is aligned to a unified dimension through zero-padding or linear mapping. The graph neural network performs message passing according to edge connections, and the node feature update relationship is as follows:
[0039] ; In the formula, For nodes In the Node characteristics after the next message transmission; Take the node feature vector of this node; For nodes The set of adjacent nodes; Adjacent nodes To node Edge features; This involves concatenating vectors. , These are trainable weights; It is a non-linear activation function. After message passing is completed, the scheduling module 104 averages the latent features of each node after message passing to obtain the global graph features. The graph embedding features include the global graph features and the latent features of each node.
[0040] The graph embedding features are written into the state space of the reinforcement learning policy network to form the replenishment decision state. Specifically, the scheduling module 104 organizes graph embedding features, the availability time of handling equipment, the occupancy period of replenishment ports, the candidate inventory pallet set, the corrected inventory pallet replenishment lead time, and the expected depletion time of the sorting tobacco warehouse according to the same scheduling time, and writes them into the state space of the reinforcement learning policy network to form the replenishment decision state. The replenishment decision state does not include the actual execution results of subsequent replenishment operations.
[0041] Based on the current handling task queue and replenishment port occupancy status, an action mask is generated. The replenishment decision status and action mask are then input into the reinforcement learning policy network, which generates the pallet replenishment schedule. Specifically, the scheduling module 104 constructs an action space based on the candidate inventory pallet set, the sorting cigarette bin, the replenishment port number, and the available time of the handling equipment. Each replenishment action corresponds to a combination of candidate inventory pallets, the sorting cigarette bin and its replenishment port, and the handling equipment. The replenishment destination is determined by the replenishment port number corresponding to the sorting cigarette bin; the quantity of cigarettes to be issued is the minimum value between the quantity of cigarettes triggered by replenishment in the replenishment window and the quantity of cigarettes in the pallet inventory; the planned start time is obtained by combining the available time of the selected handling equipment (replacing the access time of the handling resource pool) with the available time of the replenishment port and the time when the pallet is ready to be issued, i.e., taking the maximum value among the three; the planned arrival time is the planned start time plus the travel time, where the travel time is the handling distance from the pallet's location to the replenishment port corresponding to the replenishment destination divided by the rated operating speed of the selected handling equipment.
[0042] The step of generating an action mask based on the current handling task queue and replenishment port occupancy status includes: Based on the current handling equipment operation sequence in the handling task queue, identify the replenishment actions that conflict with the replenishment port occupancy status, and obtain the set of conflicting replenishment actions; Specifically, the scheduling module 104 determines the existing operating time interval of each handling device based on the operating sequence of the handling devices in the current handling task queue and the expected completion time, and determines the occupation period of each replenishment port based on the occupation start time and occupation end time in the replenishment port occupation status. If the occupation interval of the handling device selected for the replenishment action from the planned start time to the release time of the handling device overlaps with the existing operating time interval of the handling device, or if the planned arrival time falls within the occupation period of the replenishment port corresponding to the replenishment destination, then the replenishment action is determined to have a work conflict, and is written into the conflicted replenishment action set.
[0043] When determining a conflict, the release time of the handling equipment is recalculated based on the rated operating speed of the specific handling equipment involved in the replenishment operation. Specifically, the travel time for replenishment handling is obtained by dividing the distance from the pallet's location to the replenishment destination by the rated operating speed of the specific handling equipment. If the return of the last pallet to the warehouse is involved, the return time is also recalculated based on the completion time of the replenishment operation and the return route of the last pallet. The release time of the handling equipment is then updated accordingly, and time interval overlap checks are performed. This process ensures that conflict checks use specific equipment parameters, avoiding the substitution of resource pool estimates for the actual time constraints of the executing equipment.
[0044] The set of conflict replenishment actions is mapped to a mask matrix with the same dimension as the action space of the reinforcement learning policy network, and the action elements corresponding to the set of conflict replenishment actions are marked as disabled in the mask matrix to generate an action mask.
[0045] Specifically, the scheduling module 104 establishes a mask matrix consistent with the dimension of the action space, where each action element corresponds to a replenishment action in the action space; it maps the set of conflicting replenishment actions to their corresponding action elements and marks them as disabled, while marking the remaining action elements as available, thus generating an action mask. The scheduling module 104 inputs the replenishment decision state and the action mask into the reinforcement learning policy network, and the policy output relationship is as follows:
[0046] ; In the formula, In order to make replenishment decisions Select Replenishment Action The probability of; This is a vector of action preference values; As an action mask, the action element corresponding to the disabled state is taken. Available state The action preference value vector is calculated by a multilayer perceptron after concatenating the inventory pallet nodes, sorting cigarette warehouse nodes, global graph features, planned start time, planned arrival time, and the number of cigarettes to be shipped out for the replenishment action.
[0047] The training process of the reinforcement learning strategy network is as follows: The scheduling module 104 inputs historical order wave data, historical warehousing operation execution records, historical inventory pallet status data, corresponding product specification warehouse correspondences, replenishment access path data, storage location path data, end-of-day storage location occupancy status, and replenishment port occupancy status into the aforementioned modules to form a replenishment decision state sample. The reinforcement learning strategy network outputs replenishment actions, and through discrete event simulation, it deduces the replenishment arrival, replenishment port occupancy, equipment occupancy, and end-of-day return process to obtain the simulation scheduling results, and calculates the reward value accordingly. The reward value is the negative of the weighted sum of four factors: replenishment delay, replenishment port conflict count, equipment occupancy time, and end-of-day return occupancy time.
[0048] ; In the formula, The replenishment delay is calculated by accumulating the time by which the adjusted estimated arrival time of the selected replenishment action is later than the estimated depletion time of the sorting tobacco warehouse, with a maximum delay of one hour. ; Number of times there was a conflict at the replenishment point; For the time occupied by the handling equipment; The time taken for the goods to be returned to the warehouse at the end of the day; , , , This represents the weighting factor. The scheduling module 104 uses a discount factor to weight and accumulate the reward values at the current decision time and all subsequent decision times, resulting in the cumulative reward value: ; In the formula, For decision-making moments The cumulative reward value; Discount factor; For decision-making moments The reward value; This is the final decision time within the training rounds. The scheduling module 104 updates the network parameters of the reinforcement learning policy network using a policy gradient approach, increasing the cumulative reward value until the training round number or reward convergence condition is met. The scheduling module 104 generates a pallet replenishment schedule based on the replenishment actions output by the trained reinforcement learning policy network. The pallet replenishment schedule includes the inventory pallet identifier, replenishment destination, handling equipment identifier, planned start time, planned arrival time, and the quantity of items to be shipped.
[0049] Furthermore, the update module 105 receives the pallet replenishment schedule. Subsequent processing by the update module 105 uses the pre-outbound quantity of cigarettes from the pallet replenishment schedule and the quantity of pallet inventory cigarettes from the inventory pallet status data, independent of the actual pallet operation results after the replenishment operation is completed.
[0050] Specifically, the process of obtaining the updated transport task queue includes: Extract the scheduling relationship between inventory pallets, replenishment destination, and the quantity of cigarettes to be shipped from the pallet replenishment schedule, and generate a replenishment handling task queue based on the scheduling relationship; Specifically, the update module 105 reads each pallet replenishment schedule, extracting the inventory pallet identifier, replenishment destination, handling equipment identifier, planned start time, planned arrival time, and quantity of cigarettes to be shipped, thus establishing a scheduling relationship between the inventory pallets, replenishment destination, and quantity of cigarettes to be shipped. Based on this, the update module 105 generates replenishment handling tasks. Each replenishment handling task uses the above fields and adds a handling task identifier; the task start point is the pallet's storage location, and the task end point is the replenishment port corresponding to the replenishment destination. All replenishment handling tasks are arranged according to their planned start time and the operating sequence of the handling equipment, forming a replenishment handling task queue.
[0051] The status of the last pallet is identified based on the number of cigarettes to be shipped out and the number of cigarettes in the pallet inventory status data, and a last pallet return task is generated based on the status of the last pallet. Specifically, the update module 105 reads the corresponding quantity of cigarettes in the pallet inventory from the pallet status data based on the inventory pallet identifier in the pallet replenishment schedule, subtracts the quantity of cigarettes to be shipped out from the quantity of cigarettes in the pallet inventory, and obtains the quantity of cigarettes remaining in the final pallet. The quantity of cigarettes remaining in the final pallet is greater than... At that time, the update module 105 identifies the inventory pallet as being in a "final pallet" state and generates a final pallet return task based on the final pallet status; the remaining quantity of cigarettes in the final pallet is equal to... At that time, no end-of-line return task will be generated.
[0052] The end-of-season pallet return task includes the end-of-season pallet task identifier, inventory pallet identifier, quantity of remaining cigarettes in the end-of-season pallet, return start point, return destination, planned start time, and handling equipment identifier. The return start point is the replenishment port corresponding to the replenishment destination; the return destination is selected from the end-of-season pallet locations that are both unoccupied and available for receiving, based on their occupancy status. For example, the destination can be selected in ascending order of the handling distance from the replenishment port to the end-of-season pallet location. The update module 105 sets a virtual occupancy mark for the end-of-season pallet locations selected in the current scheduling round. End-of-season pallet locations with a virtual occupancy mark are considered occupied in the selection of return destinations for subsequent end-of-season pallet return tasks in the same round. After the warehouse management system updates the end-of-season pallet location occupancy status according to actual operations, the virtual occupancy mark is replaced by the actual occupancy status. This process avoids multiple end-of-season pallet return tasks generated in the same round pointing to the same end-of-season pallet location.
[0053] The tasks for returning empty inventory to the warehouse are merged into the replenishment and handling task queue according to the task order of the replenishment and handling task queue, thus obtaining the updated handling task queue.
[0054] Specifically, the update module 105 reads the task order in the replenishment handling task queue, inserts each tail pallet return task after the corresponding replenishment handling task, and determines the replenishment operation completion time based on the number of cigarettes to be shipped and the replenishment port operation parameters. The replenishment operation completion time is the planned arrival time plus the corresponding replenishment port unloading time, plus the cigarette transfer time; the cigarette transfer time is the number of cigarettes to be shipped divided by the corresponding replenishment port cigarette transfer processing rate. ; In the formula, For replenishment and handling tasks The time when the replenishment operation is completed; For replenishment and handling tasks The planned arrival time; For the time required to unload goods at the corresponding replenishment port; This refers to the quantity of cigarettes to be shipped out in advance. The corresponding processing rate for cigarette packs transferred into the replenishment port.
[0055] The assignment rule for handling equipment in the end-of-line pallet return task is as follows: After calculating the completion time of the replenishment operation, check whether the handling equipment executing the corresponding replenishment handling task meets the time window constraints of subsequent operations; if it does, assign the same handling equipment to continue executing the end-of-line pallet return task; if it does not meet the constraints, extract the available time of all idle handling equipment from the handling equipment status data and sort them in ascending order, selecting the idle handling equipment at the top of the sort as the handling equipment to execute the end-of-line pallet return task. When the end-of-line pallet return task is continued by the same handling equipment, the planned start time is no earlier than the completion time of the corresponding replenishment operation; when it is executed by other handling equipment, the available time of the idle handling equipment must include the travel time from its current location to the corresponding replenishment port without load, and the planned start time is the maximum value between the completion time of the replenishment operation and the available time of the equipment, and the selected end-of-line pallet location is in an acceptable state at the planned start time. The planned arrival time of the end-of-line pallet return task is its planned start time plus the return travel time, and the return travel time is the handling distance from the replenishment port to the return destination divided by the rated operating speed of the handling equipment. This process limits the start time of the end-of-line inventory return task to after the physical replenishment operation is completed, thus avoiding timing conflicts caused by the return task being completed before the cigarette pack transfer is completed.
[0056] After completing task insertion, the update module 105 obtains an updated handling task queue. The updated handling task queue includes replenishment handling tasks and end-of-line pallet return tasks, and records the task identifier, task type, inventory pallet identifier, handling equipment identifier, task start point, task end point, planned start time, planned arrival time, and task sequence. The update module 105 sends the updated handling task queue to the handling equipment scheduling system and writes it into the discrete event simulation process as the current handling task queue for the next round of scheduling calculations. When the next round of scheduling arrives, the updated handling task queue is aligned and updated by the system based on the actual operation execution records fed back by the handling equipment scheduling system to eliminate the cumulative deviation between the simulation state and the actual execution state.
[0057] The above embodiments are only used to illustrate the technical methods of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical methods of the present invention without departing from the spirit and scope of the technical methods of the present invention.
Claims
1. A smart scheduling system for logistics and warehousing based on tobacco products, characterized in that, include: The generation module is used to generate the time sequence of cigarette demand for sorting cigarettes based on order wave data; And generate the current handling task queue based on the warehouse operation execution records; The simulation module is used to write the demand sequence of cigarettes in the sorting cigarette warehouse into a discrete event simulation process with the current handling task queue as the event source, and generate the inventory pallet replenishment lead time. The correction module is used to correct the inventory pallet replenishment lead time based on the occupancy status of the end-of-season inventory and generate the replenishment scheduling status represented by graph-structured data. The scheduling module is used to encode the replenishment scheduling status through a graph neural network and generate pallet replenishment schedules through a reinforcement learning policy network. The update module is used to convert the pallet replenishment schedule into a replenishment handling task queue, and to incorporate the last pallet return tasks generated based on the number of pre-outbound cigarette items and the number of cigarette items in the inventory pallets corresponding to the pallet replenishment schedule into the replenishment handling task queue, thus obtaining an updated handling task queue; the updated handling task queue is used to update the current handling task queue of the discrete event simulation process.
2. The system according to claim 1, characterized in that, The process of generating the sorting demand sequence for cigarettes in the cigarette warehouse based on order wave data includes: Cigarette specification requirements are extracted from order wave data according to the release time of each wave, forming a specification requirement time sequence; Based on the correspondence between product specifications and cigarette warehouses and the conversion relationship of packaging, the product specification demand sequence is converted into the sorting cigarette warehouse package demand sequence.
3. The system according to claim 2, characterized in that, In the correspondence between the cigarette specifications and the sorting cigarette warehouses, the correspondence between the cigarette specifications and the cigarette supply is recorded, and the replenishment port number and sorting line number corresponding to the sorting cigarette warehouse are also recorded.
4. The system according to claim 1, characterized in that, The process of writing the timing sequence of cigarette demand in the sorting cigarette warehouse into a discrete event simulation process with the current handling task queue as the event source includes: Subtract the sorting cigarette warehouse inventory data from the demand for cigarettes in the sorting cigarette warehouse to form a demand-driven inventory change curve for the sorting cigarette warehouse. The estimated arrival time of replenishment is determined based on the current handling task queue, and the estimated arrival time of replenishment is inserted into the inventory change curve of the sorting tobacco warehouse; Extract the expected depletion time of the sorting tobacco warehouse from the inventory change curve of the expected arrival event of the inserted replenishment, and generate the inventory pallet replenishment lead time based on the expected depletion time of the sorting tobacco warehouse.
5. The system according to claim 4, characterized in that, In the aforementioned inventory pallet replenishment lead time, the expected depletion time of the sorting tobacco warehouse, the expected arrival time of replenishment, the cigarette type, and the sorting tobacco warehouse identifier are recorded, and the inventory pallet replenishment lead time is characterized by the time relationship between the expected arrival time of replenishment and the expected depletion time of the sorting tobacco warehouse.
6. The system according to claim 1, characterized in that, The method for adjusting the inventory pallet replenishment lead time based on the occupancy status of the remaining inventory positions includes: The corresponding cigarette specifications and the expected depletion time of the sorting tobacco warehouse are extracted from the inventory pallet replenishment lead time, and the inventory pallets corresponding to the cigarette specifications are screened from the inventory pallet status data to form a candidate inventory pallet set; Write the occupancy status of the end-of-life pallet locations into the location path data corresponding to the candidate inventory pallet set, and correct the inventory pallet replenishment lead time based on the handling distance relationship corresponding to the location path data to obtain the corrected inventory pallet replenishment lead time. Based on the corrected inventory pallet replenishment lead time, candidate inventory pallet set, and current handling task queue, a graph structure data is constructed to generate the replenishment scheduling status represented by graph structure data.
7. The system according to claim 6, characterized in that, In the graph structure data, node data records cigarette specifications, inventory pallets, sorting cigarette bins, and handling tasks, while edge data records cigarette supply relationships, pallet paths, and task sequences.
8. The system according to claim 1, characterized in that, The process of encoding the replenishment scheduling state using a graph neural network and generating a pallet replenishment schedule using a reinforcement learning policy network includes: The replenishment scheduling status is input into a graph neural network to generate graph embedding features; The graph embedding features are written into the state space of the reinforcement learning policy network to form the replenishment decision state. An action mask is generated based on the current handling task queue and replenishment port occupancy status. The replenishment decision status and action mask are then input into the reinforcement learning policy network, which generates the pallet replenishment schedule.
9. The system according to claim 8, characterized in that, The generation of the action mask based on the current handling task queue and replenishment port occupancy status includes: Based on the current handling equipment operation sequence in the handling task queue, identify the replenishment actions that conflict with the replenishment port occupancy status, and obtain the set of conflicting replenishment actions; The set of conflict replenishment actions is mapped to a mask matrix with the same dimension as the action space of the reinforcement learning policy network, and the action elements corresponding to the set of conflict replenishment actions are marked as disabled in the mask matrix to generate an action mask.
10. The system according to claim 1, characterized in that, The process of obtaining the updated transport task queue includes: Extract the scheduling relationship between inventory pallets, replenishment destination, and the quantity of cigarettes to be shipped from the pallet replenishment schedule, and generate a replenishment handling task queue based on the scheduling relationship; The status of the last pallet is identified based on the number of cigarettes to be shipped out and the number of cigarettes in the pallet inventory status data, and a last pallet return task is generated based on the status of the last pallet. The tasks for returning empty inventory to the warehouse are merged into the replenishment and handling task queue according to the task order of the replenishment and handling task queue, thus obtaining the updated handling task queue.