In some applications, it may be desirable to minimize the fluctuations in the use of a resource from one period to the next. If the schedule all activities at their earliest start times, it is quite possible that a larger amount of resources will be needed in the early periods and that relatively lower amount will be needed in the later periods. The specified project completion time could be achieved by shifting some of the activities so that the profile of resources requirements over time is level or has less fluctuation. Such load leveling has the objective idle labor costs, hiring and separation costs of any resource that may be affected by fluctuations in the demand for its use, such as equipment rental.
For simple projects, a scheduler might use activity slack for smoothing peak resources requirements. However, for large and complex projects, a computer based leveling model may be required.
Resource Constrained Project Scheduling:
In many project situations, resources are available only in fixed amounts. For example, pieces of machinery, the number of design engineers, the budget that can be spent per month and the like may be limited. The managerial objective in such situations is to minimize the project completion time while not exceeding the given limits on available resources. Since the activities that compete for the same limited resources cannot be scheduled simultaneously, the effect of resource constraints will often be to delay the project completion date relative to the completion date that could be achieved without such restrictions.
An optimal solution for the project completion time with resources constraints requires an integer program that is difficult to solve for practical sized projects. Several heuristics have been developed and compared (see Davis and Patterson, 1975, for their relative effectiveness). The underlying strategy of these heuristics is to schedule activities on a period by period basis so as not exceed the resources limits. If all eligible activities can not be scheduled due to a resource limit, a rule is used to decide which activities should be scheduled and which should be postpone. An example of such a rule is minimum activity slack. Using this rule, priority in scheduling is given to those activities with the least slack
(slack = latest start time – earliest start time in the critical path analysis). Activity slack is updated in each period to reflect the change in the available slack resulting from the postponement of individual activities. This rule provided the optimal solution in 24 out of 83 test problems in the Davis and Patterson study. Further, it produced the least average percent increase in project duration over the optimal duration (5 or 6 percent above optimum), as compared with several other rules.
Given a single project, the manager organizes around the needs of that project, with all functional organizational units focused on achieving the project objectives. The organizational structure is then comparable with the functional organizational commonly used in industry. Organizational problems begin when we add a second project. Multiple projects suggest resource sharing with the obvious advantages of better utilization. But how will the resources be shared? By what schedule? Who will decide these issues if there are two project managers? These problems could be solved by simply duplicating the resources and making the two projects independent, but the potential economy advantages of the larger scale of operations would be lost.
The common organizational form multiple projects is the matrix organization. The advantages of the matrix organization are in the efficient use of resources, the coordination across functional departments, and the visibility of project objectives. The disadvantages are in the need for coordination between functional and project managers and the often unbearable situation of the person in the middle (the project representative) who is working for two bosses.