Product scheduling method, device, equipment and storage medium based on locking events

Through the product scheduling method of locking events, product sorting and locking events are dynamically adjusted, the problems of residence time, batch processing and priority limitations are solved, efficient production scheduling is achieved, and the production flexibility and efficiency of semiconductor manufacturing are improved.

CN120146810BActive Publication Date: 2025-08-26SHENZHEN EXX IND AUTOMATION CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510629166.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-05-16
Publication Date
2025-08-26
Estimated Expiration
2045-05-16

AI Technical Summary

Technical Problem

Existing scheduling methods cannot effectively solve the residence time limit, batch processing and priority limits, resulting in low product processing efficiency and difficulty in balancing multi-target needs in a dynamic environment.

Method used

The product scheduling method based on lock events is adopted. By initializing the lock event list, the product sorting and lock events are dynamically adjusted based on the sorting rules and limit judgment rules of different machine types to ensure that the products in the process meet the residence time, priority and batching requirements.

Benefits of technology

It realizes efficient scheduling under the control of residence time, batch processing and priority, quickly responds to dynamic changes, avoids production delays and resource waste, and improves production flexibility and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120146810B_ABST
    Figure CN120146810B_ABST
Patent Text Reader

Abstract

The present invention relates to the technical field of production scheduling, and discloses a product scheduling method, device, equipment and storage medium based on locking events. The method comprises: obtaining product, work-in-progress information and machine type, and performing multiple sorting of the work-in-progress according to the remaining detention limit time > priority > degree of batching; then judging whether the work-in-progress violates the judgment criteria of the restriction judgment rule, and if so, triggering a locking event and locking the machine or the work-in-progress; updating the locking event list in chronological order and integrating the locking information; iteratively adjusting the schedule based on the real-time locking information until convergence. The method of the present invention generates a feasible and optimized scheduling plan through an event-triggered dynamic locking strategy, thereby effectively coordinating detention time, batch capacity utilization and priority conflicts, and avoiding production delays or resource waste caused by rule conflicts.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of production scheduling, and in particular to a product scheduling method, apparatus, device and storage medium based on locking events. Background Art

[0002] Residence time constraints are common in manufacturing for industries like semiconductors and PCBs. They require that a specific step be completed within a certain timeframe after one process step is completed. For example, in the furnace area of ​​a wafer fab, the process involves multiple critical steps (such as acid tank decontamination, high-temperature oxidation, and deposition), each of which must adhere strictly to time limits and process parameters. Key technical challenges include:

[0003] Residence Time Constraint: For example, wafers after acid tank decontamination must enter the furnace tube within a specified time, otherwise surface oxidation or contamination will lead to rework or even scrap.

[0004] Batch processing efficiency: The advantage of batch processing is that it can process multiple small batches (lots) simultaneously. For example, a furnace tube machine can process 4-6 small batches simultaneously. However, its disadvantage is that the processing speed is slow and the processing time is extremely long. Therefore, once processing begins, subsequent products arriving at the station need to wait. If the batch is not full, if subsequent small batches with the same process parameters arrive at the station, it will result in waste of production capacity and may even exceed the retention time limit.

[0005] Priority Conflicts: "Bullet Lot" is a label for products, representing the highest-ranking items. Upon arrival, high-priority products (such as "Bullet Lot") are allowed only a short wait time before being processed on the machine. This is unless the product being processed would exceed the hold time limit or is also in the Bullet Lot. Consequently, different tiers of products have different wait time controls, with high-ranking products not being able to wait for lower-ranking ones. However, traditional scheduling methods struggle to balance multiple objectives in a dynamic environment.

[0006] Existing scheduling methods are mainly divided into two categories: rule screening methods, which are based on simple priority or first-come, first-served (FIFO) rules and cannot handle multi-constraint conflicts (such as simultaneously satisfying retention restrictions and batch optimization); mathematical programming methods, which use linear programming or genetic algorithms to solve optimal scheduling, but have high computational complexity and cannot respond to dynamic changes (such as inserted orders and machine failures) in real time.

[0007] Therefore, it is very difficult to complete an optimal production schedule under the constraints of residence time, batch processing and priority. The existing scheduling methods cannot guarantee that these constraints are met. The existing technology still needs to be improved and developed. Summary of the Invention

[0008] In order to overcome the shortcomings of the existing technology, the purpose of the present invention is to provide a product scheduling method, device, equipment and storage medium based on locking events, aiming to solve the problem that the existing scheduling method cannot meet the requirements of residence time limit, batch processing and priority limit, resulting in low product processing efficiency.

[0009] The first aspect of the present invention provides a product scheduling method based on locking events, comprising the steps of: obtaining product information, work-in-process information and machine types, wherein the machine types include batch machines and non-batch machines; initializing a locking event list and locking information to be empty; if the machine type is a non-batch machine, performing multiple sorting on the work-in-process based on a preset first sorting rule, wherein the first sorting rule includes two sorting factors: remaining detention limit time and priority, and the importance of the two sorting factors is: remaining detention limit time>priority; if the machine type is a batch machine, performing multiple sorting on the work-in-process based on a preset second sorting rule, wherein the second sorting rule includes two sorting factors: remaining detention limit time, priority and batch compatibility. The order of importance of the three sorting factors is as follows: remaining detention limit time > priority > batching degree; when the work-in-process enters the schedule, the judgment criteria for judging whether the work-in-process violates the restriction judgment rules, and the restriction judgment rules include waiting restriction rules and batching restriction rules; if the waiting restriction rules or batching restriction rules are violated, a locking event is triggered to lock the machine or the work-in-process; the triggered locking events are updated to the locking event list in the order of the time when the locking events occur; the locking information is updated according to the updated locking event list; based on the updated locking information, the remaining products continue to be multi-sorted until no new locking events occur and the product scheduling is completed.

[0010] Optionally, in a first implementation of the first aspect of the present invention, if the machine type is a non-batch machine, multiple sorting is performed on the work-in-process based on a preset first sorting rule, wherein the first sorting rule includes two sorting factors: remaining retention limit time and priority, and the importance of the two sorting factors is: remaining retention limit time > priority, including the steps of: when scheduling work-in-process for non-batch machines in an idle state, first sorting the work-in-process according to the remaining retention limit level from small to large based on the first sorting rule, wherein the remaining retention limit level is divided according to the remaining retention limit time, and the remaining retention limit level Lr is expressed as: , where L represents the remaining detention limit level calculation function, and Tr represents the remaining detention limit time; and then the work-in-progress is sorted from small to large according to its priority.

[0011] Optionally, in a second implementation of the first aspect of the present invention, if the machine type is a batch machine, multiple sorting is performed on the work-in-progress based on a preset second sorting rule, wherein the second sorting rule includes three sorting factors: remaining detention limit time, priority, and degree of batching. The importance of the three sorting factors is as follows: remaining detention limit time > priority > degree of batching, including the steps of: when scheduling work-in-progress for a batch machine in an idle state, according to the formula and Calculate the grade score SQ of the remaining retention limit event of the work-in-process and the priority score SP of the work-in-process respectively; calculate the comprehensive evaluation score of the work-in-process based on the grade score SQ of the remaining retention limit event of the work-in-process, the priority score SP of the work-in-process and the batching degree of the work-in-process , where X represents all optional WIPs, y represents the degree of batching of WIPs, i.e. the number of products in X with the same process parameters as WIP x, x recipe represents the process parameters of the product x, x priority Indicates the priority of work in progress x, x remain Indicates the remaining detention limit time of the work-in-process x; according to the preset second sorting rule, first sort the work-in-process according to the SQ value from large to small, then sort it according to the SP value from large to small, and finally sort it according to the comprehensive evaluation score S(x) from large to small.

