Preventive maintenance is a common practice in semiconductor wafer fabrication and essential for overall equipment availability and reliability. A typical approach is to plan maintenance activities ahead of time using simple rules-based models, where the maintenance is run on a particular day, at a particular time. The consequence of such approach, however, is optimising maintenance timing at the expense of production KPIs such as cycle time and throughput. What if we consider it the other way around and treat these KPIs as priority in the objective?
The maintenance scheduling problem
The complexity of semiconductor wafer fabrication entails a huge number of decisions and trade-offs a fab manager has to deal with each day. Preventive maintenance is one of them. The equipment used in the fabrication process is extremely capital intensive; therefore, it is critical that tools are utilised effectively and maintained on a regular basis to avoid any failures. Any servicing requires stopping the tools and suspending it from the manufacturing processes for a given period of time. With a recent shortage of chips, for the automotive industry, in particular, a fab manager faces a significant challenge - how to schedule preventive maintenance operations whilst ensuring maximum OTD and high throughput?
Maintenance scheduling is an established topic of research, with many authors showcasing various ways of solving this scheduling problem using simulation and optimisation techniques. An interesting tech paper on this topic was presented in the Winter Simulation Conference 2020 in December, by A. Moritz et al. “Maintenance with production planning constraints in semiconductor manufacturing” of Mines Saint-Étienne and STMicroelectronics. [The paper]
In this article, our expert, Ioannis Konstantelos, Optimization Technology Lead, reviews the paper and explains Flexciton's approach to this complex topic.
The authors focus on identifying the best possible period of time (e.g. a day), across a large time range, in which to carry out maintenance tasks, while “respecting production deadlines and the capacity constraints on tools”. Two mathematical models are presented; in model 1, the maintenance is seen as a task that must be performed in a single period of time, e.g. one day (24h), while model 2 allows maintenance to be distributed across two consecutive periods, e.g. two days (48h).
Both models treat production schedules as fixed i.e. the lot to tools assignment and timings for production purposes have been decided a priori. As such, the proposed formulation is a discrete-time model1, allowing to perform maintenance only within defined points in time. The model uses the following decision-making variables:
A variable that indicates whether a maintenance task should be performed or not.
A variable that assigns a maintenance task to the period in which it will be carried out.
There is a limit on the total time allocated to each of production and maintenance tasks.
The model's objective function is a combination of maximising the number of maintenance tasks that can be performed within the time horizon and the earliness of these tasks. A user defines parameters to tune the importance of each of these aspects.
The two-step approach showcased in the paper leaves a core question unanswered; the trade off between production and maintenance. Typically, production scheduling aims to optimise a particular KPI, such as cycle time or throughput. By treating the production schedule as fixed and optimising the number and earliness of maintenance operations around it, we are ignoring the trade-off to the KPIs that matter and there may well be foregone synergy opportunities.
The paper rightly highlights the need to consider maintenance using a formal mathematical framework. Nevertheless, there are some assumptions that limit the applicability and benefit of the proposed approach.
One limitation is the discrete representation of time; continuous-time modelling* would instead allow for a more precise indication of when the various tasks should be carried out. This is especially relevant for modelling more complex tools e.g. photolithography, where maintenance lasts only a fraction of the discrete time.
The model makes use of the concept of “tool families”, to capture the fact that many tools are identical, which allows for substantial model simplification. However, in practice, most tools will have individual characteristics (such as the set of recipes they can carry out, or the secondary resources they may be using), which renders them non-interchangeable.
Another consequence, mentioned also by the authors, is that all maintenance is treated as optional, with no possibility to mark a particular task as “must-run” since that may require amendments to the original production schedule for feasibility.
Results are presented for 12 real-world case studies, involving around 100 maintenance tasks to be scheduled for 14 tools families over a span of 60 one-hour periods. The more relaxed model (model 2) is shown to perform better, both in terms of the number of maintenance tasks planned as well as total earliness. One strength of the proposed approach is the speed of computation. As the authors state, the proposed model can be the basis for iterative discussions between production and maintenance planners.
Ideally, production and maintenance scheduling should be tackled in a single model, where the objective function according to cycle time and throughput applies. This can be achieved by treating maintenance as tasks that need to be scheduled within a specific window. Thereby fab managers can explicitly consider the impact that maintenance tasks have on the schedule such that impact on the production KPIs is minimised. Of course, such integrated approaches result in a substantial increase of problem size and complexity, necessitating the development of solution strategies capable of handling the ensuing complexity. Especially in cases of a large number of maintenance tasks or lengthy maintenance, such constraints can quickly render a problem intractable.
The Flexciton Way
At Flexciton, we have developed decomposition techniques to manage the added complexity introduced by maintenance constraints. The users can describe their maintenance tasks as “optional” or “must-run” as well as having a fixed start time or a flexible time window within which they can be carried out.
The Flexciton engine proceeds to optimise the target production KPIs while respecting maintenance constraints. The resulting production schedule prescribes the best time to carry out maintenance while capturing all individual tools characteristics and respecting all operational constraints so as to achieve the best use of available assets.
In our next publication we are going to dive deeper into the topic and discuss flexible maintenance scheduling. If you wish to be up to date with our publications, please provide your email below to receive notifications.
* Discrete time and continuous time are two alternative frameworks within which to model variables that evolve over time. Discrete time views values of variables as occurring at distinct, separate "points in time". In contrast, continuous time views variables as having a particular value for potentially only an infinitesimally short amount of time. Between any two points in time there are an infinite number of other points in time