Scheduling is one of the areas that received considerable attention from researchers as well as practitioners in all types of applications including operations scheduling and project scheduling. Techniques are developed to develop optimum or near optimal schedules with respect to different possible performance measures. This chapter highlights some of these techniques and their application in maintenance scheduling.
Gantt Charts and Scheduling Theory
One of the oldest techniques available for sequencing and scheduling operations is the Gantt chart developed by Henry L. Gantt during World War II. The Gantt chart is a bar chart that specifies the start and finish time for each activity on a horizontal time scale. It is very useful for showing planned work activities vs accomplishments on the same time scale. It can also be used to show the inter- dependencies among jobs, and the critical jobs that need special attention and effective monitoring. There are large variations of the Gantt chart. To demonstrate the use of the Gantt chart several examples are given below. The example in Figure
11.5 shows the simplest form of the Gantt chart in which activities are scheduled at specified dates within the month.
Figure 11.5. A Gantt chart representing a schedule of seven activities
Figure 11.6. A Gantt chart with milestones
The example in Figure 11.5 modified to show interdependencies by noting milestones on each job timeline is shown in Figure 11.6. The milestones indicate key time periods in the duration of each job. Solid lines connect interrelationships among milestones.The milestones thus indicate the interdependencies between jobs. Obvious milestones for any job are the starting time for the job and the required completion point. Other important milestones are significant points within a job, such as the
point at which the start of other jobs is possible.
Gantt charts can also be used to show the schedule for multiple teams or equipment simultaneously. A case in which three heavy pieces of equipment are scheduled for different jobs throughout the day is shown in Figure 11.7. The actual progression indicated in the chart shows any deviation from the scheduled timing. The chart indicates that jobs 25A and 15D are completed on schedule, job 25C is behind schedule by about a full day while job 25B is ahead of schedule by about a day, and job 41E is in progress exactly on schedule. Jobs 33C and 44E scheduled but have not started yet.
Figure 11.7. Gantt chart with progression
Color codes are sometimes used to reflect certain conditions such as shortage of material or machine breakdowns. Several scheduling packages, such as Primavera, are available to construct Gantt charts for more complicated schedules involving multiple resources and large number of activities. In general, Gantt chart does not build a schedule but helps in presenting the schedule in a simple visible manner that might help in monitoring, controlling and may be adjusting schedules. Scheduling (adding new jobs to the Gantt chart) itself is done following a certain rule that is developed with experience for the schedule to perform in the desired way. An example of such a rule is loading the heaviest job to the least loaded equipment as early as possible for maximizing the utilization of the equipment. This rule is known from scheduling theory to produce a good schedule for minimizing idle time.
Optimization techniques are available in the literature for such cases and for other cases with multiple or single resource. In general, scheduling theory has developed to handle short term production scheduling in different shop structures including job shop, flow shop, open shop and parallel machine structures See Pinedo (2002) for one of the recent books in scheduling theory. Integer programming is commonly used for developing optimum schedules for various scheduling requirements under various problem structures. However, they turn out to be large scale models that are quite complicated for real life situations. Another line of research in scheduling theory is developing heuristic methods, some of which are quite simple and practical, that result in good schedules with respect to certain performance measures. Computer simulation is heavily used in testing the performance of different competing heuristics and dispatching rules under stochastic system behavior including machine breakdowns, and stochastically dynamic job arrivals.
Some of the simple rules that can be utilized in maintenance scheduling are:
• For minimizing the average job waiting time, select jobs with high priority and short time requirements to be scheduled first. More specifically jobs should be ordered in increasing order of the ratio of processing time to weighted job priority (assuming high priority jobs have high weights). This rule is known as the weighted shortest processing time (WSPT) rule in scheduling theory.
• For minimizing the average job waiting time having more than one team (crew) of the same capabilities, construct the schedule by assigning the job with the least time requirement to the fastest team.
• Having teams of different capabilities serving for different tasks for interrelated jobs (job shop environment), each team should select the task belonging to the job with the most remaining time requirement. This will
maximize the utilization of maintenance crew (or equipment).
In spite of the developments in scheduling theory, its use in maintenance scheduling is limited due to the different nature of maintenance activities compared to production activities in many aspects including:
• Mai ntenance activities are highly uncertain in terms of duration and resource requirements;
• Maintenance activities are highly related in terms of precedence relations or relative priority;
• Tasks can be divided into subtasks each with different
• Tas ks can be interrupted or canceled due to changes in production conditions or maintenance requirements.
Recent advances in scheduling theory tended to tackle problems that are more stochastic in nature and some research is devoted to maintenance scheduling applications. Another recent trend in scheduling theory is the integration of maintenance scheduling and production scheduling which are traditionally done independently.