[0012] Optionally, in a third implementation of the first aspect of the present invention, when the work-in-process enters the schedule, the judgment criteria for determining whether the work-in-process violates the restriction determination rules are used, and the restriction determination rules include waiting restriction rules and batch restriction rules, including the following steps: the work-in-process includes the predecessor work-in-process and the current work-in-process, and when the work-in-process enters the schedule, the judgment criteria for determining whether the current work-in-process violates the waiting restriction rules relative to the predecessor work-in-process, and the waiting restriction rules use the remaining retention restriction level, priority and waiting time of the work-in-process as judgment criteria; when the work-in-process enters the schedule, the judgment criteria for determining whether the current work-in-process violates the batch restriction rules are used, and the batch restriction rules use the degree of batchability and waiting time as judgment criteria.

[0013] Optionally, in a fourth implementation of the first aspect of the present invention, if the judgment criterion of the waiting restriction rule is violated, a locking event is triggered to lock the machine or the work in progress, including the steps of: the judgment criterion of the waiting restriction rule is represented by J(WC|WP), , where WC represents the current work-in-progress, WP represents the previous work-in-progress, J(WC|WP)=1 represents the judgment criterion for the current work-in-progress WC violating the waiting limit rule relative to the previous work-in-progress WP, and J(WC|WP)=0 represents the judgment criterion for the current work-in-progress WC not violating the waiting limit rule relative to the previous work-in-progress WP. , , where represents whether the remaining detention limit level of the current work-in-progress WC is higher than that of the previous work-in-progress WP. represents whether the priority of the current work-in-progress WC is higher than that of the previous work-in-progress WP and violates the priority waiting limit. L represents the remaining detention limit level calculation function, WC priority represents the priority of the current work-in-progress, WP priority represents the priority of the previous work-in-progress, WC wait represents the waiting time of the current work-in-progress; if the judgment criterion for the current work-in-progress WC violating the waiting limit rule relative to the previous work-in-progress WP is met, a locking event is triggered to lock the current machine to ensure that the current machine does not select the previous work-in-progress WP until the current work-in-progress WC arrives at the station and is loaded onto the machine; if the occurrence of exceeding the detention limit cannot be prevented by locking the current machine, one of all the optional machines suitable for processing the current work-in-progress WC is selected for locking to ensure that the current work-in-progress is immediately loaded onto the machine when it arrives at the station; if the occurrence of exceeding the detention limit cannot be prevented by locking the current machine and other machines, the current work-in-progress is locked, and starting from the arrival time at the station of the initial step of exceeding the detention limit, the loading time of the current work-in-progress is gradually postponed until there is no occurrence of exceeding the detention limit.

[0014] Optionally, in the fifth implementation manner of the first aspect of the present invention, if the judgment criterion for violating the batch formation limit rule is met, a locking event is triggered to lock the work-in-progress, including the steps: assuming that the maximum batch formation number of the current batch of machines is M, the current batch formation number is m<M, the work-in-progress included in the current batch formation number is W, and it is statistically determined whether there is a work-in-progress suitable for batch formation with the same process parameters as the work-in-progress W arriving at the station from the loading time t0 of the work-in-progress W in the current batch number to the inspection time t2; if so, a locking event is triggered, n = M - m work-in-progresses V suitable for batch formation are statistically obtained, and the work-in-progress W and V are locked from the loading time t0 of the work-in-progress W to the latest loading time t1 of the work-in-progress V suitable for batch formation.

[0015] Optionally, in a sixth implementation method of the first aspect of the present invention, the triggered locking event is updated to the locking event list in the order of the locking event occurrence time, including the steps of: if the event occurrence time of the current locking event is the latest occurrence time in the locking event list, then the current locking event is directly updated to the last position in the locking event list; if the event occurrence time of the current locking event is not the latest occurrence time in the locking event list, then the current locking event is updated to the corresponding position in the locking event list in the order of the event occurrence time, and the locking events after the event occurrence time of the current locking event are eliminated.

[0016] The second aspect of the present invention provides a product scheduling device based on locking events, including: an acquisition module for acquiring product information, work-in-process information and machine types, wherein the machine types include batch machines and non-batch machines; an initialization module for initializing the locking event list and the locking information to be empty; a non-batch machine sorting module for, if the machine type is a non-batch machine, performing multiple sorting of the work-in-process based on a preset first sorting rule, wherein the first sorting rule includes two sorting factors, namely, the remaining detention limit time and the priority, and the importance of the two sorting factors is: the remaining detention limit time>the priority; a batch machine sorting module for, if the machine type is a batch machine, performing multiple sorting of the work-in-process based on a preset second sorting rule, wherein the second sorting rule includes the remaining detention limit time, the priority and the degree of batch groupability. Three sorting factors, the importance of the three sorting factors is as follows: remaining detention limit time > priority > batching degree; a judgment module, used to judge whether the work-in-process violates the judgment criteria of the restriction judgment rule when the work-in-process enters the schedule, and the restriction judgment rule includes waiting restriction rule and batching restriction rule; a locking module, used to trigger a locking event and lock the machine or work-in-process if the waiting restriction rule or batching restriction rule is violated; an event update module, used to update the triggered locking event to the locking event list in the order of the locking event occurrence time; an information update module, used to update the locking information according to the updated locking event list; an update sorting module, used to continue to perform multiple sorting on the remaining products based on the updated locking information, until no new locking event occurs and the product scheduling is completed.

[0017] A third aspect of the present invention provides a product scheduling device based on locking events, comprising: a memory and at least one processor, wherein the memory stores computer-readable instructions, and the memory and the at least one processor are interconnected via lines; the at least one processor calls the computer-readable instructions in the memory so that the product scheduling device based on locking events executes the various steps of the product scheduling method based on locking events as described above.

[0018] A fourth aspect of the present invention provides a computer-readable storage medium storing computer-readable instructions, which, when executed on a computer, enables the computer to execute the various steps of the product scheduling method based on locking events as described above.

[0019] One or more technical solutions proposed in this application have at least the following technical effects:

[0020] Under the multiple constraints of residence time limit (such as the need to quickly enter the furnace tube after acid tank decontamination), batch processing (maximizing machine utilization) and priority control (such as "Bullet Lot" priority processing), the present invention quickly generates a feasible and optimized scheduling plan through the synergistic effect of sorting rules, locking rules and restriction judgment rules. The scheduling method of the present invention can cope with frequent order insertions and complex and changing order situations, making enterprise production more flexible and efficient, thereby avoiding production delays or resource waste caused by rule conflicts. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0022] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0023] Figure 1 This is a flowchart of a product scheduling method based on locking events provided by an embodiment of the present invention.

[0024] Figure 2 This is a schematic diagram of locking the current machine due to violation of the waiting restriction rule in an embodiment of the present invention.

[0025] Figure 3 This is a schematic diagram of locking other machines due to violation of waiting restriction rules in an embodiment of the present invention.

[0026] Figure 4 This is a schematic diagram of locking a work in progress due to violation of a waiting restriction rule in an embodiment of the present invention.

[0027] Figure 5 This is a schematic diagram of locking a work-in-progress due to violation of batch restriction rules in an embodiment of the present invention.

[0028] Figure 6 Schematic diagram of updating the lock event list in an embodiment of the present invention.

[0029] Figure 7 This is a structural diagram of a product scheduling device based on locking events provided by the present invention.

