Does your production scheduling fall short of your expectations? You might be using the wrong scheduling system!
Production scheduling is the final planning stage before the actual production, and the resulting production schedule suggests to operators and supervisors on the shop floor which tasks should be executed on which machines and in which order. Traditionally, a hierarchical planning approach is taken where production scheduling follows production planning, which typically consists of two or more planning stages. Either way, the production plan (i.e., the output of production planning) establishes production quantities over a medium-term horizon (up to 24 months into the future) on a weekly or daily granularity, it may include batch sizes and routes, and it should be consistent with the material plan. The production is an input to production scheduling. However, it may be necessary to revise the production plan incorporating feedback from the scheduling stage when it becomes apparent that the plan is not realistic.
Scheduling systems come in different forms, namely Excel, off-the-shelf advanced planning systems (APS), and custom solutions, and they use different scheduling methods to construct schedules. For example, spreadsheet-based systems usually employ simple loading procedures. This post gives an overview on the available types of scheduling systems, the types of production processes and how scheduling differs among them.
The following requirements are important when choosing among potential solutions.
|The system produces high-quality schedules, which is measured with several key performance indicators.
|The system models the real-world problem sufficiently detailed and it allows to adjust the model if necessary to produce realistic schedules.
|The system quickly produces new schedules, and thereby, allows to frequently reschedule, incorporate manual changes, and run what-if analyses.
|Scheduling effort and usability
|The system simplifies the life of the planners and is fun to use.
|Return on investment
|The benefits of the system exceed its operating costs and the cost for implementing it.
The schedule quality is measured with key performance indicators (KPIs) such as
- reduced cycle times and better on-time performance,
- reduced work in progress (WIP) and material stocks,
- improved equipment and labor utilization,
- more scheduling stability (from one rescheduling to the next), and
- schedule robustness (schedule remains feasible and efficient in the face of unexpected changes).
The nature of the scheduling task depends on the underlying production process. Production processes are classified into five broad classes called production systems: continuous flow production, mass production, batch production, job shops, and projects. Unfortunately, multiple names are circulating for some of these, which can be confusing at first. The figure below shows an overview on the production systems, their labels, their characteristics, and their implications for scheduling.
Continuous flow production
Continuous flow production processes have a single stationary bottleneck, and the utilization at that bottleneck determines the utilization of the entire production process. Consequently, utilizing the capacity at the bottleneck should be the focus, which is already the objective during production planning. It is easy to disaggregate this plan to the production schedule. Therefore, production scheduling is relatively straightforward in continuous flow production, though, we have to time maintenance and expansions and avoid disturbances since downtimes are costly.
Mass production processes are similar from a scheduling perspective. When the product variety is higher though, the sequencing of the items becomes relevant. While grouping similar items can reduce setup costs, spreading them out may be beneficial from a process or material supply perspective.
In batch production processes, the focus is mainly on finding good batch sizes and sequencing to strike a balance between setup times and inventory costs. Bottlenecks may move between workstations, but rather predictably. Supplying raw materials and components across multiple stages of production can be challenging.
Job shops are factories with flexible work centers that manufacture customized products to customer order. A customer order entails one or multiple jobs, where each job represents an item or a batch of identical items that require a certain sequence of processing steps at different work centers. Demand fluctuates and is hard to predict, and bottlenecks occur at different work centers. We can improve utilization of work centers by making sure that there are always enough jobs waiting. However, that increases cycle times and work in progress (WIP), and it complicates short term reprioritization. Without any form of decision support, this environment is trouble from a scheduler’s perspective.
Projects are a special case and not treated further.
Production scheduling has been a popular research area for many years. Unfortunately, most approaches investigated in research do not consider the complicated constraints and preferences present in reality, and therefore, we can only apply few of them. Nevertheless, advanced scheduling techniques have the potential to significantly improve schedules and boost efficiency to another level.
Mathematical optimization versus heuristics
In general, we can distinguish between optimization and heuristics. Optimization means to formulate a mathematical model of the planning problem and to solve this model. The result is a schedule that is best with respect to that model. Sounds great, doesn’t it? Unfortunately, in many cases the model is too large or complex so that solving it is too time-consuming or even impossible. Therefore, we frequently have to rely on heuristics, i.e., procedures designed to quickly derive good schedules. Sophisticated heuristics like simulated annealing, tabu search, or genetic algorithms can generate high quality schedules. However, once tailored to the situation at hand, we cannot easily adapt these should the scheduling logic change. Finite loading (described below) is a simple and common type of heuristic. Event-driven scheduling is related, but generates better schedules in terms of cycle times, cycle time variability and mean tardiness.
Finite loading are simple heuristics that build schedules by assigning operations to work centers step by step (“operations are loaded onto machines”). When there are multiple options, a priority rule determines which job to schedule next. There is a variety of priority rules such as first-come first-served, earliest due date, shortest processing time, random, and combinations thereof. Additionally, there are several loading variants. For example, forward loading starts at the current time and moves forward in time, whereas backward loading starts at each jobs due date and schedules them backwards, the latter of which may lead to infeasible schedules. Finite loading procedures are easy to develop, special logic can be incorporated quite easily, and they are computationally tractable, which makes them the most popular choice in practice. However, making decisions based on limited information myopically usually leads to schedules of relatively low quality.
Simulation models mimic the behavior of the real system under consideration. Event-driven simulation or discrete-event simulation is a method to simulate processes by stepping through a sequence of events. A scheduler triggers events in the correct sequence, and each event may change the state of the system and generate new events to occur at a future point in time. We can use event-driven simulation for scheduling. Examples for events are the release of a new job, the completion of an operation, or the end of a machine maintenance. At each event, we can make scheduling decisions, again, using certain priority rules like in finite loading. Such simulation models allow to consider complex logic, uncertainty, and are computationally tractable. However, the schedule quality may no be satisfactory due to the myopic nature of the decision rules.
Types of scheduling systems
Scheduling can be done with the help of spreadsheets, off-the-shelf software, or custom built solutions. The scheduling method is the brain of the system that needs to be integrated.
Excel – the Swiss knife
Excel being a flexible, familiar, go-to tool for a host of different tasks is usually where production scheduling starts or has started once. Macros (VBA) expand the capabilities of Excel significantly allowing to automate repetitive tasks and to employ scheduling algorithms. However, as planning becomes more demanding spreadsheets grow increasingly complex and harder to maintain. Often only a single employee knows the mechanics of the spreadsheet well enough to maintain it within reasonable effort. Scheduling becomes effortful and error prone and the computational performance may become an issue too. It is difficult to model complicated logic such as equipment, labor, and material constraints. Moreover, since there is no database and no integrated version control, there is no single source of truth. Integration into the manufacturing execution system (MES) is difficult, which renders Excel not suitable for real time production scheduling and control.
Advanced planning systems (APS) – quality plans for standard processes
Advanced planning systems such as Siemens’ Opcenter, PlanetTogether, or Epicor alleviate some of the drawbacks of spreadsheet-based solutions. These systems operating from a single database provide a single source of truth so that all departments can view the same schedule. Integration into the MES allows for planning based on real time data and feeding the schedules back into the MES so that they immediately become available on the shop floor. Planning effort can be cut down from days to hours while considering equipment, labor, and material constraints. Graphical user interfaces provide visualizations of plans and intuitive drag-and-drop functionality so that planners can perform what-if analyses and manually modify the schedule based on their experience.
Obviously, license fees apply for the software, but there is no effort for maintaining the software, and instead of being dependent on a single or few employees, the dependency shifts to the external vendor. Under the hood, there are typically basic heuristics such as finite loading procedures. With an Excel-based solution as baseline, we generally expect the APS to create somewhat better schedules. If the APS does not support the unique constraints and objectives though, there are two options: (i) politely ask the provider of the APS for help, or (ii) rely on a custom solution instead. Of course it would be great if a one-fits-all solution existed. However, certain features don’t work well in combination from an algorithmic point of view. As a result, there is a multitude of vendors offering multiple variants and configurations. Choosing a fitting APS out of sea of options is not trivial at all.
Custom made solutions – maximum performance for competitive advantage
Finally, we can tailor custom solutions to the circumstances found on the shop floor, and thereby, generate schedules that outperform spreadsheet-based approaches and off-the-shelf APS packages. To that end, we must build the brain of the APS ourselves which involves choosing a solution methodology that strikes a balance between schedule quality and computational complexity. If schedule quality is of the essence and the logic is sufficiently simple, mathematical optimization might be the way to go. Otherwise, event-driven scheduling with carefully tuned sequencing rules are a reasonable choice. The drawback of custom solutions is the need for operations research experts to develop and maintain the algorithms as well as engineers to integrate and deploy the solution.
Pros and cons of tools
Choosing the right tool for production scheduling is a decision with significant consequences. Many companies find that their APS does not live up to its promises when it is already too late. Before committing to an APS a careful assessment is of utmost importance. The table below summarizes pros and cons of the tools for reference.
What are your experiences with production scheduling?