Resource Oriented Scheduling
Resource constrained scheduling should be applied whenever there are limited resources available for a project and the competition for these resources among the project activities is keen. In effect, delays are liable to occur in such cases as activities must wait until common resources become available. To the extent that resources are limited and demand for the resource is high, this waiting may be considerable. In turn, the congestion associated with these waits represents increased costs, poor productivity and, in the end, project delays. Schedules made without consideration for such bottlenecks can be completely unrealistic.
Resource constrained scheduling is of particular importance in managing multiple projects with fixed resources of staff or equipment. For example, a design office has an identifiable staff which must be assigned to particular projects and design activities. When the workload is heavy, the designers may fall behind on completing their assignments. Government agencies are particularly prone to the problems of fixed staffing levels, although some flexibility in accomplishing tasks is possible through the mechanism of contracting work to outside firms. Construction activities are less susceptible to this type of problem since it is easier and less costly to hire additional personnel for the (relatively) short duration of a construction project. Overtime or double shift work also provide some flexibility.
Resource oriented scheduling also is appropriate in cases in which unique resources are to be used. For example, scheduling excavation operations when one only excavator is available is simply a process of assigning work tasks or job segments on a day by day basis while insuring that appropriate precedence relationships are maintained. Even with more than one resource, this manual assignment process may be quite adequate. However, a planner should be careful to insure that necessary precedences are maintained.
Resource constrained scheduling represents a considerable challenge and source of frustration to researchers in mathematics and operations research. While algorithms for optimal solution of the resource constrained problem exist, they are generally too computationally expensive to be practical for all but small networks (of less than about 100 nodes). The difficulty of the resource constrained project scheduling problem arises from the combinatorial explosion of different resource assignments which can be made and the fact that the decision variables are integer values representing all-or-nothing assignments of a particular resource to a particular activity. In contrast, simple critical path scheduling deals with continuous time variables. Construction projects typically involve many activities, so optimal solution techniques for resource allocation are not practical.
One possible simplification of the resource oriented scheduling problem is to ignore precedence relationships. In some applications, it may be impossible or unnecessary to consider precedence constraints among activities. In these cases, the focus of scheduling is usually on efficient utilization of project resources. To insure minimum cost and delay, a project manager attempts to minimize the amount of time that resources are unused and to minimize the waiting time for scarce resources. This resource oriented scheduling is often formalized as a problem of "job shop" scheduling in which numerous tasks are to be scheduled for completion and a variety of discrete resources need to perform operations to complete the tasks. Reflecting the original orientation towards manufacturing applications, tasks are usually referred to as "jobs" and resources to be scheduled are designated "machines." In the provision of constructed facilities, an analogy would be an architectural/engineering design office in which numerous design related tasks are to be accomplished by individual professionals in different departments. The scheduling problem is to insure efficient use of the individual professionals (i.e. the resources) and to complete specific tasks in a timely manner.
The simplest form of resource oriented scheduling is a reservation system for particular resources. In this case, competing activities or users of a resource pre-arrange use of the resource for a particular time period. Since the resource assignment is known in advance, other users of the resource can schedule their activities more effectively. The result is less waiting or "queuing" for a resource. It is also possible to inaugurate a preference system within the reservation process so that high-priority activities can be accomadated directly.
In the more general case of multiple resources and specialized tasks, practical resource constrained scheduling procedures rely on heuristic procedures to develop good but not necessarily optimal schedules. While this is the occasion for considerable anguish among researchers, the heuristic methods will typically give fairly good results. An example heuristic method is provided in the next section. Manual methods in which a human scheduler revises a critical path schedule in light of resource constraints can also work relatively well. Given that much of the data and the network representation used in forming a project schedule are uncertain, the results of applying heuristic procedures may be quite adequate in practice.
Example 2-6: A Reservation System
A recent construction project for a high-rise building complex in New York City was severely limited in the space available for staging materials for hauling up the building. On the four building site, thirty-eight separate cranes and elevators were available, but the number of movements of men, materials and equipment was expected to keep the equipment very busy. With numerous sub-contractors desiring the use of this equipment, the potential for delays and waiting in the limited staging area was considerable. By implementing a crane reservation system, these problems were nearly entirely avoided. The reservation system required contractors to telephone one or more days in advance to reserve time on a particular crane. Time were available on a first-come, first-served basis (i.e. first call, first choice of available slots). Penalties were imposed for making an unused reservation. The reservation system was also computerized to permit rapid modification and updating of information as well as the provision of standard reservation schedules to be distributed to all participants.
Example 2 -7: Heuristic Resource Allocation
Suppose that a project manager has eleven pipe sections for which necessary support structures and materials are available in a particular week. To work on these eleven pipe sections, five crews are available. The allocation problem is to assign the crews to the eleven pipe sections. This allocation would consist of a list of pipe sections allocated to each crew for work plus a recommendation on the appropriate sequence to undertake the work. The project manager might make assignments to minimize completion time, to insure continuous work on the pipeline (so that one section on a pipeline run is not left incomplete), to reduce travel time between pipe sections, to avoid congestion among the different crews, and to balance the workload among the crews. Numerous trial solutions could be rapidly generated, especially with the aid of an electronic spreadsheet. For example, if the nine sections had estimated work durations for each of the fire crews as shown in Table 10-13, then the allocations shown in Figure 2-16 would result in a minimum completion time.