[0030] Figure 8 This is a schematic diagram of the structure of the product scheduling device based on locking events provided by the present invention. DETAILED DESCRIPTION

[0031] The embodiments of the present invention provide a method, apparatus, device and storage medium for product scheduling based on locking events. The terms "first", "second", "third", "fourth", etc. (if any) in the description and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" or "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0032] See also Figure 1 , Figure 1 The present invention provides a flowchart of a product scheduling method based on locking events, as shown in the figure, which includes the following steps:

[0033] S10, obtaining product information, work-in-progress information, and machine type, where the machine type includes batch machines and non-batch machines;

[0034] In this embodiment, the product information includes the product's process flow, the process parameters (recipe) of each processing step, the available machines for the product and their production capacity, the product's retention limit start and end steps and the limit time; work-in-progress refers to products being processed in small batches (Lot), and the work-in-progress information includes the work-in-progress type, the number of work-in-progress, the current step of the work-in-progress, and the remaining retention limit time of the work-in-progress; the machine types include batch machines and non-batch machines. The batch machines can process multiple small batches of work-in-progress at the same time, such as the acid tank machines and furnace tube machines in the furnace tube area; the non-batch machines can only process a single small batch of work-in-progress.

[0035] To explain the above names, let's use an actual wafer fab furnace area scenario as an example. Assume the following product information, WIP information, and tool type information. There are WIP Lots 1, 2, and 3. Lot 1 is of product type A, with a quantity of 100 wafers, currently in the acid tank decontamination step, with a remaining retention time limit of 1800 seconds. Lot 2 is of product type B, with a quantity of 80 wafers, currently in the furnace tube preparation step, with a remaining retention time limit of 3600 seconds. Lot 3 is of product type A, with a quantity of 120 wafers, also currently in the acid tank decontamination step, with a remaining retention time limit of 2700 seconds.

[0036] In terms of product information, the process flow of Product A includes acid tank decontamination, furnace tube processing, and cleaning steps. The process parameters of the acid tank decontamination step are RecipeA1, and the process parameters of the furnace tube processing step are RecipeA2. The available machines are acid tank machines EQP01 and EQP02 and furnace tube machines EQP03 and EQP04. Among them, the production capacity of the acid tank machine EQP01 is 200 tablets per hour, the production capacity of EQP02 is 180 tablets per hour, the production capacity of the furnace tube machine EQP03 is 150 tablets per hour, and the production capacity of EQP04 is 160 tablets per hour. The retention limit time from the acid tank decontamination step to the furnace tube processing step is 3600 seconds; the process flow and process parameters of Product B are different from those of Product A and are not listed in detail here.

[0037] Machine types include batch machines and non-batch machines. Acid tank machines EQP01 and EQP02, as well as furnace tube machines EQP03 and EQP04, are batch machines capable of processing multiple lots simultaneously. This embodiment obtains work-in-progress information, product information, and machine type, and inputs them into the scheduling device as basic data for subsequent scheduling.

[0038] In this embodiment, the scheduling device can be a computing service device with data processing, network communication and program running functions, such as a computer, vehicle, car computer, cloud server, mobile phone, etc., or an electronic device that can realize the above functions.

[0039] S20, initializing the lock event list and lock information to be empty;

[0040] Specifically, before scheduling begins, the system's lock event list and lock information are in their initial state. The lock event list, used to record events that require locking machines or WIP during the scheduling process, is initially empty, with no lock events recorded. The lock information, used to store the lock time periods for machines and WIP, is also initially empty, meaning no machines or WIP are locked. This step provides a clean starting environment for subsequent scheduling operations, ensuring that the scheduling process is not disrupted by initialization.

[0041] For example, a lock event is a tuple (t, E), where t represents the time when the event occurs and E represents the lock details in the form of a key-value pair, specifically displayed as: E={“EQP”:{eqp1: [starttime1, endtime1], eqp2:[starttime2, endtime2], ...eqpi: [starttime k , endtime k ]}, “LOT”: {lot1:[starttime3, endtime3], lot2: [starttime4, endtime4], ...lotj: [starttimek,endtimek]}}, where “EQP” and “LOT” indicate whether the locking type is machine or work-in-progress, eqp i is the machine name, lot j is the name of the work in progress, starttimek and endtimek represent the lock start time and lock end time respectively.

[0042] S30, if the machine type is a non-batch machine, performing multiple sorting on the WIP based on a preset first sorting rule, wherein the first sorting rule includes two sorting factors: remaining detention limit time and priority, and the importance of the two sorting factors is: remaining detention limit time > priority;

[0043] S40: If the machine type is a batch machine, multiple sorting is performed on the WIP based on a preset second sorting rule, wherein the second sorting rule includes three sorting factors: remaining residence limit time, priority, and batching degree. The importance of the three sorting factors is in the following order: remaining residence limit time > priority > batching degree.

[0044] Specifically, the remaining retention limit time refers to the maximum allowed waiting time for the work-in-progress to enter the next critical step within a specified time after the current processing step is completed. For example, wafers after acid tank decontamination must enter the furnace tube processing within 3600 seconds, otherwise they may be reworked or scrapped due to oxidation or contamination; the shorter the remaining time, the higher the urgency. Priority refers to the processing importance of different work-in-progress (Lot), usually expressed as a numerical value, the smaller the value, the higher the priority. For example: Priority 0: highest priority (such as "Bullet Lot"), which needs to be processed immediately; Priority 1: ordinary order; Priority 2: low priority order. The degree of batching refers to the number of work-in-progress with the same process parameters (recipe) as the current work-in-progress among all the work-in-progress to be scheduled.

[0045] This embodiment pre-sets a first sorting rule and a second sorting rule according to the machine type. If the machine type is a non-batch machine, the work-in-process is multi-sorted based on the preset first sorting rule. The first sorting rule includes two sorting factors: the remaining detention limit time and the priority. The importance of the two sorting factors is as follows: the remaining detention limit time > the priority, that is, when sorting, the lot with the shortest remaining time is given priority, followed by the high-priority lot. If the machine type is a batch machine, the work-in-process is multi-sorted based on the preset second sorting rule. The second sorting rule includes three sorting factors: the remaining detention limit time, the priority, and the degree of batch grouping. The importance of the three sorting factors is as follows: the remaining detention limit time > the priority > the degree of batch grouping, that is, when sorting, the lot with the shortest remaining time is given priority, followed by the high-priority lot, and finally the batch grouping optimization is considered.

[0046] For example, assume that the currently idle machine is acid tank batch machine EQP01, which has a maximum capacity of 4 batches. The lots to be scheduled are as follows:

[0047] Lot A: Remaining time 200 seconds (level 1), priority 0, process parameter Recipe A;

[0048] Lot B: Remaining time 200 seconds (level 1), priority 1, process parameter Recipe A;

[0049] Lot C: Remaining time 800 seconds (level 3), priority 2, process parameter Recipe B;

[0050] Lot D: Remaining time 800 seconds (level 3), priority 2, process parameter Recipe A.

[0051] According to the second sorting rule of this embodiment, the sorting process is as follows:

[0052] 1. Remaining detention time ranking: Lot A = Lot B (Level 1) > Lot C (Level 2) > Lot D (Level 3);

[0053] 2. Priority sorting: Within level 1: Lot A (priority 0) > Lot B (priority 1);

[0054] 3. Degree of batching: LotC and LotD have the same level and priority. However, the process parameters of LotD are the same as those of LotA and LotB. Therefore, to ensure maximum processing efficiency, LotD should be ranked higher than LotC.

