This section introduces the topic of operations scheduling and provides a broad overview of this topic. Typically, operations scheduling comes after product/service quantities are determined. This means that capacity plan- ning and material requirements planning (MRP) (and frequently even lot size optimization) occur prior to operational scheduling. Therefore, operational scheduling deals mainly with the time dimension of the given activities.
This focus shall remain on the industrial side of scheduling. However, the service side of scheduling is broad and has its own scheduling models. Some examples for service models are timetabling, reservations, scheduling in entertainment and sports, workforce scheduling (and rostering), crew sched- uling, and priority scheduling. In general, service processes apply mostly to people, and the order of service is the order of arrival (first come first served—FCFS).
Each scheduling model is based on assumptions. These assumptions sim- plify the real-life situation regarding the layout of the production system, the presence of uncertainty, the type of jobs processed, the organization’s goals, constraints governing the organization, and the environment in which it is operating.
The solution to the job shop scheduling problem is a list of operations and the job (work order) they belong to, along with the planned start time and the planned end time of each job on each machine that has to process it. Since each job has a unique routing, the number of possible combinations grows rapidly with the number of different jobs, the number of different operations, and the number of different machines. This creates a difficult combinatorial problem.
Some basic elements of machine scheduling include the simple Gantt chart, flow time, due dates, and delays.
7.1.1 Simple Gantt Chart
Gantt charts are composed of resource time-lines along with the graphical division of the timeline of each resource into intervals. Each interval is dedi- cated to a specific activity. The name or identifying number of the operation or activity done in each interval appears clearly within or above the interval.
7.1.2 Flow Time
Flow time is the time that the order, part, or product (or customer) spends in the system; this is measured from the time of arrival to the time of departure, including wait and processing.
7.1.3 Due Dates
Due dates are delivery deadlines usually imposed by customers (through their order), but in some cases may also be artificially imposed by a com- pany’s policy. The due date for each process is used to determine the process earliness or tardiness.
7.1.4 Delays
If an activity or process is finished after its due date, it is considered “late” or “tardy.” Its tardiness is the positive difference between the finish time and its due date. The general delay is the sum of the amount of all delays.
These basic terms are now illustrated using a small example. The example data are summarized in Table 7.1.
Note that the completion time is a cumulative sum of the process time and waiting time. It is the figure to designate the start of the next process, and the end of the previous process in the Gantt chart, as shown in Figure 7.1.
169
Scheduling
The basis for scheduling decisions is the goals the organization sets. Possible examples of goals are as follows:
1. Timely completion of all jobs (work orders), according to the master production schedule (MPS).
2. Completion of all jobs (work orders) as soon as possible.
3. Minimization of process inventory (jobs waiting processing) in the shop floor.
4. Maximization of the utilization of resources by shortening the peri- ods in which they are idle or being adjusted for the next job (setup time of machines).
5. Minimization of cost by using less-expensive resources (such as using regular business hours, and avoiding the use of overtime and additional shifts).
The schedule must be feasible, that is, satisfy the relevant constraints. Examples of typical constraints are as follows:
• Each machine can perform one operation on a single product unit at a time.
• Only one machine at a time can process a product unit.
• Jobs must be processed according to their predetermined routing.
(1) (2) (3) (4) (5) (6) (7) 23 Time 18 15 11 9 8 3 FIGURE 7.1
Gantt chart for the example of Table 7.1 (single server). TABLE 7.1
Data of Seven Tasks on One Server/Machine, in an FCFS Schedule with Completion Times and Tardiness
Task No. i Process Time (Days) ti Due Date di Completion Time (Days) ci Delays Ti 1 3 16 3 0 2 5 18 8 0 3 1 18 9 0 4 2 9 11 2 5 4 12 15 3 6 3 15 18 3 7 5 19 23 4
• A machine operating on a product unit cannot be stopped to process another unit and then complete processing of the first unit.
• Setup of machines may be required when switching from one opera- tion to another operation.
• Setup time depends on the next operation as well as the previous operation performed on this machine.
An important constraint is imposed by the limited capacity of the job shops’ machines. For example, if the number of hours required for process- ing all the jobs on any machine during the planning period is larger than the number of hours available on this machine during the planning period, a capacity constraint is imposed. Furthermore, the number of hours required for processing all the jobs on any machine during the planning period may not be more than the number of hours available on this machine during the planning period. However, if setup time is required on this machine, the total processing time and setup time may exceed the machine avail- able time during the planning period. Consequently, a capacity constraint is imposed.
A possible solution in the case of capacity constraints with setups is to plan groups of jobs so that each group contains a large number of identical items with no need for setups between them (known as a batch). The large batch size minimizes the number of setups and saves setup time. Processing large batches of the same product on the machines saves time but it results in a relatively high in-process inventory.