Project Scheduling
8.12 GENERALIZED RELATIONSHIP SCHEDULING COMPUTATIONS
The scheduling computations for precedence diagrams with generalized relationships follow the same rationale discussed for traditional relationships. First, a forward pass establishes the earliest dates that each activity can be performed while keeping the logic of the diagram. A backward pass computes the latest possible dates to execute each activity without extending the duration found by the forward pass. Finally, the critical path and activity floats are computed.
The small example used to discuss traditional computations has been modified as shown in Figure 8.26 by introducing several generalized relationships. Although the activities have kept their relative position and duration, almost all of them are related by Table 8.4 Float Calculations for the Small Gas Station Project
Activity Total Float Free Float Interfering Float
1 TF(1)¼ 10 10 ¼ 0 FF(1)¼ 10 10 ¼ 0 IF(1)¼ 0 0 ¼ 0
8.12 Generalized Relationship Scheduling Computations 141
generalized relationships differing from the original example. This diagram is an extreme case of the use of generalized relationships, done for the purposes of explanation. Most CPM diagrams will have a much smaller proportion of nontraditional relationships.
8.12.1 Forward Pass (Generalized Relationships)
As with traditional relationships, an ESD of 0 is assigned to the initial Activity A. Because this activity includes the three types of generalized relationships usually used in construc-tion project diagrams, it can reveal the scheduling procedure for each one. Figure 8.27 shows a detail of the computations that follow.
The relationship between A and B, which can be called RABfor simplicity, is SS.
Therefore, the start of A (0) plus the lag of RAB(2) will be used in the computation of the early start ESD of Activity B. Its EFD will be its ESD plus its duration T.
ESDB¼ ESDAþ LAGAB¼ 0 þ 2 ¼ 2 EFDB¼ ESDBþ TB¼ 2 þ 10 ¼ 12
The relation between A and C, RAC, is a traditional FS relationship to which a lag of 1 has been added. Therefore, the ESD of C is determined by adding this lag to the EFD of A.
The EFD is computed by adding the activity’s duration.
ESDC¼ EFDAþ LAGAC¼ 1 þ 1 ¼ 2 EFDC¼ ESDCþ TC¼ 2 þ 7 ¼ 9
The relationship between A and D, RAD, is FF. Therefore, the EFD of D is determined as EFDA þ LAGAD, and then ESDDresults fromsubtracting TDfrom its EFD.
EFDD¼ EFDAþ LAGAD¼ 1 þ 16 ¼ 17 ESDD¼ EFDD TD¼ 17 14 ¼ 3
The three activities considered so far have a single predecessor, namely Activity A, since the latter is the initial activity in the precedence diagram. Activity E, in contrast, is preceded by B and C. Each one of the two relationships between B and E must be evaluated separately. Similarly to the computations already discussed for traditional relationships, the ESD and EFD of E will be dictated by the one of its two predecessors that ‘‘pushes’’ it the most into the future. That is, considering the FF relationship between B and E (since it is an FF relationship, EFD is computed first):
EFDE¼ EFDBþ LAGBBE FFð Þ¼ 12 þ 12 ¼ 24 ESDE¼ EFDE TE¼ 24 8 ¼ 16
A 1
C 7 B 10
14D 0 1
2 12
9 2
3 17 2
1
16
Figure 8.27 Forward pass for first four activities of generalized network.
Considering the FS relationship between B and E:
ESDE¼ EFDBþ LAGBBE FSð Þ¼ 12 þ 3 ¼ 15 EFDE¼ ESDEþ TE¼ 15 þ 8 ¼ 23
Finally, considering the FF relationship between C and E:
EFDE¼ EFDCþ LAGCE¼ 9 þ 5 ¼ 14 ESDE¼ EFDE TE¼ 14 8 ¼ 6
The controlling relationship in this case is the FF between B and E, since it results in the maximum of the three possible early dates:
ESDE ¼ MAX 16; 15; 6ð Þ ¼ 16
EFDE ¼ MAX 24; 23; 14ð Þ ¼ 24 ðalso; EFDE¼ ESDEþ TE¼ 16 þ 8 ¼ 24Þ Activity F has a traditional relationship with its sole predecessor C:
ESDF¼ EFDC¼ 9
EFDF¼ ESDFþ TF¼ 9 þ 5 ¼ 14
The last activity G has traditional relationships with E and F, and an FS with lag relates it to D. Therefore,
ESDG¼ MAX EFDð E; EFDF; EFD½ Dþ LAGDGÞ ¼ MAX 24; 14; 17 þ 2ð ½ Þ ¼ 24 EFDG¼ ESDGþ TG¼ 24 þ 1 ¼ 25
The complete forward pass is shown in Figure 8.28.
8.12.2 Backward Pass (Generalized Relationships)
The backward pass follows the logic discussed for traditional relationships. As in traditional relationships, it determines the latest possible point in time to start each activity without extending the project’s duration. The difference with traditional relationships is that the lag between activities must be subtracted instead of added in the process of examining activities from last to first. Moreover, the computations must be adjusted to include FF and SS relationships, as will be discussed.
The first step in the backward pass is the assignment of an LFD to the last activity, normally the same as its EFD. Its LSD is its LFD minus its duration. In the example,
LFDG¼ EFDG¼ 25
Figure 8.28 Complete forward pass for small generalized network.
8.12 Generalized Relationship Scheduling Computations 143
Activity G’s predecessors are scheduled next. Since activities E and F are linked to G by traditional relationships, their LFD is equal to the LSD of G. LSDs are found by subtracting their respective duration from their LFD:
LFDF¼ LFDE¼ LSDG¼ 24 LSDF¼ LFDF TF¼ 24 5 ¼ 19 LSDE¼ LFDE TE¼ 24 8 ¼ 16
Activity D includes a lag of 2 in its FS relationship to G. The LFD and LSD computations are similar to the ones for E and F, but now the lag between D and G is subtracted in the computations:
LFDD¼ LSDG LAGDG¼ 24 2 ¼ 22 LSDD¼ LFDD TD¼ 22 14 ¼ 8
The late dates of the activities considered so far are shown in Figure 8.29.
The next activity in the last-to-first sequence of the backward pass is C. It has a traditional relationship to F, and an FF relationship to E. The rationale used so far applies here, with the caveat that since the FF relationship links the respective finishes of C and E, it is LFDEthat must be considered:
LFDC¼ MIN LSDð F; LFD½ E LAGCFÞ ¼ MIN 19; 24 5ð ½ Þ ¼ 19 LSDC¼ LFDC TC¼ 19 7 ¼ 12
Notice that in this case there is a tie between the two possible relationships, since 24 5 ¼ 19. Such ties are allowed by the algorithm and in fact are common in projects with a tight execution schedule.
Activity B is related to its successor by two relationships, and therefore, both must be considered in the computations.
The initial Activity A has the three types of generalized relationships with its successor.
The computations are best understood by analyzing separately each relationship. Notice that, as expected, SSABrelates directly the LSDs of A and B. LFDAis computedafter LSDAis found, inverting the computation order used so far for these two dates.
LFDAand LSDAwill be equal to the minimum LSD and LFD imposed by each of the three relationships.
Considering the SS relationship to B:
LSDA¼ LSDB LAGAB¼ 2 2 ¼ 0; LFDA¼ LSDAþ TA¼ 0 þ 1 ¼ 1
Figure 8.29 Late date computations for activities D, E, F and G.
Considering the FS relationship to C (See Fig. 8.30):
LFDA¼ LSDC LAGAC ¼ 12 1 ¼ 11; LSDA¼ LFDA TA¼ 11 1 ¼ 10 Considering the FF relationship to D:
LFDA¼ LFDD LAGAD¼ 22 16 ¼ 6; LSDA¼ LFDA TA¼ 6 1 ¼ 5 Now the LSD and LFD can be determined as follows:
LFDA¼ MINðLFDAcomputed using each relationshipÞ ¼ MIN 1; 11; 6ð Þ ¼ 1 LSDA¼ MINðLSDAcomputed using each relationshipÞ ¼ MIN 0; 10; 5ð Þ ¼ 0 ðOr; LSDA¼ LFDA TA¼ 1 1 ¼ 0Þ
8.12.3 Total Float and Critical Path (Generalized Relationships)
The TF of each activity is the difference between its LFD and ifs EFD (or its LSD and its ESD). TFs are shown as the uppermost numbers of the two stacked at the bottom center of each activity box in Figure 8.31, which shows all the scheduling results for the example network.
The critical path is the chain of activities with TF¼ 0. For the example network, it consists of the chain of activities A-B-E-G. The relationships linking the critical activities are drawn with double lines in Figure 8.31.
A
8.12 Generalized Relationship Scheduling Computations 145
All the critical path properties previously discussed for precedence diagrams with only traditional relationships also apply for those with generalized relationships. Moreover, there are a few additional issues to consider for generalized relationships:
Critical activities in a traditional diagram are critical in their start, finish, and duration.
If any of these three elements change for any critical activity, the project will be delayed. Generalized relationships are more subtle in defining the critical path because in some circumstances, only the start or the finish of an activity is truly critical.
Consider Activity E in the example network. The FF relationship with Activity B is critical, and therefore, what is critical for E is tofinish on time. Its duration could perfectly change to, for example, 10 without extending the project execution time, if it starts by day 14. This type of flexibility is not possible in a traditional network.
Two activities may be critical and yet one or more relationships linking them may not be part of the critical path. This is the case for the FS relationship between activities B and E.
8.12.4 Free Float (Generalized Relationships)
The FF for activities in a generalized precedence diagrams is conceptually identical to the FF for activities in a traditional network already discussed. As before, it is the leeway, if any, that an activity has before it ‘‘pushes’’ the ESD of any successor. The FF of the activity is the minimum leeway between it and its successors. The computation of this leeway depends on the type of relationship. For an Activity I followed by another Activity J, the following formulas apply.
FS relationships: FF between j and i ¼ ESDj LAGij EFDi
SS relationships: FF between j and i ¼ ESDj LAGij ESDi
FF relationships: FF between j and i ¼ EFDj LAGij EFDi
Consider the case for Activity A of the example network, whose FF computation is shown graphically in Figure 8.32.
FFA¼ MIN 2 2 0ð½ ; 2 1 1½ ; 17 16 1½ Þ ¼ 0
Notice that each of the three possibilities for FFAresult in FF¼ 0. This is expected.
Activity A is critical, and therefore all its floats are 0. Moreover, Activity A drives the ESD of all its three successors, and therefore, there can be no leeway with any of them. Lastly, remember that for any Activity J, TFj>= FFj. TFA¼ 0, and its FF cannot be greater. The FF of each activity is shown in Figure 8.31 as the lower number of the two stacked at the center and below its box.
Figure 8.32 Free Float computation for Activity A.
8.12.5 Interfering and Independent Floats (Generalized Relationships)
As in traditional diagrams, the IF of an activity is the difference between its total float TF and its FF. This computation is so trivial that the IF is rarely explicitly included in the scheduling reports.
The IndF of an activity is, as before, the leeway that may exist when all the activity’s successors are located in their ESDs, and it is located in its LSD. The leeway formula for each type of generalized relationship is identical to the one for its FF, with the only difference of substituting the ESD/EFD of successors with their respective LSD/LFD.
Formulas for TF and FF never result in negative numbers. This is not the case with IndF.
Use 0 when a formula yields IndF< 0.
FS relationships: IndF between j and i ¼ ESDj LAGij EFDi
SS relationships: IndF between j and i ¼ ESDj LAGij ESDi
FF relationships: IndF between j and i ¼ EFDj LAGij EFDi
IndF is greater than 0 for relatively few activities in a typical network. Applying the formulas, it can be verified that all activities in the example network have IndF¼ 0. As mentioned in the discussion of traditional networks, it is uncommon to include this float in a schedule report.