Product scheduling method and device based on locking event, equipment and storage medium
Through the product scheduling method based on lock events, the problem that the existing technology is difficult to generate optimized scheduling plans under multiple constraints is solved, efficient and flexible production scheduling is achieved, and processing efficiency and resource utilization are improved.
Patent Information
- Application Number
- CN202510629166.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-16
- Publication Date
- 2025-06-13
- Estimated Expiration
- 2045-05-16
AI Technical Summary
Existing scheduling methods are difficult to generate feasible and optimized scheduling plans under retention time limits, batch processing and priority limits, resulting in low product processing efficiency.
The product scheduling method based on lock events is adopted. By obtaining product information and machine type, the lock event list is initialized, the sorting rules are selected according to the machine type, the limit judgment rules are judged, the lock event is triggered, the machine or product in production is locked, the lock event list is updated, until the product scheduling is completed.
Rapidly generate feasible and optimized scheduling plans in a dynamic environment, meeting multiple constraints of residence time, batch processing and priority, improving production flexibility and efficiency, and avoiding production delays and resource waste.
Smart Images

Figure CN120146810A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of production scheduling, and in particular, to a product scheduling method, device, equipment and storage medium based on locking events. Background Art
[0002] Residence time constraints often occur in the manufacturing of industries such as semiconductors and PCBs, which means that after a step of processing is completed, it needs to be completed to the specified step within a certain time. For example, in the furnace tube area of a wafer fab, the processing flow involves multiple key steps (such as acid tank decontamination, high-temperature oxidation, deposition, etc.), and each step needs to strictly follow time limits and process parameters. Its main technical problems include: Residence Time Constraint: For example, the wafer after acid tank decontamination needs to enter the furnace tube within the specified time, otherwise surface oxidation or contamination will lead to rework or even scrapping.
[0003] Batch processing efficiency: The advantage of batch processing is that multiple small batches (Lots) can be processed simultaneously. For example, a furnace tube machine can process 4-6 small batches at the same time; while its disadvantage is that the processing speed is slow and it takes a particularly long time. Therefore, once processing starts, the subsequent arriving products need to wait. In the case of an incomplete batch, if small batches with the same process parameters arrive later, it will cause waste of production capacity and even exceed the residence time limit.
[0004] Priority conflict: "Bullet Lot" is a label for a product, which represents the highest-grade product. After a high-priority product (such as "Bullet Lot") arrives at the station, it is only allowed to wait for a small amount of time and then must be loaded onto the machine for processing, unless the processing product is about to exceed the residence time limit or is also a Bullet Lot product. Extended from this, different grades of products have different waiting time controls. High-grade products cannot wait for low-grade products, but traditional scheduling methods are difficult to balance multi-objective requirements in a dynamic environment.
[0005] Existing scheduling methods are mainly divided into two categories: rule screening methods, based on simple priorities or first-in-first-out (FIFO) rules, which cannot handle multi-constraint conflicts (such as simultaneously satisfying residence restrictions and batch optimization); mathematical programming methods, which solve the optimal schedule through linear programming or genetic algorithms, but have a high computational complexity and are difficult to respond to dynamic changes in real time (such as order insertion and machine failures).
[0006] Therefore, under the residence time limit, batch processing, and priority limit, it is very difficult to complete a relatively optimal production scheduling plan, and the existing scheduling methods cannot guarantee to meet the requirements of these limitations. The existing technology still needs to be improved and developed. Summary of the Invention
[0007] To overcome the deficiencies of the prior art, 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 methods cannot meet the requirements of residence time limit, batch processing and priority limit, resulting in low product processing efficiency.
[0008] The first aspect of the present invention provides a product scheduling method based on locking events, including the steps of: obtaining product information, work-in-progress information and machine types, where the machine types include batch machines and non-batch machines; initializing the 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-progress based on a preset first sorting rule, where the first sorting rule includes two sorting factors, namely the remaining residence limit time and priority, and the importance levels of the two sorting factors are: remaining residence limit time > priority; if the machine type is a batch machine, performing multiple sorting on the work-in-progress based on a preset second sorting rule, where the second sorting rule includes three sorting factors, namely the remaining residence limit time, priority and batchability, and the importance levels of the three sorting factors are in turn: remaining residence limit time > priority > batchability; when the work-in-progress enters the scheduling, determining whether the work-in-progress violates the judgment criteria of the restriction judgment rule, where the restriction judgment rule includes a waiting restriction rule and a batch restriction rule; if the waiting restriction rule or the batch restriction rule is violated, triggering a locking event to lock the machine or the work-in-progress; updating the triggered locking event to the locking event list in the order of the occurrence time of the locking event; updating the locking information according to the updated locking event list; continuing 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.
[0009] Optionally, in the first implementation manner of the first aspect of the present invention, if the machine type is a non-batch machine, performing multiple sorting on the work-in-progress based on a preset first sorting rule, where the first sorting rule includes two sorting factors, namely the remaining residence limit time and priority, and the importance levels of the two sorting factors are: remaining residence limit time > priority, includes the steps of: when scheduling the work-in-progress for an idle non-batch machine, first sorting in ascending order according to the remaining residence limit level of the work-in-progress based on the first sorting rule, where the remaining residence limit level is divided according to the remaining residence limit time, and the remaining residence limit level Lr is expressed as: , where L represents the remaining residence limit level calculation function and Tr represents the remaining residence limit time; then sorting in ascending order according to the priority of the work-in-progress.
[0010] Optionally, in the second implementation manner 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. The second sorting rule includes three sorting factors: remaining residence limit time, priority, and batchability. The importance levels of the three sorting factors are as follows: remaining residence limit time > priority > batchability, and the method includes the steps: when scheduling the work-in-progress for an idle batch machine, calculate the rank score SQ of the remaining residence limit event of the work-in-progress and the priority score SP of the work-in-progress respectively according to the formulas and ; calculate the comprehensive evaluation score of the work-in-progress based on the rank score SQ of the remaining residence limit event of the work-in-progress, the priority score SP of the work-in-progress, and the batchability of the work-in-progress. Wherein, X represents all optional work-in-progress, y represents the batchability of the work-in-progress, that is, the number of products with the same process parameters as the work-in-progress x in X is traversed, x recipe represents the process parameters of the work-in-progress x, x priority represents the priority of the work-in-progress x, x remain represents the remaining residence limit time of the work-in-progress x; sort in descending order according to the SQ value of the work-in-progress first, then in descending order according to the SP value of the work-in-progress, and finally in descending order according to the comprehensive evaluation score S(x) of the work-in-progress according to the preset second sorting rule.
[0011] Optionally, in the fourth implementation manner of the first aspect of the present invention, when the work-in-progress enters the scheduling, it is judged whether the work-in-progress violates the judgment criteria of the restriction judgment rule. The restriction judgment rule includes a waiting restriction rule and a batch restriction rule, and the method includes the steps: the work-in-progress includes a previous work-in-progress and a current work-in-progress. When the work-in-progress enters the scheduling, it is judged 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 limit level, priority, and waiting time of the work-in-progress as the judgment criteria; when the work-in-progress enters the scheduling, it is judged whether the current work-in-progress violates the judgment criteria of the batch restriction rule. The batch restriction rule uses the batchability and waiting time as the judgment criteria.
[0012] Optionally, in the fourth implementation manner of the first aspect of the present invention, if the judgment criteria of the waiting restriction rule are violated, a locking event is triggered to lock the machine or the work-in-progress, and the method includes the steps: the judgment criteria of the waiting restriction rule are represented by J(WC|WP), , where WC represents the current work in process, WP represents the previous work in process, J(WC|WP)=1 represents the judgment criterion that the current work in process WC violates the waiting limit rule relative to the previous work in process WP, and J(WC|WP)=0 represents the judgment criterion that the current work in process WC does not violate the waiting limit rule relative to the previous work in process WP. , , where indicates whether the remaining stay limit level of the current work in process WC is higher than that of the previous work in process WP. indicates whether the priority of the current work in process WC is higher than that of the previous work in process WP and violates the priority waiting limit. L represents the remaining stay limit level calculation function, WC priority represents the priority of the current work in process, WP priority represents the priority of the previous work in process, WC wait represents the waiting time of the current work in process; if the judgment criterion that the current work in process WC violates the waiting limit rule relative to the previous work in process 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 process WP until the current work in process WC arrives at the station and is loaded onto the machine; if locking the current machine cannot prevent the occurrence of exceeding the stay limit, a machine suitable for processing the current work in process WC is selected from all optional machines and locked to ensure that the current work in process is immediately loaded onto the machine when it arrives at the station; if locking the current machine and other machines cannot prevent the occurrence of exceeding the stay limit, the current work in process is locked, and starting from the arrival time of the exceeding stay limit starting step, the loading time of the current work in process is gradually postponed until there is no exceeding stay limit.
[0013] Optionally, in the fifth implementation manner of the first aspect of the present invention, if the judgment criterion for violating the batch grouping limit rule is met, a locking event is triggered to lock the work in process, including the steps of: assuming that the maximum batch grouping number of the current batch of machines is M, the current batch grouping number is m < M, the work in process included in the current batch grouping is W, and the loading time t of the work in process W in the current batch is counted 0 starting from the inspection time t 2 , and checking whether there is a batch-groupable work in process with the same process parameters as the work in process W arriving at the station; if there is, a locking event is triggered, n = M - m batch-groupable works in process V are counted, and starting from the loading time t of the work in process W 0 until the latest loading time t of the batch-groupable work in process V 1 the work in process W and V are locked.
[0014] Optionally, in the sixth implementation manner of the first aspect of the present invention, updating the triggered locking event to the locking event list in the order of the occurrence time of the locking event includes the steps of: if the event 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; if the event occurrence time of the current locking event is not the latest in the locking event list, update the current locking event to the corresponding position in the locking event list according to the order of the event occurrence time, and delete the locking events after the event occurrence time of the current locking event.
[0015] The second aspect of the present invention provides a product scheduling device based on locking events, including: an acquisition module, configured to acquire product information, in-process product information, and machine types, where the machine types include batch machines and non-batch machines; an initialization module, configured to initialize the locking event list and the locking information to be empty; a non-batch machine sorting module, configured to, if the machine type is a non-batch machine, perform multiple sorting on the in-process products based on a preset first sorting rule, where the first sorting rule includes two sorting factors, namely the remaining retention limit time and the priority, and the importance degree of the two sorting factors is: remaining retention limit time > priority; a batch machine sorting module, configured to, if the machine type is a batch machine, perform multiple sorting on the in-process products based on a preset second sorting rule, where the second sorting rule includes three sorting factors, namely the remaining retention limit time, the priority, and the batchability degree, and the importance degree of the three sorting factors is in turn: remaining retention limit time > priority > batchability degree; a judgment module, configured to, when the in-process product enters the scheduling, judge whether the in-process product violates the judgment criteria of the restriction judgment rule, where the restriction judgment rule includes a waiting restriction rule and a batch formation restriction rule; a locking module, configured to, if the waiting restriction rule or the batch formation restriction rule is violated, trigger a locking event to lock the machine or the in-process product; an event update module, configured to update the triggered locking event to the locking event list in the order of the occurrence time of the locking event; an information update module, configured to update the locking information according to the updated locking event list; an update sorting module, configured 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.
[0016] The third aspect of the present invention provides a product scheduling device based on locking events, including: a memory and at least one processor, where computer-readable instructions are stored in the memory, and the memory and the at least one processor are interconnected by a line; the at least one processor calls the computer-readable instructions in the memory to enable the product scheduling device based on locking events to execute each step of the product scheduling method based on locking events as described above.
[0017] The fourth aspect of the present invention provides a computer-readable storage medium, in which computer-readable instructions are stored. When it runs on a computer, it causes the computer to execute each step of the product scheduling method based on the locking event as described above.
[0018] One or more technical solutions proposed in this application have at least the following technical effects: Under multiple constraints such as residence time limit (e.g., after acid tank decontamination, it needs to quickly enter the furnace tube), batch processing (maximizing machine utilization rate), and priority control (e.g., "Bullet Lot" is given priority for processing), through the synergistic effect of sorting rules, locking rules, and limit determination rules, the present invention can quickly generate a feasible and optimized scheduling plan. The scheduling method of the present invention can handle frequent order insertions and complex and changeable order situations, making enterprise production more flexible and efficient, thereby avoiding production delays or resource waste caused by rule conflicts. Description of the Drawings
[0019] The drawings here are incorporated into the specification and form a part of this specification, showing embodiments consistent with this application, and are used together with the specification to explain the principles of this application.
[0020] In order to more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0021] Figure 1 It is a flowchart of the product scheduling method based on the locking event provided by the embodiment of the present invention.
[0022] Figure 2 It is a schematic diagram of locking the current machine due to violation of the waiting limit rule in the embodiment of the present invention.
[0023] Figure 3 It is a schematic diagram of locking other machines due to violation of the waiting limit rule in the embodiment of the present invention.
[0024] Figure 4 It is a schematic diagram of locking the work-in-progress due to violation of the waiting limit rule in the embodiment of the present invention.
[0025] Figure 5 It is a schematic diagram of locking the work-in-progress due to violation of the batch grouping limit rule in the embodiment of the present invention.
[0026] Figure 6 It is a schematic diagram of updating the locking event list in the embodiment of the present invention.
[0027] Figure 7Schematic structural diagram of a product scheduling device based on a locking event provided by the present invention.
[0028] Figure 8 Schematic structural diagram of a product scheduling device based on a locking event provided by the present invention. Specific implementation manners
[0029] Embodiments of the present invention provide a product scheduling method, device, equipment and storage medium based on a locking event. Terms such as "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and do not necessarily need to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the term "including" or "having" and any deformation thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or equipment including a series of steps or units does not necessarily have to be limited to those clearly listed steps or units, but may include other steps or units not clearly listed or inherent to these processes, methods, products or equipment.
[0030] Please refer to Figure 1 , Figure 1 Flowchart of a product scheduling method based on a locking event provided by the present invention. As shown in the figure, it includes the following steps: S10. Obtain product information, in-process product information and machine types, where the machine types include batch machines and non-batch machines; In this embodiment, the product information includes the process flow of the product, process parameters (Recipe) of each processing step, available machines and their production capacities of the product, start and end steps and limit times of the product's residence limit; in-process products refer to products being processed in small batches (Lots), and the in-process product information includes in-process product types, in-process product quantities, current steps of in-process products, and remaining residence limit times of in-process products; the machine types include batch (Batch) machines and non-batch machines. The batch machines can process multiple small batches of in-process products simultaneously, such as the acid tank machine and furnace tube machine in the furnace tube area; the non-batch machines can only process a single small batch of in-process products.
[0031] To explain the above name, a practical scenario in the furnace tube area of a wafer fab is now used as an example: Assume there is the following product information, work-in-progress information, and machine type information. There are currently work-in-progress Lots Lot1, Lot2, and Lot3. Lot1 belongs to product type A, with a quantity of 100 pieces, and is currently in the acid bath decontamination step, with a remaining residence limit time of 1800 seconds; Lot2 belongs to product type B, with a quantity of 80 pieces, and is currently in the preparation step before furnace tube processing, with a remaining residence limit time of 3600 seconds; Lot3 belongs to product type A, with a quantity of 120 pieces, and is also currently in the acid bath decontamination step, with a remaining residence limit time of 2700 seconds.
[0032] In terms of product information, the process flow of product A includes steps such as acid bath decontamination, furnace tube processing, and cleaning. The process parameters for the acid bath decontamination step are RecipeA1, and the process parameters for the furnace tube processing step are RecipeA2. The available machines are acid bath machines EQP01 and EQP02, and furnace tube machines EQP03 and EQP04. Among them, the production capacity of acid bath machine EQP01 is 200 pieces per hour, EQP02 is 180 pieces per hour, the production capacity of furnace tube machine EQP03 is 150 pieces per hour, EQP04 is 160 pieces per hour, and the residence limit time from the acid bath 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 will not be listed in detail here.
[0033] The machine types include batch machines and non-batch machines. Acid bath machines EQP01 and EQP02, as well as furnace tube machines EQP03 and EQP04, all belong to batch machines and can process multiple Lots simultaneously. In this embodiment, after obtaining this work-in-progress information, product information, and machine type, they are input into the scheduling device as the basic data for subsequent scheduling.
[0034] 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, in-vehicle computer, cloud server, mobile phone, etc., or an electronic device capable of implementing the above functions.
[0035] S20: Initialize the locked event list and the lock information to be empty; Specifically, before the scheduling starts, both the locked event list and the lock information in the system are in an initial state. The locked event list is used to record events that require locking machines or work-in-progress during the scheduling process. At this time, it is an empty list without any locked event records. The lock information is used to store the locked time periods of machines and work-in-progress, and is initially empty, that is, no machines or work-in-progress are locked. This step provides a clean starting environment for subsequent scheduling operations to ensure that the scheduling process is not interfered with initially.
[0036] Exemplarily, the locking event is a binary tuple (t, E), where t represents the event occurrence time, and E is the locking detail, in the form of key-value pairs, specifically shown 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 locked type is a machine tool or work-in-progress. eqp i is the machine tool name, and lot j is the work-in-progress name. starttimek and endtimek respectively represent the locking start time and the locking end time.
[0037] S30. If the machine tool type is a non-batch machine tool, then perform multiple sorting on the work-in-progress based on a preset first sorting rule. The first sorting rule includes two sorting factors: the remaining residence limit time and the priority. The importance levels of the two sorting factors are: remaining residence limit time > priority; S40. If the machine tool type is a batch machine tool, then perform multiple sorting on the work-in-progress based on a preset second sorting rule. The second sorting rule includes three sorting factors: the remaining residence limit time, the priority, and the batchability. The importance levels of the three sorting factors are in sequence: remaining residence limit time > priority > batchability; Specifically, the remaining residence limit time refers to the longest allowed waiting time for the work-in-progress to enter the next key step within a specified time after the current processing step is completed. For example, the wafer after acid tank decontamination needs to enter the furnace tube processing within 3600 seconds, otherwise rework or scrapping may occur due to oxidation or contamination; the shorter the remaining time, the higher the urgency. The priority refers to the processing importance level of different work-in-progress (Lot), usually represented by a numerical value. The smaller the numerical value, the higher the priority. For example: Priority 0: Highest priority (such as "Bullet Lot"), which needs to be processed immediately; Priority 1: Normal order; Priority 2: Low-priority order. The batchability 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.
[0038] In this embodiment, a first sorting rule and a second sorting rule are preset according to the machine type. If the machine type is a non-batch machine, multiple sorts are performed on the work-in-progress based on the preset first sorting rule. The first sorting rule includes two sorting factors: the remaining residence limit time and the priority. The importance levels of the two sorting factors are: remaining residence limit time > priority. That is, when sorting, the Lot with the shortest remaining time is processed first, followed by the Lot with a high priority. If the machine type is a batch machine, multiple sorts are performed on the work-in-progress based on the preset second sorting rule. The second sorting rule includes three sorting factors: the remaining residence limit time, the priority, and the batchability. The importance levels of the three sorting factors are in turn: remaining residence limit time > priority > batchability. That is, when sorting, the Lot with the shortest remaining time is processed first, followed by the Lot with a high priority, and finally batch optimization is considered.
[0039] As an example, assume that the current idle machine is the acid tank batch machine EQP01 with a maximum capacity of 4 batches. The Lots to be scheduled are as follows: Lot A: Remaining time 200 seconds (level 1), priority 0, process parameter RecipeA; Lot B: Remaining time 200 seconds (level 1), priority 1, process parameter RecipeA; Lot C: Remaining time 800 seconds (level 3), priority 2, process parameter RecipeB; Lot D: Remaining time 800 seconds (level 3), priority 2, process parameter RecipeA.
[0040] Then, according to the second sorting rule of this embodiment, the sorting process is as follows: 1. Sorting by remaining residence time: Lot A = Lot B (level 1) > Lot C (level 2) > Lot D (level 3); 2. Sorting by priority: Within level 1: Lot A (priority 0) > Lot B (priority 1); 3. Batchability: The levels and priorities of LotC and LotD are the same. However, the process parameter of LotD is the same as that of Lot A and LotB. Therefore, to ensure the maximum processing efficiency, the sorting priority of LotD is greater than that of LotC.
[0041] Based on this, the final scheduling order: Lot A (shortest remaining time, highest priority) > Lot B (same remaining time but lower priority) > Lot D (process parameter same as Lot A and LotB) > Lot C (process parameter different from Lot A and LotB).
[0042] Through the comprehensive sorting of remaining residence time limit, priority, and batchability, this method achieves the following balance in a dynamic production environment: Emergency demand first: Ensure that Lots with urgent residence time are processed in a timely manner; High-priority guarantee: Maintain the delivery commitment of important orders; Resource efficiency improvement: Reduce machine idle time through batch optimization. This hierarchical sorting strategy effectively solves the multi-constraint scheduling problem and is applicable to complex semiconductor manufacturing scenarios.
[0043] S50. When the work-in-progress enters scheduling, determine whether the work-in-progress violates the judgment criteria of the restriction judgment rule, where the restriction judgment rule includes a waiting restriction rule and a batch restriction rule; Specifically, the definition of the waiting restriction rule is: Set the maximum waiting time threshold according to the priority of the work-in-progress. The higher the priority, the shorter the allowed waiting time; Example thresholds are as follows: Priority 0 (highest): Maximum waiting time 1800 seconds (30 minutes); Priority 1: Maximum waiting time 3600 seconds (1 hour); Priority 2: Maximum waiting time 7200 seconds (2 hours).
[0044] The judgment criterion of the waiting restriction rule is: Detect whether the waiting time of the work-in-progress at a certain processing step exceeds the maximum value allowed by its priority.
[0045] The definition of the batch restriction rule is: For batch machines, it is required to check whether there are enough subsequent Lots with the same process parameters to form a full batch within a certain time after starting processing. If the maximum batch capacity is not reached and there are mergeable Lots, trigger batch optimization.
[0046] Example parameters are as follows: Maximum capacity of Batch machine: 6 batches; Batch waiting time window: From the current processing start time to the next 2 hours.
[0047] As an example, assume there is an acid bath machine EQP01 (Batch machine, maximum capacity 6 batches) in the scenario; Work-in-progress information is as follows: Lot A: Priority 0, process parameter RecipeA, arrival time t = 0 seconds, waiting time has accumulated 2000 seconds (exceeded by 200 seconds); Lot B: Priority 1, process parameter RecipeA, arrival time t = 500 seconds; Lot C: Priority 2, process parameter RecipeB, arrival time t = 1000 seconds; Current processing: EQP01 has processed 4 batches of Lot of RecipeA, with 2 batches of capacity remaining.
[0048] During the execution of step S40, the determination of the waiting limit rule is as follows: Assume Lot A: The maximum waiting time for priority 0 is 1800 seconds, and the actual waiting time is 2000 seconds, then it is determined to be a violation.
[0049] Assume Lot B: Priority 1 allows 3600 seconds, and the current waiting time is 1500 seconds (calculated at t = 2000 seconds), then it is determined not to be a violation.
[0050] Assume Lot C: Priority 2 allows 7200 seconds, and the current waiting time is 1000 seconds, then it is determined not to be a violation.
[0051] The determination of the lot grouping limit rule is as follows: Assume: Current batch status: EQP01 has processed 4 batches of Lot of RecipeA, with 2 batches of capacity remaining; Lot grouping inspection window: From the current time t = 2000 seconds, waiting is allowed until t = 5600 seconds (1 hour). Subsequent Lot situation: It is expected that 2 batches of Lot of RecipeA (Lot D, Lot E) will arrive within the next 1 hour.
[0052] Then the determination result is as follows: Determination result: Lot D and Lot E can be combined to form a full batch of 6 batches, without violation; if there are no subsequent Lots with the same parameters arriving in the future, a lot grouping shortage violation will be triggered.
[0053] S60. If the waiting limit rule or the lot grouping limit rule is violated, a locking event is triggered to lock the machine or the work-in-progress. Specifically, if the judgment criteria of the limit determination rule are violated, a locking event is triggered to lock the machine or the work-in-progress to avoid production interruption or resource waste. As an example, the processing time of the Lot can be adjusted by locking the work-in-progress to avoid conflicts; the current machine can also be locked to prevent the previous Lot from occupying the opportunity and release resources to the emergency Lot; other machines can also be locked and switched to the standby machine to process the emergency Lot. If the judgment criteria of the limit determination rule are not violated, the remaining products are sorted multiple times according to the preset sorting rule until the product scheduling is completed. Through dynamically detecting the waiting time and lot grouping conditions, and based on the limit determination rule and the locking event, this embodiment ensures the efficient scheduling of the work-in-progress under strict constraints. Its core value lies in real-time error correction: quickly identifying violations and triggering adjustments to avoid production interruption or resource waste; multi-objective balance: achieving the optimal trade-off among priority, detention limit, and lot grouping requirements; automated decision-making: reducing human intervention and improving the response speed and accuracy of the scheduling system.
[0054] S70. Update the triggered lock events to the lock event list in the chronological order of the occurrence time of the lock events; In this embodiment, the information of each lock event is recorded in chronological order in the lock event list, which is convenient for subsequent management and analysis of the lock events. S80. Update the lock information according to the updated lock event list; Specifically, in this embodiment, the updated lock event list is converted into a lock time list of machines and Lots, and the lock time list of machines and Lots is updated to the initially empty lock information to obtain the updated lock information. By integrating to obtain unified lock information, it is convenient for the scheduling system to quickly identify unavailable resources.
[0055] S90. Continue to perform multiple sorting on the remaining products based on the updated lock information until no new lock events occur and the product scheduling is completed.
[0056] Specifically, according to the updated lock information, the sorting and determination steps are re-executed until no new lock events are generated and the scheduling of the remaining products is completed.
[0057] Through the collaborative action of the sorting rule, the locking rule and the restriction determination rule, the present invention quickly generates a feasible and optimized scheduling plan. The scheduling method of the present invention realizes the following advantages: high real-time performance: quickly responding to dynamic changes and reducing production delays; multi-constraint collaboration: simultaneously meeting the residence time limit, priority and lot-sizing requirements; maximizing resource utilization: improving the machine production capacity through dynamic locking and lot-sizing optimization; reducing human intervention: automated scheduling reduces human decision-making errors.
[0058] In some embodiments, if the machine type is a non-batch machine, multiple sorting is performed on the work-in-progress based on a preset first sorting rule. The first sorting rule includes two sorting factors: the remaining residence time limit and the priority. The importance of the two sorting factors is: the remaining residence time limit > the priority, including the steps of: S31. When scheduling the work-in-progress for an idle non-batch machine, first sort in ascending order of the remaining residence time limit level of the work-in-progress based on the first sorting rule. The remaining residence time limit level is divided according to the remaining residence time limit. The remaining residence time limit level Lr is expressed as: , where L represents the remaining residence time limit level calculation function, and Tr represents the remaining residence time limit; S32. Then sort in ascending order of the priority of the work-in-progress.
[0059] Specifically, the sorting rule is triggered when the machine is idle and selects work-in-progress. In this embodiment, different sorting rules are preset 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 residence limit time and the priority. The importance of the two is: remaining residence limit time > priority. That is, first sort in ascending order of the remaining residence limit level, and then sort in ascending order of the priority of the work-in-progress. Among them, the remaining residence limit time is divided into levels. Assuming the remaining residence limit time is Tr (unit: second), the remaining residence limit level Lr is: , where L represents the level calculation function; the remaining residence limit level represents the urgency of residence. The smaller the level, the more urgent it is. A level of 3 can be regarded as not urgent. In this embodiment, for non-batch machines, two-level sorting is used to quickly respond to urgent tasks and reduce calculation time consumption.
[0060] 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. The second sorting rule includes three sorting factors: the remaining residence limit time, the priority, and the batchability. The importance of the three sorting factors is in turn: remaining residence limit time > priority > batchability, including the steps: S41. When scheduling the work-in-progress for an idle batch machine, then according to the formula and calculate the level score SQ of the remaining residence limit event of the work-in-progress and the priority score SP of the work-in-progress respectively; S42. Calculate the comprehensive evaluation score of the work-in-progress based on the level score SQ of the remaining residence limit event of the work-in-progress, the priority score SP of the work-in-progress, and the batchability of the work-in-progress , where X represents all optional work-in-progress, y represents the batchability of the work-in-progress, that is, traverse the number of products with the same process parameters as the work-in-progress x in X, x recipe represents the process parameters of the work-in-progress x, x priority represents the priority of the work-in-progress x, x remain represents the remaining residence limit time of the work-in-progress x; S43. According to the preset second sorting rule, first sort in descending order of the SQ value of the work-in-progress, then sort in descending order of the SP value of the work-in-progress, and finally sort in descending order of the comprehensive evaluation score S(x) of the work-in-progress.
[0061] Specifically, for batch machines, three factors need to be considered simultaneously: the remaining residence limit time, priority, and batchability. In this embodiment, according to the preset second sorting rule, the in-process products are first sorted in descending order of the SQ value, then in descending order of the SP value, and finally in descending order of the comprehensive evaluation score S(x) of the in-process products. Among them, the calculation formula for the comprehensive evaluation score of the in-process products is a summation formula. When the grade score SQ and the priority score SP are the same, the more in-process products with the same process parameters, the greater the cumulative comprehensive evaluation score.
[0062] The comprehensive evaluation method for batch machines in this embodiment ensures the following points: those with a more urgent residence urgency or those with a more urgent residence urgency in the batch are prioritized; when the residence urgency is not urgent, those with a higher priority or those with a higher-priority Lot in the batch are prioritized; when the priority and residence urgency are not urgent, those with the largest number of batches that can be grouped are prioritized; for the priority order of the same process parameter, it is compared through the remaining residence limit level and priority of the Lot itself. The comprehensive evaluation of batch machines in this embodiment can maximize the batch benefit and reduce the changeover frequency.
[0063] In some embodiments, when the in-process product enters the scheduling, it is judged whether the in-process product violates the judgment criteria of the restriction judgment rule. The restriction judgment rule includes a waiting restriction rule. If the judgment criteria of the waiting restriction rule are violated, a locking event is triggered to lock the machine or the in-process product.
[0064] Specifically, the in-process product includes the previous in-process product WP and the current in-process product WC. When the in-process product enters the scheduling, it is judged whether the current in-process product WC violates the judgment criteria of the waiting restriction rule relative to the previous in-process product WP. The waiting restriction rule takes the remaining residence limit level, priority, and waiting time of the in-process product as the judgment criteria.
[0065] Exemplarily, the previous in-process product WP refers to the in-process product that has been scheduled but not yet completed, and the current in-process product WC refers to the in-process product that is about to enter the scheduling. The judgment criteria of the waiting restriction rule are represented by J(WC|WP). , where J(WC|WP)=1 indicates that the current in-process product WC violates the judgment criteria of the waiting restriction rule relative to the previous in-process product WP, and J(WC|WP)=0 indicates that the current in-process product WC does not violate the waiting restriction rule relative to the previous in-process product WP. , , where, Indicates whether the remaining residence limit level of the current work-in-process WC is higher than that of the previous work-in-process WP. As shown in the formula, when L(WP) < 3 and L(WC) ≥ 3, it means that the remaining residence limit level of the previous work-in-process WP is higher than that of the current work-in-process WC. At this time = 0; when L(WP) ≥ 3 and L(WC) ≥ 3, at this time the remaining residence levels of both the previous work-in-process WP and the current work-in-process WC are relatively large, indicating that both are in a non-urgent state. At this time = 1; when L(WC) < 3 and L(WP) ≥ 3, it means that the remaining residence limit level of the current work-in-process WC is higher than that of the previous work-in-process WP. At this time = 2. Indicates whether the priority of the current work-in-process WC is higher than that of the previous work-in-process WP and violates the priority waiting limit. L represents the remaining residence limit level calculation function, WC priority represents the priority of the current work-in-process, WP priority represents the priority of the previous work-in-process, WC wait represents the waiting time of the current work-in-process; as shown in the formula, the smaller the value of WC priority , the higher its priority, that is, when WC priority = 0, its priority is the highest; therefore, when the priority value WP of the previous work-in-process WP priority > WC priority , it means that the priority of the current work-in-process WC is higher than that of the previous work-in-process WP, and when the current work-in-process WC violates the priority waiting limit, then = 1; in other cases, then = 0. For example, when WC priority > WP priority .
[0066] In this embodiment, if the current work-in-process WC violates the judgment criterion of the waiting limit rule with respect to the previous work-in-process WP, a locking event is triggered, and Solution 1 is adopted: lock the current machine 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 put on the machine.
[0067] As an example, as Figure 2 shown, assume that the remaining residence limit level of the current work-in-process WC is 3, the priority is 0, the arrival time at the station is t1, the time of being put on the machine is t2, and the waiting time of the current work-in-process is t2 - t1 > 1800; the remaining residence limit level of the previous work-in-process WP is 3, the priority is 3, and the time of the previous work-in-process being put on the machine is t0; the current machine is EQP01. According to the above conditions, it can be obtained that = 1, If = 1, then J(WC|WP) = 1, indicating that at this time, the current work-in-progress WC violates the judgment criterion of the waiting limit rule with respect to the previous work-in-progress WP. To ensure that the current machine does not select the previous work-in-progress WP and can be immediately selected when the current work-in-progress arrives at the station, the current machine is locked starting from the previous work-in-progress loading time t0 until the current work-in-progress arrival time t1 ends the locking, that is, constructing a locking event: (t0, {"EQP":{"EQP01: [t0, t1]"}}); at this time, the scheduling is paused and the locking event is returned.
[0068] In this embodiment, by locking the current machine in Scheme 1, it can be ensured that the current work-in-progress (WC) is immediately loaded onto the machine when it arrives at the station, avoiding overrun caused by resource competition; this scheme can ensure that the machine is efficiently utilized during critical time periods, avoiding machine idle due to waiting, and this embodiment only needs to focus on the status of the current machine, reducing the complexity of the scheduling system, which is suitable for a single machine scenario.
[0069] The residence limit refers to the maximum time threshold that a work-in-progress is allowed to stay before a certain processing step or machine. The residence limit is one of the most important limiting conditions in the product scheduling process. When the remaining residence time of the work-in-progress ≥ 0, it is still within the allowable range and no emergency intervention is required; while the over-residence limit means that the remaining time of the work-in-progress < 0, that is, it has exceeded the maximum allowable stay time. At this time, immediate measures need to be taken (such as transferring to other machines), otherwise it will cause production interruption, equipment idle or subsequent process delay. When the over-residence limit cannot be prevented by locking the current machine, then Scheme 2 can be adopted: lock other machines that are currently processing this step to prevent the over-residence limit from occurring.
[0070] As an example, assume that the remaining residence limit level of the current work-in-progress is 1, the remaining residence limit level of the previous work-in-progress is 1, and the remaining residence time of the current work-in-progress is less than 0, that is, the over-residence limit. In fact, the current work-in-progress has violated the waiting limit, but both are in a state of urgent residence. Simply using the method of locking the current machine in Scheme 1 will only form an endless loop of mutual replacement. Therefore, it is necessary to adopt the method of locking other machines in Scheme 2, judge all the optional machines of the current work-in-progress, and select other machines for locking. The locking method is the same as that in Scheme 1, that is, locking for a certain period of time on another available machine so that the current work-in-progress can be immediately loaded onto the machine when it arrives at the station, specifically as Figure 3 shown. The processing procedures of EQP04 and EQP01 in the figure are the same. Since the remaining residence limit level of the previous work-in-progress being processed by EQP01 is 1, which is also in a state of urgent residence, locking the current machine EQP01 at this time will lead to an endless loop of alternation; therefore, in this embodiment, by locking the optional machine EQP04, the current work-in-progress can be immediately loaded onto the machine EQP04 for processing when it arrives at the station.
[0071] When Solution 1 leads to an infinite loop, it is possible to lock other available machines (such as EQP04) to disperse the pressure of high-priority tasks. Solution 2 avoids a single machine being repeatedly preempted by multiple high-priority tasks by introducing multi-machine cooperation; Solution 2 dynamically selects available machines to adapt to complex production environments (such as multi-process and multi-device scenarios); by locking the time windows of other machines in advance, while avoiding the current work-in-progress from exceeding the limit, it reduces the delay of the previous work-in-progress.
[0072] Furthermore, if the occurrence of exceeding the residence limit cannot be prevented by both Solution 1 (locking the current machine) and Solution 2 (locking other machines), then Solution 3 is adopted to lock the current work-in-progress, that is, starting from the starting step of the residence limit, delaying the loading time of the current work-in-progress.
[0073] As Figure 4 shown, assume that the current work-in-progress is w , and the arrival time at the starting step of the residence limit is t 0 , the loading time t 1 . To ensure that t 1 is not selected for w loading at that moment, lock the work-in-progress w to be unavailable during the period from t 0 to t 1 , that is, construct a locking event: ( t 0 ,{"LOT":{" w : t 0 , t 1}}); If the residence limit is still exceeded, loop the above operations to delay the loading time of the current work-in-progress w until the residence limit is not exceeded.
[0074] In this embodiment, when both Solution 1 and Solution 2 cannot prevent the exceeding of the limit, the method of directly adopting Solution 3 to lock the current work-in-progress and forcibly delaying its loading time has the following advantages: by sacrificing local efficiency (delaying processing), it ensures that the work-in-progress ultimately does not violate the residence limit; as a fallback mechanism, it prevents the system from crashing due to extreme situations (such as all machines being fully loaded); through multiple delay lockings, it gradually approaches a feasible solution and is applicable to scheduling optimization under complex constraints.
[0075] In this embodiment, Solution 1 solves the simple preemption problem, Solution 2 deals with multi-machine cooperation, and Solution 3 copes with extreme situations, forming a complete solution chain. In this embodiment, through dynamic locking and priority scheduling, the risk of production line shutdown caused by overlimit is reduced. Through multi-machine cooperation and delayed locking strategy, the equipment utilization efficiency is maximized and the idle time is reduced. Solutions 1 to 3 can adapt to complex situations such as sudden high load and equipment failure from preemption, cooperation to fallback. Through these three solutions, the production scheduling system can achieve a balance among timeliness, resource utilization rate and stability, and significantly improve the scheduling efficiency in a complex manufacturing environment.
[0076] In some embodiments, when the work-in-progress enters the scheduling, it is judged whether the work-in-progress violates the judgment criteria of the restriction judgment rule. The restriction judgment rule includes the lot-sizing restriction rule. If the judgment criteria of the lot-sizing restriction rule are violated, a locking event is triggered to lock the work-in-progress.
[0077] Specifically, the lot-sizing restriction rule is specifically designed for the lot-sizing machine, indicating whether a larger lot can be formed within the allowed waiting time. The lot-sizing restriction rule uses the degree of lot-sizing and the waiting time as the judgment criteria, and judges after a certain time after the lot-sizing machine starts processing, and counts whether there are work-in-progress arrivals that can be lot-sized between the start processing time and the inspection time, so as to increase the lot-sizing rate and optimize the scheduling.
[0078] As Figure 5 described, assume that the current machine is EQP04, its maximum lot-sizing number is M, the current lot-sizing number is m < M, and the work-in-progress included in the current lot-sizing number is W = {w 1 , w 2 ,..., w m}, and their arrival times are a 1 , a 2 ,..., a m , the process parameters are w recipe , the processing start time of the work-in-progress in the current lot-sizing number is t 0 , and the calculated inspection time is: , where ; then during scheduling, it will be checked whether there is a work-in-progress arrival with process parameters w 0 between t 2 - t recipe ; if after inspection, it is statistically obtained that the first n = M - m work-in-progress arrivals with process parameters w 0 between t 2 are V = [v recipe , v 1 ,..., v 2 , and their arrival times are b n 1 , b, b2 ,...,b m , the latest time to be put on the machine is: .
[0079] To ensure that all work - in - process products in W∪V can be selected at time t 1 , lock all work - in - process products in W∪V, that is, construct a locking event: (t 0 , {"LOT":{"w 1 : [a 1 , t 1 , w 2 : [a 2 , t 1 ,...,w m : [a m , t 1 , v 1 : [b 1 , t 1 ,v 2 : [b 2 , t 1 ,..., v n : [b n , t 1}}); At this time, pause the scheduling and return the locking event.
[0080] In this embodiment, by dynamically merging work - in - process products with the same process based on the lot - sizing restriction rule, the lot - sizing capacity of the machine group is maximized, significantly improving resource utilization and production efficiency. The lot - sizing restriction rule in this embodiment does not lock the machine. At this time, it is possible that the machine selects other work - in - process products for processing due to the locking of work - in - process products. However, if the locked work - in - process products violate the waiting restriction rule due to this reason, automatically, the machine - locking mechanism of the waiting restriction rule will be triggered.
[0081] In this embodiment, the sorting rule, the locking rule, and the restriction judgment rule are actually interrelated. During the scheduling process, the restriction judgment rule generates a locking event according to the sorting rule, further forming a locking rule, and the locking rule cooperates with the sorting rule to achieve the purpose of optimizing the scheduling.
[0082] In some embodiments, updating the triggered locking event to the locking event list in the order of the occurrence time of the locking event includes the steps of: S71. If the event occurrence time of the current locking event is the latest among the occurrence times in the locking event list, directly update the current locking event to the last position in the locking event list; S72. If the event occurrence time of the current locking event is not the latest in the locking event list, update the current locking event to the corresponding position in the locking event list in the order of event occurrence time, and remove the locking events after the event occurrence time of the current locking event.
[0083] Specifically, if Figure 6 As shown, if the current locking event (t 5 ,E 5 ) The event occurred at time t 5 is the latest occurrence in the lock event list, that is, the lock event (t 4 ,E 4 ) after that, the current lock event (t 5 ,E 5 ) is updated to the last position in the lock event list; if the current lock event (t 5 ,E 5 ) event occurs at time t 5 It is not the latest occurrence in the lock event list, such as Figure 6 The lock event (t 3 ,E 3 ) and (t 4 ,E 4 ), the current locked event (t 5 ,E 5 ) is updated to the lock event list lock event (t 3 ,E 3 ) and (t 4 ,E 4 ) and the current lock event (t 5 ,E 5 ) event occurs at time t 5 The subsequent locking event (t 4 ,E 4 ) for elimination.
[0084] In this embodiment, by dynamically inserting new locking events and removing subsequent locking events, the scheduling system can achieve: avoiding resource conflicts and plan contradictions, quickly adapting to changes in the production environment and reducing invalid scheduling overhead.
[0085] In some implementations, updating the lock information according to the updated lock event list comprises the steps of: S81. Classify and express the locking events according to machine locking and WIP locking; 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.
[0086] Specifically, for the scheduling system, since the locking information is only related to the machine or the work-in-progress, the locking event list needs to be integrated into a new representation: {"EQP": {"eqp1": [[starttime1, endtime1], [starttime2, endtime2],...], "eqp2": [[starttime3, endtime3], [starttime4, endtime4],...],...}, "LOT": {"lot1": [[starttime5, endtime5], [starttime6, endtime6],...], "lot2": [[starttime7, endtime7], [starttime8, endtime8],...],...}} When the locked time periods overlap, the two time periods are merged into one. For example, if E1 = {"EQP": {"eqp1": [100, 300]}} and E2 = {"EQP": {"eqp1": [200, 400]}}, then they are merged into {"EQP": {"eqp1": [[100, 400]]}}. At this time, it is also necessary to record the event occurrence time of the last element of the locking event list. The scheduling before this time will not change even if it is rescheduled. To reduce the calculation amount, the time is used as the starting time for the scheduling system to start rescheduling, and the scheduled part remains unchanged.
[0087] In this embodiment, by merging overlapping time periods, the scheduling system can avoid wasting memory and computing power caused by redundant events, and at the same time integrate information through logical consistency to reduce the risk of scheduling conflicts.
[0088] The above describes the product scheduling method based on locking events in the embodiments of the present invention. Next, the product scheduling device based on locking events in the embodiments of the present invention will be described. Please refer to Figure 7 One embodiment of the product scheduling device based on locking events in the embodiments of the present invention includes: An acquisition module 10, configured to acquire product information, work-in-progress information, and machine types, where the machine types include batch machines and non-batch machines; An initialization module 20, configured to initialize the locking event list and the locking information to be empty; The non-batch machine sorting module 30 is used to perform multiple sorts on work-in-progress based on a preset first sorting rule if the machine type is a non-batch machine. The first sorting rule includes two sorting factors: remaining retention limit time and priority. The importance levels of the two sorting factors are: remaining retention limit time > priority; The batch machine sorting module 40 is used to perform multiple sorts on work-in-progress based on a preset second sorting rule if the machine type is a batch machine. The second sorting rule includes three sorting factors: remaining retention limit time, priority, and batchability. The importance levels of the three sorting factors are in sequence: remaining retention limit time > priority > batchability; The judgment module 50 is used to judge whether the work-in-progress violates the judgment criteria of the restriction judgment rule when the work-in-progress enters scheduling. The restriction judgment rule includes a waiting restriction rule and a batch formation restriction rule; The locking module 60 is used to trigger a locking event to lock the machine or work-in-progress if the waiting restriction rule or batch formation restriction rule is violated; The event update module 70 is used to update the triggered locking events to the locking event list in the order of the occurrence time of the locking events; The information update module 80 is used to update the locking information according to the updated locking event list; The updated sorting module 90 is used to continue performing multiple sorts on the remaining products based on the updated locking information until no new locking events occur and the product scheduling is completed.
[0089] Based on the same idea as the method in the above embodiment, the device provided in this application can implement the method in the above embodiment. For the convenience of description, in the structural schematic diagram of the device embodiment, only the parts related to the embodiment of this application are shown. Those skilled in the art can understand that the illustrated structure does not constitute a limitation on the device, and it may include more or fewer modules than those illustrated, or combine certain modules, or have different module arrangements.
[0090] 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. Next, 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.
[0091] Figure 8FIG. 0 is a schematic structural diagram of a product scheduling device based on a locking event provided by an embodiment of the present invention. The product scheduling device 100 based on a locking event may vary greatly due to different configurations or performances, and may include one or more processors (central processing units, CPUs) 11 (for example, one or more processors) and a memory 12, and one or more storage media 13 for storing application programs 133 or data 132 (for example, one or more mass storage devices). Among them, the memory 12 and the storage media 13 may be transient storage or persistent storage. The program stored in the storage media 13 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the product scheduling device 100 based on a locking event. Further, the processor 11 may be set to communicate with the storage media 13 and execute a series of instruction operations in the storage media 13 on the product scheduling device 100.
[0092] The product scheduling device 100 based on a locking event may further include one or more power supplies 14, one or more wired or wireless network interfaces 15, one or more input / output interfaces 16, and / or, one or more operating systems 131, such as Windows Serve, Mac OS X, Unix, Linux, FreeBSD, and so on. Those skilled in the art can understand that Figure 8 the device structure shown does not constitute a limitation on the product scheduling device 100 based on a locking event, and may include more or fewer components than shown in the figure, or combine some components, or arrange different components.
[0093] 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. Instructions are stored in the computer-readable storage medium, and when the instructions run on a computer, the computer is caused to execute the steps of the product scheduling method based on a locking event.
[0094] Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working processes of the above-described system or device and unit can refer to the corresponding processes in the foregoing method embodiments, and will not be described herein again.
[0095] When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The foregoing storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical discs.
[0096] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A product scheduling method based on locking events, characterized in that: Includes steps: Acquire product information, work-in-progress information, and machine types, where the machine types include batch machines and non-batch machines; Initialize the lock event list and lock information to be empty; If the machine type is a non-batch machine, multiple sorting is performed on the WIP 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; 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 retention limit time, priority, and batching degree, and the importance of the three sorting factors is as follows: remaining retention limit time>priority>batching degree; When the work in process enters the schedule, it is determined whether the work in process violates the judgment criteria of the restriction judgment rule, wherein the restriction judgment rule includes a waiting restriction rule and a batch restriction rule; If the waiting restriction rule or batch restriction rule is violated, a locking event is triggered to lock the machine or the work in progress; Update the triggering lock event to the lock event list in the order of the lock event occurrence time; Update the locking information according to the updated locking event list; 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.
2. The product scheduling method based on locking events according to claim 1, characterized in that: If the machine type is a non-batch machine, multiple sorting is performed on the WIP based on a preset first sorting rule, wherein the first sorting rule includes two sorting factors: remaining retention limit time and priority. 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, the work-in-process is first sorted from small to large 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 restriction level calculation function, and Tr represents the remaining detention restriction time; Then sort the work-in-progress in ascending order of priority.
3. The product scheduling method based on locking events according to claim 1, characterized in that: 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 retention limit time, priority, and batching degree. The importance of the three sorting factors is as follows: remaining retention limit time>priority>batching degree, including the steps of: When scheduling work-in-process for idle batch machines, the formula and Calculate the level score SQ of the WIP remaining retention limit event and the priority score SP of the WIP respectively; The comprehensive evaluation score of the work-in-process is calculated based on the level score SQ of the remaining retention limit event of the work-in-process, the priority score SP of the work-in-process, and the batchability of the work-in-process. , where X represents all optional WIPs, y represents the batching degree of WIPs, that is, 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 process x, x remain It represents the remaining detention limit time of work in process x; According to the preset second sorting rule, the WIPs are first sorted from large to small according to their SQ values, then sorted from large to small according to their SP values, and finally sorted from large to small according to their comprehensive evaluation scores S(x).
4. The product scheduling method based on locking events according to claim 1, characterized in that: When the work in process enters the schedule, it is determined whether the work in process violates the judgment criteria of the restriction judgment rule, and the restriction judgment rule includes the waiting restriction rule and the batch restriction rule, including the steps of: The work in process includes the previous work in process and the current work in process. When the work in process enters the schedule, it is judged whether the current work in process violates the judgment criteria of the waiting restriction rule relative to the previous work in process. The waiting restriction rule uses the remaining retention restriction level, priority and waiting time of the work in process as the judgment criteria; When the work in process enters the schedule, it is determined whether the current work in process violates the judgment criteria of the batch restriction rule, and the batch restriction rule uses the batchability and waiting time as judgment criteria.
5. The product scheduling method based on locking events according to claim 4, characterized in that: If the judgment criteria for violating the waiting limit rule are met, a locking event is triggered to lock the machine or the work-in-progress, including the steps: The judgment criterion of the waiting restriction rule is represented by J(WC|WP), , where WC represents the current work in process, WP represents the previous work in process, J(WC|WP)=1 represents 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 represents 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 WC has a higher priority than the previous WC and violates the priority waiting limit. L represents the remaining retention limit level calculation function. WC priority Indicates the priority of the current work in progress, WP priority Indicates the priority of the previous work in process, WC wait Indicates the waiting time of the current work in process; If the current work-in-progress WC violates the judgment criteria for the waiting limit rule with respect to the previous work-in-progress WP, 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 locking the current machine cannot prevent the occurrence of the over-stay limit, select one from all the optional machines suitable for processing the current work-in-progress WC for locking to ensure that the current work-in-progress is loaded onto the machine immediately when it arrives at the station; If locking the current machine and other machines cannot prevent the occurrence of the over-stay limit, lock the current work-in-progress, and gradually delay the loading time of the current work-in-progress starting from the arrival time of the over-stay limit starting step until there is no over-stay limit; 6. The product scheduling method based on locking events according to claim 4, characterized in that: If the judgment criteria for violating the batch grouping limit rule are met, a locking event is triggered to lock the work-in-progress, including the steps: Assume that the maximum batch grouping number of the current batch of machines is M, the current batch grouping number is m < M, the work-in-progress included in the current batch grouping is W, and count whether there is a work-in-progress 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 to the inspection time t2; If there is, trigger a locking event, count and obtain n = M - m work-in-progress V that can be batch grouped, and lock the work-in-progress W and V from the loading time t0 of the work-in-progress W to the latest loading time t1 of the work-in-progress V that can be batch grouped; 7. The product scheduling method based on locking events according to claim 1, characterized in that: Update the triggered locking event to the locking event list in the order of the occurrence time of the locking event, including the steps: 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; If the occurrence time of the current locking event is not the latest in the locking event list, update the current locking event to the corresponding position in the locking event list in the order of the occurrence time, and delete the locking events after the occurrence time of the current locking event; 8. A product scheduling device based on locking events, characterized in that: Including: An acquisition module for acquiring product information, work-in-progress information, and machine type, where the machine type includes 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 on the work-in-progress based on a preset first sorting rule, where the first sorting rule includes two sorting factors, the remaining stay limit time and the priority, and the importance of the two sorting factors is: remaining stay limit time > priority; A batch machine sorting module for, if the machine type is a batch machine, performing multiple sorting on the work-in-progress based on a preset second sorting rule, where the second sorting rule includes three sorting factors, the remaining stay limit time, the priority, and the batch groupability, and the importance of the three sorting factors is in turn: remaining stay limit time > priority > batch groupability; A judgment module, used for judging 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 a waiting restriction rule and a batch restriction rule; A locking module, used to trigger a locking event and lock the machine or the work in process if the waiting restriction rule or the batch restriction rule is violated; An event updating module, used for updating the triggering locking event into the locking event list in the order of the locking event occurrence time; An information updating module, used for updating 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.
9. 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 as described in any one of claims 1-7.
10. 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 7 are implemented.
Citation Information
Patent Citations
Semiconductor production line multi-product workpiece combining method
CN104460590A
Order production period and output measuring method
CN104915721A
Emergency single scheduling management method, device and equipment based on cloud platform
CN115081990A
Method and model for calculating processing time of semiconductor equipment, equipment and storage medium
CN119477591A
Lot starting order determination method in environment where multiple processes and lines exist, device therefor and program thereof
JP2009251650A