[0055] Based on this, the final scheduling order is: Lot A (shortest remaining time, highest priority) > Lot B (same remaining time but lower priority) > Lot D (same process parameters as Lot A and Lot B) > Lot C (different process parameters from Lot A and Lot B).

[0056] By comprehensively sorting by remaining hold time, priority, and batching capability, this method achieves the following balance in a dynamic production environment: prioritizing urgent needs to ensure timely processing of lots with tight hold times; safeguarding high priorities to maintain delivery commitments for important orders; and improving resource efficiency by reducing machine idle time through batching optimization. This hierarchical sorting strategy effectively addresses multi-constraint scheduling challenges and is suitable for complex semiconductor manufacturing scenarios.

[0057] S50, when the WIP enters the schedule, determining whether the WIP violates a criterion of a restriction determination rule, wherein the restriction determination rule includes a waiting restriction rule and a batch restriction rule;

[0058] Specifically, the waiting limit rule is defined as follows: a maximum waiting time threshold is set according to the priority of the work-in-process, and the higher the priority, the shorter the allowed waiting time;

[0059] Example thresholds are as follows:

[0060] Priority 0 (highest): maximum waiting time 1800 seconds (30 minutes);

[0061] Priority 1: Maximum waiting time 3600 seconds (1 hour);

[0062] Priority 2: Maximum waiting time 7200 seconds (2 hours).

[0063] The judgment criterion of the waiting restriction rule is to detect whether the waiting time of the work-in-progress in a certain processing step exceeds the maximum value allowed by its priority level.

[0064] The definition of the batch restriction rule is: for batch machines, it is required to check whether the subsequent lots with the same process parameters are sufficient to form a full batch within a certain period of time after the start of processing. If the maximum batch capacity has not been reached and there are lots that can be merged, batch optimization is triggered.

[0065] Example parameters are as follows:

[0066] Batch machine maximum capacity: 6 batches;

[0067] Batch waiting time window: from the current processing start time to the next 2 hours.

[0068] As an example, assume that there is an acid tank machine EQP01 (Batch machine, maximum capacity 6 batches) in the scenario;

[0069] The work in process information is as follows:

[0070] Lot A: Priority 0, process parameters Recipe A, arrival time t = 0 seconds, accumulated waiting time 2000 seconds (200 seconds exceeded the limit);

[0071] Lot B: Priority 1, process parameters Recipe A, arrival time t = 500 seconds;

[0072] Lot C: Priority 2, process parameter Recipe B, arrival time t=1000 seconds;

[0073] Current processing: EQP01 has processed 4 batches of RecipeA's Lot, with 2 batches of capacity remaining.

[0074] During the execution of step S40, the waiting restriction rule is determined as follows:

[0075] Assume that Lot A: Priority 0 has a maximum waiting time of 1800 seconds and the actual waiting time is 2000 seconds, which is considered a violation.

[0076] Assume that Lot B: Priority 1 allows 3600 seconds, and the current waiting time is 1500 seconds (calculated when t = 2000 seconds), then it is determined that there is no violation.

[0077] Assume that Lot C: Priority 2 allows 7200 seconds and the current waiting time is 1000 seconds, so it is determined that there is no violation.

[0078] The determination of batch restriction rules is as follows:

[0079] Assume: Current batch status: EQP01 has processed four lots of Recipe A, leaving capacity for two lots. Batch check window: From the current time t = 2000 seconds, the waiting time is allowed to reach t = 5600 seconds (1 hour). Subsequent lot status: Two lots of Recipe A (Lot D and Lot E) are expected to arrive within the next hour.

[0080] The judgment result is as follows: Judgment result: Lot D and Lot E can be merged to form a full batch of 6 lots, and there is no violation; if no lot with the same parameters arrives at the station in the future, it will trigger a violation of insufficient batch.

[0081] S60: If the waiting restriction rule or the batch restriction rule is violated, a locking event is triggered to lock the machine or the work in progress;

[0082] Specifically, if the judgment criteria of the restriction determination rule is violated, a locking event is triggered, and the machine or work-in-progress is locked to avoid production interruption or waste of resources. For example, the processing time of the lot can be adjusted to avoid conflicts by locking the work-in-progress; the current machine can be locked to prevent the previous lot from occupying the opportunity and release resources for the emergency lot; other machines can also be locked to switch to the backup machine to process the emergency lot. If the judgment criteria of the restriction determination rule is not violated, the remaining products will continue to be multiple-sorted according to the preset sorting rules until the product scheduling is completed. This embodiment ensures efficient scheduling of work-in-progress under strict constraints by dynamically detecting waiting time and batching conditions, and based on restriction determination rules and locking events. Its core value lies in real-time error correction: quickly identifying violations and triggering adjustments to avoid production interruption or waste of resources; multi-objective balance: achieving the optimal trade-off between priority, retention restrictions and batching requirements; automated decision-making: reducing human intervention and improving the response speed and accuracy of the scheduling system.

[0083] S70, updating the triggering lock event to the lock event list in the order of the lock event occurrence time;

[0084] In this embodiment, the lock event list records the information of each lock event in chronological order, which is convenient for subsequent management and analysis of the lock events.

[0085] S80, updating the locking information according to the updated locking event list;

[0086] Specifically, this embodiment converts the updated lock event list into a lock time list for each machine and lot, and then updates the lock time list for each machine and lot to the initially empty lock information, thereby obtaining the updated lock information. This unified lock information facilitates the scheduling system to quickly identify unavailable resources.

[0087] S90. Continue to perform multiple sorting on the remaining products based on the updated locking information until no new locking events occur and the product scheduling is completed.

[0088] Specifically, based on the updated locking information, the sorting and determination steps are re-executed until no new locking events are generated and the remaining product schedules are completed.

[0089] The present invention rapidly generates feasible and optimized scheduling plans through the synergistic effect of sorting rules, locking rules, and restriction judgment rules. The scheduling method of the present invention achieves the following advantages: high real-time performance: rapid response to dynamic changes and reduction of production delays; multi-constraint collaboration: simultaneous satisfaction of retention restrictions, priorities, and batching requirements; maximization of resource utilization: improving machine production capacity through dynamic locking and batching optimization; and reduction of human intervention: automated scheduling reduces human decision-making errors.

[0090] In some embodiments, if the machine type is a non-batch machine, multiple sorting is performed on the work-in-process based on a preset first sorting rule, wherein the first sorting rule includes two sorting factors: remaining residence limit time and priority. The importance of the two sorting factors is: remaining residence limit time > priority, and the steps include:

[0091] S31. When scheduling work-in-process (WIP) for non-batch machines in an idle state, the WIPs are first sorted in ascending order of their remaining retention limit levels based on the first sorting rule. The remaining retention limit levels are divided according to the remaining retention limit time. The remaining retention limit level Lr is expressed as: , where L represents the remaining detention limit level calculation function, and Tr represents the remaining detention limit time;

[0092] S32. Then sort the work-in-progress in ascending order of priority.

[0093] Specifically, the sorting rule is triggered when the machine is idle and the work-in-process is selected. This embodiment pre-sets different sorting rules according to the machine type. If the machine type is a non-batch machine, the first sorting rule is selected. The first sorting rule only needs to consider two factors, namely the remaining detention limit time and the priority. The importance of the two is: remaining detention limit time > priority. That is, first sort according to the remaining detention limit level from small to large, and then sort according to the priority of the work-in-process from small to large. Among them, the remaining detention limit time is divided into levels. Assuming that the remaining detention limit time is Tr (unit: seconds), the remaining detention limit level Lr is:

