Scheduling method and device, semiconductor process equipment and computer readable storage medium
By obtaining the reachable graph in semiconductor process equipment and using the ant colony algorithm to optimize the scheduling sequence of the robot, the problem of low efficiency in combined equipment scheduling is solved and efficient wafer processing is achieved.
Patent Information
- Application Number
- CN202410346296.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-25
- Publication Date
- 2025-09-26
AI Technical Summary
In the prior art, the scheduling technology of combined equipment results in low wafer processing efficiency and cannot meet high-precision processing requirements.
By obtaining the reachable graph and determining the target scheduling sequence of the manipulator based on the ant colony algorithm, the global taboo table and pheromone concentration data are used to control multiple ants to search for paths in parallel, avoid deadlock, and optimize the scheduling sequence of the manipulator.
It improves the working efficiency of semiconductor process equipment, ensures the global optimization of the scheduling sequence of the robot, meets the time constraints of wafer processing, and improves processing efficiency.
Smart Images

Figure CN120704252A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of semiconductor technology, specifically, to equipment scheduling technology in the field of semiconductor technology, and more specifically, to a scheduling method, device, semiconductor process equipment and computer-readable storage medium. Background Art
[0002] Wafer manufacturing is the most complex and critical part of the semiconductor manufacturing process. As processing requirements continue to increase, the number of processing equipment required throughout the wafer processing process is also increasing. During the wafer processing process, combined equipment is widely used to improve wafer quality and meet the high-precision processing requirements of wafers.
[0003] However, in the current scheduling technology for combination equipment, the working efficiency of the combination equipment is low, and thus the processing efficiency of the wafer cannot be guaranteed. Summary of the Invention
[0004] In order to solve the above technical problems, the present application provides a scheduling method, device, semiconductor process equipment and computer-readable storage medium to achieve the purpose of improving the working efficiency of the combined equipment.
[0005] To achieve the above technical objectives, the embodiments of the present application provide the following technical solutions:
[0006] In a first aspect, embodiments of this specification provide a scheduling method, applied to semiconductor process equipment, for determining a target scheduling sequence for a robot in the semiconductor process equipment; the scheduling method comprises:
[0007] Obtaining a reachable graph, the reachable graph comprising a plurality of places and a plurality of transitions, wherein the transitions are connected between two of the places, the places being used to represent one of a process module in the semiconductor process equipment, the robot, a scheduling process of process objects between different process modules, and a resource corresponding to the process module; and the transitions being used to represent an action performed by the robot;
[0008] Based on the reachable graph and the global taboo table, an ant colony algorithm is used to determine the target scheduling sequence; the target scheduling sequence is used for the manipulator to schedule the process object;
[0009] The global taboo table is used to record the deadlock identifier corresponding to each ant in each round of iteration. The deadlock identifier is the identifier of the reachable graph when the search state of the ant reaches a deadlock state; the deadlock state is used to trigger the ant to backtrack based on the identifier sequence corresponding to the ant, and the identifier of the reachable graph is used to represent the state of each of the libraries after the ant emits a transition under the previous identifier of the reachable graph; the identifier sequence includes at least one type of identifiers other than the deadlock identifier.
[0010] Optionally, the determining the target scheduling sequence by using an ant colony algorithm based on the reachable graph and the global tabu table includes:
[0011] A path search step, based on the global taboo table, the initial and final identifiers of the reachable graph, and pheromone concentration data of the reachable graph, controls multiple ants to perform path searches in parallel in the reachable graph to obtain a candidate scheduling sequence determined by each ant in the current iteration; the pheromone concentration data of the reachable graph includes multiple reachable identifiers of the reachable graph and the pheromone concentration of an enabling transition under each reachable identifier, wherein the enabling transition includes a transition selectable by each ant under the reachable identifier;
[0012] When the current number of iterations has not reached the maximum number of iterations, based on the candidate scheduling sequence determined by each ant in the current round of iteration, the pheromone concentration data of the reachable graph is updated, and the path search step is performed;
[0013] When the current number of iterations reaches the maximum number of iterations, the target scheduling sequence is determined based on the candidate scheduling sequences determined by each of the ants in each round of iteration.
[0014] Optionally, controlling a plurality of ants to perform path searches in parallel in the reachable graph based on the global taboo table, the initial identifier and the terminal identifier of the reachable graph, and the pheromone concentration data of the reachable graph includes:
[0015] The ant is controlled to search for a path in the reachable graph starting from the initial identifier until the current identifier of the reachable graph is the termination identifier; wherein, when the current identifier of the reachable graph includes at least one enabling transition, a target transition is determined from the at least one enabling transition based on the global taboo table and the pheromone concentration data of the reachable graph, and the candidate scheduling sequence corresponding to the ant is updated based on the target transition.
[0016] Optionally, after obtaining the candidate scheduling sequence determined by each ant in the current iteration, the method further includes:
[0017] Based on the moment when the ant reaches the termination mark of the reachable graph, the processing time corresponding to the candidate scheduling sequence determined by the ant in the current round of iteration is determined; the moment when the ant reaches the termination mark of the reachable graph is determined based on the emission time and delay of each transition in the candidate scheduling sequence corresponding to the ant, and the delay of the transition represents the time length for the robot to perform the corresponding action.
[0018] Optionally, the emission time of the transition is determined by the following method:
[0019] Based on the delay of the target library in the input library of the transition, the emission time of the transition is determined, and the target library includes at least one of the library representing the process module, the library representing the robot, and the library representing the scheduling process of the process object between different process modules.
[0020] Optionally, determining the target scheduling sequence based on the candidate scheduling sequence determined by each ant in each round of iteration includes:
[0021] Based on the processing durations corresponding to the candidate scheduling sequences, the target scheduling sequence is determined from the candidate scheduling sequences.
[0022] Optionally, updating the pheromone concentration data of the reachable graph based on the candidate scheduling sequence determined by each ant in the current iteration round includes:
[0023] Determine, based on the processing duration corresponding to the candidate scheduling sequence determined by the ant in the current iteration, the current pheromone concentration of the transition emitted by the ant under each identifier of the corresponding identifier sequence in the current iteration;
[0024] Based on the current pheromone concentration of the transition emitted by each ant under each identifier of the corresponding identifier sequence, the pheromone concentration data of the reachability graph is updated.
[0025] Optionally, updating the pheromone concentration data of the reachability graph based on the current pheromone concentration of the transition emitted by each ant under each identifier of the corresponding identifier sequence includes:
[0026] When the pheromone concentration data contains a historical pheromone concentration of a specified transition under a target identifier, the historical pheromone concentration is diluted based on a preset dilution coefficient; the target identifier is any identifier in the identifier sequence corresponding to each of the ants in the current iteration, and the specified transition is any transition in the transitions emitted by each of the ants under the target identifier in the current iteration;
[0027] Based on the current pheromone concentration of the specified transition under the target identifier and the historical pheromone concentration after dilution processing, an updated value of the pheromone concentration of the specified transition under the target identifier is determined.
[0028] In the second aspect, an embodiment of this specification provides a scheduling device, which is applied to semiconductor process equipment and is used to determine the target scheduling sequence of the robot in the semiconductor process equipment; the scheduling device includes: a processor and a memory; a computer program is stored in the memory, and when the processor executes the computer program, it executes the scheduling method described in any one of the above items.
[0029] In a third aspect, embodiments of this specification provide a semiconductor process equipment comprising at least one robot and the scheduling device as described above;
[0030] The scheduling device is configured to determine a target scheduling sequence of the manipulator according to any of the scheduling methods described above, and control the manipulator to schedule process objects based on the target scheduling sequence.
[0031] In a fourth aspect, an embodiment of this specification provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the scheduling method as described in any one of the above items is implemented.
[0032] In a fifth aspect, an embodiment of this specification provides a computer program product or a computer program, wherein the computer program product includes a computer program, and the computer program is stored in a computer-readable storage medium; the processor of the computer device reads the computer program from the computer-readable storage medium, and when the processor executes the computer program, it implements the scheduling method described in any one of the above items.
[0033] As can be seen from the above technical solutions, the embodiments of the present application provide a scheduling method, apparatus, semiconductor process equipment, and computer-readable storage medium, wherein the scheduling method obtains a reachable graph and, based on the reachable graph and a global tabu table, uses an ant colony algorithm to determine a target scheduling sequence for a robot to schedule process objects, wherein the reachable graph includes multiple places and multiple transitions, where a transition is connected between two places, and a place is used to represent a process module, a robot, a scheduling process of process objects between different process modules in the semiconductor process equipment, and one of the resources corresponding to the process module. The transition is used to represent the action performed by the robot, and the global tabu table is used to record the deadlock identifier corresponding to each ant in each iteration. The deadlock identifier is the identifier of the reachable graph when the ant's search state reaches a deadlock state, thereby effectively reducing the probability of the ant entering the deadlock identifier, and thus quickly and effectively determining the target scheduling sequence of the robot; at the same time, the deadlock state triggers the ant to backtrack based on its corresponding identifier sequence, which can effectively prevent the ant from being unable to generate a valid scheduling sequence due to reaching the deadlock identifier during the path search process, thereby ensuring the global optimality of the obtained target scheduling sequence, and thus effectively improving the working efficiency of the semiconductor process equipment according to the target scheduling sequence. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] 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, the drawings described below are merely embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without any creative work.
[0035] Figure 1 A schematic structural diagram of a semiconductor process equipment provided in accordance with one embodiment of this specification;
[0036] Figure 2 A flowchart of a scheduling method provided for one embodiment of this specification;
[0037] Figure 3 A schematic diagram of a reachability graph provided for one embodiment of this specification;
[0038] Figure 4 A schematic structural diagram of another semiconductor process equipment provided in accordance with one embodiment of the present specification;
[0039] Figure 5 A schematic structural diagram of another semiconductor process equipment provided as an embodiment of this specification. DETAILED DESCRIPTION
[0040] Unless otherwise defined, technical or scientific terms used in the embodiments of this specification should have the same ordinary meaning as those understood by persons of ordinary skill in the art to which this specification pertains. The terms "first," "second," and similar terms used in the embodiments of this specification do not denote any order, quantity, or importance, but are provided solely to avoid confusion between constituent elements.
[0041] Unless the context requires otherwise, throughout this specification, the term "plurality" means "at least two," and "including" is to be interpreted as open and inclusive, meaning "including, but not limited to." Throughout this specification, the terms "one embodiment," "some embodiments," "exemplary embodiments," "example," "specific example," or "some examples" are intended to indicate that a particular feature, structure, material, or characteristic associated with the embodiment or example is included in at least one embodiment or example of this specification. The schematic representations of these terms do not necessarily refer to the same embodiment or example.
[0042] The following will be combined with the drawings in the embodiments of this specification to clearly and completely describe the technical solutions in the embodiments of this specification. Obviously, the embodiments described are only part of the embodiments of this specification, not all of the embodiments. Based on the embodiments in this specification, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this specification.
[0043] Overview
[0044] Taking wafer processing as an example, Figure 1 A schematic diagram of the structure of a semiconductor process equipment is shown. The semiconductor process equipment can be a combined device, including multiple process modules and two manipulators. The process modules are: a wafer loading and unloading module 11, a vacuum lock 12, a first processing module 13, a second processing module 14, a third processing module 15 and a cooling module 16. The two manipulators are: an atmospheric manipulator 17 and a vacuum manipulator 18.
[0045] Among them, each wafer handling module 11 can hold a wafer box, and each wafer box can hold multiple wafers. Wafers to be processed can be loaded into the wafer handling module 11, and processed wafers can be put back into the wafer handling module 11.
[0046] Each vacuum lock 12 can have a slot, and each slot can hold a wafer. The vacuum lock 12 can switch between atmospheric state and vacuum state. When the vacuum lock 12 is converted to atmospheric state, only the wafer located on the atmospheric manipulator 17 side can be sent into the vacuum lock 12; when the vacuum lock 12 is converted to vacuum state, only the wafer located on the vacuum manipulator 18 side can be sent into the vacuum lock 12.
[0047] The first processing module 13, the second processing module 14, and the third processing module 15 can each include two slots, each slot can accommodate a wafer for processing. The first processing module 13, the second processing module 14, and the third processing module 15 can operate in parallel and perform the same processing on the wafers placed therein. That is, any wafer can be processed by only one of the first processing module 13, the second processing module 14, and the third processing module 15. In practice, two upper and lower vacuum locks 12 can be provided, with two vacuum locks 12 on each layer, so that the vacuum robot 18 can simultaneously pick up two wafers and place them into the same processing module.
[0048] The cooling module 16 is used to cool the wafer after processing.
[0049] The atmospheric manipulator 17 can be a dual-arm manipulator, each arm of which has a slot, and each slot can hold a wafer. The atmospheric manipulator 17 is responsible for transporting wafers between the wafer loading and unloading module 11, the vacuum lock 12 and the cooling module 16.
[0050] The vacuum robot 18 may be a dual-arm robot with two slots on each arm. Each slot can hold a wafer. The vacuum robot 18 is responsible for transporting wafers between the vacuum lock 12 and the processing module.
[0051] The process path of a wafer may include multiple process nodes that the wafer passes through in the semiconductor process equipment and the process time required for each process node. The process path can be specifically formulated by process personnel based on the wafer process requirements. For example, the process path of a wafer may include: wafer loading and unloading module 11 -> atmospheric robot 17 (3 seconds) -> vacuum lock 12 (3 seconds) -> vacuum robot 18 (3 seconds) -> processing module (60 seconds) -> vacuum robot 18 (3 seconds) -> vacuum lock 12 (3 seconds) -> atmospheric robot 17 (3 seconds) -> cooling module 16 (1 second) -> wafer loading and unloading module 11, where each step can be called a process node, and each process node consumes time. The time marked in brackets can be the time required for the process node (i.e., process time).
[0052] When wafers are processed by semiconductor process equipment, they have strict residence time constraints in each process module, and there is a lack of buffer devices between the process modules. This makes it very difficult for each process module to meet the residence time constraints. Therefore, it is of great significance to find an effective scheduling method.
[0053] During the operation of semiconductor process equipment, the scheduling sequence of the robot is an important factor affecting the working efficiency of the semiconductor process equipment. In order to improve the working efficiency of the semiconductor process equipment, the inventors found through research that it is possible to obtain a reachable graph of the semiconductor process equipment, and based on the reachable graph, determine the target scheduling sequence of the robot through the ant colony algorithm so that the robot can schedule the wafers to be processed.
[0054] The ant colony algorithm (ACO) is an intelligent heuristic algorithm designed to mimic the foraging process of ants. Ants continuously release pheromones during their pathfinding process, and following ants choose paths based on the pheromone concentration. The shorter the path, the higher the pheromone concentration, creating a positive feedback loop that ultimately leads to the ants finding the globally optimal path. However, given the high risk of ants entering deadlock during path search, traditional ACO ants stop searching when deadlocked, unable to reach the end point. Consequently, they are unable to obtain a feasible schedule sequence, which in turn causes the target schedule sequence to become trapped in a local optimum. To address this, a backtracking strategy can be added. When a schedule calculation deadlocks, the algorithm reverts to the previous calculation state and reselects a different transition. This ensures that each ant can obtain a feasible schedule sequence, avoiding local optima and preventing the ants from obtaining a high-quality target schedule sequence. This, in turn, effectively improves the operating efficiency of semiconductor processing equipment based on the target schedule sequence.
[0055] In addition, the traditional ant colony algorithm has the problem of slow convergence. To solve this problem, a global taboo table can be added in addition to each ant's own taboo table. The global taboo table stores the identifiers of unconnected end points and continuously updates the global taboo table during the ant's path search process, so that subsequent ants can combine the global taboo table to select paths, increase the convergence speed, and thus quickly and effectively determine the target scheduling sequence of the manipulator.
[0056] Based on the above-mentioned inventive concept, an embodiment of this specification provides a scheduling method, and the scheduling method provided in the embodiment of this specification will be exemplarily described below with reference to the accompanying drawings.
[0057] Exemplary Methods
[0058] One embodiment of the present specification provides a scheduling method, which is applied to a semiconductor process equipment and is used to determine a target scheduling sequence of a robot in the semiconductor process equipment; Figure 2 As shown, the scheduling method includes:
[0059] S201. Obtain a reachable graph, which includes multiple locations and multiple transitions, where the transitions are connected between two locations. The locations are used to represent the process modules in the semiconductor process equipment, the robot, the scheduling process of process objects between different process modules, and one of the resources corresponding to the process modules; the transitions are used to represent the actions performed by the robot.
[0060] Specifically, a reachable graph corresponding to the semiconductor process equipment may be constructed based on the process path of the process objects such as wafers and the structural characteristics of the semiconductor process equipment.
[0061] A reachable graph can include multiple places and multiple transitions. A transition connects two places, and places and transitions are connected by directed arcs. Any place can represent a process module in semiconductor processing equipment, a robot, the scheduling process of process objects between different process modules, and the resources corresponding to the process module. Transitions represent actions performed by the robot, such as picking up or placing.
[0062] by Figure 1 As an example, the semiconductor process equipment shown in the figure can be represented by Figure 3 shown. Figure 3 In the figure, circles represent places and squares represent transitions. The meaning of each place can be shown in Table 1, and the meaning of each transition can be shown in Table 2.
[0063] Table 1
[0064]
[0065]
[0066] Table 2
[0067] Serial number change Explanation of meaning 1 t1 Indicates that the atmospheric robot takes the wafer from the wafer loading and unloading module 2 t2 Indicates that the atmospheric robot puts the wafer into the vacuum lock 3 t3 Indicates that the vacuum robot takes the wafer from the vacuum lock 4 t4 Indicates that the vacuum robot places the wafer into the first processing module 5 t5 Indicates that the vacuum robot takes the wafer from the first processing module 6 t6 Indicates that the vacuum robot puts the wafer into the vacuum lock 7 t7 Indicates that the atmospheric robot takes the wafer from the vacuum lock 8 t8 Indicates that the atmospheric robot places the wafer into the cooling module 9 t9 Indicates that the atmospheric robot takes the wafer from the cooling module 10 t10 Indicates that the atmospheric robot puts the wafer into the wafer loading and unloading module 11 t11 Indicates that the vacuum robot places the wafer into the second processing module 12 t12 Indicates that the vacuum robot takes the wafer from the second processing module 13 t13 Indicates that the vacuum robot places the wafer into the third processing module 13 t14 Indicates that the vacuum robot takes the wafer from the third processing module
[0068] During implementation, for the places representing process modules, the places representing robots, the places representing the scheduling process of process objects between different process modules, and each transition, a delay can be set based on the process requirements or the attribute information of each process module and robot. For example, the delay of the place representing the process module can indicate the time required for the process module to perform the corresponding process operation on the process object, the delay of the place representing the robot can indicate the time required for the robot to switch between picking and placing actions, and the delay of the place representing the scheduling process can indicate the time required for the transportation process from one process module to another. The delay of the transition can indicate the time required for the robot to complete the corresponding action.
[0069] in, Figure 3 The numbers in the locations may represent the status of the corresponding locations at the time of the initial identification. For example, the number 13 in p0 indicates that wafer loading and unloading module 11 has 13 groups of unprocessed wafers loaded, the number 2 in p11 indicates that vacuum lock 12 can load two groups of unprocessed wafers, the number 2 in p14 indicates that vacuum lock 12 can load two groups of processed wafers, the number 1 in p13 indicates that first processing module 13 can load one group of unprocessed wafers, the number 1 in p17 indicates that second processing module 14 can load one group of unprocessed wafers, the number 1 in p19 indicates that third processing module 15 can load one group of unprocessed wafers, and the number 3 in p15 indicates that cooling module 16 can load three groups of wafers. A group of wafers may include two wafers.
[0070] S202, based on the reachability graph and the global taboo table, using an ant colony algorithm to determine the target scheduling sequence; the target scheduling sequence is used for the manipulator to schedule the process object;
[0071] The global taboo table is used to record the deadlock identifier corresponding to each ant in each round of iteration. The deadlock identifier is the identifier of the reachable graph when the search state of the ant reaches a deadlock state; the deadlock state is used to trigger the ant to backtrack based on the identifier sequence corresponding to the ant, and the identifier of the reachable graph is used to represent the state of each of the libraries after the ant emits a transition under the previous identifier of the reachable graph; the identifier sequence includes at least one type of identifiers other than the deadlock identifier.
[0072] Specifically, the identifier of the reachable graph is used to represent the state of each place after the ant emits a transition under the previous identifier of the reachable graph. That is, the aforementioned identifier is composed of the states of all related places under the current state. The states of all related places together represent an identifier. If the state of any place in all related places changes, a new identifier will be generated.
[0073] Among them, for the library that represents the process module, the state of the library can be the number of process objects that have been placed in the corresponding process module; for the library that represents the robot, the state of the library can be the number of process objects that can be taken by the corresponding robot; for the library that represents the scheduling process of process objects between different process modules, the state of the library can represent the scheduling process of process objects; the resources corresponding to the process module are used to represent the number of process objects that can be placed in the corresponding process module. Therefore, for the library that represents the resources corresponding to the process module, the state of the library can represent itself.
[0074] In traditional ant colony algorithm-based path determination schemes, factors such as obstacles that cause ants to enter a deadlock state do not change as the path search progresses. However, in this scheme, the states of each place in the reachability graph change as the path search progresses. For example, the state of place p12 after place p3 emits transition t4 is different from the state of place p12 after place p5 emits transition t6. Therefore, the reachability graph's identification can effectively determine whether a deadlock state has occurred during the path search process. Furthermore, the states of each place in the reachability graph enable efficient transition selection and emission, thereby ensuring the validity of the target scheduling sequence.
[0075] The reachable graph may include multiple types of identifiers, such as an initial identifier, an end identifier, a deadlock identifier, and a reachable identifier. The initial identifier may be the state of each place in the reachable graph when all process objects in the semiconductor process equipment have not been processed, such as all wafers are not processed in the wafer loading and unloading module 11; the end identifier may be the state of each place in the reachable graph when all process objects in the semiconductor process equipment have been processed, such as all wafers have been processed and returned to the wafer loading and unloading module 11; for any ant, the deadlock identifier corresponding to the ant is the identifier of the reachable graph when the search state of the ant is a deadlock state, that is, the deadlock identifier is an identifier that is not connected to the end identifier of the reachable graph; the reachable identifier is an identifier that is connected to the end identifier of the reachable graph, wherein, before the ant reaches the end identifier, the other identifiers in the identifier sequence except the initial identifier are called intermediate state identifiers. When the ant reaches the end identifier (that is, the current round of path search is completed), the intermediate state identifiers in the identifier sequence corresponding to the ant may be called reachable identifiers. The intermediate state identifiers may include the intermediate states of each place in the process of changing from the initial identifier to the current identifier.
[0076] For any ant, the corresponding identifier sequence is the sequence of identifiers corresponding to each valid transition emitted by the ant from the start of the path search to the current moment. A valid transition is a transition that does not cause a deadlock identifier after being emitted. That is, the identifier sequence can include at least one type of identifier other than a deadlock identifier. For example, the identifier sequence can include at least one type of identifier: an initial identifier, an intermediate state identifier (after the ant reaches the end identifier, the intermediate state identifier can be called a reachable identifier), and a termination identifier. During the path search process, each time the ant emits a transition, the identifier of the reachable graph changes until the ant reaches the end identifier, completing the path search.
[0077] The global tabu table is used to record the deadlock flags corresponding to each ant in each iteration. In practice, when using the ant colony algorithm to determine the target scheduling sequence, ants can select transitions based on the global tabu table to reduce the probability of ants entering the deadlock flag, thereby improving the convergence speed of the ant colony algorithm and enabling the robot's target scheduling sequence to be quickly and efficiently determined. The target scheduling sequence can include all valid transitions emitted from the initial flag to the final flag.
[0078] When the ant's search state is deadlocked, it may be because the ant has no enabled transitions to launch under the current identifier, or because all enabled transitions under the current identifier are recorded in the global taboo table and / or the ant's own taboo table, or because a loop appears in the reachable graph under the current identifier. Enabled transitions may include transitions that each ant can select under the current identifier.
[0079] During implementation, when an ant's search state is deadlocked, the deadlock flag can be updated to its own taboo table and / or global taboo table. The ant's own taboo table is used to record the deadlock flag corresponding to the ant in the current iteration, and when entering the next iteration, the ant's own taboo table is cleared. In addition, when the ant's search state is deadlocked, the ant can be triggered to backtrack based on the corresponding flag sequence. For example, it can backtrack to the most recent flag in the flag sequence corresponding to the ant. Thus, when the ant reaches the deadlock flag, it can fall back to the previous flag and select a new transition to launch. This effectively prevents the ant from being unable to generate a valid scheduling sequence due to reaching a deadlock flag during the path search process, ensuring the global optimality of the target scheduling sequence. In turn, the target scheduling sequence can effectively improve the working efficiency of semiconductor process equipment.
[0080] It is understandable that if the enabled transitions under the previous flag only include transitions that will enter the deadlock flag after being emitted, the ant can continue to backtrack based on the corresponding flag sequence.
[0081] The target scheduling sequence can include the scheduling order of each robot, which is used by the robot to schedule process objects. In the process of determining the target scheduling sequence by searching the reachability graph of semiconductor process equipment using an ant colony algorithm, path selection is performed based on the identifiers of the reachability graph. Because the identifiers are used to represent the status of each library, and the library status can include timing information such as the scheduling process of the process object, path selection based on the identifiers of the reachability graph can effectively meet the residence time constraints of each process module of the semiconductor process equipment.
[0082] It can be seen that the scheduling method provided in the embodiment of this specification obtains a reachable graph, and based on the reachable graph and the global taboo table, uses the ant colony algorithm to determine the target scheduling sequence for the robot to schedule process objects, wherein the reachable graph includes multiple places and multiple transitions, and the transition is connected between two places. The place is used to represent the process modules, robots, and the scheduling process of process objects between different process modules in the semiconductor process equipment, and one of the resources corresponding to the process module. The transition is used to represent the action performed by the robot, and the global taboo table is used to record the deadlock identifier corresponding to each ant in each round of iteration. The deadlock identifier is the mark of the reachable graph when the search state of the ant reaches the deadlock state. Therefore, in the subsequent path search process, based on the global taboo table, it is possible to effectively avoid selecting transitions that will lead to deadlock identification in the global taboo table, thereby effectively preventing ants from repeatedly entering deadlock identifications that have occurred, reducing the probability of ants entering deadlock identifications, and quickly and effectively determining the target scheduling sequence of the manipulator; at the same time, by triggering the ants to backtrack based on their corresponding identification sequence through the deadlock state, it is possible to effectively avoid the ants being unable to generate a valid scheduling sequence due to reaching a deadlock identification during the path search process, thereby ensuring the global optimality of the obtained target scheduling sequence, and then effectively improving the working efficiency of semiconductor process equipment according to the target scheduling sequence.
[0083] Traditional ant colony algorithms typically use a round-robin path search mechanism in each iteration. That is, in any iteration, each ant is cycled through in turn. When one ant completes or stops searching, the next ant begins searching again, resulting in low efficiency. To further improve the effectiveness and efficiency of obtaining the target scheduling sequence, in one embodiment of this specification, the ant colony algorithm is used to determine the target scheduling sequence based on the reachability graph and the global tabu table, including:
[0084] A path search step, based on the global taboo table, the initial and final identifiers of the reachable graph, and pheromone concentration data of the reachable graph, controls multiple ants to perform path searches in parallel in the reachable graph to obtain a candidate scheduling sequence determined by each ant in the current iteration; the pheromone concentration data of the reachable graph includes multiple reachable identifiers of the reachable graph and the pheromone concentration of an enabling transition under each reachable identifier, wherein the enabling transition includes a transition selectable by each ant under the reachable identifier;
[0085] When the current number of iterations has not reached the maximum number of iterations, based on the candidate scheduling sequence determined by each ant in the current round of iteration, the pheromone concentration data of the reachable graph is updated, and the path search step is performed;
[0086] When the current number of iterations reaches the maximum number of iterations, the target scheduling sequence is determined based on the candidate scheduling sequences determined by each of the ants in each round of iteration.
[0087] Specifically, in the process of determining the target scheduling sequence using the ant colony algorithm, the path search can be performed iteratively. Before the iteration, the maximum number of iterations and the number of ants in each iteration can be set, and the taboo table of each ant can be initialized to empty.
[0088] The pheromone concentration data of the reachability graph may include multiple reachability markers of the reachability graph and the pheromone concentration of the enabled transition under each reachability marker. The pheromone concentration data of the reachability graph may be empty before iteration.
[0089] In any iteration, based on the global tabu table, the initial and final markers of the reachable graph, and the pheromone concentration data of the reachable graph, multiple ants can be controlled to perform multi-threaded and parallel path searches in the reachable graph to determine each ant's candidate scheduling sequence for the current iteration. Specifically, at the beginning of the iteration, each participating ant can be placed at the initial marker and controlled to perform path searches simultaneously until each ant reaches the final marker. This effectively ensures the validity of the candidate scheduling sequence obtained by each ant, further improving the efficiency of each iteration and shortening the time required to determine the target scheduling sequence.
[0090] At the end of the current round of iteration, it can be determined whether the current number of iterations has reached the maximum number of iterations.
[0091] If the current iteration count has not reached the maximum number of iterations, the pheromone concentration data of the reachability graph can be updated based on the candidate scheduling sequence corresponding to each ant in the current iteration. At the same time, if the ant only updates the corresponding deadlock flag to its own taboo table during the path search process, at the end of the current iteration, the deadlock flag in each ant's taboo table can be updated to the global taboo table, and each ant's taboo table can be cleared to repeat the path search step.
[0092] If the current number of iterations reaches the maximum number of iterations, the target scheduling sequence can be determined based on the candidate scheduling sequences determined by each ant in each round of iteration. For example, the target scheduling sequence can be determined based on the processing time corresponding to each candidate scheduling sequence.
[0093] In a feasible embodiment, controlling multiple ants to perform path searches in parallel in the reachable graph based on the global taboo table, the initial identifier and the terminal identifier of the reachable graph, and the pheromone concentration data of the reachable graph includes:
[0094] The ant is controlled to search for a path in the reachable graph starting from the initial identifier until the current identifier of the reachable graph is the termination identifier; wherein, when the current identifier of the reachable graph includes at least one enabling transition, a target transition is determined from the at least one enabling transition based on the global taboo table and the pheromone concentration data of the reachable graph, and the candidate scheduling sequence corresponding to the ant is updated based on the target transition.
[0095] Specifically, in the current round of iteration, for any ant, the ant can be controlled to start searching for a path from the initial mark of the reachable graph until the ant reaches the end mark of the reachable graph.
[0096] During the path search process, an ant can select a transition from the enabled transitions under the current identifier to transmit. If the number of enabled transitions under the current identifier is 0, the ant's search state has reached a deadlock state, meaning the current identifier is a deadlock identifier. If the current identifier includes at least one enabling transition, the ant can determine a target transition from the at least one enabling transition based on the global tabu table and pheromone concentration data from the reachability graph and add the target transition to the candidate scheduling sequence corresponding to the ant.
[0097] During implementation, in the process of determining the target transition from at least one enabling transition, the current identifier can be matched with each reachable identifier of the pheromone concentration data of the reachable graph. If the match is successful, the candidate transition is determined based on the pheromone concentration of the enabling transition under the successfully matched reachable identifier, and it is determined whether the candidate transition will cause a deadlock identifier based on the global taboo table or the global taboo table and the ant's own taboo table. If not, the candidate transition is used as the target transition. If so, new candidate transitions are determined from each enabling transition other than the candidate transition based on the pheromone concentration of the enabling transition under the successfully matched reachable identifier until the target transition is obtained. If all enabling transitions under the current identifier exist in the global taboo table or the ant's own taboo table, it indicates that the current identifier is a deadlock identifier.
[0098] It is understandable that if the matching fails, a transition can be randomly selected from each enabled transition as a candidate transition, thereby effectively ensuring the reliability of the determination result of the target transition, and thus improving the effectiveness of the determined candidate scheduling sequence while avoiding ants from repeatedly entering the deadlock mark that appeared before.
[0099] The candidate transitions may be determined by using a roulette wheel method based on the pheromone concentration of the enabling transition under the successfully matched reachable identifier, which may specifically include:
[0100] 1) Obtain the selection probability of each enabling transition under the successfully matched reachable identifier, which can be specifically shown as formula (1):
[0101]
[0102] Where, P Mt and P Mi are the pheromone concentrations of enabling transition t and enabling transition i under the reachable mark M respectively; T is the enabling transition set under the reachable mark M.
[0103] 2) Based on the selection probability of each enabling transition, randomly generate n adjacent numerical intervals, where n is the number of enabling transitions under the reachable identifier M. The numerical intervals correspond one-to-one to the enabling transitions, and the length of the numerical interval is proportional to the selection probability of the corresponding enabling transition. For example, if n = 5, if the selection probability of each enabling transition is equal, then five numerical intervals of the same length are generated, namely [0, 1), [1, 2), [2, 3), [3, 4), and [4, 5]. If the selection probability of the first enabling transition is twice the selection probability of the other enabling transitions, then the five numerical intervals generated are [0, 2), [2, 3), [3, 4), [4, 5), and [5, 6].
[0104] 3) Generate a random number that satisfies the union of all numerical intervals, and determine candidate transitions based on the numerical interval in which the random number is located. The enabling transition corresponding to the numerical interval in which the random number is located can be used as a candidate transition. For example, when the five numerical intervals generated are [0,1), [1,2), [2,3), [3,4), and [4,5], if the random number is 1.1, the enabling transition corresponding to [1,2) is used as a candidate transition. When the five numerical intervals generated are [0,2), [2,3), [3,4), [4,5), and [5,6], if the random number is 1.1, the enabling transition corresponding to [0,2) is used as a candidate transition.
[0105] It should be noted that if the ant only updates its own taboo table when entering the deadlock mark, the target change can be determined based on both its own taboo table and the global taboo table. If the ant updates to the global taboo table in real time when entering the deadlock mark, the target change can be determined only based on the global taboo table.
[0106] In a feasible implementation, after obtaining the candidate scheduling sequence determined by each ant in the current iteration, the method further includes:
[0107] Based on the moment when the ant reaches the termination mark of the reachable graph, the processing time corresponding to the candidate scheduling sequence determined by the ant in the current round of iteration is determined; the moment when the ant reaches the termination mark of the reachable graph is determined based on the emission time and delay of each transition in the candidate scheduling sequence corresponding to the ant, and the delay of the transition represents the time length for the robot to perform the corresponding action.
[0108] Specifically, in any iteration, after obtaining the candidate scheduling sequence determined by each ant in the current iteration, the processing duration corresponding to the candidate scheduling sequence determined by each ant in that iteration can be determined based on the time when each ant reaches the end marker of the reachability graph. For example, for any ant, the difference between the time when the ant reaches the end marker and the start time of the iteration can be used as the processing duration corresponding to the candidate scheduling sequence determined by the ant.
[0109] During implementation, the time when the ant reaches the termination mark is determined based on the emission time of each transition and the delay of each transition in the candidate scheduling sequence corresponding to the ant, thereby effectively ensuring the validity of the determination result of the processing time while meeting the residence time constraints of each process module of the semiconductor process equipment.
[0110] It is understandable that when the ant backtracks during the path search process, it is necessary to continue timing based on the time corresponding to the identifier reached by the ant during the backtracking process to ensure the validity of the obtained processing time.
[0111] In one feasible implementation, the emission time of the transition is determined by the following method:
[0112] Based on the delay of the target library in the input library of the transition, the emission time of the transition is determined, and the target library includes at least one of the library representing the process module, the library representing the robot, and the library representing the scheduling process of the process object between different process modules.
[0113] Specifically, for any transition, the input place of the transition can be the place that enables the transition, that is, the connected directed arcs in each place of the reachable graph point to the place of the transition. The input place of the transition can be one or more, for example, Figure 3 The input location of transition t1 is p0, the input locations of t11 are p3 and p17, and the input locations of t12 are p12 and p16.
[0114] The target place is at least one of the places used to represent the process module, the places used to represent the robot, and the places used to represent the scheduling process of process objects between different process modules in the input places of the transition. For example, Figure 3 Among the input places p3 and p17 of t11, the target place is p3.
[0115] During the ant's path search, the launch time of a transition can be determined based on the latency of the target place among the transition's input places. When a transition has a single target place, the launch time can be determined based on the latency of that target place. When a transition has multiple target places, each target place must meet the transition's launch conditions before the transition can be launched. In this case, a launch time can be determined based on the latency of each target place and used as a candidate time. This allows the candidate time corresponding to each target place to be determined, and the candidate time with the largest value can be used as the launch time for the transition.
[0116] In the process of determining the launch time of the transition based on the delay of the target place, the sum of the time when the state of the target place switches to the target state and the delay of the target place can be used as the launch time of the transition. The target state of the target place is the state in which the target place enables the transition. For example, Figure 3 When transition t11 is completed, the state of place p16 switches to a state where a group of wafers has been placed, making transition t12 an enabling transition. The moment transition t11 is completed is the moment when place p16 changes to the target state. This effectively ensures the validity of the processing time determination results while meeting the dwell time constraints of each process module in the semiconductor processing equipment.
[0117] In a feasible implementation, determining the target scheduling sequence based on the candidate scheduling sequence determined by each ant in each round of iteration includes:
[0118] Based on the processing durations corresponding to the candidate scheduling sequences, the target scheduling sequence is determined from the candidate scheduling sequences.
[0119] Specifically, in each round of iteration, the candidate scheduling sequences determined by each ant and the processing time corresponding to each candidate scheduling sequence can be stored. After the iteration is completed, the target scheduling sequence can be determined from each candidate scheduling sequence based on the processing time corresponding to the candidate scheduling sequence determined by each ant in each round of iteration. For example, the candidate scheduling sequence with the shortest processing time can be used as the target scheduling sequence to maximize the working efficiency of the semiconductor process equipment.
[0120] It is understandable that the candidate scheduling sequence with the second shortest or second shortest processing time may also be used as the target scheduling sequence, which may be specifically set according to actual needs.
[0121] To further improve the efficiency of obtaining the target scheduling sequence, in one embodiment of the present specification, updating the pheromone concentration data of the reachable graph based on the candidate scheduling sequence determined by each ant in the current iteration includes:
[0122] Determine, based on the processing duration corresponding to the candidate scheduling sequence determined by the ant in the current iteration, the current pheromone concentration of the transition emitted by the ant under each identifier of the corresponding identifier sequence in the current iteration;
[0123] Based on the current pheromone concentration of the transition emitted by each ant under each identifier of the corresponding identifier sequence, the pheromone concentration data of the reachability graph is updated.
[0124] Specifically, the current pheromone concentration can be inversely proportional to the corresponding processing time. That is, the longer the processing time corresponding to the candidate scheduling sequence determined by the ant in the current round of iteration, the lower the current pheromone concentration of the transition emitted by the ant under each identifier of the corresponding identification sequence. Therefore, after updating the pheromone concentration data of the reachable graph according to the current pheromone concentration of the transition emitted by the ant under each identifier of the corresponding identification sequence, the probability of the ant selecting high-quality transitions in the subsequent iteration process can be greatly improved, the convergence speed can be improved, and the efficiency of obtaining the target scheduling sequence can be effectively improved.
[0125] For example, in the kth iteration, 1≤k<m1, m1 is the maximum number of iterations, for any identifier N in the identifier sequence corresponding to the jth ant, 1≤j≤m2, m2 is the number of ants in the kth iteration, the current pheromone concentration of the transition q emitted by the jth ant under this identifier is The determination method can be shown as formula (2):
[0126]
[0127] Where, T jk is the processing time corresponding to the candidate scheduling sequence determined by the j-th ant in the k-th iteration, and C is a constant, for example, C = 100000.
[0128] In this way, the current pheromone concentration of the transition emitted by each ant under each identifier of the corresponding identifier sequence in the current round of iteration can be obtained, so that the pheromone concentration data of the reachable graph can be updated based on the current pheromone concentration of the transition emitted by each ant under each identifier of the corresponding identifier sequence in the current round of iteration, so that in subsequent iterations, the ants can perform path search based on the latest pheromone concentration data.
[0129] In a feasible embodiment, updating the pheromone concentration data of the reachability graph based on the current pheromone concentration of each ant emitted under each identifier of the corresponding identifier sequence includes:
[0130] When the pheromone concentration data contains a historical pheromone concentration of a specified transition under a target identifier, the historical pheromone concentration is diluted based on a preset dilution coefficient; the target identifier is any identifier in the identifier sequence corresponding to each of the ants in the current iteration, and the specified transition is any transition in the transitions emitted by each of the ants under the target identifier in the current iteration;
[0131] Based on the current pheromone concentration of the specified transition under the target identifier and the historical pheromone concentration after dilution processing, an updated value of the pheromone concentration of the specified transition under the target identifier is determined.
[0132] Specifically, in the process of updating the pheromone concentration data of the reachable graph, each identifier in the identifier sequence determined by each ant in the current round of iteration can be obtained. For any identifier, the transition emitted by each ant under the identifier can be obtained. For any transition emitted under the identifier, the updated value of the pheromone concentration of the transition emitted under the identifier is determined based on the current pheromone concentration determined by each ant.
[0133] The target identifier may be any identifier in the identifier sequence determined by each ant in the current iteration, and the designated transition may be any transition launched by each ant under the target identifier.
[0134] The historical pheromone concentration of the specified transition under the target identifier may be the pheromone concentration of the specified transition under the target identifier in the pheromone concentration data used by each ant when searching for a path in the current iteration round, that is, the latest updated result of the pheromone concentration of the specified transition under the target identifier before the current iteration round.
[0135] As the ant colony algorithm iterates, the pheromone concentration of each transition in the pheromone concentration data of the reachability graph increases, causing the pheromone concentration added by ants in subsequent iterations to decrease in the total pheromone concentration. For example, if the current pheromone concentration of transition t1 is 10,000,000, and 10 is added, it will be updated to 1,000,0010. If the current pheromone concentration of transition t2 is 10,000, and 10,000 is added, it will be updated to 20,000. Although t2 has increased its pheromone concentration more than t1 in the current iteration, t1's larger base makes t2 less likely to be selected during the path search process.
[0136] Taking into account the low pheromone concentration of the reachable graph in the initial iteration process, the ants are equivalent to randomly selecting transitions during the path search process. As the pheromone concentration increases, the transitions selected by the ants in the later iteration process are more important than the transitions selected by the ants in the initial iteration process. Therefore, when the pheromone concentration data of the reachable graph includes the historical pheromone concentration of the specified transition under the target identifier, the historical pheromone concentration can be diluted based on a preset dilution coefficient, and the updated value of the pheromone concentration of the specified transition under the target identifier is determined based on the diluted historical pheromone concentration and the current pheromone concentration of the specified transition emitted by each ant under the target identifier.
[0137] For example, when updating the pheromone concentration data of the reachable graph according to the candidate scheduling sequence determined by each ant in the kth iteration, the updated value of the pheromone concentration of transition q under marker N in the kth iteration is The determination method can be shown as formula (3):
[0138]
[0139] Where α is the dilution coefficient, is the historical pheromone concentration of transition q under marker N in the kth iteration.
[0140] It can be understood that, for any ant in the k-th iteration, if the ant does not transmit transition q under the identifier N, then the current pheromone concentration of the ant transmitting transition q under the identifier N is 0.
[0141] In addition, when the historical pheromone concentration of the specified transition under the target identifier does not exist in the pheromone concentration data, the sum of the current pheromone concentrations of the specified transition under the target identifier determined by each ant in the current round of iteration can be used as the updated value of the pheromone concentration of the specified transition under the target identifier and added to the pheromone concentration data of the reachable graph.
[0142] Exemplary devices and apparatus
[0143] In an exemplary embodiment of the present specification, a scheduling device is also provided, which is applied to semiconductor process equipment and is used to determine the target scheduling sequence of the robot in the semiconductor process equipment; the scheduling device includes: a processor and a memory; a computer program is stored in the memory, and when the processor executes the computer program, it executes the scheduling method described in any of the above embodiments.
[0144] For the specific limitations and beneficial effects of the scheduling method, please refer to the relevant description above, and this specification will not go into details here.
[0145] In another exemplary embodiment of the present specification, a semiconductor process equipment is also provided. Figure 4 As shown, it includes at least one manipulator 402 and the scheduling device 401 as described above;
[0146] The scheduling device 401 is configured to determine a target scheduling sequence of the manipulator 402 according to the scheduling method described in any of the above embodiments, and control the manipulator 402 to schedule process objects based on the target scheduling sequence.
[0147] In some embodiments, the manipulator 402 includes at least one of an atmospheric manipulator 17 and a vacuum manipulator 18 .
[0148] In some embodiments, as Figure 5 As shown, the scheduling device 401 can collect information from the controlled modules 501 and control the controlled modules 501 to work in coordination. In addition to the robot 402, the controlled modules 501 can also include part or all of the wafer loading and unloading module 11, the vacuum lock 12, the first processing module 13, the second processing module 14, the third processing module 15, and the cooling module 16.
[0149] In some implementations, the scheduling device 401 may be a lower computer of a semiconductor process equipment, which is not limited in this specification and depends on the actual situation.
[0150] Exemplary computer program products and storage media
[0151] In addition to the above-mentioned methods and devices, the scheduling method provided in the embodiments of this specification may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the scheduling method according to various embodiments of this specification described in the above-mentioned "Exemplary Method" section of this specification.
[0152] The computer program product may be written in any combination of one or more programming languages to implement the operations of the embodiments of this specification, including object-oriented programming languages such as Java, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computing device, partially on the user's computing device, as a stand-alone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0153] In addition, an embodiment of this specification also provides a computer-readable storage medium on which a computer program is stored, and the computer program is used by a processor to execute the steps of the scheduling method according to various embodiments of this specification described in the above "Exemplary Method" section of this specification.
[0154] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this specification can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0155] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0156] The above-described embodiments merely represent several implementation methods of this specification. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the solutions provided by the embodiments of this specification. It should be noted that a person skilled in the art can make several variations and improvements without departing from the scope of this specification, and these variations and improvements fall within the scope of protection of this specification. Therefore, the scope of protection of the patent in this specification shall be based on the appended claims.
Claims
1. A scheduling method, characterized in that: Applied to semiconductor process equipment, used to determine a target scheduling sequence for a robot in the semiconductor process equipment; The scheduling method includes: Obtaining a reachable graph, the reachable graph comprising a plurality of places and a plurality of transitions, wherein the transitions are connected between two of the places, the places being used to represent one of a process module in the semiconductor process equipment, the robot, a scheduling process of process objects between different process modules, and a resource corresponding to the process module; and the transitions being used to represent an action performed by the robot; Based on the reachable graph and the global taboo table, an ant colony algorithm is used to determine the target scheduling sequence; the target scheduling sequence is used for the manipulator to schedule the process object; The global taboo table is used to record the deadlock identifier corresponding to each ant in each round of iteration. The deadlock identifier is the identifier of the reachable graph when the search state of the ant reaches a deadlock state; the deadlock state is used to trigger the ant to backtrack based on the identifier sequence corresponding to the ant, and the identifier of the reachable graph is used to represent the state of each of the libraries after the ant emits a transition under the previous identifier of the reachable graph; the identifier sequence includes at least one type of identifiers other than the deadlock identifier.
2. The method according to claim 1, characterized in that The method of determining the target scheduling sequence based on the reachable graph and the global taboo table by using an ant colony algorithm includes: A path search step, based on the global taboo table, the initial and final identifiers of the reachable graph, and pheromone concentration data of the reachable graph, controls multiple ants to perform path searches in parallel in the reachable graph to obtain a candidate scheduling sequence determined by each ant in the current iteration; the pheromone concentration data of the reachable graph includes multiple reachable identifiers of the reachable graph and the pheromone concentration of an enabling transition under each reachable identifier, wherein the enabling transition includes a transition selectable by each ant under the reachable identifier; When the current number of iterations has not reached the maximum number of iterations, based on the candidate scheduling sequence determined by each ant in the current round of iteration, the pheromone concentration data of the reachable graph is updated, and the path search step is performed; When the current number of iterations reaches the maximum number of iterations, the target scheduling sequence is determined based on the candidate scheduling sequences determined by each of the ants in each round of iteration.
3. The method according to claim 2, characterized in that The controlling of multiple ants to perform path search in the reachable graph in parallel based on the global taboo table, the initial identifier and the terminal identifier of the reachable graph, and the pheromone concentration data of the reachable graph comprises: The ant is controlled to search for a path in the reachable graph starting from the initial identifier until the current identifier of the reachable graph is the termination identifier; wherein, when the current identifier of the reachable graph includes at least one enabling transition, a target transition is determined from the at least one enabling transition based on the global taboo table and the pheromone concentration data of the reachable graph, and the candidate scheduling sequence corresponding to the ant is updated based on the target transition.
4. The method according to claim 2, characterized in that After obtaining the candidate scheduling sequence determined by each ant in the current round of iteration, the method further includes: Based on the moment when the ant reaches the termination mark of the reachable graph, the processing time corresponding to the candidate scheduling sequence determined by the ant in the current round of iteration is determined; the moment when the ant reaches the termination mark of the reachable graph is determined based on the emission time and delay of each transition in the candidate scheduling sequence corresponding to the ant, and the delay of the transition represents the time length for the robot to perform the corresponding action.
5. The method according to claim 4, characterized in that The emission time of the transition is determined by the following method: Based on the delay of the target library in the input library of the transition, the emission time of the transition is determined, and the target library includes at least one of the library representing the process module, the library representing the robot, and the library representing the scheduling process of the process object between different process modules.
6. The method according to claim 4, characterized in that The determining the target scheduling sequence based on the candidate scheduling sequence determined by each ant in each round of iteration includes: Based on the processing durations corresponding to the candidate scheduling sequences, the target scheduling sequence is determined from the candidate scheduling sequences.
7. The method according to claim 4, characterized in that The updating of the pheromone concentration data of the reachable graph based on the candidate scheduling sequence determined by each ant in the current round of iteration includes: Determine, based on the processing duration corresponding to the candidate scheduling sequence determined by the ant in the current iteration, the current pheromone concentration of the transition emitted by the ant under each identifier of the corresponding identifier sequence in the current iteration; Based on the current pheromone concentration of the transition emitted by each ant under each identifier of the corresponding identifier sequence, the pheromone concentration data of the reachability graph is updated.
8. The method according to claim 7, characterized in that The updating of the pheromone concentration data of the reachability graph based on the current pheromone concentration of each ant emitted under each identifier of the corresponding identifier sequence includes: When the pheromone concentration data contains a historical pheromone concentration of a specified transition under a target identifier, the historical pheromone concentration is diluted based on a preset dilution coefficient; the target identifier is any identifier in the identifier sequence corresponding to each of the ants in the current iteration, and the specified transition is any transition in the transitions emitted by each of the ants under the target identifier in the current iteration; Based on the current pheromone concentration of the specified transition under the target identifier and the historical pheromone concentration after dilution processing, an updated value of the pheromone concentration of the specified transition under the target identifier is determined.
9. A scheduling device, characterized in that: Applied to semiconductor process equipment, used to determine a target scheduling sequence for a robot in the semiconductor process equipment; The scheduling device includes: a processor and a memory; a computer program is stored in the memory, and when the processor executes the computer program, the scheduling method according to any one of claims 1 to 8 is executed.
10. A semiconductor process equipment, characterized in that: comprising at least one manipulator and the scheduling device according to claim 9; The scheduling device is configured to determine a target scheduling sequence of the manipulator according to the scheduling method according to any one of claims 1 to 8, and control the manipulator to schedule process objects based on the target scheduling sequence.
11. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by the processor, the scheduling method according to any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Ship navigation path planning method, system, medium and equipment
CN109740828A
Optimal path acquisition method based on ant colony algorithm
CN116026338A
Combined equipment scheduling method based on heuristic ant colony optimization algorithm
CN117745005A
Support method for farmland consolidation, program and apparatus
JP2009042862A
Scheduling method and system using ant algorithm for physical distribution delivery
KR1020160104909A