Unmanned storage yard storage intelligent sorting method and system
By reverse-engineering the path to generate obstructions and training a congestion prediction model in unmanned storage yards, the problems of frequent rework and congestion caused by obstruction relationships in unmanned storage yards are solved, achieving more efficient sorting throughput and stable operation.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HUNAN COMM POLYTECHNIC
- Filing Date
- 2026-02-05
- Publication Date
- 2026-05-15
AI Technical Summary
In unmanned warehouses, the obstruction caused by multi-layered placement of goods leads to frequent rework in the sorting process. Sorting equipment is prone to congestion in key channels or near sorting points. Traditional methods lack congestion risk prediction mechanisms, resulting in a decrease in overall throughput and operational instability.
By acquiring yard data and scheduling data, the path of the task to be sorted is deduced in reverse, obstruction links are generated and sorting sequences are established; a congestion prediction model is trained, data is updated in real time to predict congestion risk, and buffer positions are allocated for obstruction links and transfer actions are generated in the sorting sequence, with delayed release control to avoid congestion.
Effectively quantify congestion risks, reduce the cumulative interference of transfer operations on high-pressure areas, shorten the time for clearing obstructions, improve sorting throughput and on-time completion rates, and enhance the operational stability of unmanned yards.
Smart Images

Figure CN122048239A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of intelligent sorting technology in warehousing, specifically to an intelligent sorting method and system for unmanned warehouse storage. Background Technology
[0002] To increase storage density, unmanned warehouses often arrange goods in multi-layered structures, either vertically or horizontally. During outbound sorting, this can easily lead to obstruction between upper and lower layers, or between goods in front and behind. Sorting tasks are primarily batch-processed, but new tasks may be added during operation, creating continuous scheduling pressure. Relying solely on static sequences or manual experience to handle obstructions easily results in frequent rework and a disconnect between the sorting sequence and the actual warehouse conditions.
[0003] On the other hand, the occupancy of channels and the queuing volume at sorting ports change continuously with the sorting progress. When local high-pressure areas are formed in channels and sorting ports, the sorting equipment is prone to congestion spreading near key channels or key sorting ports. Traditional practices often use the shortest local movement as the basis for transfer selection, lacking a predictable mechanism for congestion risk. It is impossible to adjust the release rhythm before congestion occurs, and it is also difficult to prevent transfer actions from continuing to add to the traffic pressure after congestion occurs, resulting in a decrease in overall throughput and operational instability. Summary of the Invention
[0004] In view of the above-mentioned problems, the present invention is proposed.
[0005] To solve the above technical problems, the present invention provides the following technical solution: an intelligent sorting method for unmanned yard storage, comprising: step S1: acquiring yard data, collecting cargo data and scheduling data, deriving the target path of the task to be sorted from the target sorting port of the task to be sorted as the endpoint, generating obstruction links according to the cargo data, and establishing a sorting sequence; Step S2: Obtain historical data, and build and train a congestion prediction model based on the historical data; Step S3: Execute the sorting sequence, update cargo data and scheduling data in real time, call the congestion prediction model to predict congestion risk, and implement delayed release control based on congestion risk until the sorting sequence is completed; Step S4: During the sorting sequence execution, allocate target buffer bits for the blocking link and generate transfer actions, and write the transfer actions to the corresponding positions in the sorting sequence.
[0006] As a preferred embodiment of the unmanned yard storage intelligent sorting method described in this invention, the yard data includes stacking location data, buffer location data, sorting port data, and connectivity data. The cargo data includes cargo identification, obstruction status, and cargo status; The scheduling data includes data on tasks to be sorted, data on sorting equipment, channel occupancy, and queue length at sorting ports.
[0007] As a preferred embodiment of the unmanned yard intelligent sorting method of the present invention, the step of reversely deriving the target path of the task to be sorted from the target sorting port as the endpoint, generating obstruction links based on cargo data, and establishing a sorting sequence includes: Based on the data of the tasks to be sorted, determine the target goods and target sorting point for each task to be sorted, and obtain the current location of the target goods based on the goods identification. Based on connectivity data, generate a target path from the current location of the target goods to the target sorting point, and calculate the length of the target path; Based on the obstruction relationship of the target cargo, an obstruction link is generated, and the obstruction cargo identifier that obstructs the target cargo is obtained. Establish a sorting sequence based on the blocking points and the target paths of all tasks to be sorted.
[0008] As a preferred embodiment of the unmanned yard intelligent sorting method of the present invention, the step of acquiring historical data and establishing and training a congestion prediction model based on the historical data includes: The historical data includes yard data, historical scheduling data, historical sorting sequences, and the actual time consumed by historical sorting sequences; Using historical blocking links in the historical sorting sequence as segmentation nodes, the historical sorting sequence is divided into historical samples. For each historical sample, the baseline time is obtained based on the yard data. The empirical time fluctuation is obtained by subtracting the baseline time from the actual time of the historical sample. The empirical noise amplitude is summarized based on the empirical time fluctuation of all historical samples. Empirical noise is generated using empirical noise amplitude, and the empirical noise is injected into historical samples step by step according to the diffusion step to obtain noisy historical samples. Historical condition information is constructed based on the channel occupancy, sorting queue length, and sorting equipment speed corresponding to historical samples in historical scheduling data. A one-dimensional U-Net denoising network is used as the denoising model. The input is the noisy historical samples, diffusion steps and historical condition information, and the output is the empirical noise estimate. The congestion prediction model is trained by minimizing the difference between the empirical noise and the empirical noise estimate. After training, the historical samples are grouped based on the target path length, channel occupancy, sorting queue length, and sorting equipment speed. The empirical time fluctuations of each group of historical samples are summarized and the empirical noise amplitude is calculated. The grouping criteria and empirical noise amplitude are combined into a table entry to establish an empirical noise amplitude table.
[0009] As a preferred embodiment of the unmanned yard intelligent sorting method described in this invention, the step of calling the congestion prediction model to predict congestion risk includes: During the sorting sequence execution, the current execution position is located, and the position of the next blocking link is retrieved by searching backward in the sorting sequence. The sorting sequence segment from the current execution position to the next blocking link is used as the prediction segment for this time. Real-time condition information is established based on real-time updated cargo data and scheduling data. Based on the target path length of the predicted segment and the real-time condition information, the empirical noise amplitude of the predicted segment is obtained by looking up the empirical noise amplitude table. The initial time trajectory state is generated based on the predicted target path length, real-time condition information, and empirical noise amplitude. Perform reverse diffusion on the initial time trajectory state to obtain a time trajectory state with a diffusion step of 0; Future time trajectory samples are obtained based on the predicted target path length of the segment and the time trajectory state with a diffusion step of 0. Repeat the steps of generating the initial time trajectory state and performing back diffusion to obtain multiple future time trajectory samples; Each future time trajectory sample is mapped to the future channel occupancy and future sorting queue length within the predicted segment. The probability of congestion events is calculated to obtain the congestion risk. When the congestion risk is greater than the preset risk threshold, it is judged that congestion has occurred. When congestion occurs, the target path that triggers the congestion is located.
[0010] As a preferred embodiment of the unmanned yard intelligent sorting method of the present invention, the step of delaying release control based on congestion risk includes: When congestion occurs, target paths in the predicted segment that intersect with the target path that triggered the congestion are marked as delayed release objects, based on the target path that triggered the congestion. Issue a pause command to the delayed release object, while continuing to issue execution commands for target paths in the prediction segment that do not belong to the delayed release object.
[0011] Continuously update congestion risk. When the congestion risk is less than the preset safety threshold, cancel the delayed release object marker and continue execution according to the predicted segment order.
[0012] As a preferred embodiment of the unmanned yard intelligent sorting method of the present invention, the method of allocating target buffer positions and generating transfer actions for the obstruction link includes: When the sorting sequence reaches the blocking stage, the blocking goods identifier corresponding to the blocking stage is read, and the available cache slots are filtered according to the cache slot data; When no congestion occurs, a cache path is generated from the current location of the blocked goods to an available cache location based on connectivity data, and the length of the cache path is calculated. The available cache location with the shortest cache path length is taken as the target cache location for the blocked goods. When congestion occurs, all cache path lengths are calculated, and the available cache location with the shortest cache path length that does not intersect with the target path that triggered the congestion is selected as the target cache location for the blocked goods. Generate a transit action to block goods based on the cache path of the target cache location.
[0013] An unmanned yard storage intelligent sorting system employing any of the methods described in this invention, wherein: a data acquisition module acquires yard data, collects cargo data and scheduling data, reverse-engineers the target path of the task to be sorted with the target sorting port as the endpoint, generates obstruction links based on cargo data, and establishes a sorting sequence; The modeling module acquires historical data and builds and trains a congestion prediction model based on the historical data. The prediction module executes the sorting sequence, updates cargo data and scheduling data in real time, calls the congestion prediction model to predict congestion risk, and implements delayed release control based on the congestion risk until the sorting sequence is completed. The transfer module allocates target buffer bits for blocking links and generates transfer actions during the sorting sequence execution, and writes the transfer actions to the corresponding positions in the sorting sequence.
[0014] The beneficial effects of this invention are as follows: The method of this invention can quantify congestion risks and adjust the release rhythm in advance during the sorting sequence execution, making it less likely for channel occupancy and sorting port queues to accumulate further under high pressure, thus reducing the probability of congestion spreading; at the same time, it reduces the superimposed interference of transfer actions on high-pressure areas during blockage handling, shortening the blockage clearance time. Overall, it can improve sorting throughput and on-time completion rate, reduce ineffective handling and waiting time, and improve the operational stability of unmanned yards. Attached Figure Description
[0015] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the following description of the embodiments will be briefly introduced. 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.
[0016] Figure 1 This is an overall flowchart of an unmanned yard storage intelligent sorting method provided in Embodiment 1 of the present invention. Detailed Implementation
[0017] To make the above-mentioned objects, features, and advantages of the present invention more apparent and understandable, specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the protection scope of the present invention.
[0018] Example 1, referring to Figure 1 As an embodiment of the present invention, an intelligent sorting method for unmanned warehouse storage is provided, comprising: Step S1: Obtain yard data, collect cargo data and scheduling data, deduce the target path of the task to be sorted from the target sorting port as the endpoint, generate blocking links based on cargo data, and establish a sorting sequence.
[0019] Acquire yard data and collect cargo and scheduling data in real time for subsequent reverse derivation to generate sorting sequences and priority constraints.
[0020] Yard data is used to characterize the static structure and resource attributes of the yard, including stack location data, buffer location data, sorting port data, and connectivity data. Stack location data identifies stack locations and provides the capacity parameters that a stack location can carry; buffer location data identifies buffer locations and provides the buffer location capacity; sorting port data identifies sorting ports and provides the capacity parameters that sorting ports can carry; connectivity data describes the actual distance and capacity parameters of connected segments. Connected segments correspond to a passage in the actual yard, such as: a short passage from a stack location to the main passage entrance; a passage between two adjacent intersections within the main passage; a branch road from a passage to the entrance of a buffer location.
[0021] Cargo data is used to characterize the identifiability, accessibility, and operational status of each item within the yard, including cargo identification, obstruction relationships, and cargo status. Cargo identification establishes a unique correspondence between goods and records their current location and stacking level number, enabling the system to pinpoint the current location of the goods, such as stacking location, buffer location, aisle, or sorting point. Obstruction relationships express the obstruction order among goods within the same stacking location, reflecting whether there are upper-level obstructing goods when retrieving the target goods. Obstruction relationships are obtained by sorting the stacking level numbers of each item within the same stacking location, resulting in the obstruction relationship between upper and lower level goods. Cargo status indicates whether the goods are in storage, being handled, in the aisle, in the buffer location, or awaiting processing at the sorting point.
[0022] Scheduling data is used to characterize the real-time load of tasks to be executed and execution resources, including data on tasks to be sorted, sorting equipment data, channel occupancy, and sorting port queues. Task data comes from task orders or task waves issued by the upper-level system, including task time limits, target goods, and the target sorting port to which the target goods need to be delivered. Sorting equipment data includes sorting equipment status and speed; the status of the sorting equipment reflects its availability and execution status. Channel occupancy reflects the current occupancy level of each channel, such as the number of goods simultaneously present in a channel. Sorting port queues reflect the current queue level of each target sorting port, such as the number of goods currently waiting to enter a particular sorting port.
[0023] It should be noted that both cargo data and scheduling data are updated in real time. Cargo data is updated at the cargo identification level: when the target cargo changes position between stacking locations, aisles, buffer locations, and target sorting ports, the current position and stacking level number corresponding to the cargo identification are updated based on the execution feedback of the sorting equipment data, and the cargo status is updated synchronously; when cargo stacking changes, the occlusion relationship is regenerated based on the updated cargo identification records. Scheduling data is updated at the job scheduling level: data on tasks to be sorted is updated when tasks are issued or completed; sorting equipment data is refreshed in real time based on equipment idle time and execution feedback; aisle occupancy is updated based on the event count of sorting equipment entering and leaving the aisle; and sorting port queue size is updated based on the event count of target cargo entering and leaving the target sorting port.
[0024] Furthermore, based on yard data, cargo data, and scheduling data, a sorting sequence is generated by reverse derivation, with the target sorting port of the task to be sorted as the endpoint.
[0025] Specifically, based on the data of tasks to be sorted, the target goods and target sorting ports corresponding to each task to be sorted are obtained, and the current position of the target goods is read using the goods identifier as an index, which is used to determine the starting point of reverse derivation.
[0026] Subsequently, a target path from the current location of the target goods to the target sorting point is generated using the connected data, and the length of the target path is calculated. Dijkstra's shortest path algorithm is preferred; however, when the connected data is large or a faster solution is required, the A* algorithm can be used instead. Based on the abstract connectivity relationships in the connected data, the current location is taken as the starting point and the target sorting point as the ending point. The path with the minimum cost is calculated according to the cumulative cost of the connected segments, and the cost of this path is used as the length of the target path, expressed as: ; in, Let represent the target path corresponding to the i-th sorting task; argmin represents the path that minimizes the function; π represents a path from the current position of the target goods. To the target sorting port The reachable path; This represents the set of all reachable paths from the current location of the target goods to the target sorting point, obtained from the data obtained from the network; e represents a connected segment in the target path; w(e) represents the cost of connected segment e.
[0027] The cost of a connected segment is the passage cost of that connected segment. For example, based on the actual length of the connected segment and the average speed of the sorting equipment (obtained from the sorting equipment data), all connected segments are assigned a value per second. The cost of connected segment e is this time cost, which is used to reflect the difference in "fast or slow" travel speed of different road segments in reality.
[0028] After obtaining the target path and target path length for each sorting task, a blocking link is generated based on the blocking relationship of the target goods and bound to the sorting path of the target goods.
[0029] Specifically, using the target cargo's identifier as an index, the blocking relationships corresponding to the target cargo are read from the cargo data to obtain a set of blocking cargo identifiers that block the target cargo. Then, within this set of blocking cargo identifiers, the current position of each corresponding cargo identifier record is read one by one, and the processing order of the blocking cargo is determined based on the blocking relationships. For each blocking cargo, a blocking link is generated and inserted sequentially before the starting position of the target cargo's sorting path according to the processing order. When there are no blocking cargoes for the target cargo, no blocking link is generated, and the target cargo's sorting path remains unchanged.
[0030] Taking three goods A, B, and C as an example, the target goods in the sorting task data are determined to be C. The obstruction relationships in the goods data indicate that A blocks C, B blocks C, and A blocks B. The obstruction relationships corresponding to the target goods C are located using the goods identifiers, resulting in a set of obstructing goods identifiers A and B. Then, the obstructing goods identifier sets are sorted according to the obstruction relationships, determining the obstruction order as A first, B last. Subsequently, obstruction links are generated in this order and sequentially bound to the starting position of the sorting path for C. This ensures that when the sorting path for C is executed, the removal of A is processed first, then the removal of B, and finally the sorting path for C is executed.
[0031] It should be noted that in unmanned warehouse storage, goods are often arranged in a multi-layered structure, either vertically or in depth, to increase storage density within the stack. This results in situations where upper-layer goods obstruct lower-layer goods, and goods in front obstruct goods behind. These obstruction relationships are used in the goods data to express the order of retrieval restrictions between the target goods and the obstructing goods. Secondly, the data for the sorting task is bound to the target goods, which usually correspond to a specific goods identifier. Even if similar goods are placed together, the target goods may be identified as a specific item or pallet within the stack due to batch, expiration date, quality status, customer specifications, etc. Even if the types of goods within the same stack are identical, obstruction relationships will still occur.
[0032] After generating the blocking links and obtaining the target paths and target path lengths for all tasks to be sorted, a sorting sequence is established. Tasks to be sorted in unmanned yards typically originate from shipping and outbound operations, with batch processing as the primary mode of operation. Temporary tasks may also be inserted during operation. The sorting sequence is established with blocking links as a mandatory sequential condition, and the target path length is used as the selection criterion for meeting the blocking link conditions, ensuring that target goods with shorter paths from the current location to the target sorting point enter the sorting sequence first.
[0033] The sorting sequence is established using the Kahn topological sorting algorithm, with the sorting objects being the target goods identified in the task data to be sorted. There are two types of obstruction relationships: first, the goods obstructing the target goods also belong to the target goods identified in the task data; second, the goods obstructing the target goods do not belong to any target goods in the task data. When establishing the sorting sequence, only the obstruction links corresponding to the first type are considered as a necessary order for sorting; the obstruction links corresponding to the second type are retained for subsequent identification of obstruction links and generation of transfer actions, but are not used as a prerequisite for sorting sequence establishment.
[0034] When performing Kahn topology sorting, firstly, select target goods that are not currently restricted by the first type of blocking links from all target goods and use these target goods as sorting target goods. When there are multiple sorting target goods, compare the target path lengths of the corresponding sorting tasks and prioritize writing the sorting target goods with shorter target path lengths into the sorting sequence. After writing, update the blocking links of the remaining target goods and repeat the selection and writing process until all target goods are written into the sorting sequence, resulting in a sorting sequence that is consistent with the blocking links between target goods.
[0035] The sorting sequence is based on the target goods, with blocking links inserted before the corresponding positions of the target goods. Each item in the sorting sequence is arranged in the order of execution, including both the target path corresponding to the target goods determined by the task to be sorted and the blocking links generated to remove the blocking relationship. The blocking links are bound to the target path of the target goods and are located before the target path of the target goods, so as to ensure that the order of retrieval restrictions corresponding to the blocking relationship are explicitly expressed at the sorting sequence level.
[0036] Step S2: Obtain historical data and build and train a congestion prediction model based on the historical data.
[0037] Historical data includes yard data, historical scheduling data, historical sorting sequences, and the actual time taken for historical sorting sequences. The core objective of training is to enable the congestion prediction model to recover empirical noise estimates from noisy historical samples given historical conditions, thereby learning the relationship between sorting sequence time fluctuations and channel occupancy, sorting queue length, and sorting equipment speed, which can then be used for congestion risk prediction.
[0038] The historical sorting sequence is divided into historical samples by using historical obstruction points as segmentation nodes. Near these obstruction points, the historical sorting sequence triggers time fluctuation mechanisms related to transfer actions. The segmented historical samples exhibit more consistent time fluctuation patterns, facilitating the summarization of empirical noise amplitude and the training of a denoising model. Each historical sample corresponds to a segment of actual time consumption, which is directly derived from the actual time consumption records of the historical sorting sequence.
[0039] The baseline time is used to characterize the baseline time of historical samples under conditions of no significant congestion, and to separate empirical time fluctuations from actual time. The actual distance of historical samples is obtained based on connectivity data in the yard data; this actual distance is the length of a specific path within the yard. Historical sorting equipment speeds are obtained from historical scheduling data. The baseline time is obtained by dividing the actual distance of a historical sample by its historical sorting equipment speed. The baseline time serves as a training parameter and varies with the target path length and sorting equipment speed corresponding to the historical sample; it is not a fixed constant.
[0040] A congestion prediction model is built and trained based on historical data. This model is a composite of a denoising model and a diffusion sampling mechanism. The denoising model uses a one-dimensional U-Net denoising network. The diffusion sampling mechanism iteratively updates the time trajectory state and generates future time trajectory samples as the diffusion step decreases. During training, the diffusion sampling mechanism calculates the empirical noise amplitude based on historical samples and injects this empirical noise into the historical samples to obtain noisy historical samples. In practical application, the diffusion sampling mechanism generates the initial time trajectory state based on the empirical noise amplitude and performs backdiffusion sampling to generate multiple future time trajectory samples.
[0041] For each historical sample, the empirical time fluctuation is obtained by subtracting the baseline time from the actual time consumed. The empirical noise amplitude is derived from the empirical time fluctuations of all historical samples and is used to characterize the naturally existing time fluctuation range of the sorting sequence. The empirical noise amplitude is expressed as: ; in, The variance of the empirical noise amplitude is represented by M; the total number of historical samples is represented by m; and the m-th historical sample is represented by m. This represents the empirical time fluctuation of the m-th historical sample; This represents the average fluctuation over time based on experience.
[0042] Empirical noise is generated using the amplitude of empirical noise. At each diffusion step, the corresponding empirical noise is injected into the historical samples to form noisy historical samples. This allows the same historical sample to generate training samples with different levels of noise, covering states from slight fluctuations to strong fluctuations, as represented by: ; in, This represents the noisy historical sample obtained in the t-th diffusion step; Indicates historical samples; This represents the cumulative multiplication of the coefficients, from diffusion step 1 to diffusion step t, and the result of the continuous multiplication of the coefficients. This represents the retention coefficient, which takes a value of 0-1 and increases linearly from smallest to largest according to the diffusion step number; The empirical noise is represented by a Gaussian distribution with a mean of 0 and a variance equal to the variance of the empirical noise amplitude. This represents a Gaussian distribution with a mean of 0 and a covariance of . ; I represents the identity matrix.
[0043] The diffusion step represents the discrete index of the noise level. The total number of diffusion steps is a preset integer, and the diffusion step index increases from 1 to the total number of diffusion steps. The total number of diffusion steps is set based on the empirical noise amplitude of historical samples: the larger the empirical noise amplitude, the larger the total number of diffusion steps, to ensure that the historical samples can cover the complete noise level range from low noise to high noise.
[0044] Historical condition information is constructed based on the channel occupancy, sorting queue size, and sorting equipment speed corresponding to historical samples in historical scheduling data. Specifically, the start and end positions of the historical sample are first determined in the historical sorting sequence. Then, using the target path traversed by the historical sample as an index, the channel occupancy of each channel on the target path is read segment by segment from the historical scheduling data, and concatenated in the order of the target path to obtain the channel occupancy sequence. Next, using the target sorting port that the historical sample ultimately points to as an index, the sorting queue size sequence of the target sorting port between the start and end positions of the historical sample is read. At the same time, the sorting equipment speed value sequence between the start and end positions of the historical sample is read from the historical scheduling data. The channel occupancy sequence, sorting queue size sequence, and sorting equipment speed sequence are aligned and merged according to the time order of the historical samples to obtain the historical condition information corresponding one-to-one with the historical sample, which is used as input to the one-dimensional U-Net denoising network.
[0045] The denoising model uses a one-dimensional U-Net denoising network. The inputs are noisy historical samples, diffusion steps, and historical condition information, and the output is an empirical noise estimate.
[0046] The denoising model is trained using noisy historical samples, diffusion steps, and historical condition information as input. The empirical noise estimate output by the denoising model is compared item by item with the empirical noise of the noisy historical samples. The parameters of the denoising model are iteratively updated by minimizing the difference between the empirical noise and the empirical noise estimate. The loss function is expressed as: ; in, Represents the training loss function; represents the parameters of the denoising model; E[] represents the expected sign, which is the statistical average of the training samples and the diffusion step; This represents the empirical noise estimate output by the denoising model; t represents the diffusion step number; c represents historical condition information. This represents the square of the L2 norm.
[0047] The congestion prediction model formed in this way can construct conditional information from real-time updated cargo data and scheduling data during the prediction phase, and then make intelligent predictions on the time fluctuations and congestion risks corresponding to the sorting sequence.
[0048] After training, an empirical noise amplitude table is established to quickly determine the empirical noise amplitude based on real-time condition information during the prediction phase. The empirical noise amplitude table is obtained by grouping and statistically analyzing the empirical time fluctuations of historical samples: the target path length of the historical samples, as well as channel occupancy, sorting queue length, and sorting equipment speed from historical condition information, are used as grouping criteria. Historical samples with similar grouping criteria are grouped together. The grouping criteria within a group do not need to be exactly the same. Based on the actual situation of the unmanned yard, a common interval is established for each grouping criterion; grouping criteria within the interval are considered similar.
[0049] For each set of historical samples, the empirical time fluctuations of that set of historical samples are summarized, the corresponding empirical noise amplitude is calculated, and the grouping criteria and empirical noise amplitude are combined into a table entry. Each entry in the empirical noise amplitude table includes at least the target path length, channel occupancy, sorting port queue size, sorting equipment speed, and empirical noise amplitude, which are used to characterize the natural time fluctuation range under the corresponding path structure and corresponding congestion pressure conditions.
[0050] Step S3: Execute the sorting sequence, update cargo data and scheduling data in real time, call the congestion prediction model to predict congestion risk, and implement delayed release control based on congestion risk until the sorting sequence is completed.
[0051] The sorting sequence is executed, and cargo and scheduling data are updated in real time. A congestion prediction model is invoked to predict congestion risk. Since the sorting sequence triggers buffer allocation and transfer actions at obstruction points, the time fluctuation mechanism of the sorting sequence before and after these points is significantly different. Therefore, the congestion prediction model adopts a segmented prediction method with obstruction points as natural boundaries to improve the homogeneity and predictability of the time trajectory within the predicted segments.
[0052] During the sorting sequence execution, the current execution position is located, and the position of the next obstruction is retrieved from the sorting sequence. The sorting sequence segment from the current execution position to the next obstruction is used as the current prediction segment. Execution within the prediction segment mainly proceeds along the target path, and its time fluctuation is mainly affected by channel occupancy, sorting queue size, and sorting equipment speed. Using the obstruction as a boundary avoids mixing non-homogeneous time fluctuations triggered by the obstruction into the same prediction object, thus making the congestion prediction model more stable in generating future time trajectory samples.
[0053] Real-time conditional information is established based on real-time updated cargo and scheduling data. Then, based on the target path length of the predicted segment and the real-time conditional information, the empirical noise amplitude of the predicted segment is obtained by consulting an empirical noise amplitude table. This table is derived from empirical time fluctuations summarized from historical samples during the training phase, with each entry corresponding to a natural time fluctuation range under a combination of target path length and conditional information. By consulting the empirical noise amplitude table using the target path length and real-time conditional information, the empirical noise amplitude used in this prediction is made consistent with the path structure and current congestion pressure of the current predicted segment. This ensures that the future time trajectory samples generated by backdiffusion sampling can reflect the degree of time fluctuation that may occur under the current conditions.
[0054] Based on the predicted target path length, real-time condition information, and empirical noise amplitude, backdiffusion sampling is performed to generate multiple future time trajectory samples. First, the number of connected segments in the target path is determined, and each connected segment is assigned a sequence number according to its order in the target path, incrementing from 1 to the number of connected segments. Then, based on the predicted target path length and real-time condition information, the empirical noise amplitude table is consulted to obtain the empirical noise amplitude variance corresponding to the predicted segment.
[0055] The target path length of each connected segment is determined based on the target path length of the predicted segment. Then, the empirical noise amplitude variance is allocated according to the proportion of the target path length of each connected segment, resulting in the noise variance for each connected segment. For each connected segment, an empirical noise is generated based on its noise variance. The empirical noise values follow a Gaussian distribution with a mean of 0 and a variance equal to the noise variance of the connected segment. The empirical noise values of all connected segments are arranged in sequence according to the segment number, forming the initial time trajectory state for backdiffusion sampling. The initial time trajectory state is only used as the starting point for denoising iterations; it does not represent the actual time consumption of the predicted segment, nor does it change the target path length of the predicted segment.
[0056] Backdiffusion sampling starts with the initial time trajectory state. The diffusion step iterates from T to 1. Within each diffusion step, the congestion prediction model receives the current diffusion step t, the current time trajectory state, real-time condition information, and the target path length of the predicted segment. It outputs an empirical noise estimate and updates the current time trajectory state to the time trajectory state corresponding to the next diffusion step. Backdiffusion is represented as: ; in, This represents the trajectory state at time t-1 when the diffusion step is t-1; This represents the trajectory state at time t, where the diffusion step is t. This represents empirical noise estimation; v represents real-time condition information. This represents the empirical noise at diffusion step t. The empirical noise is generated by randomizing the empirical noise amplitude and is used to inject the randomness of natural time fluctuations at each diffusion step, thereby obtaining different future time trajectory samples.
[0057] After the diffusion step decreases from T to 1 in iterations, the time trajectory state with a diffusion step of 0 is obtained. The time trajectory state with a diffusion step of 0 provides the time fluctuation values of each connected segment on the predicted segmented target path according to the connected segment index, serving as an empirical time fluctuation trajectory sample. The future time trajectory sample is formed by superimposing the target path length of the connected segment with this empirical time fluctuation trajectory sample.
[0058] Multiple future time trajectory samples are obtained through repeated backdiffusion sampling. Each sampling generates a new set of initial time trajectory states based on the empirical noise amplitude variance. Under the same target path length and the same real-time conditions, different samplings will yield different time trajectory states with a diffusion step of 0 due to different initial time fluctuation values, thus forming multiple different future time trajectory samples. Simultaneously, the empirical noise amplitude variance is given by the same empirical noise amplitude table entry, ensuring that the time fluctuation scale of each sampling is consistent with the congestion pressure state corresponding to the current real-time conditions. This provides a consistent probabilistic basis for subsequently mapping multiple future time trajectory samples to future channel occupancy and future sorting queue lengths, and for statistically analyzing the probability of congestion events.
[0059] After obtaining multiple future time trajectory samples, each sample is mapped to obtain the future channel occupancy and future sorting queue size within the predicted segment. Specifically, the mapping method for future channel occupancy is as follows: using the channel occupancy in the scheduling data as the starting value, and updating sequentially according to the target path progression order under the time progress given by the future time trajectory sample: when the future time trajectory sample progresses to the entry time of a channel, the future channel occupancy of that channel is incremented by 1; when the sample progresses to the departure time of that channel, the future channel occupancy of that channel is decremented by 1. For each channel traversed in the predicted segment, the future channel occupancy change sequence within the predicted segment is updated and recorded according to the above entry and departure rules. The mapping method for future sorting queue size is the same as that for future channel occupancy.
[0060] Then, using the capacity parameters contained in the yard data as criteria, it is determined whether a congestion event has occurred for each future time trajectory sample: if the future channel occupancy reaches or exceeds the capacity parameter of the corresponding channel at any time within the prediction segment, or if the future sorting port queue reaches or exceeds the capacity parameter of the corresponding sorting port at any time within the prediction segment, then a congestion event is determined to have occurred in the future time trajectory sample; if neither of the above two situations occurs, then no congestion event is determined to have occurred in the future time trajectory sample.
[0061] Congestion risk is represented by the probability of a congestion event occurring. The probability of a congestion event is obtained by counting the number of samples from all future time trajectory samples and dividing that number by the total number of future time trajectory samples. This probability is the congestion risk. By performing this determination and statistical analysis on multiple future time trajectory samples, congestion risk has a clear probabilistic meaning, reflecting the likelihood that, under current real-time conditions, the predicted segment will experience channel occupancy or sorting queue length exceeding capacity parameters in future evolution.
[0062] When the congestion risk exceeds a preset risk threshold, congestion is identified. When congestion occurs, the target path triggering the congestion is located. For each target path in the predicted segment, the connected segments it traverses and its target sorting point are extracted. Among the future channel occupancy and future sorting point queues corresponding to all future time trajectory samples, the proportion of samples where these connected segments and the target sorting point exceed the capacity parameter is calculated. When this proportion exceeds the risk threshold, the target path is identified as the target path triggering congestion.
[0063] Furthermore, when congestion occurs, based on the target path that triggered the congestion, target paths in the predicted segment that intersect with the target path that triggered the congestion are marked as delayed release objects. The criteria for determining intersection are that the target paths pass through the same connected segment or point to the same target sorting point, so that they share channel resources or sorting point queuing resources with the target path that triggered the congestion within the predicted segment, thereby having a cumulative impact on channel occupancy or sorting point queuing volume.
[0064] A pause command is issued to the delayed release object, while the target paths in the prediction segment that do not belong to the delayed release object continue to be issued and executed. The pause command only applies to the target path corresponding to the delayed release object and does not change the issuance and execution of other target paths in the prediction segment, thereby avoiding a global stop when congestion is caused by local channels or local picking points.
[0065] Continuously update congestion risk. When the congestion risk is less than the preset safety threshold, cancel the delayed release object marker and continue execution according to the predicted segment order.
[0066] It should be noted that, in order to avoid frequent pauses and resumptions caused by the risk of congestion fluctuating around the critical value, the trigger for delayed release is based on a risk threshold, and the release is based on a safety threshold, and the risk threshold is greater than the safety threshold.
[0067] The risk threshold and safety threshold are set based on the statistical results of historical scheduling data and historical sorting sequences: the risk threshold is set at a higher level of congestion risk when there is a significant increase in channel occupancy or the sorting queue is close to the capacity parameter in historical operation; the safety threshold is set at a lower level of congestion risk when the channel occupancy and the sorting queue fall below the capacity parameter and remain stable in historical operation, so that the triggering and deactivation have a clear separation range.
[0068] Step S4: During the sorting sequence execution, allocate target buffer bits for the blocking link and generate transfer actions, and write the transfer actions to the corresponding positions in the sorting sequence.
[0069] When the sorting sequence is executed, it is issued and executed in the order of sorting sequence. If the blocking link is not executed, the congestion risk is predicted according to step S3. When the blocking link is executed, the blocking cargo identifier corresponding to the blocking link is read, the cache space is filtered and allocated based on the cache space data, and the transfer action of the blocking cargo is generated according to the cache path.
[0070] After the transfer action is generated, it is written into the position corresponding to the blocking link in the sorting sequence. After the transfer action is completed and the current position of the blocking goods in the goods data is updated, the blocking relationship corresponding to the blocking link is released, and the sorting sequence continues to execute the target path of the target goods.
[0071] Specifically, when the sorting sequence reaches the blocking stage, the blocking goods identifier corresponding to the blocking stage is read, and the current position of the blocking goods is obtained from the goods data. At the same time, the remaining cache space capacity is filtered from the cache space data to find available cache spaces that can accommodate the blocking goods.
[0072] After the filtering is completed, Dijkstra's shortest path algorithm is used. The current position of the blocked goods is taken as the starting point and the available cache position is taken as the ending point. The minimum cost path is calculated according to the cumulative cost of the connected segments to obtain the length of each cache path, which is used to determine the target cache position in the future.
[0073] In the absence of congestion, the target cache position is determined by the principle of the shortest cache path length: the cache path lengths corresponding to all available cache positions are compared, and the available cache position with the shortest cache path length is determined as the target cache position for blocking goods, so that the blocked goods can be moved away with less path cost, thereby releasing the target path corresponding to the blocking link more quickly.
[0074] In congestion-prone conditions, the determination of the target buffer location considers the intersection relationship between the buffer path and the target path that triggered the congestion. This is to prevent transit actions from entering the target path that triggered the congestion and further aggravating traffic pressure. The intersection determination is based on connectivity data. When the buffer path and the target path that triggered the congestion contain the same connected segment, the two paths are determined to intersect. When there is no shared connected segment, the two paths are determined not to intersect.
[0075] In the event of congestion, priority is given to selecting available cache slots from all available cache slots whose cache paths do not intersect with the target path that triggered the congestion. If multiple available cache slots meet the non-intersection condition, the corresponding cache path lengths are compared, and the available cache slot with the shortest cache path length is determined as the target cache slot. If no available cache slots whose cache paths do not intersect with the target path that triggered the congestion exist, the cache path lengths of all available cache slots are still compared, and the available cache slot with the shortest cache path length is determined as the target cache slot. This ensures that the blocking step can be removed and the sorting sequence can continue.
[0076] Once the target cache position is determined, a transfer action is generated based on the cache path corresponding to the target cache position to block the goods. This transfer action drives the blocked goods to move along the cache path from their current position to the target cache position, and updates the current position of the blocked goods in the goods data after the transfer action is completed. The transfer action is then written to the position corresponding to the blocking step in the sorting sequence and executed in the order of the sorting sequence. When the sorting sequence continues and encounters another blocking step, the above process of target cache position allocation and transfer action generation is repeated until the sorting sequence is completed.
[0077] Example 2, in an exemplary embodiment, also provides an unmanned yard storage intelligent sorting system, including a data acquisition module, which acquires yard data, collects cargo data and scheduling data, reverse-engineers the target path of the task to be sorted with the target sorting port as the endpoint, generates obstruction links based on cargo data, and establishes a sorting sequence.
[0078] The modeling module acquires historical data and builds and trains a congestion prediction model based on that data.
[0079] The prediction module executes the sorting sequence, updates cargo data and scheduling data in real time, calls the congestion prediction model to predict congestion risk, and controls delayed release based on congestion risk.
[0080] The transfer module allocates target buffer bits for blocking links and generates transfer actions during the sorting sequence execution. It writes the transfer actions to the corresponding positions in the sorting sequence until the sorting sequence is completed.
[0081] If the above functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0082] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-including system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device.
[0083] More specific examples of computer-readable media (a non-exhaustive list) include: electrical connections (electronic devices) having one or more wires, portable computer disk drives (magnetic devices), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Furthermore, computer-readable media can even be paper or other suitable media on which the program can be printed, because the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in computer memory.
[0084] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0085] It should be noted that the above embodiments are only used to illustrate the technical solutions 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 solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention, and all such modifications or substitutions should be covered within the scope of the claims of the present invention.
Claims
1. A method for intelligent sorting in unmanned warehouse storage, characterized in that, include: Step S1: Obtain yard data, collect cargo data and scheduling data, reverse the target path of the task to be sorted with the target sorting port as the endpoint, generate obstruction links based on cargo data, and establish a sorting sequence. Step S2: Obtain historical data, and build and train a congestion prediction model based on the historical data; Step S3: Execute the sorting sequence, update cargo data and scheduling data in real time, call the congestion prediction model to predict congestion risk, and implement delayed release control based on congestion risk until the sorting sequence is completed; Step S4: During the sorting sequence execution, allocate target buffer bits for the blocking link and generate transfer actions, and write the transfer actions to the corresponding positions in the sorting sequence.
2. The intelligent sorting method for unmanned warehouse storage as described in claim 1, characterized in that, The yard data includes stack location data, buffer location data, sorting port data, and connectivity data; The cargo data includes cargo identification, obstruction status, and cargo status; The scheduling data includes data on tasks to be sorted, data on sorting equipment, channel occupancy, and queue length at sorting ports.
3. The intelligent sorting method for unmanned warehouse storage as described in claim 2, characterized in that, The process of deriving the target path of the task to be sorted from the target sorting port as the endpoint, generating obstruction links based on cargo data, and establishing a sorting sequence includes: Based on the data of the tasks to be sorted, determine the target goods and target sorting point for each task to be sorted, and obtain the current location of the target goods based on the goods identification. Based on connectivity data, generate a target path from the current location of the target goods to the target sorting point, and calculate the length of the target path; Based on the obstruction relationship of the target cargo, an obstruction link is generated, and the obstruction cargo identifier that obstructs the target cargo is obtained. Establish a sorting sequence based on the blocking points and the target paths of all tasks to be sorted.
4. The intelligent sorting method for unmanned warehouse storage as described in claim 3, characterized in that, The acquisition of historical data and the establishment and training of a congestion prediction model based on the historical data include: The historical data includes yard data, historical scheduling data, historical sorting sequences, and the actual time consumed by historical sorting sequences; Using historical blocking links in the historical sorting sequence as segmentation nodes, the historical sorting sequence is divided into historical samples. For each historical sample, the baseline time is obtained based on the yard data. The empirical time fluctuation is obtained by subtracting the baseline time from the actual time of the historical sample. The empirical noise amplitude is summarized based on the empirical time fluctuation of all historical samples. Empirical noise is generated using empirical noise amplitude, and the empirical noise is injected into historical samples step by step according to the diffusion step to obtain noisy historical samples. Historical condition information is constructed based on the channel occupancy, sorting queue length, and sorting equipment speed corresponding to historical samples in historical scheduling data. A one-dimensional U-Net denoising network is used as the denoising model. The input is the noisy historical samples, diffusion steps and historical condition information, and the output is the empirical noise estimate. The congestion prediction model is trained by minimizing the difference between the empirical noise and the empirical noise estimate. After training, the historical samples are grouped based on the target path length, channel occupancy, sorting queue length, and sorting equipment speed. The empirical time fluctuations of each group of historical samples are summarized and the empirical noise amplitude is calculated. The grouping criteria and empirical noise amplitude are combined into a table entry to establish an empirical noise amplitude table.
5. The intelligent sorting method for unmanned warehouse storage as described in claim 4, characterized in that, The method of calling the congestion prediction model to predict congestion risk includes: During the sorting sequence execution, the current execution position is located, and the position of the next blocking link is retrieved by searching backward in the sorting sequence. The sorting sequence segment from the current execution position to the next blocking link is used as the prediction segment for this time. Real-time condition information is established based on real-time updated cargo data and scheduling data. Based on the target path length of the predicted segment and the real-time condition information, the empirical noise amplitude of the predicted segment is obtained by looking up the empirical noise amplitude table. The initial time trajectory state is generated based on the predicted target path length, real-time condition information, and empirical noise amplitude. Perform reverse diffusion on the initial time trajectory state to obtain a time trajectory state with a diffusion step of 0; Future time trajectory samples are obtained based on the predicted target path length of the segment and the time trajectory state with a diffusion step of 0. Repeat the steps of generating the initial time trajectory state and performing back diffusion to obtain multiple future time trajectory samples; Each future time trajectory sample is mapped to the future channel occupancy and future sorting queue length within the predicted segment. The probability of congestion events is calculated to obtain the congestion risk. When the congestion risk is greater than the preset risk threshold, it is judged that congestion has occurred. When congestion occurs, the target path that triggers the congestion is located.
6. The intelligent sorting method for unmanned warehouse storage as described in claim 5, characterized in that, The delayed release control based on congestion risk includes: When congestion occurs, target paths in the predicted segment that intersect with the target path that triggered the congestion are marked as delayed release objects, based on the target path that triggered the congestion. Issue a pause command to the delayed release object, while continuing to issue execution commands for target paths in the prediction segment that do not belong to the delayed release object.
7. Continuously update congestion risk. When the congestion risk is less than the preset safety threshold, cancel the delayed release object mark and continue execution according to the predicted segment order.
8. The intelligent sorting method for unmanned warehouse storage as described in claim 6, characterized in that, The process of allocating target buffer bits and generating relay actions for the blocking link includes: When the sorting sequence reaches the blocking stage, the blocking goods identifier corresponding to the blocking stage is read, and the available cache slots are filtered according to the cache slot data; When no congestion occurs, a cache path is generated from the current location of the blocked goods to an available cache location based on connectivity data, and the length of the cache path is calculated. The available cache location with the shortest cache path length is taken as the target cache location for the blocked goods. When congestion occurs, all cache path lengths are calculated, and the available cache location with the shortest cache path length that does not intersect with the target path that triggered the congestion is selected as the target cache location for the blocked goods. Generate a transit action to block goods based on the cache path of the target cache location.
9. An unmanned yard intelligent sorting system, applied to the unmanned yard intelligent sorting method according to any one of claims 1 to 7, characterized in that, include: The data acquisition module obtains yard data, cargo data, and scheduling data. It reverse-engineers the target path of the task to be sorted, using the target sorting port as the endpoint. It generates obstruction links based on cargo data and establishes a sorting sequence. The modeling module acquires historical data and builds and trains a congestion prediction model based on the historical data. The prediction module executes the sorting sequence, updates cargo data and scheduling data in real time, calls the congestion prediction model to predict congestion risk, and implements delayed release control based on the congestion risk until the sorting sequence is completed. The transfer module allocates target buffer bits for blocking links and generates transfer actions during the sorting sequence execution, and writes the transfer actions to the corresponding positions in the sorting sequence.