[0094] , where L represents the level calculation function; the remaining hold limit level indicates the urgency of the hold, with lower levels indicating greater urgency, and a level of 3 being considered non-urgent. This embodiment allows non-batch machines to quickly respond to urgent tasks through two-level sorting, reducing computational time.

[0095] In some embodiments, if the machine type is a batch machine, multiple sorting is performed on the work-in-progress based on a preset second sorting rule, wherein the second sorting rule includes three sorting factors: remaining residence limit time, priority, and batching degree. The importance of the three sorting factors is in the following order: remaining residence limit time > priority > batching degree, including the steps of:

[0096] S41. When scheduling work-in-process for idle batch machines, the formula and Calculate the grade score SQ of the WIP remaining retention limit event and the priority score SP of the WIP respectively;

[0097] S42. Calculate the comprehensive evaluation score of the work-in-process based on the grade score SQ of the remaining retention limit event of the work-in-process, the priority score SP of the work-in-process, and the batching degree of the work-in-process. , where X represents all optional WIPs, y represents the degree of batching of WIPs, i.e. the number of products in X with the same process parameters as WIP x, x recipe represents the process parameters of the product x, x priority Indicates the priority of work in progress x, x remain represents the remaining detention limit time of work-in-process x;

[0098] S43. According to the preset second sorting rule, first sort the WIPs from large to small according to their SQ values, then sort them from large to small according to their SP values, and finally sort them from large to small according to their comprehensive evaluation scores S(x).

[0099] Specifically, for batch machines, it is necessary to consider the remaining retention limit time, priority, and batching degree. In this embodiment, according to the preset second sorting rule, the WIPs are sorted from large to small according to their SQ values, then from large to small according to their SP values, and finally from large to small according to their comprehensive evaluation scores S(x). The calculation formula for the comprehensive evaluation score of the WIPs is: It is a summation formula. When the grade score SQ and the priority score SP are the same, the more WIPs with the same process parameters, the greater the cumulative comprehensive evaluation score.

[0100] This embodiment's comprehensive evaluation method for batch machines ensures the following: Priority is given to those with more urgent holdover urgency or those with more urgent holdover urgency within the batch; when holdover urgency is not urgent, priority is given to those with higher priority or those with higher priority within the batch; when holdover urgency is the same and the holdover urgency is not urgent, priority is given to the lot with the largest number of batches; and for the same process parameter, the priority order is compared between the lot's own remaining holdover limit level and its priority. This embodiment maximizes batch efficiency and reduces changeover frequency for batch machines through comprehensive evaluation.

[0101] In some embodiments, when the work-in-process enters the schedule, it is determined whether the work-in-process violates the judgment criteria of the restriction judgment rules, and the restriction judgment rules include waiting restriction rules. If the judgment criteria of the waiting restriction rules are violated, a locking event is triggered to lock the machine or the work-in-process.

[0102] Specifically, the work-in-progress includes the predecessor work-in-progress WP and the current work-in-progress WC. When the work-in-progress enters the schedule, the judgment criteria for determining whether the current work-in-progress WC violates the waiting restriction rules relative to the predecessor work-in-progress WP are used. The waiting restriction rules use the remaining detention restriction level, priority and waiting time of the work-in-progress as the judgment criteria.

[0103] For example, the preceding work-in-process (WP) refers to the work-in-process that has been scheduled but not yet completed, and the current work-in-process (WC) refers to the work-in-process that is about to be scheduled. The judgment criterion of the waiting restriction rule is represented by J(WC|WP). , where J(WC|WP)=1 indicates that the current work-in-process WC violates the judgment criteria of the waiting restriction rule relative to the previous work-in-process WP, and J(WC|WP)=0 indicates that the current work-in-process WC does not violate the judgment criteria of the waiting restriction rule relative to the previous work-in-process WP.

[0104] , ,in, Indicates whether the current work-in-process WC has a higher remaining retention limit level than the previous work-in-process WP. As shown in the formula, when L(WP) < 3 and L(WC) ≥ 3, it means that the remaining retention limit level of the previous work-in-process WP is higher than that of the current work-in-process WC. =0; when L(WP)≥3 and L(WC)≥3, the remaining retention levels of the previous work-in-process WP and the current work-in-process WC are both large, indicating that both are in a non-urgent state. =1; when L(WC)<3 and L(WP≥3), it means that the remaining retention limit level of the current work-in-process WC is higher than that of the previous work-in-process WP. =2. Indicates whether the current work-in-process WC has a higher priority than the previous work-in-process WP and violates the priority waiting limit. L represents the remaining detention limit level calculation function. WC priority Indicates the priority of the current work in progress, WP priority Indicates the priority of the preceding work in process, WC wait Indicates the waiting time of the current work in progress; as shown in the formula, WC priority The smaller the value, the higher the priority, that is, WC priority =0, its priority is the highest; therefore, the priority value WP of the current work in process WP priority >WC priority When , it means that the current work in process WC has a higher priority than the previous work in process WP, and when the current work in process WC violates the priority waiting limit, then =1; otherwise =0, for example, WC priority >WP priority hour.

[0105] In this embodiment, if the current work-in-process WC violates the judgment criteria of the waiting restriction rule relative to the previous work-in-process WP, a locking event is triggered, and solution one is adopted: the current machine is locked to ensure that the current machine does not select the previous work-in-process WP until the current work-in-process WC arrives at the station and is loaded onto the machine.

[0106] As an example, Figure 2 As shown, assume that the current work-in-process (WC) has a remaining detention limit level of 3, a priority of 0, an arrival time of t1, a loading time of t2, and a waiting time of t2-t1>1800; the previous work-in-process (WP) has a remaining detention limit level of 3, a priority of 3, and a loading time of t0; and the current machine is EQP01. Based on the above conditions, we can conclude that =1, =1, then J(WC|WP)=1, indicating that the current WC violates the judgment criteria of the waiting restriction rule relative to the previous WC. To ensure that the current machine does not select the previous WC until it can be immediately selected when the current WC arrives, the current machine is locked from the time the previous WC is loaded onto the machine, t0, until the time the current WC arrives at the station, t1. This constructs a locking event: (t0, {"EQP":{EQP01: [t0, t1]}}); scheduling is paused at this time, and the locking event is returned.

[0107] This embodiment uses Solution 1 to lock the current machine, which can prioritize ensuring that the current work-in-progress (WC) is immediately loaded onto the machine upon arrival, avoiding resource contention and overloads. This solution ensures that machines are efficiently utilized during critical time periods, preventing machines from being idle due to waiting. Furthermore, this embodiment only needs to focus on the status of the current machine, reducing the complexity of the scheduling system and making it suitable for single-machine scenarios.

[0108] The residence limit is the maximum time a work-in-process (WIP) is allowed to remain at a certain processing step or machine. The residence limit is the most important constraint in the product scheduling process. When the WIP's remaining residence time (Remaining Residence Time) is ≥ 0, it is still within the allowable range and does not require emergency intervention. However, if the WIP exceeds the residence limit, the remaining time is less than 0, which means it has exceeded the maximum allowable residence time. Immediate action (such as transferring it to another machine) is required. Otherwise, production will be interrupted, equipment will be idle, or subsequent processes will be delayed. If locking the current machine fails to prevent the over-residence limit, option 2 can be used: locking other machines currently processing the step to prevent the over-residence limit.

