Appendix A
A construction project aims to build a 6.3km part of a highway. The structure of a highway is very complicated. For the sake of simplicity I consider the three main structural layers of highway, A—a solid foundation (i.e., trenching, embankment, paving, etc.), B—a roadbed (i.e., cement pouring), and C—a surface layer (i.e., pavement decoration), as in Fig. 9.
Normal operational modes of the three layers of construction involve linear pipeline construction. The solid foundation can be constructed in 27 meters per hour (m/h), the roadbed can be constructed in 30 m/h, and the surface layer can be constructed in 20 m/h. The minimum length between the solid foundation and the roadbed is 210 m, and the minimum length between the roadbed and surface layer is 150 m. The roadbed is a cement-stabilized structure that must be maintained for at least 7 h following cement stabilization.
The construction company decided to divide the highway into three 2.1km sections for construction (i.e., sections A, B and C were divided into \(A_k\), \(B_k\), and \(C_k\); \(k=1,2,3\)). Following this division, the durations of \(A_k\), \(B_k\), and \(C_k\) were found to be \(d_{A_k}=2100\div 27=78\hbox {h}\), \(d_{B_k}=2100\div 30=70\hbox {h}\), and \(d_{C_k}=2100\div 20=105\hbox {h}\), respectively. With respect to the partition, because \(B_k\) is a cement stable structure, after pouring cement in one part (\(B_k\)), the time lag before pouring cement in next part \(B_{k+1}\) should not be too long (not in excess of 12 hours in this example). Otherwise, the viscosity of the cement will fall and the surface of the road cannot be properly constructed. As such, the time lag method used here is the Finish-to-Start type of maximum time lag\(\hbox {FTS}_{B_{k}B_{k+1}}^{\max }(12)\), \(k=1,2\).
To facilitate the analysis, I transform the required distances between layers during construction into time lags. Meeting the required distance between two layers during construction is determined by the construction speed and chronological order of activities related to the construction of the two layers:
(1) For solid foundation (A) and roadbed (B), the construction speeds of \(A_k\) and \(B_k\) are 27 m/h and 30 m/h, respectively. The slower \(A_k\) lies ahead of the faster \(B_k\). This means that the distance between \(B_k\) and \(A_k\) will shrink over time, forcing the minimum distance between them to occur when the activities are completed. To ensure that the distance between A and B is at least 210vm, we should let the minimum distance be 210 m, which \(B_k\) can finish in \(210\div 30=7\)h. Therefore, the time lag needed to meet distance requirements is of the Finish-to-Finish type of minimum time lag between \(A_k\) and \(B_k\), that is, \(\hbox {FTF}_{A_kB_k}^{\min }(7)\), \(k=1,2,3\).
(2) For roadbed (B) and surface layer (C), the construction speeds of \(B_k\) and \(C_k\) are 30 m/h and 20vm/h, respectively. The faster \(B_k\) lies ahead of the slower \(C_k\). This means that the distance between them increases over time. Therefore, the minimum distance between them will occur when the activities begin. To ensure that the distance between B and C is at least 150 m, we should let the minimum distance be 150m, which \(B_k\) can finish in \(150\div 30=5\)h. Therefore, the time lag needed to meet distance requirements is of the Start-to-Start type of minimum time lag between \(B_k\) and \(C_k\), that is, \(\hbox {STS}_{B_kC_k}^{\min }(5)\). In addition, the roadbed (\(B_k\)) is a cement-stabilized structure that must be maintained for at least 7 h following cement stabilization. Thus, 5 h after the start time of \(B_k\), the minimum distance between \(B_k\) and \(C_k\) will be 150vm, but \(C_k\) must wait 7 h for “cement hardening.” Therefore, the start time of \(C_k\) is no earlier than \(5+7=12\) h after the start time of \(B_k\), that is, \(\hbox {STS}_{B_kC_k}^{\min }(12)\), \(k=1,2,3\).
Given the above, I list the precedence relations between activities in the project in Table 1.
Appendix B
Compared with CPM network, the biggest change of the AoN network with equivalent \(\hbox {STS}_{ij}^{\min }(w_{ij}^{\prime })\) is having arcs (i, j) with negative lengths \(d_{ij}=w_{ij}^{\prime }<0\) which permits activity j earlier than activity i. This change may be the main reason for the singularities—the invisible consumptions and enlargements of activity floats. The analysis in Sect. 3.2 shows that the start time of the noncritical activity j will be fixed when the activity starts, which can be equivalently seen that the latest start time of the activity is brought forward to its actual start time. Equation (19) presents that for arc (i, j), the latest start time of activity i may be determined by the latest start time of activity j, therefore the changing of the latest start time of activity j may affect the latest start time of activity i. Similarly, other activities’ latest start times determined by the latest start time of activity i also will be changed.
Suppose that t is the execution time of the project. Based on the analysis in Sect. 3.2, activity j has actually started at time \(s_j\le t\), which implies that its start time is no earlier and no later than \(s_j\). According to the types of GPRs, this case can be represented as a Begin-to-Start type of minimum and maximum time lags\(w_{sj}=s_j\) between the project and activity j, as follows: \(BTS_{sj}^{\min }(s_j)\) and \(BTS_{sj}^{\max }(s_j)\Leftrightarrow STB_{js}^{\min }(-s_j)\).
To represent \(BTS_{sj}^{\min }(s_j)\) and \(BTS_{js}^{\min }(-s_j)\), arc (s, j) with length \(d_{sj}=w_{sj}=s_j\), and arc (j, s) with length \(d_{js}=w_{js}=-s_j\) should be added to the Bartusch AoN network. According to the computation of \(\hbox {ES}_j\), a path with length \(l=\hbox {ES}_j\) from the beginning node (s) to node (j) exists in the original network. Therefore, the path is equivalent to arc (s, j) with length \(d_{sj}=w_{sj}=\hbox {ES}_j\), and only the addition of arc (j, s) with length \(d_{js}=w_{js}=-\hbox {ES}_j\) is required. If activity j consumed its free float by \(\Delta \hbox {FF}_j\), specifically, \(s_j=\hbox {ES}_j=\Delta \hbox {FF}_j\), \(BTS_{sj}^{\min }(s_j)\) and \(STB_{js}^{\min }(-s_j)\) should be added and represented. No path with length \(l=s_j\) probably exists from node (s) to node (j) in the original network. Therefore, arc (s, j) with length \(d_{sj}=w_{sj}=s_j\) and arc (j, s) with length \(d_{js}=w_{js}=-s_j\) need to be added to the activity network. After adding the corresponding arcs for all activities j with \(\hbox {LS}_j\le \hbox {ES}_i<t<\hbox {LS}_j\) based on the described cases, the time parameters of activities, such as the latest start times of activities, may be changed and result in new activity floats different from the original values. The invisible consumptions and enlargements of time floats of activity j and other activities starting later than t can be obtained by computing the activity floats and comparing them with their original values.