Method for scheduling single-arm cluster tools with wafer revisiting and residency time constraints
Granted 29 Dec 2015 · no office action yet
Assignee: Macau University of Science and Technology
Law firm: Law firm · Log in to unlock
Attorney: Attorney · Log in to unlock
Inventors: Yan Qiao, Fajun Yang, MengChu Zhou, Naiqi Wu · Examiner: Crystal J Barnes-Bullock · AU 2126 · TC 2100
Life of the application
6 dated eventsAbstract
In semiconductor manufacturing, there are wafer fabrication processes in cluster tools that need a wafer to visit some processing steps for more than once, leading to a revisiting process. Also, wafers may be subject to wafer residency time constraints. By considering atomic layer deposition (ALD) as a typical wafer revisiting process, this invention studies the challenging scheduling problem of single-arm cluster tools for the ALD process with wafer residency time constraints. By recognizing that the key to this problem is to schedule the robot tasks, the present invention presents different robot task sequencing strategies. With these strategies for different cases, the present invention performs the schedulability analysis and derives the schedulability conditions for such tools for the first time. If schedulable, the present invention proposes scheduling algorithms to obtain an optimal schedule efficiently. Illustrative examples are given to show the application of the proposed concepts and approach.
Description
17 parts›CLAIM FOR DOMESTIC PRIORITY
This application claims priority under 35 U.S.C. §119 to the U.S. Provisional Patent Application No. 62/102,112 filed Jan. 12, 2015, the disclosure of which is incorporated herein by reference in its entirety.
›COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material, which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
›FIELD OF THE INVENTION
The present invention relates to a method for scheduling single-arm cluster tools. More particularly, the present invention relates to a method for scheduling single-arm cluster tools with wafer revisiting and residency time constraints.
›BACKGROUND · 1 of 2
The following references are cited in the specification. Disclosures of these references are incorporated herein by reference in their entirety.
List of References:
N. Brauner, “Identical part production in cyclic robotic cells: Concepts, overview and open questions,” Discrete Appl. Math., vol. 156, no. 13, pp. 2480-2492, 2008.
W. K. Chan, J. G. Yi, and S. W. Ding, “Optimal Scheduling of Multi-cluster Tools with Constant Robot Moving Times, Part I: Two-Cluster Analysis,” IEEE Transactions on Automation Science and Engineering , vol. 8, no. 1, pp. 5-16, 2011a.
W. K. Chan, J. G. Yi, S. W. Ding, and D. Z. Song, “Optimal Scheduling of Multi-cluster Tools with Constant Robot Moving Times, Part II: Tree-Like Topology Configurations,” IEEE Transactions on Automation Science and Engineering , vol. 8, no. 1, pp. 17-28, 2011b.
Y. Crama, V. Kats, J. van de Klundert, and E. Levner, “Cyclic scheduling in robotic flowshops,” Ann. Oper. Res.: Math. Ind. Syst., vol. 96, no. 1-4, pp. 97-124, 2000.
Y. Crama and J. van de Klundert, “Cyclic scheduling of identical parts in a robotic cell,” Oper. Res., vol. 45, no. 6, pp. 952-965, 1997.
M. Dawande, N. Geismar, M. Pinedo, and C. Sriskandarajah, “Throughput optimization in dual-gripper interval robotic cells,” IIE Trans., vol. 42, no. 1, pp. 1-15, January 2010.
M. Dawande, H. N. Geismar, S. P. Sethi, and C. Sriskandarajah, Throughput Optimization in Robotic Cells. New York: Springer, 2007.
M. Dawande, C. Sriskandarajah, and C. S. Sethi, “On throughput maximization in constant travel-time robotic cells,” Manuf. Serv. Oper. Manage., vol. 4, no. 4, pp. 296-312, 2002.
H. N. Geismar, L. M. A. Chan, M. Dawande, and C. Sriskandarajah, “Approximations to optimal k-unit cycles for single- and dual-gripper robotic cells,” Prod. Oper. Manage H. N. Geismar, L. M. A. Chan, M. Dawande, and C. Sriskandarajah, “Approximations to optimal k-unit cycles for single- and dual-gripper robotic cells,” Prod. Oper. Manage., vol. 17, no. 5, pp. 551-563, 2008.
H. N. Geismar, M. Dawande, and C. Sriskandarajah, “Throughput optimization in constant travel-time dual-gripper robotic cells with parallel machines,” Prod. Oper. Manage., vol. 15, no. 2, pp. 311-328, 2006.
J.-H. Kim, T.-E. Lee, H.-Y. Lee, and D.-B. Park, Scheduling analysis of timed-constrained dual-armed cluster tools, IEEE Transactions on Semiconductor Manufacturing , vol. 16, no. 3, 521-534, 2003.
T.-E. Lee and S.-H. Park, “An extended event graph with negative places and tokens for timed window constraints,” IEEE Transactions on Automation Science and Engineering , vol. 2, no. 4, 319-332, 2005.
H.-Y. Lee and T.-E. Lee. Scheduling single-arm cluster tools with reentrant wafer flows. IEEE transactions on Semiconductor Manufacturing, vol.19, no.2, 226-240, 2006.
T.-E. Lee, H.-Y. Lee, and Y.-H. Shin, Workload balancing and scheduling of a single-armed cluster tool, in Proceedings of the 5th APIEMS Conference, Gold Coast, Australia, 1-15, 2004.
M.-J. Lopez and S.-C. Wood, Systems of multiple cluster tools—configuration, reliability, and performance, IEEE Transactions on Semiconductor Manufacturing, vol. 16, no. 2, 170-178, 2003.
M., Pinedo, Scheduling: Theory, Algorithms, and Systems, Prentice Hall, Englewood Cliffs, N.J., 1995.
T. L. Perkinson, R. S. Gyurcsik, and P. K. MacLarty, “Single-wafer cluster tool performance: An analysis of the effects of redundant chambers and revisitations sequences on throughput,” IEEE Transactions on Semiconductor Manufacturing , vol. 9, no. 3, 384-400, 1996.
T. L. Perkinson, P. K. MacLarty, R. S. Gyurcsik, and R. K. Cavin, III, “Single-wafer cluster tool performance: An analysis of throughput,” IEEE Transactions on Semiconductor Manufacturing , vol. 7, no. 3, 369-373, 1994.
Y. Qiao, N. Q. Wu, and M. C. Zhou, A Petri net-based novel scheduling approach and its cycle time analysis for dual-arm cluster tools with wafer revisiting, IEEE Transactions on Semiconductor manufacturing , vol. 26, no. 1, 100-110, 2013.
Y. Qiao, N. Q. Wu, and M. C. Zhou, Scheduling of dual-arm cluster tools with wafer revisiting and residency time constraints, IEEE Transactions on Industrial Informatics , vol. 10, no. 1, 286-300, 2014a.
Y. Qiao, N. Q. Wu, and M. C. Zhou, Schedulability and scheduling analysis of dual-arm cluster tools with wafer revisiting and residency time constraints based on a novel schedule, IEEE Transactions on Systems, Man , & Cybernetics: Systems , in press, 2014b.
S. Sechi, J. Sidney, and C. Sriskandarajah, “Scheduling in dual-gripper robotic cells for productivity gains,” IEEE Trans. Robot. Autom., vol.17, no. 3, pp. 324-341, 2001.
S. Sechi, C. Sriskandarajah, G. Sorger, J. Blazewicz, and W. Kubiak, “Sequencing of parts and robot moves in a robotic cell,” Int. J. Flexible Manuf. Syst., vol. 4, no. 3-4, pp. 331-358, 1992.
S. Venkatesh, R. Davenport, P. Foxhoven, and J. Nulman, “A steady state throughput analysis of cluster tools: Dual-blade versus single-blade robots”, IEEE Trans. Semiconduct. Manuf ., vol.10, no. 4, pp. 418-424, 1997.
N. Q. Wu, C. B. Chu, F. Chu, and M. C. Zhou, “A Petri net method for schedulability and scheduling problems in single-arm cluster tools with wafer residency time constraints,” IEEE Transactions on Semiconductor Manufacturing , vol. 21, no. 2, pp. 224-237, 2008.
N. Q. Wu, F. Chu, C. Chu, and M. Zhou, “Petri Net-Based Scheduling of Single-Arm Cluster Tools With Reentrant Atomic Layer Deposition Processes,” IEEE Transactions on Automation Science and Engineering , vol. 8, no. 1, pp. 42-55, 2011. N. Q. Wu, F. Chu, C. B. Chu, and M. C. Zhou, “Petri net modeling and cycle time analysis of dual-arm cluster tools with wafer revisiting,” IEEE Transactions on Systems, Man , & Cybernetics : Systems, vol. 43, no. 1, pp. 196-207, 2013a. N. Q. Wu and M. Zhou, “Analysis of wafer sojourn time in dual-arm cluster tools with residency time constraint and activity time variation,” IEEE Transactions on Semiconductor Manufacturing , vol. 23, no. 1, pp. 53-64, 2010a. N. Q. Wu and M. C. Zhou, “A closed-form solution for schedulability and optimal scheduling of dual-arm cluster tools based on steady schedule analysis,” IEEE Transactions on Automation Science and Engineering , vol. 7, no. 2, 303-315, 2010b. N. Q. Wu and M. C. Zhou, Colored timed Petri nets for modeling and analysis of cluster tools, Asian Journal of Control, vol. 12, no. 3, 253-266, 2010c. N. Q. Wu and M. C. Zhou, “Modeling, analysis and control of dual-arm cluster tools with residency time constraint and activity time variation based on Petri nets,” IEEE Transactions on Automation Science and Engineering , vol. 9, no. 2, 446-454, 2012a. N. Q. Wu and M. C. Zhou, “Schedulability analysis and optimal scheduling of dual-arm cluster tools with residency time constraint and activity time variation,” IEEE Transactions on Automation Science and Engineering , vol. 9, no. 1, 203-209, 2012b. N. Q. Wu, M. C. Zhou, F. Chu, and C. B. Chu, A Petri-net-based scheduling strategy for dual-arm cluster tools with wafer revisiting, IEEE Transactions on Systems, Man , & Cybernetics: Systems , vol. 43, no. 5, 1182-1194, 2013b. W. M. Zuberek, “Timed Petri nets in modeling and analysis of cluster tools,” IEEE Transactions on Robotics Automation , vol. 17, no. 5, pp. 562-575, October 2001. W. M. Zuberek, “Cluster tools with chamber revisiting—modeling and analysis using timed Petri nets”, IEEE Transactions on Semiconductor Manufacturing, vol. 17, no. 3, 333-344, 2004.
›BACKGROUND · 2 of 2
With a single-wafer processing technology, cluster tools are widely used for wafer fabrication in semiconductor manufacturing. A typical cluster tool has several process modules (PMs), two loadlocks, and a wafer handling robot with a radical layout as shown in FIG. 1 . Equipped with one or two arms for the robot, the corresponding tool is called a single or dual-arm cluster tool. Cassettes with lots of raw wafers are loaded into or unloaded from a cluster tool through the loadlocks. A wafer is unloaded from the loadlock by the robot and delivered to one or more PMs for processing in a pre-specified order decided by a recipe. Often, the wafers in a cassette have an identical recipe. A wafer should stay in a PM for a minimum time to be processed. After all operations are completed, it returns to the cassette from which it comes [Wu et al., 2010b]. When all the wafers in a cassette are processed, the cassette is unloaded from the loadlock such that another cassette can be loaded. In this way, with two loadlocks, a cluster tool can operate consecutively without interruption.
Cluster tools are a kind of robotic cells and a robotic cell is a flow-shop with blocking [Pinedo, 1995]. Extensive work has been done for the operation of a robotic cell [Brauner, 2008; Crama et al., 1997 and 2000; Dawande et al., 2002, 2007 and 2009; Geismar et al., 2006 and 2008; Sechi et al., 1992 and 2001]. They mainly focus on a flow-shop operation mode with one part type to be processed and a processed part can stay at a machine for an unlimited time. A cyclic schedule is called a k-unit schedule if exactly k parts are produced during every period [Sechi et al., 1992]. When k=1, it is a one-unit cyclic schedule. Owing to its easy implementation, one-unit cyclic schedule is the most desired in practice assuming that all the schedules achieve the same maximum throughput.
To effectively operate a single-cluster tool, plenty of studies have been done [Venkatesh et al., 1997; Perkinson et al., 1994 and 1996; Zuberek, 2001; Wu et al., 2011 and 2013; and Wu and Zhou, 2010a, 2012a, and 2012b]. They show that a cluster tool mostly operates under a steady state. If the robot is the bottleneck and the robot task time decides the cycle time of a tool, the tool operates in a transport-bound region. Contrarily, if the wafer processing time dominates the process and decides the cycle time, it operates in a process-bound region. In practice, the robot task time is much shorter than the wafer processing time [Lee et al., 2004; Lopez and Wood, 2003]. Thus, a single-arm cluster tool is mostly process-bound and a backward scheduling strategy is shown to be optimal [Lee et al., 2004; Lopez and Wood, 2003].
Some wafer fabrication processes impose strict wafer residency time constraints in a PM, which requires that a processed wafer be removed from the PM within a limited time, otherwise it suffers from serious quality problem [Kim et al., 2003; Lee and Park, 2005]. With such constraints, the scheduling problem of cluster tools becomes very complicated and challenging. Methods are developed in [Kim et al., 2003; Lee and Park, 2005] to schedule dual-arm cluster tools with wafer residency time constraints for cyclic scheduling. With Petri net models and robot waiting concept, much more efficient techniques are presented in [Wu et al., 2008; and Wu and Zhou, 2010a] for scheduling both single and dual-arm cluster tools.
In wafer fabrication, a wafer may need to visit some processing steps several times, leading to a revisiting process. Atomic layer deposition (ALD) is a typical revisiting process in the semiconductor manufacturing [Lee, et al., 2006]. With wafer revisiting, it is challenging to schedule a cluster tool. All the aforementioned studies are conducted on cluster tools for non-revisiting processes. To explore the potential in operating a cluster tool with wafer revisiting, methods are presented for performance evaluation by using Petri net models in [Zuberek, et al., 2004; and Wu and Zhou, 2010c] without providing a scheduling technique. Lee, et al. [2006] study the scheduling problem of single-arm cluster tools with wafer revisiting for the first time. In their work, based on a Petri net model, the problem is formulated as a mixed integer programming such that an optimal schedule can be found. This problem is further investigated in [Wu, et al., 2011] for the ALD process by using Petri net model and analytical expressions are derived to find the optimal schedule. For dual-arm cluster tools with wafer revisiting, based on a Petri net model, Wu et al., [2013a] find that, by using a swap strategy, the system may never enter a steady state and analytical expressions are presented to correctly calculate the cycle time. Based on this finding, effective methods are developed to schedule such dual-arm cluster tools in [Wu et al., 2013b; and Qiao et al., 2013].
With both wafer residency time constraints and revisiting, the scheduling problem of cluster tools is very complicated. Based on the scheduling strategy proposed in [Qiao et al., 2013], effective techniques are developed to schedule dual-arm cluster tools for the ALD process with wafer residency time constraints for different situations in [Qiao et al., 2014a and 2014b]. Up to now, there is no research report on scheduling single-cluster tools with both wafer residency time constraints and wafer revisiting. Notice that, with wafer revisiting, it is more difficult to balance the workloads among the steps for a single-arm cluster tool than for a dual-arm cluster tool, thereby, leading to a more difficult problem to schedule a single-arm tool than a dual-arm one.
There is a need in the art for a method to obtain a schedule when wafer revisiting process and residency time constraints are taken into consideration.
›SUMMARY OF THE INVENTION
An aspect of the present invention is to provide a computer implemented method for scheduling a single-arm cluster tool with wafer revisiting process and residency time constraints.
According to an embodiment of the present claimed invention, a computer implemented method for scheduling a single-arm cluster tool with wafer revisiting process and residency time constraints comprises: obtaining, by a processor, a wafer processing time, a wafer residency time, a robot task time for loading/unloading a wafer, and a robot task time for robot's moving; determining, by a processor, a cycle time for the wafer revisiting process based on the wafer processing time, the robot task time for loading/unloading the wafer, and the robot task time for robot's moving; determining, by a processor, a cycle time of system based on the wafer processing time, the robot task time for loading/unloading the wafer, and the robot task time for robot's moving; determining, by a processor, a case of an algorithm from a plurality of defined cases of algorithms based on the wafer processing time, the determined cycle time for the wafer revisiting process, and the determined cycle time of system; determining, by a processor, a robot scheduling strategy based on the determined case of the algorithm, wherein the robot scheduling strategy comprises a plurality of basic activity sequences; determining, by a processor, a robot waiting time based on the wafer residency time and the determined case of the algorithm; and generating, by a processor, a schedule based on the determined robot scheduling strategy and the determined robot waiting time.
The present invention makes the following contributions: 1) schedulability conditions under which a feasible cyclic schedule exists are proposed; and 2) If schedulable, closed-form algorithms are developed to find the optimal schedule.
With wafer revisiting and wafer residency time constraints, it is highly challenging to schedule a cluster tool. For an ALD process, the present invention solves such a scheduling problem for single-arm cluster tools with wafer flow pattern (PM1, (PM2, PM3) 2 ). Based on a prior work [Wu, et al., 2011], different strategies for scheduling the robot task sequence are proposed and analyzed. Then, for different cases, schedulability analysis is conducted and schedulability conditions are established. If schedulable, scheduling algorithms are proposed such that a feasible and optimal schedule is swiftly found. Thus, the method of the present invention represents a significant advancement in this research field.
The results obtained are for ALD process with the wafer flow pattern (PM1, (PM2, PM3) 2 ), which looks very simple but its optimal scheduling task is actually much more complicated than one might think or in comparison with a non-revisiting process.
›BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows cluster tools: (a) single-arm tool, and (b) dual-arm tool;
FIG. 2 illustrates an ALD process (k>1);
FIG. 3 depicts a Gantt chart for the schedule of wafer revisiting process (PM2, PM3) 2 ;
FIG. 4 depicts a Gantt chart of sequence A 2 23 A 01 A 12 A 30 A 1 23 A 32 with α 2 ≦α 3 ;
FIG. 5 depicts a wafer sojourn time at different steps in different cases;
FIG. 6 depicts a Gantt chart of sequence A 2 23 A 12 A 01 A 30 A 1 23 A 32 with α 2 ≦α 3 ;
FIG. 7 depicts a Gantt chart of sequence A 2 23 A 12 A 30 A 1 23 A 01 A 32 with α 2 ≦α 3 ;
FIG. 8 depicts a Gantt chart of sequence A 2 23 A 12 A 30 A 1 23 A 32 A 01 with α 2 ≦α 3 ;
FIG. 9 depicts a Gantt chart of sequence A 2 23 A 12 A 01 A 30 A 1 23 A 32 with α 2 >α 3 ;
FIG. 10 depicts a Gantt chart of sequence A 2 23 A 12 A 30 A 01 A 1 23 A 32 with α 2 >α 3 ;
FIG. 11 depicts a Gantt chart of sequence A 2 23 A 12 A 30 A 1 23 A 01 A 32 with α 2 >α 3 ;
FIG. 12 depicts a Gantt chart of sequence A 2 23 A 12 A 30 A 1 23 A 32 A 01 with α 2 >α 3 ;
FIG. 13 depicts a Gantt chart of sequence A 2 23 A 30 A 12 A 01 A 1 23 A 32 ; and
FIG. 14 depicts a Gantt chart of sequence A 2 23 A 12 A 01 A 30 A 1 23 A 32 .
›DETAILED DESCRIPTION · 1 of 7
In the following description, a computer implemented method for scheduling single-arm cluster tools with wafer revisiting process and residency time constraints is set forth as preferred examples. It will be apparent to those skilled in the art that modifications, including additions and/or substitutions maybe made without departing from the scope and spirit of the invention. Specific details may be omitted so as not to obscure the invention; however, the disclosure is written to enable one skilled in the art to practice the teachings herein without undue experimentation.
Accordingly, Section A briefly introduces the ALD process and presents the robot task sequencing strategies. Based on them, schedulability conditions and scheduling algorithms are derived in Section B. Illustrative examples are used to show the obtained results in Section C.
A. Fabrication Process and Scheduling Strategies
A.1 A. Atomic Layer Deposition Process
As a typical wafer fabrication process in semiconductor manufacturing, ALD controls the deposition film thickness by adjusting the number of repeating times such that a mono-atomic layer precision can be obtained. Furthermore, it uses much lower processing temperature, i.e., 100° C.-400° C., rather than 550° C.-800° C. for chemical vapor deposition. Hence, ALD is increasingly used in the semiconductor industry.
In an ALD process, there are three steps as shown in FIG. 2 , a wafer visits Step 1 first, then Step 2 and followed by Step 3 . After that, it goes back to Step 2 and then Step 3 again and this process is performed for a total of k(≧2) times, where k is decided by a process plan. In a cluster tool, multiple PMs may be configured for some steps to balance the workload among the steps. However, for a revisiting process, when a wafer revisits a processing step, the same processing environment is required as the wafer visits the prior step. With such a requirement, for the ALD process, often, only one PM is configured for a step to guarantee uniformity. An embodiment of the present invention focuses on the ALD process with one PM being configured for each step. Let PM1-PM3 be the PMs for Steps 1 - 3 , respectively. Then, the wafer flow pattern of an ALD process can be denoted as (PM1, (PM2, PM3) k ) with (PM2, PM3) k being a k-revisiting process. For the simplicity of presentation, one considers the case of k=2 only. Nevertheless, the obtained results for k=2 can be extended to cases of k>2. With k=2, the wafer flow pattern is (PM1, (PM2, PM3) 2 ).
A.2 Activity Description
The loadlocks in a cluster tool can be treated as a processing step, as denoted by PM 0 . In operating a cluster tool, the robot tasks include: unloading a processed wafer from a PM, moving from one PM to another with a wafer, loading a wafer into a PM for processing, moving from one PM to another without a wafer, and waiting. Given the status of a cluster tool and the wafer processing information, the key to schedule a cluster tool is to schedule its robot tasks.
Therefore, for scheduling of a single-arm cluster tool, the system is described as follows. Let u i and l i denote the robot unloading and loading a wafer from and into PM i , i∈Ω 3 ={0, 1, 2, 3}, respectively. Further, let m ij , i,j∈Ω 3 , except m 23 , denote the robot's moving from Steps i to j, and m 1 23 and m 2 23 denote its moving from Step 2 to 3 holding the same wafer for the first and second time, respectively.
Correspondingly, the temporal aspect for each robot activity is described as follows. The time taken for robot tasks u i and l i is identical and denoted by λ; and the time taken for m ij except m 23 , i,j∈Ω 3 , m 1 23 , and m 2 23 is also same and denoted by μ. Let ω i,j , i,j∈Ω 3 , except ω 23 , denote the time taken for the robot's waiting before unloading a wafer from PM i to move to PM j and, ω 1 23 and ω 2 23 the time for its waiting before unloading the same wafer from PM 2 to move to PM 3 for the first and second time, respectively.
Apart from the robot tasks, the wafer processing in a PM also takes time. Note that there is no processing requirement in the loadlocks. Thus, one uses α i to denote the time taken for processing a wafer in PM i , i∈N 3 ={1, 2, 3}. With wafer residency constraints, a processed wafer should be unloaded from PM i within a limited time δ i , which implies that a wafer can stay in PM i for a duration that lies in the interval [α i , α i +δ i ] without suffering from a quality problem. Let τ i ∈[α i , α i +δ i ] denote the wafer sojourn time in PM i . The time duration for each activity is listed in Table I. In practice, as the robot task time is much shorter than wafer processing time, it is reasonable to assume that α i ≧5(μ+λ), i∈N 3 .
It is known that a single-arm cluster tool for the ALD process is deadlock-prone [Lee and Lee, 2006; and Wu, et al., 2011]. However, this problem can be solved by using the policy presented in [Wu, et al., 2011]. Then, for a single-arm cluster tool with wafer revisiting and residency time constraints, according to [Wu et al., 2008; and Wu and Zhou, 2010b], the following schedulability definition is presented.
Definition 1 [Wu et al., 2008; and Wu and Zhou, 2010b]: Given wafer sojourn time interval [α i , α i +δ i ] for Step i, i∈N 3 , if there exists a schedule such that whenever u i is performed, α i ≦τ i ≦α i +δ i holds, then, a single-arm cluster tool with wafer revisiting and residency time constraints is schedulable.
A.3 Scheduling Strategy
Following the idea in [Chan, et. al., 2011a and b], to simplify the presentation, one defines a basic activity sequence A ij = m xi (without carrying a wafer)→u i →m ij l j , i,j∈Ω 3 , where m xi denotes that the robot can come to Step i from any Step x. Notice that x=i may hold, or the task before performing A ij is l i . This means that, to perform A ij , the robot is already at Step i. In this case, A ij = u i →m ij →l j and it is denoted as A ij \{m ii } to indicate that m ii takes no time. Also, A 1 23 and A 2 23 are defined in a similar way. With them, one can describe a schedule by presenting the robot task sequence with no robot waiting being taken into consideration.
›DETAILED DESCRIPTION · 2 of 7
According to Wu, et al. [2011], without wafer residency time constraints, the optimal one-wafer cyclic schedule for (PM2, PM3) 2 is deterministic and unique and such a schedule can be described as A 2 23 A 12 A 30 A 1 23 A 32 . Let W d (q) in PM i , d∈{1, 2, 3, . . . }, q∈N 2 , and i∈N 3 , denote the d-th wafer being processed in PM i for the q-th time. The Gantt chart for the optimal one-wafer cyclic schedule of wafer revisiting process (PM2, PM3) 2 is illustrated in FIG. 3 . In FIG. 3 , “A 12 (2λ+2μ)” means that A 12 is performed and it takes 2λ+2μ time units. The meaning of “A 1 23 (2λ+2μ)”, “A 32 (2λ+μ)”, “A 2 23 (2λ+μ)”, and “A 30 \{m 33 }(2λ+μ)” is similar. From FIG. 3 , one can observe that after A 12 (2λ+2μ) is performed, the robot comes to PM 3 by performing m 23 immediately, and the time taken by A 12 together with m 23 is 2λ+3μ. As 2λ+3μ<α 3 , when W 1 (2) is processed in PM 3 , the robot is already at Step 3 . In other words, at time T 1 , m 23 in A 30 has been already performed. Hence, during the time between T 1 and T 2 , the task performed is A 30 \{m 33 } with 2λ+μ time units being taken. For this schedule, the cycle time for the revisiting process is ζ=Max {2λ+3μ, α 2 , α 3 }+(4λ+ 3 μ)+(4λ+2μ+α 2 +α 3 )=8λ+5μ+α 2 +α 3 +Max{α 2 , α 3 }.
Let Θ be the cycle time of the whole system. One has Θ=ζ or Θ>ζ. If Θ=ζ, the robot activity sequence for the revisiting process (PM2, PM3) 2 in the schedule for the entire system should be same as that in the optimal one-wafer cyclic schedule for (PM2, PM3) 2 , or it is A 2 23 A 12 A 30 A 1 23 A 32 . Then, to obtain a schedule for the entire system, the key is to decide when A 01 should be performed while satisfying the wafer residency time constraints. There are totally five possible robot task sequences for the entire system, i.e., 1) A 2 23 A 01 A 12 A 30 A 1 23 A 32 ; 2) A 2 23 A 12 A 01 A 30 A 1 23 A 32 ; 3) A 2 23 A 12 A 30 A 01 A 1 23 A 32 ; 4) A 2 23 A 12 A 30 A 1 23 A 01 A 32 ; and 5) A 2 23 A 12 A 30 A 1 23 A 32 A 01 , leading to five different strategies. One needs to analyze them, respectively.
For Case 1): A 2 23 A 01 A 12 A 30 A 1 23 A 32 , i.e., without robot waiting, the robot activity sequence is σ 1 = unloading a wafer from PM 2 (λ)→moving to PM 3 (μ)→loading a wafer into PM 3 (λ)→moving to PM 0 (μ)→unloading a wafer from PM 0 (λ)→moving to PM 1 (μ)→loading a wafer into PM 1 (λ)→unloading a wafer from PM 1 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ)→moving to PM 3 (μ)→unloading a wafer from PM 3 (λ)→moving to PM 0 (μ)→loading a wafer into PM 0 (λ)→moving to PM 2 (μ)→unloading a wafer from PM 2 (λ)→moving to PM 3 (μ)→loading a wafer into PM 3 (λ)→unloading a wafer from PM 3 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ) . Therefore, in this case, the robot cycle time without waiting for the entire system is
ψ 11 =12λ+9μ (1)
For Case 2): A 2 23 A 12 A 01 A 30 A 1 23 A 32 , the robot activity sequence is σ 2 = unloading a wafer from PM 2 (λ)→moving to PM 3 (μ)→loading a wafer into PM 3 (λ)→moving to PM 1 (μ)→unloading a wafer from PM 1 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ)→moving to PM 0 (μ)→unloading a wafer from PM 0 (λ)→moving to PM 1 (μ)→loading a wafer into PM 1 (λ)→moving to PM 3 (μ)→unloading a wafer from PM 3 (λ)→moving to PM 0 (μ)→loading a wafer into PM 0 (λ)→moving to PM 2 (μ)→unloading a wafer from PM 2 (λ)→moving to PM 3 (μ)→loading a wafer into PM 3 (λ)→unloading a wafer from PM 3 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ) . Hence, one has
ψ 21 =12λ+10μ (2)
Similarly, for Cases 3) A 2 23 A 12 A 30 A 01 A 1 23 A 32 , 4) A 2 23 A 12 A 30 A 1 23 A 01 A 32 , and 5) A 2 23 A 12 A 30 A 1 23 A 32 A 01 , one has
ψ 31 =12λ+9μ (3)
ψ 41 =12λ+11μ (4)
ψ 51 =12λ+11μ (5)
If Θ>ζ, it implies that the wafer processing time in PM 1 decides the cycle time of the system. In this case, to obtain an optimal schedule, after performing A 12 , one should perform A 01 immediately to keep PM 1 , the bottleneck of the system, working. Furthermore, according to the fabrication requirements, A 12 and A 30 should be performed before A 1 23 , and A 1 23 before A 32 . Therefore, there are two different strategies only, i.e., Case 6): A 2 23 A 30 A 12 A 01 A 1 23 A 32 and Case 7): A 2 23 A 12 A 01 A 30 A 1 23 A 32 .
For Case 6, one has σ 6 = unloading a wafer from PM 2 (λ)→moving to PM 3 (μ)→loading a wafer into PM 3 (λ)→unloading a wafer from PM 3 (λ)→moving to PM 0 (μ)→loading a wafer into PM 0 (λ)→moving to PM 1 (μ)→unloading a wafer from PM 1 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ)→moving to PM 0 (μ)→unloading a wafer from PM 0 (λ)→moving to PM 1 (μ)→loading a wafer into PM 1 (λ)→moving to PM 2 (μ)→unloading a wafer from PM 2 (λ)→moving to PM 3 (μ)→loading a wafer into PM 3 (λ)→unloading a wafer from PM 3 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ) . Thus, the robot cycle time without waiting is
ψ 61 =12λ+9μ (6)
For Case 7, it is same as Case 2, and the robot cycle time without waiting is
ψ 71 =12λ+10μ (7)
With the above analysis, one discusses the schedulability and scheduling method next by examining the above cases for scheduling the robot task sequence.
B. Schedulability and Scheduling
In this section, based on Θ=ζ or Θ>ζ, one studies the schedulability and scheduling problem by examining each of the above robot scheduling strategies. For any above given robot scheduling strategy, if a schedule exists, an algorithm is derived to find it by setting the robot waiting time simply.
A. Θ=ζand α 2 ≦α 3
With α 2 ≦α 3 , one has ζ=8λ+5μ+α 2 +α 3 +Max{α 2 , α 3 }=8λ+5μ+α 2 +2α 3 . If a schedule is obtained by robot task sequence A 2 23 A 01 A 12 A 30 A 1 23 A 32 or Case 1, the Gantt chart can be shown in FIG. 4 where the highlighted path with red color is the critical one. This implies that, to obtain an optimal schedule, one should find no delay along this path. With this observation, the robot task sequence can be equivalently denoted as A 01 A 12 A 30 A 1 23 A 32 A 2 23 .
It follows from the Gantt chart in FIG. 4 that, to make Θ=ζ, 2λ+2μ+α 1 +2λ+μ+α 2 ≦α 3 +(2λ+μ)+μ α 1 +α 2 +2λ+μ≦α 3 must hold. Let ψ i2 , i∈N 7 , be the robot waiting time in a cycle. Then, for A 2 23 A 01 A 12 A 30 A 1 23 A 32 , one has ψ 12 =ζ−ψ 11 =(8λ+5μ+α 2 +2α 3 )−(12λ+9μ)=2α 3 +α 2 −4λ−4μ. In this case, it follows from FIG. 4 that W 1 (2), W 2 (1), and W 2 (2) are unloaded immediately after being processed in PM 3 , PM 3 , and PM 2 , respectively. Thus, wafer residency time constraints may be violated for only W 2 (1) and W 2 (1) that are processed in PM 1 and PM 2 , respectively. To obtain a feasible schedule if it exists, the key is to assign ψ 12 into ω ij 's properly. To do so, one presents the following algorithm.
›DETAILED DESCRIPTION · 3 of 7
Algorithm 1: If Θ=ζ with α 1 +α 2 +2λ+μ≦α 3 and the robot task sequence is A 2 23 A 01 A 12 A 30 A 1 23 A 32 , ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If α 3 ≦α 1 +α 2 +2λ+μ+δ 1
2.1. ω 01 =0, ω 12 =α 3 −α 2 −2λ−μ, ω 30 =α 3 −4λ−4μ−ω 12 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 ; 2.2. Go to Step vi.
iii. If α 3 ≦α 1 +α 2 +2λ+μ+δ 2
3.1. ω 01 =0, ω 12 =α 1 , ω 30 =α 3 −4λ−4μ−ω 12 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 ; 3.2. Go to Step vi.
iv. If α 1 +α 2 +2λ+μ+δ 1 <α 3 , α 1 +α 2 +2λ+μ+δ 2 <α 3 , and α 1 +α 2 +2λ+μ+δ 1 +δ 2 ≧α 3
4.1. ω 01 =0, ω 12 =α 1 +δ 1 , ω 30 =α 3 −4λ−4μ−ω 12 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 ; 4.2. Go to Step vi.
v. If α 1 +α 2 +2λ+μ+δ 1 +δ 2 <α 3
5.1. ω 01 =α 3 −(α 1 +α 2 +2λ+μ+δ 1 +δ 2 ); 5.2. If ω 01 >α 3 −4λ−4μ−α 1 −δ 1 , Q=0 and go to Step vi; 5.3. Otherwise, ω 12 =α 1 +δ 1 , ω 30 =α 3 −4λ−4μ−ω 12 −ω 01 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 ; 5.4. Go to Step vi.
vi. Return Q and end.
By Algorithm 1, α 1 +α 2 +2λ+μ≦α 3 . Thus, for Case ii, with α i ≧5(μ+λ), one has ω 12 =α 3 −α 2 −2λ−μ≧α 1 >0, ω 30 =α 3 −4λ−4μ−(α 3 −α 2 −2λ−μ)=α 2 −2λ−3μ>0. For Case iii, ω 30 =α 3 −4λ−4μ−α 1 ≧α 2 −2λ−3μ>0. For Case iv, ω 30 =α 3 −4λ−4μ−(α 1 +δ 1 )>( α 1 +α 2 +2λ+μ+δ 1 )−4λ−4μ−(α 1 +δ 1 )=α 2 −2λ−3μ>0. For Case v, if Q=1 is returned, 0<ω 01 =α 3 −(α 1 +α 2 +2λ+μ+δ 1 +δ 2 )≦α 3 −4λ−4μ−α 1 −δ 1 , leading to ω 30 =α 3 −4λ−4μ−ω 12 −ω 01 ≧0. Hence, any robot waiting time set by Algorithm 1 is non-negative if Q=1 is returned. Furthermore, for each case, one has ψ 12 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =2α 3 +α 2 −4λ−4μ such that Θ=Θ=ψ 11 +ψ 12 . The following theorem presents the feasibility of the schedule obtained by Algorithm 1.
Theorem 1: Assume that: 1) the cycle time of the system is Θ=ζ with α 1 +α 2 +2λ+μ≦α 3 , 2) the robot task sequence is A 2 23 A 01 A 12 A 30 A 1 23 A 32 , and 3) the robot waiting time is set by Algorithm 1 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
Proof: One needs to show that the wafer residency time constraints are satisfied for only W 2 (1) and W 2 (1) that are processed in PM 1 and PM 2 , respectively. Let τ i denote the wafer sojourn time in PM i . It follows from FIG. 4 that, for Case ii and W 2 (1) in PM 1 , one has τ 1 =ω 12 =α 1 +[α 3 −(α 1 +α 2 +2λ+μ)]. By assumption, 0≦α 3 −(α 1 +α 2 +2λ+μ)≦δ 1 . Hence, one has α 1 ≦τ 1 ≦α 1 +δ 1 . To calculate τ 2 , let T 1 be the time instant when a wafer is just loaded into a PM and T u be the time instant when the robot begins to unload a wafer from a PM. For W 2 (1) in PM 2 , from FIG. 4 , one has T l =2λ+2μ+ω 12 +2λ+μ and T u =α 3 +2λ+2μ, leading to τ 2 =T u −T l =α 3 +2λ+2μ−(2λ+2μ+ω 12 +2λ+μ)=α 2 . The wafer residency time constraints are satisfied for both of them. For Case iii, τ 1 =ω 12 =α 1 and τ 2 =T u −T l =α 3 +2λ+2μ−(2λ+2μ+ω 12 +2λ+μ)=α 3 −α 1 −2λ−μ. Since α 2 ≦α 3 −α 1 −2λ−μ≦α 2 +δ 2 , one has α 2 ≦τ 2 ≦α 2 +δ 2 . For Case iv, τ 1 =ω 12 =α 1 +δ 1 and τ 2 =T u −T l =α 3 +2λ+2μ−(2λ+2μ+ω 12 +2λ+μ)=α 3 −α 1 −δ 1 −2λ−μ. Since (α 1 +α 2 +2λ+μ+δ 1 )−α 1 −δ 1 −2λ−μ=α 2 ≦α 3 −δ 1 −2λ−μ≦(α 1 +α 2 +2λ+μ−δ 1 +δ 2 )−α 1 −δ 1 −2λ−μ=α 2 +δ 2 , one has α 2 ≦τ 2 ≦α 2 +δ 2 . For Case v, τ 1 =ω 12 =α 1 +δ 1 and τ 2 =T u −T l =α 3 +2λ+2μ−(2λ+2μ+ω 12 +ω 01 +2λ+μ)=α 2 +δ 2 . Hence, for all cases, the wafer residency time constraints are satisfied.
This case can be illustrated by the time taken for processing the wafers in a PM shown in FIG. 5 . In FIG. 5 , let τ d (q) in PM i , d, q∈N 2 , and i∈N 3 , denote the sojourn time of the d-th wafer visiting PM i for the q-th time. To make a schedule feasible, τ d (q)∈[α i , α i +δ i ] should hold. It follows from FIG. 5 that it is true for every step and every case. Therefore, for all cases, the wafer residency time constraints are satisfied.
Notice that, for Case v, to make ω 01 >0, one sets ω 01 =α 3 −(α 1 +α 2 +2λ+μ+δ 1 +δ 2 ). In this case, if ω 01 >α 3 −4λ−4μ−α 1 −δ 1 , one cannot set ω ij 's such that ∀ω ij ≧0, Θ=ζ=ψ 11 +ψ 12 , and the wafer residency time constraints are satisfied. In other words, a feasible schedule cannot be found and Q=0 is returned to indicate this result.
For robot task sequence Case 2: A 2 23 A 12 A 01 A 30 A 1 23 A 32 , the schedule obtained is shown in FIG. 6 and the critical path is found as highlighted. Similar to Case 1, one has ψ 22 =ζ−ψ 21 =(8λ+5μ+α 2 +2α 3 )−(12λ+10μ)=2α 3 +α 2 −4λ−5μ. For this case, the wafer residency time constraints may be violated for only W 3 (1) and W 2 (1) that are processed in PM 1 and PM 2 , respectively. Note that W 3 (1) in PM 1 can be unloaded at not earlier than time instant ζ+μ. For this case, one presents the following algorithm.
Algorithm 2: If Θ=ζ with α 2 ≦α 3 and the robot task sequence is A 2 23 A 12 A 01 A 30 A 1 23 A 32 , ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If α 2 +δ 2 ≧α 3 , ω 12 =0
2.1. If 4λ+4μ+α 1 ≦ζ+μ≦4λ+4μ+α 1 +δ 1 , ω 01 =0, ω 30 =α 3 −4λ−5μ, ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 , go to Step iv; 2.2. If 4λ+4μ+α 1 +δ 1<ζ+μ, ω 01 =ζ+μ−(4λ+4μ+α 1 +δ 1 ); 2.3. If ω 01 >α 3 −4λ−5μ, Q=0 and go to Step iv, otherwise, ω 30 =α 3 −4λ−5μ−ω 01 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 ; 2.4. Go to Step iv.
iii. If α 2 +δ 2 <α 3 , ω 12 =α 3 −α 2 −δ 2
3.1. If ω 12 +4λ+4μ+α 1 ≦ζ+μ≦ω 12 +4λ+4μ+α 1 +δ 1 , ω 01 =0, ω 30 =α 3 −4λ−5μ−ω 12 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 , go to Step iv; 3.2. If ω 12 +4λ+4μ+α 1 +δ 1<ζ+μ, ω 01 =ζ+μ−(ω 12 +4λ+4μ+α 1 +δ 1 ); 3.3. If ω 01 >α 3 −4λ−5μ−ω 12 , Q=0 and go to Step iv, otherwise, ω 30 =α 3 −4λ−5μ−ω 12 −ω 01 , ω 1 23 =0, ω 32 =α 3 , and ω 2 23 =α 2 ; 3.4. Go to Step iv.
iv. Return Q and end.
By Algorithm 2, for 2.1, since α i ≧5(μ+λ), one has ω 30 =α 3 −4λ−5μ>0. For 2.2, as 4λ+4μ+α 1 +δ 1 <ζ+μ, ω 01 =ζ+μ−(4λ+4μ+α 1 +δ 1 )>0. For 2.3, if Q=1, ω 01 ≦α 3 −4λ−5μ leading to ω 30 =α 3 −4λ−5μ−ω 01 ≧0. For 3.1, ω 12 =α 3 −α 2 −δ 2 >0 and ω 30 =α 3 −4λ−5μ−ω 12 =α 2 +δ 2 −4λ−5μ>0. For 3.2, ω 01 =ζ+μ−(ω 12 +4λ+4μ+α 1 +δ 1 )>0. For 3.3, if Q=1, ω 01 ≦α 3 −4λ−5μ−ω 12 , leading to ω 30 =α 3 −4λ−5μ−ω 12 −ω 01 >0. Hence, each robot waiting time set by Algorithm 2 is non-negative if Q=1 is returned. Furthermore, one has ψ 22 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =2α 3 +α 2 −4λ−5μ such that the cycle time is Θ=ζ=ψ 21 +ψ 22 . For this case, one has the following feasibility result, which can be similarly proved as Theorem 1 is.
›DETAILED DESCRIPTION · 4 of 7
Theorem 2: Assume that: 1) the cycle time of the system is Θ=ζ with α 2 ≦α 3 , 2) the robot task sequence is A 2 23 A 12 A 01 A 30 A 1 23 A 32 , and 3) the robot waiting time is set by Algorithm 2 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
Similar to Case 1, when Q=0 is returned, a feasible schedule cannot be found. By robot task sequence Case 3: A 2 23 A 12 A 30 A 01 A 1 23 A 32 , after unloading a wafer from PM 3 to the loadlocks, the robot does not come to PM 2 for unloading completed W 2 (1) to deliver it to PM 3 . Instead, it unloads a wafer from the loadlocks and loads it into PM 1 . By doing so, the critical path is changed, leading to Θ>ζ. This implies that, by A 2 23 A 12 A 30 A 01 A 1 23 A 32 , a schedule with Θ=ζ does not exist.
Now, consider robot task sequence Case 4: A 2 23 A 12 A 30 A 1 23 A 01 A 32 For this case, the obtained schedule is depicted in FIG. 7 , and the critical path is found and highlighted. From (4), one has ψ 42 =ζ−ψ 41 =2α 3 +α 2 −4λ−6μ. In this case, it follows from FIG. 7 that the wafer residency time constraints may be violated for only W 3 (1) and W 2 (1) that are processed in PM 1 and PM 2 , respectively. As shown in FIG. 7 , W 3 (1) is unloaded at time ζ+μ. One has the following algorithm to schedule the system.
Algorithm 3: If Θ=ζ with α 2 ≦α 3 and the robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 01 A 32 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If α 2 +δ 2 ≧α 3 , ω 12 =0, ω 30 =α 3 −2λ−3μ, and ω 1 23 =0
2.1. If α 3 +6λ+5μ+α 1 ≦ζ+μ≦α 3 +6λ+5μ+α 1 +δ 1 , ω 01 =0, ω 32 =α 3 −2λ−3μ, ω 2 23 =α 2 , and go to Step iv; 2.2. If α 3 +6λ+5μ+α 1 +δ 1 <ζ+μ, ω 01 =ζ+μ−(α 3 +6λ+5μ+α 1 +δ 1 ); 2.3. If ω 01 >α 3 −2λ−3μ, Q=0, otherwise, ω 32 =α 3 −2λ−3μ−ω 01 and ω 2 23 =α 2 ; 2.4. Go to Step iv.
iii. If α 2 +δ 2 <α 3 , ω 12 =α 3 −α 2 −δ 2
3.1. If ω 12 >α 3 −2λ−3μ, Q=0 and go to Step iv; 3.2. Otherwise, ω 30 =α 3 −2λ−3μ−ω 12 and ω 1 23 =0
3.2.1. If α 3 +6λ+5μ+α 1 ≦ζ+μ≦α 3 +6λ+5μ+α 1 +δ 1 , ω 01 =0, ω 32 =α 3 −2λ−3μ, ω 2 23 =α 2 , and go to Step iv; 3.2.2. If α 3 +6λ+5μ+α 1 +δ 1 <ζ+μ, ω 01 =ζ+μ−(α 3 +6λ+5μ+α 1 +δ 1 ); 3.2.3. If ω 01 >α 3 −2λ−3μ, Q=0, otherwise, ω 32 =α 3 −2λ−3μ−ω 01 and ω 2 23 =α 2 ; 3.2.4. Go to Step iv;
iv. Return Q and end.
By Algorithm 3, for Case ii, one has ω 30 =α 3 −2λ−3μ>0. By Statement 2.1, ω 32 =α 3 −2λ−3μ>0 and by Statement 2.2, since α 3 +6λ+5μ+α 1 +δ 1 <ζ+μ, one has ω 01 =ζ+μ−(α 3 +6λ+5μ+α 1 +δ 1 )>0. By Statement 2.3, if Q=1, one has ω 01 ≦α 3 −2λ−3μ, leading to ω 32 =α 3 −2λ−3μ−ω 01 ≧0. For Case iii, as α 2 +δ 2 <α 3 , one has ω 12 =α 3 −α 2 −δ 2 >0. By Statements 3.1-3.2, if Q=1, one has ω 12 ≦α 3 −2λ−3μ, leading to ω 30 =α 3 −2λ−3μ−ω 12 ≧0. Since the robot waiting time set by Statements 3.2.1-3.2.3 are identical to that set by Statements 2.1-2.3, each robot waiting time set by Algorithm 3 is non-negative. Furthermore, one has ψ 42 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =2α 3 +α 2 −4λ−6μ such that Θ=ζ=ψ 41 +ψ 42 holds. For schedule feasibility, one has the following theorem.
Theorem 3: Assume that: 1) the cycle time of the system is Θ=ζ with α 2 ≦α 3 , 2) the robot task sequence is A 2 23 A 12 A 30 A 1 23 A 01 A 32 , and 3) the robot waiting time is set by Algorithm 3 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
For the robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 , a schedule can be obtained as shown in FIG. 8 . Similarly, from (5) one has ψ 52 =ζ−ψ 51 =2α 3 +α 2 −4λ−6μ. In this case, it follows from the schedule in FIG. 8 that the wafer residency time constraints may be violated for only W 3 (1) and W 2 (1) that are processed in PM 1 and PM 2 , respectively. With the fact that W 3 (1) is unloaded at time instant ζ+μ, one presents the following algorithm to schedule the system.
Algorithm 4: If Θ=ζ with α 2 ≦α 3 and the robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Set Q=1
ii. If α 2 +δ 2 ≧α 3 , ω 12 =0, ω 30 =α 3 −2λ−3μ, ω 1 23 =0, and ω 32 =α 3
2.1. If 2α 3 +8λ+6μ+α 1 ≦ζ+μ≦2α 3 +8λ+6μ+α 1 +δ 1 , ω 01 =0, ω 2 23 =α 2 −2λ−3μ, and go to Step iv; 2.2. If 2α 3 +8λ+6μ+α 1 +δ 1 <ζ+μ, ω 01 =ζ+μ−(2α 3 +8λ+6μ+α 1 +δ 1 ); 2.3. If ω 01 >α 3 −2λ−3μ, Q=0, otherwise, ω 2 23 =α 2 −2λ−3μ−ω 01 ; 2.4. Go to Step iv.
iii. If α 2 +δ 2 <α 3 , ω 12 =α 3 −α 2 −δ 2
3.1. If ω 12 >α 3 −2λ−3μ, Q=0 and go to Step iv; 3.2. Otherwise, ω 30 =α 3 −2λ−3μ−ω 12 , ω 1 23 =0, and ω 32 =α 3
3.2.1. If 2α 3 +8λ+6μ+α 1 ≦ζ+μ≦2α 3 +8λ+6μ+α 1 +δ 1 , ω 01 =0, ω 2 23 =α 2 −2λ−3μ, and go to Step iv; 3.2.2. If 2α 3 +8λ+6μ+α 1 +δ 1 <ζ+μ, ω 01 =ζ+μ−(2α 3 +8λ+6μ+α 1 +δ 1 ); 3.2.3. If ω 01 >α 3 −2λ−3μ, Q=0, otherwise ω 2 23 =α 2 −2λ−3μ−ω 01 ; 3.2.4. Go to Step iv.
iv. Return Q and end.
By Algorithm 4, for Case ii, one has ω 30 =α 3 −2λ−3μ>0. By Statement 2.1, ω 2 23 =α 3 −2λ−3μ>0 and by Statement 2.2, with 2α 3 +8λ+6μ+α 1 +δ 1 <ζ+μ, one has ω 01 =ζ+μ−(2α 3 +8λ+6μ+α 1 +δ 1 )>0. Then, by Statement 2.3, if Q=1, ω 01 ≦α 3 −2λ−3μ such that ω 2 23 =α 2 −2λ−3μ−ω 01 ≧0. For Case iii, since α 2 +δ 2 <α 3 , ω 12 =α 3 −α 2 −δ 2 >0. Then, by Statements 3.1-3.2, if Q=1, ω 12 ≦α 3 −2λ−3μ such that ω 30 =α 3 −2λ−3μ−ω 12 ≧0. Notice that the robot waiting time set via Statements 3.2.1-3.2.3 are identical to that set via Statements 2.1-2.3. Therefore, every robot waiting time set by Algorithm 4 is non-negative. Further, one has ψ 52 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 23 +ω 1 23 =2α 3 +α 2 −4λ−6μ, or one has Θ=ζ=ψ 51 +ψ 52 . For this case, one has the following theorem.
Theorem 4: Assume that: 1) the cycle time of system is Θ=ζ with α 2 ≦α 3 , 2) the robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 is applied, and 3) the robot waiting time is set by Algorithm 4 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
Up to now, for the case that Θ=ζ and α 2 ≦α 3 , one has analyzed the scheduling problem by using the five different robot scheduling strategies and presented the scheduling method if a schedule exists. Next, one analyzes the scheduling problem for the case that Θ=ζ and α 2 >α 3 .
›DETAILED DESCRIPTION · 5 of 7
B. Θ=ζ and α 2 >α 3
When α 2 >α 3 , one has ζ=8λ+5μ+2α 2 +α 3 . For strategy A 2 23 A 01 A 12 A 30 A 1 23 A 32 , it follows from the above discussion that, to make Θ=ζ, α 1 +α 2 +2λ+μ≦α 3 must hold, leading to α 2 <α 3 , which contradicts to the assumption that α 2 >α 3 . This implies that if Θ=ζ and α 2 >α 3 , no schedule can be found by using this strategy.
Now one examines strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 . In this case, a schedule can be obtained as shown in FIG. 9 . From (2), one has ψ 22 =ζ−ψ 21 =(8λ+5μ+2α 2 +α 3 )−(12λ+10μ)=2α 2 +α 3 −4λ−5μ. It follows from the schedule shown in FIG. 9 that W 1 (2) being processed in PM 3 is unloaded immediately after it is processed since α 3 ≧5λ+5μ>2×(2λ+2μ)+μ is assumed. Also, W 2 (1), W 2 (1), and W 2 (2) that are processed in PM 2 PM 3 , and PM 2 , respectively, are unloaded as soon as they are completed. Hence, the wafer residency time constraints can be violated for only W 3 (1) that is processed in PM 1 . Note that W 3 (1) in PM 1 is unloaded at time instant ζ+μ. Then, one presents the following algorithm to find a schedule.
Algorithm 5: If Θ=ζ, α 2 >α 3 , and the robot scheduling strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If 4λ+4μ+α 1 ≦ζ+μ≦4λ+4μ+α 1 +δ 1
2.1. ω 01 0, ω 30 =α 3 −4λ−5μ, ω 1 23 =α 2 −α 3 , ω 32 =α 3 , and ω 2 23 =α 2 , go to Step iv.
iii. If 4λ+4μ+α 1 +δ 1 <ζ+μ
3.1. ω 01 =ζ+μ−(4λ+4μ+α 1 +δ 1 ); 3.2.If ω 01 >α 3 −4λ−5μ, Q=0 and go to Step iv; 3.3. Otherwise, ω 30 =α 3 −4λ−5μ−ω 01 , ω 1 23 =α 2 −α 3 , ω 32 =α 3 , ω 2 23 =α 2 , and go to Step iv.
iv. Return Q and end.
In Algorithm 5, by Statement 2.1, ω 30 =α 3 −4λ−5μ>0 and ω 1 23 =α 2 −α 3 >0 hold. By Statements 3.1-3.3, as 4λ+4μ+α 1 +δ 1 <ζ+μ, one has ω 01 =ζ+μ−(4λ+4μ+α 1 +δ 1 )>0. Then, if Q=1, ω 01 ≦α 3 −4λ−5μ, one has ω 30 =α 3 −4λ−5μ−ω 01 ≧0. Hence, the robot waiting time set by Algorithm 5 is non-negative. Furthermore, one has ψ 22 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =2α 3 +α 2 −4λ−5μ such that Θ=ζ=ψ 21 +ψ 22 . For the obtained schedule, one has the following theorem.
Theorem 5: Assume that: 1) the cycle time of the system is Θ=ζ with α 2 >α 3 , 2) robot scheduling strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 is applied, and 3) the robot waiting time is set by Algorithm 5 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible
For strategy A 2 23 A 12 A 30 A 01 A 1 23 A 32 , a schedule can be obtained as shown in FIG. 10 . From it, after unloading a wafer from PM 3 to the loadlocks, the robot unloads a raw wafer from the loadlocks and loads it into PM 1 . By doing so, a schedule with Θ=ζ can be obtained and α 2 ≧α 3 +2λ+μ must hold. This implies that W 2 (1) in PM 2 is not completed before the robot comes to PM 2 for unloading it. For this case, from (3), one has ψ 32 =ζ−ψ 31 =2λ 2 +α 3 −4λ−4μ. Also, by this strategy, the wafer residency time constraints can be violated for only W 3 (1) being processed in PM 1 . One presents the following algorithm to find a schedule.
Algorithm 6: If Θ=ζ, α 2 ≧α 3 +2λ+μ, and the robot scheduling strategy A 2 23 A 12 A 30 A 01 A 1 23 A 32 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If 4λ+2μ+α 3 +α 1 ≦ζ+μ≦4λ+2μ+α 3 +α 1 +δ 1
2.1. ω 12 =0, ω 30 =α 3 −2λ−3μ, ω 01 =0, ω 1 23 =α 2 −α 3 −2λ−μ, ω 32 =α 3 , ω 2 23 =α 2 , and go to Step iv.
iii. If 4λ+2μ+α 3 +α 1 +δ 1 <ζ+μ
3.1. ω 12 =0, ω 30 =α 3 −2λ−3μ, and ω 01 =ζ+μ−(4λ+2μ+α 3 +α 1 +δ 1 ); 3.2. If ω 01 >α 2 −α 3 −2λ−μ, Q=0, and go to Step iv; 3.3. Otherwise, ω 1 23 =α 2 −α 3 −2λ−μ−ω 01 , ω 32 =α 3 , ω 2 23 =α 2 , and go to Step iv.
iv. Return Q and end.
In Algorithm 6, for Case ii, ω 30 =α 3 −2λ−3μ>0 and ω 1 23 =α 2 −α 3 −2λ−μ>0. For Case iii, ω 30 =α 3 −2λ−3μ>0. As 4λ+2μ+α 3 +α 1 +δ 1 <ζ+μ, one has ω 01 =ζ+μ−(4λ+2μ+α 3 +α 1 +δ 1 )>0. By Statements 3.2-3.3, if Q=1, ω 01 ≦α 2 −α 3 −2λ−μ, then, one has ω 1 23 =α 2 −α 3 −2μ−μ−ω 01 ≧0. Hence, the robot waiting time set by Algorithm 6 is non-negative. Furthermore, one has ψ 32 =ω 01 +ω 12 +ω 2 23 +ω 32 +ω 1 23 +2λα 2 +α 3 −4λ−4μ such that Θ 32 ζ=ψ 31 +ψ 32 . For the obtained schedule, one has the following theorem.
Theorem 6: Assume that 1) the cycle time of system is Θ=ζ with α 2 ≧α 3 +2λ+μ, 2) the robot scheduling strategy A 2 23 A 12 A 30 A 01 A 1 23 A 32 is applied, and 3) the robot waiting time is set by Algorithm 6 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
For strategy A 2 23 A 12 A 30 A 1 23 A 01 A 32 , a schedule can be obtained as shown in FIG. 11 . In this case, from (4), one has ψ 42 =ζ−ψ 41 =2α 2 +α 3 −4λ−6μ. It follows from it that the wafer residency time constraints may be violated for only W 3 (1) being processed in PM 1 . One presents the following algorithm to set the robot waiting time.
Algorithm 7: If Θ=ζ, α 2 >α 3 , and robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 01 A 32 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If α 2 +6λ+5μ+α 1 ≦ζ+μ≦α 2 +6λ+5μ+α 1 +δ 1
2.1. ω 12 =0, ω 30 =α 3 −2λ−3μ, ω 1 23 =α 2 −α 3 , ω 01 =0, ω 32 =α 3 −2λ−3μ, ω 2 23 =α 2 , and go to Step iv.
iii. If α 2 +6λ+5μ+α 1 +δ 1 <ζ+μ
3.1. ω 12 =0, ω 30 =α 3 −2λ−3μ, ω 1 23 =α 2 −α 3 , and ω 01 =ζ+μ−(α 2 +6λ+5μ+α 1 +δ 1 ); 3.2. If ω 01 >α 3 −2λ−3μ, Q=0, and go to Step iv; 3.3. Otherwise, ω 32 =α 3 −2λ−3μ−ω 01 , ω 2 23 =α 2 , and go to Step iv.
iv. Return Q and end.
In Algorithm 7, for Case ii, ω 30 =α 3 −2λ−3μ>0, ω 1 23 =α 2 −α 3 >0, and ω 32 =α 3 −2λ−3μ>0. For Case iii, ω 30 =α 3 −2λ−3μ>0 and ω 1 23 =α 2 −α 3 >0. As α 2 +6λ+5μ+α 1 +δ 1 <ζ+μ, one has ω 01 =ζ+μ−(α 2 +6λ+5μ+α 1 +δ 1 )>0. By Statements 3.2-3.3, if Q=1, ω 01 ≦α 3 −2λ−3μ, leading to ω 32 =α 3 −2λ−3μ−ω 01 ≧0. Hence, the robot waiting time set by Algorithm 6 is non-negative. Furthermore, one has ψ 42 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =2α 2 +α 3 −4λ−6μ such that Θ=ζ=ψ 41 +ψ 42 . For this case, one has the following theorem.
Theorem 7: Assume that: 1) the cycle time of the system is Θ=ζ with α 2 >α 3 , 2) robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 01 A 32 is applied, and 3) robot waiting time is set by Algorithm 7 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
›DETAILED DESCRIPTION · 6 of 7
For strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 , a schedule can be obtained as depicted in FIG. 12 . From (5), one has ψ 52 =ζ−ψ 51 =2α 2 +α 3 −4λ−6μ. In this case, the wafer residency time constraints can be violated for only W 3 (1) being processed in PM 1 . The following algorithm is used to set the robot waiting time.
Algorithm 8: If Θ=ζ, α 2 >α 3 , and robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
i. Q=1.
ii. If α 2 +α 3 +8λ+6μ+α 1 ≦ζ+μ≦α 2 +α 3 +8λ+6μ+α 1 +δ 1
2.1. ω 1 =0, ω 30 =α 3 −2λ−3μ, ω 1 23 =α 2 −α 3 , ω 32 =α 3 , ω 01 =0, ω 2 23 =α 2 −2λ−3μ, and go to Step iv.
iii. If α 2 +α 3 +8λ+6μ+α 1 +δ 1 <ζ+μ
3.1. ω 12 =0, ω 30 =α 3 −2λ−3μ, ω 1 23 =α 2 −α 3 , ω 32 =α 3 , and ω 01 =ζ+μ−(α 2 +α 3 +8λ+6μ+α 1 +δ 1 ); 3.2. If ω 01 >α 2 −2λ−3μ, Q=0 and go to Step iv; 3.3. Otherwise, ω 2 23 =α 2 −2λ−3μ−ω 01 and go to Step iv.
iv. Return Q and end.
In Algorithm 8, for Case ii, ω 30 =α 3 −2λ−3μ>0, ω 1 23 =α 2 −α 3 >0, and ω 2 23 =α 2 −2λ−3μ>0. For Case iii, ω 30 =α 3 −2λ−3μ>0 and ω 1 23 =α 2 −α 3 >0. As α 2 +α 3 +8λ+6μ+α 1 +δ 1 <ζ+μ, one has ω 01 =ζ+μ−(α 2 +α 3 +8λ+6μ+α 1 +δ 1 )>0. By Statements 3.2-3.3, if Q=1, ω 01 ≦α 2 −2λ−3μ and one thus has ω 2 23 =α 2 −2λ−3μ−ω 01 ≧0. Hence, every robot waiting time set by Algorithm 8 is non-negative. Furthermore, one has ψ 52 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =2α 2 +α 3 −4λ−6μ such that Θ=ζ=ψ 51 +ψ 52 . For this case, one has the following theorem.
Theorem 8: Assume that: 1) the cycle time of the system is Θ=ζ with α 2 >α 3 , 2) robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 is applied, and 3) the robot waiting time is set by Algorithm 8 with Q=1 being returned. Then, the obtained one-wafer cyclic schedule is feasible.
Up to now, for the case that Θ=ζ, one analyzes the existence of a schedule by examining the five robot scheduling strategies. If there is a schedule, algorithms are given to find a feasible one-wafer cyclic schedule. By Θ=ζ, it means that the revisiting process decides the cycle time of the system. In some cases, the wafer processing time in PM 1 decides the cycle time of the system. One discusses such cases next.
C. Θ>ζ
It follows from the discussion in Section A that when Θ>ζ there are two possible robot scheduling strategies, i.e., Cases 6 and 7, or A 2 23 A 30 A 12 A 01 A 1 23 A 32 and A 2 23 A 12 A 01 A 30 A 1 23 A 32 . For Case 6, from Section A, after the robot loads a wafer into PM 2 , the robot should go to the loadlocks immediately for unloading a raw wafer there. After unloading a wafer from the loadlocks, it moves to PM 1 and loads the wafer into PM 1 , or A 01 is performed with 2λ+ 2 μ time units being taken. Then, A 1 23 \{m 22 }, A 32 , A 2 23 , and A 30 are performed sequentially. After A 30 is performed, the robot comes to PM 1 for performing A 12 . Since the cycle time of the system is dominated by the wafer processing time in PM 1 , when the robot arrives at PM 1 , the wafer being processed in PM 1 is not completed yet. Thus, to complete a wafer at PM 1 , the following activities should be executed in a sequential way: (Loading a wafer into PM 2 (λ)→moving to the loadlock (μ)→unloading a wafer from the loadlock (λ)→moving to PM 1 (μ)→loading it to PM 1 (λ)→processing at PM 1 (α 1 )→unloading a wafer from PM 1 (λ)→moving to PM 2 (μ)→loading a wafer into PM 2 (λ) again). The time taken for completing a wafer at PM 1 is α 1 +4λ+3μ, or the cycle time of the system is Θ=α 1 +4λ+3μ>ζ.
Based on the above analysis, by applying A 2 23 A 30 A 12 A 01 A 1 23 A 32 , a schedule can be obtained as shown in FIG. 13 . From FIG. 13 , one has α 1 >6λ+3μ+2(α 2 +α 3 ). For this schedule, all the wafers are unloaded immediately from a PM after they are completed. Therefore, the wafer residency time constraints are clearly satisfied. Furthermore, from (6), one has ψ 62 =Θ−ψ 61 =α 1 +4λ+3μ−(12λ+9μ)=α 1 −8λ−6μ. The following algorithm is present to set the robot waiting time for this schedule.
Algorithm 9: If Θ>ζ, α 1 ≧6λ+3μ+2(α 2 +α 3 ), and robot scheduling strategy A 2 23 A 30 A 12 A 01 A 1 23 A 32 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
1) ω 30 =α 3 and ω 01 =0; 2) ω 1 23 =α 2 −2λ−3μ; 3) ω 32 =α 3 , ω 2 23 =α 2 ; 4) ω 12 =α 1 −6λ−3μ−2(α 2 +α 3 ).
By assumption that α 2 ≧5λ+5μ, one has ω 1 23 =α 2 −2λ−3μ>0. As α 1 ≧6λ+3μ+2(α 2 +α 3 ), ω 12 =α 1 −6λ−3μ−2(α 2 +α 3 )≧0. Hence, the robot waiting time set by Algorithm 9 is non-negative. Furthermore, one has ψ 62 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =α 1 −8λ−6μ such that Θ=ψ 51 +ψ 52 . As discussed above, the wafer residency time constraints are always met. Hence, for this schedule, one has the following theorem immediately.
Theorem 9: Assume that: 1) the cycle time of the system is Θ>ζ and α 1 ≧6λ+3μ+2(α 2 +α 3 ), 2) robot scheduling strategy A 2 23 A 30 A 12 A 01 A 1 23 A 32 is applied, and 3) the robot waiting time is set by Algorithm 9. Then, the obtained one-wafer cyclic schedule is feasible.
For case 7: A 2 23 A 12 A 01 A 30 A 1 23 A 32 , to make the wafer residency time constraints satisfied, after A 2 23 is performed, the robot may wait for some time and then perform A 12 . Further, by such a strategy, a wafer may stay in a PM for some time after its completion and the schedule obtained is depicted in FIG. 14 . Let δ m n ∈[0, δ m ] be the time for which the m-th wafer with its n-th visiting of a PM stays in the PM after processed. For this case, one also has Θ=α 1 +4λ+3μ>ζ. From (7), one has ψ 72 =Θ−ψ 71 =α 1 +4λ+μ−(12λ+10μ)=α 1 −8λ−7μ.
To make the schedule feasible, δ m n must fall within [0, δ m ]. However, δ m n cannot be decided independently and a method is necessary to do so. Let φ 1 and φ 2 be time instants when the execution of A 2 23 and A 12 ends, and χ=φ 2 −φ 1 . After A 2 23 is performed, the robot may wait for some time and then performs A 12 , which takes 2λ+2μ time units. Thus, one has Case A: χ≧2λ+2μ. For this case, after A 12 is performed, it is followed by A 01 (which takes 2λ+2μ time units) and then A 30 . Hence, after performing A 01 , the robot comes to PM 3 for unloading W 1 (2) by performing m 13 (μ time units). Let φ 3 be time instant when the execution of m 13 ends. Then, one has Case B: φ 3 −φ 1 =χ+2λ+3μ≦α 3 +δ 3 2 . By performing A 30 \{m 13 }(2λ+μ), W 1 (2) completed in PM 3 is loaded into the loadlocks. Then, the robot comes to PM 2 for unloading W 2 (1) by performing m 02 (μ time units). Let φ 4 be time instant when the execution of m 02 ends. Then, one has Case C: φ 4 −φ 1 =α 3 +δ 3 2 +2λ+2μ≦χ+α 2 +δ 2 1 . By assumption, the wafer processing time in PM 1 dominates the cycle time of the system. From FIG. 14 , one has Case D: χ+(α 2 +δ 2 1 )+(α 3 +δ 3 1 )+(α 2 +δ 2 2 )+3(2λ+μ)=α 1 +4λ+3μ. Hence, to obtain a feasible schedule, the following linear program is proposed to determine χ, δ 2 1 , δ 2 2 , δ 3 1 , and δ 3 2 .
›DETAILED DESCRIPTION · 7 of 7
Since the variables can be any real number, this linear programing problem can be efficiently solved by a commercial solver. It implies that the system does not satisfy the wafer residency time constraints by adopting strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 if there is no solution for such a Z. Otherwise, the following algorithm is presented to schedule the system.
Algorithm 10: If Θ>ζ and robot scheduling strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 is applied, ω ij 's are set as follows to obtain a one-wafer cyclic schedule if it exists.
1) Determine, χm δ 2 1 , δ 2 2 , δ 3 1 , and δ 3 2 by solving Problem (8); 2) ω 12 =χ−2λ−2μ, ω 01 =0, ω 30 =α 3 +δ 3 2 −2λ−3μ−χ; 3) ω 1 23 =χ+α 2 +δ 2 1 =α 3 −δ 3 2 −2λ−2μ, ω 32 =α 3 +δ 3 1 , and ω 2 23 =α 2 +δ 2 2 .
By Algorithm 10, since ψ∈[2λ+2μ, α 3 +δ 3 2 −2λ−3μ], one has ω 12 =χ−2λ−2μ≧0 and ω 30 =α 3 +δ 3 2 −2λ−3μ−χ≧0. From (8) one has χ+α 2 +δ 2 1 ≧α 3 +δ 3 2 +2λ+2μ, leading to ω 1 23 =χ+α 2 +δ 2 1 −α 3 −δ 3 2 −2λ−2μ≧0. Hence, the robot waiting time set by Algorithm 10 is non-negative. Further, one has ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =δ 2 1 +δ 2 2 +δ 3 1 +χ+2α 2 +α 3 −6λ−7μ=α 1 −8λ−7μ=ψ 72 such that Θ=ψ 71 +ψ 72 . For this case, one has the following theorem.
Theorem 10: Assume that: 1) the cycle time of the system is Θ>ζ, 2) robot scheduling strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 is applied, and 3) the robot waiting time is set by Algorithm 10. Then, the obtained one-wafer cyclic schedule is feasible.
Proof: It is obviously and is omitted.
Up to now, one has presented the schedulability analysis by applying the seven robot scheduling strategies and conditions are given to check the schedulability. If schedulable, algorithms are proposed to obtain a feasible schedule by setting the robot waiting time. The proposed methods are efficient and practically applicable. Next, one proves the optimality of the obtained schedule.
Theorem 11: A schedule obtained by Algorithms 1-10 is optimal in terms of cycle time.
Proof: For a schedule obtained by Algorithms 1-8, one has Θ=ζ=8λ+5μ+α 2 +α 3 +Max{α 2 , α 3 }. Since ζ is the cycle time of an optimal schedule for the revisiting process (PM 2 , PM 3 ) 2 , if the system is scheduled such that Θ<ζ, at least one of the wafers that are processed in PM 2 or PM 3 cannot be completed. In other words, it is infeasible. For a schedule obtained by Algorithms 9-10, one has Θ=4λ+3μ+α 1 >ζ. Hence, if the system is scheduled such that Θ≦ζ, the wafer that is processed in PM 1 cannot be completed within Θ, and the schedule is infeasible. Therefore, a schedule found by Algorithms 1-10 is optimal in terms of cycle time.
It is important to schedule a cluster tool to maximize the productivity. By Theorem 11, such a goal is realized.
C. Illustrative Examples
This section uses examples to show the application of the proposed method. For all examples, the wafer flow pattern is (PM 1 , (PM 2 , PM 3 ) 2 ).
›Examples3
›Example 1
The wafer processing time at Steps 1-3 are α 1 =120 s, α 2 =75 s, α 3 =60 s, respectively. After being processed, a wafer at Steps 1-3 can stay there for at most 20 s, 25 s, and 25 s, or δ 1 =20 s, δ 2 =25 s, and δ 3 =25 s. The robot task time is μ=1 s and λ=3 s.
For this example, as α 2 >α 3 , one has ζ=8λ+5μ+α 2 +α 3 +Max{α 2 , α 3 }=239 s>α 1 +4λ+3μ=135 s. Thus, Θ=ζ=239 s. With α 2 >α 3 , one needs to examine Algorithms 5-8 only. One has α 2 +6λ+5μ+α 1 +δ 1 =75+18+5+120+20=238 s<ζ+μ=239+1=240 s. Thus, Case iii of Algorithm 7 with robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 01 A 32 is applied. According to Case iii of Algorithm 7, the robot waiting time is set as ω 12 =0, ω 30 =α 3 −2λ−3μ=60−6−3=51 s, ω 1 23 =α 2 −α 3 =75−60=15 s, ω 01 =ζ+μ−(α 2 +6λ+5μ+α 1 +δ 1 )=240−238=2 s, ω 32 =α 3 −2λ−3μ−ω 01 =60−6−3−2=49 s, and ω 2 23 =75 s. By this setting, one has ψ 42 =ω 01 +ω 12 +ω 30 +ω 2 23 +ω 32 +ω 1 23 =192 s=ζ−ψ 41 =ζ−(12λ+11μ)=239−47=192 s.
›Example 2
The wafer processing time at Steps 1-3 is changed to α 1 =100 s, α 2 =60 s, and α 3 =75 s, respectively.
For this example, as α 2 <α 3 , one has ζ=8λ+5μ+α 2 +α 3 +Max{α 2 , α 3 }=239 s>α 1 +4λ+3μ=115 s. Thus, Θ=ζ=239 s. With α 2 <α 3 , only Algorithms 1-4 are possible for scheduling it. Since α 1 +α 2 +2λ+μ=100+60+6+1=167 s>α 3 =75 s, Algorithm 1 is excluded. Also, as α 2 +δ 2 =60+25>α 3 =75, only Cases ii of Theorems 2-4 needs to be examined. By Case ii of Algorithm 2, one has 4λ+4μ+α 1 +δ 1 =12+4+100+20=136 s<ζ+μ=240 s. However, in this case, ω 01 =ζ+μ−(4λ+4μ+α 1 +δ 1 )=104 s >α 3 −4λ−5μ=75−12−5=58 s such that Q=0 is returned. Hence, Algorithm 2 is excluded. By Case ii of Algorithm 4, one has 2α 3 +8λ+6μ+α 1 =2×75+24+6+100=280>ζ+μ=240 s. Then, if strategy A 2 23 A 12 A 30 A 1 23 A 32 A 01 is applied, it results in a schedule such that Θ>ζ. Thus, Algorithm 4 is excluded. Now, examine Case ii of Algorithm 3, one has α 3 +6λ+5μ+α 1 +δ 1 =75+18+5+100+20=218 s<ζ+μ=240 s, or Statement 2.2 is satisfied. Furthermore, ω 01 =ζ+μ−(α 3 +6λ+5μ+α 1 +δ 1 )=22 s<α 3 −2λ−3μ=75−6−3=66 s such that Q=1 is returned. This implies that Case ii of Algorithm 3 with robot scheduling strategy A 2 23 A 12 A 30 A 1 23 A 01 A 32 is applicable. With it, one sets ω 01 =22, ω 12 =0, ω 30 =α 3 −2λ−3μ=75−6−3=66 s, ω 1 23 =0, ω 32 =α 3 −2λ−3μ−ω 01 =75−6−3−22=44 s, and ω 2 23 =α 2 =60 s such that a feasible schedule is obtained.
›Example 3
The wafer processing time at Steps 1-3 is changed to α 1 =240 s, α 2 =75s, and α 3 =60s, respectively.
For this example, one has ζ+8λ+5μ+α 2 +α 3 +Max{α 2 , α 3 }=239 s<α 1 +4λ+3μ=255 s. Thus, Θ=255 s, i.e., the wafer processing time in PM 1 decides the cycle time of the system. As α 1 =240<6λ+3μ+2(α 2 +α 3 )=291, hence, Algorithm 9 cannot be applied, or strategy A 2 23 A 30 A 12 A 01 A 1 23 A 32 is excluded. For strategy A 2 23 A 12 A 01 A 30 A 1 23 A 32 , by solving the linear program in (8), one obtains χ=24, δ 2 2 =δ 2 1 =δ 3 1 =δ 3 2 =0. Thus, the system satisfies the wafer residency time constraints. Then, according to Algorithm 10, one obtains χ 12 =χ−2λ−2μ=24−2×3−2=16, ω 01 =0, ω 30 =α 3 +δ 3 2 −2λ−3μ−χ=60+0−6−3−24=27 s, ω 1 23 =χ+α 2 +δ 2 1 −α 3 −δ 3 2 −2λ−2μ=24+75+0−60−0−6−2=31 s, ω 32 =α 3 +δ 3 1 =60+0=60 s, and ω 2 23 =α 2 +δ 2 2 =75+0=75 s. By this setting, one has ω 01 +ω 12 +ω 2 23 ω 32 +ω 1 23 =0+16 +27+75+60+31=209 s=Θ−ψ 71 =Θ−(12λ+10μ)=255−46=209 s.
The embodiments disclosed herein may be implemented using general purpose or specialized computing devices, computer processors, or electronic circuitries including but not limited to digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA), and other programmable logic devices configured or programmed according to the teachings of the present disclosure. Computer instructions or software codes running in the general purpose or specialized computing devices, computer processors, or programmable logic devices can readily be prepared by practitioners skilled in the software or electronic art based on the teachings of the present disclosure.
In some embodiments, the present invention includes computer storage media having computer instructions or software codes stored therein which can be used to program computers or microprocessors to perform any of the processes of the present invention. The storage media can include, but is not limited to, floppy disks, optical discs, Blu-ray Disc, DVD, CD-ROMs, and magneto-optical disks, ROMs, RAMs, flash memory devices, or any type of media or devices suitable for storing instructions, codes, and/or data.
The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof The present embodiment is therefore to be considered in all respects as illustrative and not restrictive. The scope of the invention is indicated by the appended claims rather than by the foregoing description, and all changes that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.
›Tables in the description — 1
| Symbol | Action | Time |
|---|---|---|
| u i /l i | The robot unloads/loads a wafer from/into Step i , i ε | λ |
| Ω 3 | ||
| m ij | The robot's moving from Steps i to j with or without | μ |
| carrying a wafer, i, j ε Ω 3 | ||
| m 1 23 and | The robot's moving from Step 2 to 3 with the same | μ |
| m 2 23 | wafer hold for the first and second time, respectively |
Claims as granted
20 claimsLog in to read the claims of this application.
Log in to unlockClassifications
6 codes- B25J9/00
- G05B19/418
- G06F19/00
- G06F17/50
- H10P72/00
- H10P95/00
Claim changes
SoonSee which claims were amended, added or cancelled during examination, with every added and removed word marked.
The published claims of this application are not paired with the granted ones in what we hold.
File wrapper
See the full prosecution history — every USPTO and applicant action on this file, in order.
Log in to unlockDocuments
Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.
Log in to unlockChain of title
See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.
Log in to unlock