[0109] As an example, assume that the current work-in-process has a remaining detention limit level of 1, the previous work-in-process has a remaining detention limit level of 1, and the current work-in-process has a remaining detention time less than 0, that is, it exceeds the detention limit. In fact, the current work-in-process has violated the waiting limit, but both are urgent detention situations. Simply using the method of solution 1 to lock the current machine will only form an endless loop of replacement. Therefore, it is necessary to use the method of solution 2 to lock other machines, judge all the optional machines of the current work-in-process, and select other machines to lock. The locking method is the same as solution 1, that is, locking part of the time on another available machine so that the current work-in-process can be put on the machine immediately when it arrives at the station. Figure 3 As shown in the figure, EQP04 and EQP01 have the same processing steps. Since the remaining retention limit level of the previous work-in-process being processed by EQP01 is 1, it is also in an urgent retention state. At this time, if the current machine EQP01 is locked, it will cause an alternating infinite loop. Therefore, this embodiment locks the optional machine EQP04 so that the current work-in-process can be immediately processed on machine EQP04 when it arrives.

[0110] When Option 1 results in an infinite loop, you can choose to lock other available machines (such as EQP04) to disperse the pressure of high-priority tasks. Option 2 introduces multi-machine collaboration to prevent a single machine from being repeatedly preempted by multiple high-priority tasks. Option 2 dynamically selects available machines to adapt to complex production environments (such as multi-process and multi-equipment scenarios). By locking the time windows of other machines in advance, it avoids overruns of current work-in-progress while reducing delays of previous work-in-progress.

[0111] Furthermore, if neither Option 1 (locking the current machine) nor Option 2 (locking other machines) can prevent the occurrence of exceeding the detention limit, Option 3 is adopted to lock the current work-in-process, that is, starting from the detention limit starting step, delaying the time for the current work-in-process to be put on the machine.

[0112] like Figure 4 As shown, assuming that the current work in progress is w , the arrival time at the starting step of the detention restriction is t 0. Computer time t 1. To ensure t 1 moment not selected w On the machine, lock the work in progress w exist t 0- t 1 time period is unavailable, that is, a lock event is constructed: ( t 0,{“LOT”:{ w : [ t 0, t 1]}}); If the overstay limit still occurs, the above operation is repeated to delay the time for the current work-in-process w to be put on the machine until the overstay limit does not occur.

[0113] In this embodiment, when neither Scheme 1 nor Scheme 2 can prevent the limit from being exceeded, Scheme 3 is directly adopted to lock the current work-in-process and forcibly delay its time to be put on the machine. The advantages are as follows: by sacrificing local efficiency (delaying processing), it ensures that the work-in-process does not ultimately violate the detention limit; it serves as a backup mechanism to prevent system crashes due to extreme situations (such as all machines being fully loaded); through multiple delayed locks, it gradually approaches a feasible solution, which is suitable for scheduling optimization under complex constraints.

[0114] In this embodiment, Solution 1 addresses simple preemption, Solution 2 handles multi-machine collaboration, and Solution 3 addresses extreme situations, forming a complete chain of solutions. This embodiment reduces the risk of production line shutdowns due to overruns through dynamic locking and priority scheduling. Multi-machine collaboration and a delayed locking strategy maximize equipment utilization and reduce idle time. Solutions 1 through 3, from preemption and collaboration to backstopping, can adapt to complex situations such as sudden high loads and equipment failures. Through these three solutions, the production scheduling system can achieve a balance between ensuring timeliness, resource utilization, and stability, significantly improving scheduling efficiency in complex manufacturing environments.

[0115] In some embodiments, when the work in process enters the schedule, it is determined whether the work in process violates the judgment criteria of the restriction judgment rules, and the restriction judgment rules include batch restriction rules. If the judgment criteria of the batch restriction rules are violated, a locking event is triggered and the work in process is locked.

[0116] Specifically, the lot grouping limit rule is designed specifically for the lot grouping machine, indicating whether a larger lot can be grouped within the allowed waiting time. The lot grouping limit rule uses the degree of lot grouping and waiting time as the judgment criteria, and judges after a certain time after the lot grouping machine starts processing, and counts whether there are work-in-process arrivals that can be grouped between the start processing time and the inspection time, so as to increase the lot grouping rate and optimize the scheduling.

[0117] As Figure 5 described, assume that the current machine is EQP04, its maximum lot grouping number is M, the current lot grouping number is m < M, and the work-in-process included in the current lot grouping is W = {w1, w2,..., w m}, and their arrival times are a1, a2,..., a m , the process parameters are w recipe , the work-in-process loading time in the current lot grouping is t0, and the calculated inspection time is: , where ; then during scheduling, it will be checked whether there is a work-in-process arrival with process parameters w recipe between t0 - t2; if after inspection, it is statistically obtained that the first n = M - m work-in-processes with process parameters w recipe arriving between t0 - t2 are V = [v1, v2,..., v n , and their arrival times are b1, b2,..., b m , then the latest loading time should be: 4] .

[0118] To ensure that all work-in-processes of W ∪ V can be selected during scheduling at t1, all work-in-processes of W ∪ V are locked, that is, a locking event is constructed:

[0119] (t0, {"LOT":{w1: [a1, t1], w2: [a2, t1],...,w m : [a m , t1], v1: [b1, t1],v2: [b2, t1],..., v n : [b n , t1]}}); At this time, the scheduling is paused and the locking event is returned.

[0120] In this embodiment, based on the lot grouping limit rule, by dynamically merging work-in-processes with the same process, the maximum lot grouping capacity of the machine is achieved, significantly improving the resource utilization rate and production efficiency. The lot grouping limit rule in this embodiment does not lock the machine. At this time, it is possible that the machine selects other work-in-processes for processing due to the locking of the work-in-process. However, if the locked work-in-process violates the waiting limit rule due to this reason, automatically, the locking machine mechanism of the waiting limit rule will be triggered.

[0121] In this embodiment, the sorting rules, locking rules, and restriction determination rules are actually interrelated. During the scheduling process, the restriction determination rules generate locking events based on the sorting rules, which further form the locking rules. The locking rules are then combined with the sorting rules to achieve the purpose of optimizing scheduling.

[0122] In some embodiments, updating the triggering lock event to the lock event list in the order of the lock event occurrence time includes the steps of:

[0123] S71. If the occurrence time of the current locking event is the latest in the locking event list, directly update the current locking event to the last position in the locking event list;

[0124] S72. If the occurrence time of the current locking event is not the latest in the locking event list, the current locking event is updated to the corresponding position in the locking event list in the order of the event occurrence time, and the locking events after the occurrence time of the current locking event are removed.

[0125] Specifically, if Figure 6 As shown, if the event occurrence time t5 of the current locking event (t5, E5) is the latest in the locking event list, that is, it is located after the locking event (t4, E4), then the current locking event (t5, E5) is directly updated to the last position in the locking event list; if the event occurrence time t5 of the current locking event (t5, E5) is not the latest in the locking event list, such as Figure 6 As shown, if the current locking event (t5, E5) is between the locking events (t3, E3) and (t4, E4), the current locking event (t5, E5) is updated to the position between the locking events (t3, E3) and (t4, E4) in the locking event list according to the chronological order of the events, and the locking event (t4, E4) after the event occurrence time t5 of the current locking event (t5, E5) is removed.

[0126] By dynamically inserting new locking events and removing subsequent locking events, the scheduling system in this embodiment can avoid resource conflicts and plan contradictions, quickly adapt to changes in the production environment, and reduce ineffective scheduling overhead.

[0127] In some implementations, updating the lock information according to the updated lock event list comprises the steps of:

[0128] S81. Classify and express the locking events according to machine locking and work-in-process locking;

[0129] S82: If the time periods of the locking events overlap, the two overlapping time periods are merged into one period to obtain the locking information.

[0130] Specifically, for the scheduling system, if the lock information is only related to the machine or work-in-progress, the lock event list needs to be integrated into a new representation:

[0131] {"EQP":{eqp1: [[starttime1, endtime1], [starttime2, endtime2], ...],

[0132] eqp2: [[starttime3, endtime3], [starttime4, endtime4], ...], ...},

[0133] "LOT": {lot1: [[starttime5, endtime5], [starttime6, endtime6], ...],

[0134] lot2: [[starttime7, endtime7], [starttime8, endtime8], ...], ...}},

[0135] If locked time periods overlap, the two periods are merged into one. For example, if E1={“EQP”:{eqp1:[100, 300]}} and E2={“EQP”:{eqp1:[200, 400]}}, they are merged into {“EQP”:{eqp1:[[100,400]]}}. The event occurrence time of the last element in the locked event list must also be recorded. Schedules before this time remain unchanged even if they are rescheduled. To reduce computational complexity, this time is used as the restart time for the scheduling system, leaving the already scheduled events unchanged.

[0136] By merging overlapping time periods, this embodiment allows the scheduling system to avoid wasting memory and computing power due to redundant events, while also integrating information through logical consistency to reduce the risk of scheduling conflicts.

[0137] The above describes the product scheduling method based on the locking event in the embodiment of the present invention. The following describes the product scheduling device based on the locking event in the embodiment of the present invention. Figure 7 In one embodiment of the present invention, a product scheduling device based on a locking event includes:

[0138] An acquisition module 10 is used to acquire product information, work-in-progress information, and machine types, where the machine types include batch machines and non-batch machines;

[0139] Initialization module 20, used to initialize the lock event list and lock information to empty;

[0140] a non-batch machine sorting module 30 for performing multiple sorting on the WIP based on a preset first sorting rule if the machine type is a non-batch machine, wherein the first sorting rule includes two sorting factors: remaining detention limit time and priority, and the order of importance of the two sorting factors is: remaining detention limit time > priority;

[0141] The batch machine sorting module 40 is configured to perform multiple sorting on the WIP based on a preset second sorting rule if the machine type is a batch machine. The second sorting rule includes three sorting factors: remaining residence limit time, priority, and batching degree. The importance of the three sorting factors is in the following order: remaining residence limit time > priority > batching degree.

[0142] A judgment module 50 is used to judge whether the work-in-process violates the judgment criteria of the restriction judgment rules when the work-in-process enters the schedule, and the restriction judgment rules include waiting restriction rules and batch restriction rules;

[0143] A locking module 60 is configured to trigger a locking event and lock the machine or the work in progress if the waiting restriction rule or the batch restriction rule is violated;

[0144] An event updating module 70 is configured to update the triggering locking event to the locking event list in the order of the locking event occurrence time;

[0145] An information updating module 80 is configured to update the locking information according to the updated locking event list;

[0146] The update sorting module 90 is used to continue to perform multiple sorting on the remaining products based on the updated locking information until no new locking events occur and the product scheduling is completed.

[0147] Based on the same idea as the method in the above embodiment, the device provided in the present application can implement the method in the above embodiment. For the convenience of explanation, the structural diagram of the device embodiment only shows the parts related to the embodiment of the present application. Those skilled in the art can understand that the illustrated structure does not constitute a limitation on the device, and may include more or fewer modules than shown in the figure, or a combination of certain modules, or different module arrangements.

[0148] Figure 7 The product scheduling device based on locking events in the embodiment of the present invention is described in detail from the perspective of modular functional entities. The product scheduling device based on locking events in the embodiment of the present invention is described in detail from the perspective of hardware processing.

[0149] Figure 8Figure 1 is a schematic diagram of the structure of a lock event-based product scheduling device provided by an embodiment of the present invention. This lock event-based product scheduling device 100 may vary significantly depending on configuration or performance. It may include one or more central processing units (CPUs) 11 (e.g., one or more processors), memory 12, and one or more storage media 13 (e.g., one or more mass storage devices) storing application programs 133 or data 132. The memory 12 and storage medium 13 may be either ephemeral or persistent storage. The program stored in the storage medium 13 may include one or more modules (not shown), each of which may include a series of instructions and operations within the lock event-based product scheduling device 100. Furthermore, the processor 11 may be configured to communicate with the storage medium 13 to execute the series of instructions and operations stored in the storage medium 13 on the lock event-based product scheduling device 100.

[0150] The product scheduling device 100 based on locking events may further include one or more power supplies 14, one or more wired or wireless network interfaces 15, one or more input and output interfaces 16, and / or one or more operating systems 131, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. It will be understood by those skilled in the art that Figure 8 The device structure shown does not constitute a limitation of the locking event-based product scheduling device 100 , and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0151] The present invention also provides a computer-readable storage medium, which may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium. The computer-readable storage medium stores instructions that, when executed on a computer, cause the computer to execute the steps of a product scheduling method based on locking events.

[0152] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems, devices, and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0153] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or all or 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 for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0154] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that the technical solutions described in the above embodiments can still be modified, or some of the technical features thereof can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A product scheduling method based on locking events, characterized in that: Including the steps: Obtain product information, work-in-progress information, and machine types, where the machine types include batch machines and non-batch machines. Among them, the product information includes the process flow of the product, the process parameters of each processing step, the available machines and their production capacities of the product, the start and end steps and the restricted time of the product's residence restriction. The work-in-progress information includes the type of work-in-progress, the quantity of work-in-progress, the current step of the work-in-progress, and the remaining residence restriction time of the work-in-progress; Initialize the locked event list and the locked information to be empty; If the machine type is a non-batch machine, the WIP is multi-sorted based on the preset first sorting rule. Specifically, when scheduling the WIP for the idle non-batch machine, the WIP is first sorted from smallest to largest according to the remaining retention limit level based on the first sorting rule. The remaining retention limit level is divided according to the remaining retention limit time. The remaining retention limit level Lr is expressed as: , where L represents the remaining detention limit level calculation function, and Tr represents the remaining detention limit time; and then the WIPs are sorted in ascending order of priority, with the smaller the priority value, the higher the priority; If the machine type is a batch machine, multiple sorting is performed on the work-in-progress based on the preset second sorting rule. Specifically, when scheduling work-in-progress for a batch machine in an idle state, the formula and Calculate the grade score SQ of the remaining retention limit event of the work-in-process and the priority score SP of the work-in-process respectively; calculate the comprehensive evaluation score of the work-in-process based on the grade score SQ of the remaining retention limit event of the work-in-process, the priority score SP of the work-in-process and the batching degree of the work-in-process , where X represents all optional WIPs, y represents the degree of batching of WIPs, i.e. the number of products in X with the same process parameters as WIP x, x recipe represents the process parameters of the product x, x priority Indicates the priority of work in progress x, x remain Indicates the remaining detention limit time of the work-in-process (WIP) x; according to the preset second sorting rule, the WIPs are first sorted from largest to smallest by their SQ values, then by their SP values, and finally by their comprehensive evaluation scores S(x). When the work-in-progress enters the scheduling, determine whether the work-in-progress violates the judgment criteria of the restriction judgment rules, where the restriction judgment rules include the waiting restriction rule and the batch grouping restriction rule; If the waiting restriction rule is violated, trigger a locked event and perform the locking operation in the following order: (a) Lock the current machine to ensure that the current machine does not select the previous work-in-progress until the current work-in-progress arrives at the machine; (b) If locking the current machine cannot prevent the occurrence of exceeding the residence restriction, select one from all the optional machines suitable for processing the current work-in-progress for locking to ensure that the current work-in-progress is immediately put on the machine when it arrives at the station; (c) If locking the current machine and other machines cannot prevent the occurrence of exceeding the residence restriction, lock the current work-in-progress, and gradually delay the time when the current work-in-progress is put on the machine starting from the arrival time of the start step of the residence restriction until there is no occurrence of exceeding the residence restriction; If the batch grouping restriction rule is violated, trigger a locked event and lock the work-in-progress; Update the triggered locked event to the locked event list in the order of the occurrence time of the locked event; Update the locked information according to the updated locked event list; Continue to perform multiple sorting on the remaining products based on the updated locked information until no new locked events occur and the product scheduling is completed.

2. The product scheduling method based on locking events according to claim 1, characterized in that: When the work-in-progress enters the scheduling, determine whether the work-in-progress violates the judgment criteria of the restriction judgment rules, where the restriction judgment rules include the waiting restriction rule and the batch grouping restriction rule, including the steps: The work-in-progress includes the previous work-in-progress and the current work-in-progress. When the work-in-progress enters the scheduling, determine whether the current work-in-progress violates the judgment criteria of the waiting restriction rule relative to the previous work-in-progress. The waiting restriction rule uses the remaining residence restriction level, priority, and waiting time of the work-in-progress as the judgment criteria; When the work-in-progress enters the scheduling, determine whether the current work-in-progress violates the judgment criteria of the batch grouping restriction rule. The batch grouping restriction rule uses the degree of batch grouping and the waiting time as the judgment criteria.

3. The product scheduling method based on locking events according to claim 2, characterized in that: The judgment criterion of the waiting restriction rule is expressed as J(WC|WP), , where WC represents the current work-in-process, WP represents the previous work-in-process, J(WC|WP)=1 indicates that the current work-in-process WC violates the judgment criteria of the waiting restriction rule relative to the previous work-in-process WP, and J(WC|WP)=0 indicates that the current work-in-process WC does not violate the judgment criteria of the waiting restriction rule relative to the previous work-in-process WP. , ,in, Indicates whether the current work-in-process WC has a higher remaining retention limit level than the previous work-in-process WP. Indicates whether the current work-in-process (WC) has a higher priority than the previous work-in-process (WP) and violates the priority waiting limit. L represents the remaining detention limit level calculation function. WCpriority represents the priority of the current work-in-process (WC), WPpriority represents the priority of the previous work-in-process (WP), and WCwait represents the waiting time of the current work-in-process (WC).

4. The product scheduling method based on locking events according to claim 2, characterized in that: If the judgment criteria of the batch grouping restriction rule are violated, trigger a locked event and lock the work-in-progress, including the steps: Assume that the maximum batchable quantity of the current batch machine is M, the current batch quantity is m < M, and the work-in-progress included in the current batch quantity is W. Count whether there is a batchable work-in-progress with the same process parameters as the work-in-progress W arriving at the station from the start time t0 when the work-in-progress W is put on the machine in the current batch to the inspection time t2; If so, a locking event is triggered, and n=Mm batchable WIPs V are obtained statistically, and the WIPs W and V are locked from the loading time t0 of WIP W to the latest loading time t1 of the batchable WIPs V.

5. The product scheduling method based on locking events according to claim 1, characterized in that: Updating the triggering lock event to the lock event list in the order of the lock event occurrence time includes the steps of: If the occurrence time of the current lock event is the latest in the lock event list, the current lock event is directly updated to the last position in the lock event list; If the occurrence time of the current locking event is not the latest in the locking event list, the current locking event will be updated to the corresponding position in the locking event list in the order of the event occurrence time, and the locking events after the occurrence time of the current locking event will be removed.

6. A product scheduling device based on locking events, characterized in that: include: an acquisition module, configured to acquire product information, work-in-process (WIP) information, and machine type, wherein the machine type includes batch machines and non-batch machines. The product information includes the product's process flow, process parameters for each processing step, available machines for the product and their production capacity, and the product's retention limit start and end steps and time limits. The WIP information includes the WIP type, WIP quantity, current WIP step, and the WIP's remaining retention limit time. Initialization module, used to initialize the lock event list and lock information to empty; The non-batch machine sorting module is used to perform multiple sorting of work-in-process (WIP) based on a preset first sorting rule if the machine type is a non-batch machine. Specifically, when scheduling WIP for an idle non-batch machine, the WIP is first sorted from smallest to largest according to the remaining retention limit level based on the first sorting rule. The remaining retention limit level is divided according to the remaining retention limit time. The remaining retention limit level Lr is expressed as: , where L represents the remaining detention limit level calculation function, and Tr represents the remaining detention limit time; and then the WIPs are sorted in ascending order of priority, with the smaller the priority value, the higher the priority; The batch machine sorting module is used to perform multiple sorting of the work-in-progress based on the preset second sorting rule if the machine type is a batch machine. Specifically, when scheduling the work-in-progress for the batch machine in the idle state, the formula and Calculate the grade score SQ of the remaining retention limit event of the work-in-process and the priority score SP of the work-in-process respectively; calculate the comprehensive evaluation score of the work-in-process based on the grade score SQ of the remaining retention limit event of the work-in-process, the priority score SP of the work-in-process and the batching degree of the work-in-process , where X represents all optional WIPs, y represents the degree of batching of WIPs, i.e. the number of products in X with the same process parameters as WIP x, x recipe represents the process parameters of the product x, x priority Indicates the priority of work in progress x, x remain Indicates the remaining detention limit time of the work-in-process (WIP) x; according to the preset second sorting rule, the WIPs are first sorted from largest to smallest by their SQ values, then by their SP values, and finally by their comprehensive evaluation scores S(x). a judgment module, configured to judge whether the work-in-process violates a judgment criterion of a restriction judgment rule when the work-in-process enters the schedule, wherein the restriction judgment rule includes a waiting restriction rule and a batch restriction rule; The locking module is used to trigger a locking event if the waiting restriction rule is violated, and perform locking operations in the following order: (a) lock the current machine to ensure that the current machine does not select the previous work-in-progress until the current work-in-progress arrives and is put on the machine; (b) if locking the current machine cannot prevent the occurrence of the overstay restriction, select one of all other optional machines suitable for processing the current work-in-progress to lock, to ensure that the current work-in-progress is immediately put on the machine when it arrives; (c) if locking the current machine and other machines cannot prevent the occurrence of the overstay restriction, lock the current work-in-progress, and gradually postpone the time to put the current work-in-progress on the machine from the arrival time of the starting step of the overstay restriction until no overstay restriction occurs; if the group batch restriction rule is violated, trigger a locking event and lock the work-in-progress; An event updating module, configured to update the triggering locking event to the locking event list in the order of the locking event occurrence time; An information updating module, configured to update the locking information according to the updated locking event list; The update sorting module is used to continue to perform multiple sorting on the remaining products based on the updated locking information until no new locking events occur and the product scheduling is completed.

7. A product scheduling device based on locking events, characterized in that: comprising a memory and at least one processor, wherein the memory has computer-readable instructions stored therein; The at least one processor calls the computer-readable instructions in the memory to execute the various steps of the product scheduling method based on locking events according to any one of claims 1 to 5.

8. A computer-readable storage medium having computer-readable instructions stored thereon, characterized in that: When the computer-readable instructions are executed by a processor, the steps of the product scheduling method based on locking events as described in any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Method and model for calculating processing time of semiconductor equipment, equipment and storage medium

    CN119477591A