Automation in Construction 75 (2017) 1–9
Contents lists available at ScienceDirect
Automation in Construction journal homepage: www.elsevier.com/locate/autcon
An effective approach with feasible space decomposition to solve resource-constrained project scheduling problems Zhenyuan Liu a,b,⁎, Liu Yang a, Raoyi Deng a, Jing Tian a a b
College of Automation, Huazhong University of Science and Technology, Wuhan 430074, China Key Laboratory of Education Ministry for Image Processing and Intelligent Control, Wuhan 430074, China
a r t i c l e
i n f o
Article history: Received 8 May 2016 Received in revised form 14 November 2016 Accepted 24 November 2016 Available online xxxx Keywords: Project scheduling Decomposition-based approach Extended serial scheduling scheme Double justification Construction management
a b s t r a c t Resource-constrained project scheduling problem is a classic problem in construction project. Aimed at solving this problem, an effective approach with decomposition on time windows is proposed in this paper. This approach is to select one activity to do decomposition and to partition the feasible space of the original problem into some feasible subspaces, in which solutions are generated by using an extended serial scheduling scheme. Double justification is also performed in the process of searching in subspace. Four strategies for selecting activity to do decomposition, three strategies for decomposition and a strategy on sampling size in various subspaces are designed. The results of experiments on two real construction projects show that the strategy based on degree for selecting activity and the strategy based on initial schedule for decomposition can obtain the best results. When compared with some other exiting algorithms, it is proven that the decomposition-based approach is effective and competitive. © 2016 Published by Elsevier B.V.
1. Introduction The resource-constrained project scheduling problem (RCPSP) is a classic NP-hard optimization problem [1] which can be found frequently in construction project, production development etc. Various procedures for solving the RCPSP including exact and heuristic ones have been developed in the last several decades years [2,3]. Among them, branch-and-bound method is a typical exact procedure, which is able to find optimal solutions in feasible time [4,5]. However, exact solution procedures are restricted to small or medium-scale RCPSPs. In order to solve large-scale problems, heuristic methods have been proposed which could generate optimal or suboptimal solutions within acceptable time. Serial Scheduling Scheme (SSS) and Parallel Scheduling Scheme are two popular schedule generation schemes (SGSs) in this area, which can generate feasible schedules with priority rules-based selection of activities stage by stage [6]. In recent decades, these two schemes have been widely combined with lots of meta-heuristic algorithms to solve the large-scale RCPSPs. Besides, priority rules were proposed to construct schedules based on the SGS. The most popular priority rules include latest finish time (LFT), shortest process time, minimum slack etc. The priority rules can make different influences on the performance of heuristics [7]. ⁎ Corresponding author at: College of Automation, Huazhong University of Science and Technology, Wuhan 430074, China. E-mail address:
[email protected] (Z. Liu).
http://dx.doi.org/10.1016/j.autcon.2016.11.012 0926-5805/© 2016 Published by Elsevier B.V.
During the past 30 years, kinds of meta-heuristic methods have been put forward to find more accurate solutions within shorter computing time. In their procedures, solutions are usually encoded firstly. Then the codes are visited by using some meta-heuristic strategy and finally decoded to generate schedules. Random-key and activity-list are two typical encoding methods [8]. Also choosing a decoding process according to characteristics of the problem reflects the flexibility of the algorithm [9]. The widely used meta-heuristic algorithms include Genetic Algorithms (GAs) [10–12], particle swarm optimization [13,14], simulated annealing algorithm [15] and ant system algorithm [16], etc. For example, Zamani presented a Genetic Algorithm with a magnet-based crossover operator [10], Kadam and Mane combined GA with local search algorithm [11], and Chen and Weng presented a two-phase GA model for RCPSP [12]. Georgios Koulinas et al. proposed a particle swarm optimization based hyper-heuristic algorithm by using random keys as the solution representation [13]. Similarly, Anantathanvit and Munlin extended the particle swarm optimization by regrouping the agent particle within the appropriate radius of the circle to solve the problem [14]. Anagnostopoulos and Koulinas proposed simulated annealing hyper-heuristics [15] and Li and Zhang put forward an ant colony optimization-based multi-mode scheduling algorithm [16]. As for the new approaches in recent years, such as bee algorithm [17], analogous immune algorithm [18], shuffled frog-leaping algorithm [19], and neurogenic algorithms [20] have also been applied to the RCPSP. For other heuristic algorithms, Wang and Fang developed a hybrid estimation of distribution algorithm [21] and Liu et al. designed
2
Z. Liu et al. / Automation in Construction 75 (2017) 1–9
an activity-list-based nested partitions algorithm recently [22]. Cheng et al. proposed a novel fuzzy clustering chaotic-based differential evolution with serial method [23]. Evaluation on the performance of these heuristic algorithms shows that the meta-heuristic often costs far more time than the heuristic. In order to saving computing time, some researchers reduce solution space by decomposing the RCPSP into sub-problem. Benders decomposition is an effective method to solve mixed-integer liner programming problem [24]. Recently, a hybrid bender decomposition algorithm outperforms pure constrain programming in solution quality and speed for solving project scheduling problem with multi-purpose resources, through decomposing the mixed-integer linear programming into a relaxed master assignment problem and a feasibility scheduling subproblem [25]. These two sub-problems are connected by benders cuts to exclude infeasible solutions. When searching feasible schedules in solution space, we often need to rank activities by checking their earliest finish (start) time and latest finish (start) time which can be called finish (start) time windows of activities to satisfy precedence relation constraints and resource constraints. These time windows are combined to form the whole feasible space without consideration of resource constraints. RCPSP has been solved with various algorithms in previous work, but there is still no research trying to decompose these time windows into sub-windows which may reduce searching space. In one of our work, a rough approach with the idea of decomposition has been developed and some rules for decomposition have been designed [26]. However, decomposition on feasible space has not been defined clearly. The SSS embedded in the procedure just operates directly on the original sub-windows without considering that the feasible start times of activities will change during the scheduling procedure. There are only some simple rules for decomposition and sampling. The numerical studies are not done on real cases and the results are not satisfying. This work is an extension of our previous work in [26] where the procedure will be defined in a systematic way. The remainder of the paper is organized as follows. Section 2 provides the description of the RCPSP. And then the decomposition methods on time windows are proposed in Section 3. Section 4 introduces the decomposition methodbased approaches and Section 5 shows several case studies about experimental design and result comparisons on the PSPLIB. Finally, some conclusions are presented in Section 6. 2. Problem description In RCPSP, it is assumed that a project consists of J activities. Without loss of generalization, we can assume that activity 1 is the only start activity and activity J is the only end activity. The duration of activity j is dj periods. In the project, an activity j ∈ {2, ⋯ ,J} may not be started before any of its immediate predecessors i ∈ Pj (Pj is the set of immediate predecessors of activity j) has been finished. There are K-type of renewable resources. Rk indicates the capacity of resource k. rjk(∀k) units of resource k are required to process activity j during every period of its duration. The time parameters in the problem are all integer valued. We use D to denote the deadline of the project. The earliest finish time EFj and the latest finish time LFj of activity j can be obtained with this D. We use a set of integer decision variables xj ∈ [EFj,LFj] (j = 1, … , J) to be the finish time
start
3 1
2 3
1 5
2
4
3
4 2
2 4
4 6
3
4
2
Table 1 Earliest finish times and latest finish times. Finish times
1
2
3
4
5
6
EF LF
3 17
4 14
5 19
6 16
6 20
10 20
of activity j. Another variable is At, the set of activities being in progress in period t. The model of RCPSP can be formulated as the following: minx J
ð1Þ
s:t:xi ≤x j −d j ; ∀i∈P j ; ∀j ¼ 1; …; J
ð2Þ
∑ r jk ≤ Rk ; ∀k ¼ 1; …; K; t ¼ 1; …; D
ð3Þ
x j ≥ 0; ∀j ¼ 1; …; J
ð4Þ
j∈At
The formula (1) shows the objective function which minimizes the completion time of the project. (2), (3), (4) are constraints. Constraint (2) considers immediate predecessor and successor relationship of all activities and ensures that start time of every activity is not earlier than the finish times of its immediate predecessors. (3) indicates that the total resource usage per period is in the range of availability. (4) ensures that finish time of an activity is not negative. 3. Decomposition on feasible space 3.1. A notation of feasible space Actually, the feasible space of RCPSP can be derived from the constraints (1) to (4). But it is not obvious because of the resource constraints. If this type of constraints is not considered, the feasible space can be denoted as a J-dimension-space Ω which is actually the combination of finish time windows of activities. Ω ¼ ½EF 1 ; LF 1 ½EF 2 ; LF 2 ⋯ EF J ; LF J
For example, Fig. 1 is the activity on node network of a project example. The deadline is set as 20 and the finish times obtained with CPM are shown in Table 1. Feasible space of this example can be defined as: Ω ¼ ½3; 17 ½4; 14 ½5; 19 ½6; 16 ½6; 20 ½10; 20 In this case, solving the RCPSP can be regarded as a procedure of finding a schedule in Ω to satisfy resource constraints and precedence relation constraints with minimizing the makespan of the project. 3.2. Decomposition operator With the above notation of feasible space, we can employ a decomposition operator to partition Ω into several subspaces, as Fig. 2 shows. The finish time window of activity i is [EFi, LFi]. It is assumed that the time window will be partitioned into M feasible sub-windows: [EF1i , LF1i ],
di i end
ri Deadline=20
Rmax=4
Fig. 1. Activity on node network of project example.
ð5Þ
Fig. 2. Decomposition Operation on Feasible Space.
Z. Liu et al. / Automation in Construction 75 (2017) 1–9
3
windows at time point 10, then the subspaces after decomposition are as the following:
Start
Ω1 : ½3; 17 ½4; 14 ½5; 19 ½6; 10 ½6; 20 ½10; 20
Calculate the finish times of activities
Ω2 : ½3; 17 ½4; 14 ½5; 19 ½11; 16 ½6; 20 ½10; 20 Generate an Initial Schedule
3.3. Redefinition of feasible subspaces
Define the feasible space
Definition 1. Transitive predecessors and transitive successors [27] Select an decomposed activity
Do decomposition on feasible space
Generate schedules in subspaces
Output the optimal solution
Stop Fig. 3. The flow chart of OPDA.
M 1 M l l−1 [EF2i , LF2i ], …, [EFM + 1, i , LFi ], where EFi = EFi, LFi = LFi, EFi = LFi l l 2 ≤ l ≤ M. Then, the lth sub-window [EFi, LFi] of activity i will be utilized to substitute its original finish time window [EFi, LFi ] in Ω to form the lth feasible subspace:
h i Ωl : ½EF 1 ; LF 1 … EF li ; LF li … EF J ; LF J
ð6Þ
In the example in Fig. 1, if we choose activity 4 for decomposition and its feasible finish time window is divided into two feasible sub-
Assuming the precedence relationship between activities couple (i, j) is denoted as Pre(i, j). If Pre(i, j) = 1, then activity i is a predecessor of activity j, otherwisePre(i, j) = 0. For an activities couple (i, j) in an activity network G = (V,A) where V is the activities set and A is the precedence relationship set, ifPre(i0, i1) × ⋯ × Pre(is − 1, is) = 1 , ∃(i0,i1) , ⋯ , (is−1,is) ∈ A , i0 , i1 , ⋯ , is−1 ,is ∈ V, i0 = i , is =j, then activity i is called a transitive predecessor of activity j. TPj and TSj are respectively the set of all the transitive predecessors of j and the set of all transitive successors of j. The union of all transitive successors and all transitive predecessors of activity j is denoted as Qj , Qj =TPj ∪ TSj. After partitioning on time window of some activities, it is probably that time windows of the related activities will be changed because of the precedence relationship. If the latest finish time (the earliest finish time) of some activity was changed, we need to redefine the latest finish times (the earliest finish time) of its transitive predecessors (transitive successors). Critical Path Method is employed to redefine the changed time windows of activities accordingly so that the feasible subspace will be changed. In the example in Fig. 1, subspace 1 and 2 are redefined as the following, where the finish time window of activity 2 is changed in Ω1 and the finish time window of activity 6 is changed in Ω2. Ω1 : ½3; 17 ½4; 8 ½5; 19 ½6; 10 ½6; 20 ½10; 20 Ω2 : ½3; 17 ½4; 14 ½5; 19 ½11; 16 ½6; 20 ½15; 20
Fig. 4. The base procedure of the ESSS.
4
Z. Liu et al. / Automation in Construction 75 (2017) 1–9
a) Case 1
start
di i
4
5
6
6
3
6
10
5
1
2 6 5
9 1 11
6 2 14
16
5
2
4
19
3 2
4
3
2
2
3
3
2 8
2 12
3 15
5 2 7
8 2 9
6 4 13
3
3
5
6 4 5
ri
end
18
3
5
20
8 17
5 Rmax=9
1
b) Case 2
11
15 5
10 8
10 10
2
5 14
4
2 2
start
18 4
25 1
6
2
21 3
11
3
10
5
10 13
7 17
12
10 12
5 14 14
4 7 16
9
4
5 7 15
3 9 18
10 20
14 22
4
6
6
3
7 4 9 6
7 21
12
5
4
4 10 19
9 24
16 27
5
5
23 4
14 26
4
4
9 28 6 5 29
7 25
2
di i
5 32 3 30
2
3
10
ri 14
7 34 1
7
33
35
2
1
12
end
36 1
1 37 1
Rmax=12
31 4
5 Fig. 5. Network of projects [23].
It has been proved that any feasible solution in Ω must be in some feasible subspace after decomposition [28]. 4. One-Point Decomposition-Based Approach for RCPSP 4.1. The framework of OPDA Here, we only select one activity to do decomposition, so we call the approach One-Point Decomposition-Based Approach (OPDA). Fig. 3 is the flow chart of the approach. The detailed procedure is described as the following. Step 1: Calculate the earliest and latest finish times of activities. Step 2: Generate an initial schedule using the SSS. Step 3: Set the makespan of the initial schedule as the deadline of the project and calculate the finish times of activities again. Then, the feasible space Ω can be defined. Step 4: Select an activity for decomposition with some selection strategy. Step 5: Do decomposition on Ω with some decomposition strategy to form feasible subspaces. Step 6: Generate schedules in each feasible subspace respectively using an extended SSS (ESSS) with a strategy on sampling size. Step 7: Find the optimal solution from all the schedules generated in Step 6 and output it. 4.2. The extended SSS Here the classic SSS will be extended for generating schedules in feasible subspaces. We call it the extended SSS (ESSS).
Without loss of generalization, it is assumed that the scheduling procedure will be called in some subspace: Ω′ = [EF1′, LF1′] × [EF2′, LF2′] × … × [EF′,J LF′]. J Similar to the classic SSS, the whole base procedure of ESSS consists of J iterations shown as Fig. 4. In each iteration, an activity is selected by using a priority rule. Its start time and finish time will be decided according to the finish time constraints in the subspace and the constraints on resource availability and precedence relationships. The procedure will be called iteratively until all activities are scheduled. If resource constraints cannot be satisfied during the procedure, it will stop. In Fig. 4, En is an activity set in which activities could be scheduled with precedence constraints in iteration n. Cn is an activity set in which activities have already been scheduled in iteration n. Vj is the priority value of activity j with some rule for selection. Priority rules for selecting activities in each iteration are usually ESj, LS j ; LF j ; r j ; FT j 0 ; SLK which means earliest start time, latest start time, latest finish time, resource consumed in unit time, finish time of the optimal result in initial scheduling of the activity and time lag between earliest start time and latest start time [7]. In this paper we use the priority rule of LFj in ESSS for activity selection. The mode used to select activities to do scheduling randomly is Regret-based Biased Sampling [6],
Table 2 Design of Experiments for the OPDA. Parameters
Case 1
Case 2
Combination of strategies
S1-R1/S1-R2/S1-R3 S2-R1/S2-R2/S2-R3 S3-R1/S3-R2/S3-R3 S4-R1/S4-R2/S4-R3 1000/3000/5000
S1-R1/S1-R2/S1-R3 S2-R1/S2-R2/S2-R3 S3-R1/S3-R2/S3-R3 S4-R1/S4-R2/S4-R3 1000/5000/50000
Sampling size
Z. Liu et al. / Automation in Construction 75 (2017) 1–9
5
a) Case 1
R 9 7 5 3 1
17
3
10
2
4
6
18
13
20
12
8
7
1
15 11
5
16
9 14
19
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42
T
b) Case 2
R
12 10 8 6 4 2
2
5
7
8
4
8
16
24
32
40
20
9
48
56
64
72
11 80
13 88
17
96
104
24
29
21
30
27
23
6 3
1
25 18
15
12
10
22
16
14
10
19 112
28
26 120
128
136
33
31 144
32
152
160
37 34
35
168
36
176
184 190
T
Fig. 6. Optimal solutions for two case.
in which regret value ρ(j) on selection of activity j will be set according to the priority value with the worst sequence among the feasible activities in En, ρð jÞ ¼ maxi∈En φðiÞ−φð jÞ
ð7Þ
Wherein it assumed that a “minimal” priority rule is employed. Then, the probability for activity j to be selected is: ðρð jÞ þ 1Þα Φð jÞ ¼ X ðρðiÞ þ 1Þα i∈E
ð8Þ
Definition 2. Degree is defined as the number of other nodes connected with a node in a graph. Let de1 , de2 , …,deJ be the degree of activities 1, 2 , … , J respectively. Degree of activity j is represented as dej = count(Pj)+count(Sj), where function count(.) is to record the number of elements in a set and Sj is the set of immediate successors of activity j. Definition 3. Central degree is defined as the absolute value of the difference between the number of activities in the set of all the transitive predecessors and the number of activities in the set of all the transitive successors. Let ctj =|count(TPj)−count(TSj)| be the central degree of activity j.
n
In ESSS, double justification is additionally performed to improve the results obtained in the base procedure, which has testified to be an efficient method to improve a feasible solution [29].
According to the above definitions, four strategies are developed for selecting the decomposed activity. They are denoted as S1 , S2 , S3 , S4. n o S1: min jj max pr j
ð9Þ
j∈V
4.3. Strategy for selecting activity to do decomposition Different strategy for selecting an activity to do decomposition would diversify the decomposing operation. We give two definitions firstly.
In (9), the index of transitive relationship for activity j is represented as prj =count(Qj). Activity j that has larger prj is preferred to make decomposition more effective because of precedence constraints among activities. The ties will be broken to choose the activity with a smaller
Table 3 Results comparison between different strategies in sampling size 1000. Rules
Case 1 Success rate
R1
R2
R3
S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4
80% 80% 83.3% 80% 93.33% 93.33% 93.33% 83.33% 53.33% 53.33% 73.33% 53.33%
Case 2 Optimal value
Time(s)
Best
Avg.
Std.
Worst.
Avg.
42 42 42 42 42 42 42 42 42 42 42 42
42.2 42.2 42.2 42.2 42.07 42.07 42.07 42.17 42.5 42.5 42.27 42.5
0.407 0.407 0.379 0.407 0.25 0.25 0.25 0.38 0.57 0.57 0.45 0.57
43 43 43. 43 43 43 43 43 44 44 43 44
0.013 0.0125 0.0198 0.0125 0.0146 0.0166 0.0156 0.0177 0.0109 0.0119 0.0156 0.0114
Success rate
3.33% 3.33% 6.67% 3.33% 6.67% 6.67% 16.67% 6.67% 0 0 3.33% 0
Optimal value
Time(s)
Best
Avg.
Std.
Worst
Avg.
190 190 190 190 190 190 190 190 191 191 190 191
191.733 191.733 191.533 191.733 191.13 191.13 191.2 191.13 191.93 191.93 192.33 191.93
1.2299 1.2299 1.2794 1.2298 0.6814 0.6814 0.9613 0.6814 1.285 1.285 1.539 1.2847
195 195 196 195 194 194 194 194 195 195 196 195
0.0598 0.0593 0.0796 0.0582 0.084 0.0852 0.0822 0.0848 0.0567 0.0535 0.0614 0.0557
6
Z. Liu et al. / Automation in Construction 75 (2017) 1–9
4.4. Strategy for decomposition
Table 4 Results comparison between different strategies in sampling size 3000 for Case 1. Rules
Case 1 Success rate
R1
S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4
R2
R3
Optimal value
100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 96.67% 100.00% 100.00%
Time(s)
Best
Avg.
Std.
Worst.
Avg.
42 42 42 42 42 42 42 42 42 42 42 42
0 0 0 0 42 42 42 42 42 42.033 42 42
0 0 0 0 0 0 0 0 0 0.1826 0 0
42 42 42 42 42 42 42 42 42 43 42 42
0.0354 0.0338 0.0557 0.03537 0.0551 0.0523 0.0536 0.0556 0.0322 0.0458 0.0307 0.0343
sequence number when several activities have the same index of transitive relationship. n o S2: min jj max pr j ; min ct j
ð10Þ
j∈V
Activity j with smaller ctj shows the uniform distribution of its immediate predecessors and immediate successors, which may reduce the solution space. Hence we select activity j with minimum ctj from the activity set in which the activities have the maximum prj, and we choose the activity with smaller sequence number when several activities have the same index shown as (10). S3: min jj max de j
ð11Þ
j∈V
Degree is a measure of the impact on the decomposed time windows in the project network. The larger dej is, the more activity j impacts. We select activity j that has the maximum dej, and we choose the activity with smaller sequence number when several activities have the same index in S3. (
In this approach, the finish time window of the selected activity j will be partitioned into some sub-windows. Here, we take two sub-windows for example. The two sub-windows will be left: [EFj , Δj] and right: [Δj + 1 , LFj]. In this case, there are two rules set to get Δj, which have been proposed in our previous work [26]. R1. Average: Decompose the original time window into two equal sub-windows. ⌈.⌉ is the minimum integer not less than “.”. Δ j ¼ ⌈ L F j −E F j =2þE F j ⌉
R2. Biased: Select the best finish time of activity j generated in the initial scheduling as the decomposition time point. Δ j ¼ FT j 0
ð14Þ
For three-sub-windows: the sub-windows will be set as [EFj , Δj1], [Δj1 + 1 , Δj2] and [Δj2 + 1 , LFj]. We will use an average rule R3 in this case. R3. Decompose the original time window into three equal sub-windows. Δ j1 ¼ ⌈ LF j −E F j =3þE F j ⌉
ð15Þ
¼ ⌈2 L F j −E F j =3þE F j ⌉
ð16Þ
Δ j2
4.5. Strategy on sampling size In numerical experiments for solving RCPSP with various heuristics, the sampling sizes are usually set as 1000, 5000 and 50,000 [8]. One sampling is the procedure for searching one solution. The sampling sizes of feasible subspaces means the number of searching solutions. We use the following strategy to set the sampling proportion of each subspace. If the total sampling sizes is N and the time window of the decomposed activity is partitioned into M sub-windows with the length n1 , n2 , … , nm , … , nM, then the sampling size of the mth feasible subspace is: SSm ¼ N nm =
X
ð17Þ
nm0
m0 ¼1⋯M
!) ð12Þ
S4: min jj max de j þ dei ∑ j∈V
ð13Þ
i∈Q j
5. Case studies
This strategy considers the degree of transitive successors and transitive predecessors of activity j on the basis of S3.
In this section we present the results of numerical experiments. In the analysis of experimental results, we firstly discuss the results by
Table 5 Results comparison between different strategies in sampling size 5000. Rules
Case 1 Success rate
R1
R2
R3
S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4
100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%
Case 2 Optimal value
Time(s)
Best
Avg.
Std.
Worst.
Avg.
42 42 42 42 42 42 42 42 42 42 42 42
42 42 42 42 42 42 42 42 42 42 42 42
0 0 0 0 0 0 0 0 0 0 0 0
42 42 42 42 42 42 42 42 42 42 42 42
0.0629 0.06343 0.0868 0.06343 0.0852 0.0868 0.0842 0.0874 0.049 0.05 0.0722 0.051
Success rate
13.33% 13.33% 53.30% 13.33% 33.30% 33.30% 66.70% 23.33% 10.00% 10.00% 36.67% 10.00%
Optimal value
Time(s)
Best
Avg.
Std.
Worst
Avg.
190 190 190 190 190 190 190 190 190 190 190 190
191.033 191.033 190.567 191.033 190.667 190.667 190.667 191 191.067 191.067 190.767 191.067
0.7184 0.7184 0.8172 0.7183 0.4795 0.6814 0.4795 1.05 0.5833 0.5833 0.8172 0.5833
194 194 194 194 191 191 191 195 193 193 194 193
0.3026 0.3047 0.3853 0.3026 0.404 0.3963 0.0962 0.3805 0.2767 0.2714 0.3614 0.2689
Z. Liu et al. / Automation in Construction 75 (2017) 1–9 Table 6 Results comparison between different strategies in sampling size 50,000 for Case 2. Rules
Case 2 Success rate
R1
R2
R3
S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4
93.33% 93.33% 100% 93.33% 100.00% 100.00% 100.00% 100.00% 76.67% 76.67% 100.00% 76.67%
Optimal value
Time(s)
Best
Avg.
Std.
Worst.
Avg.
190 190 190 190 190 190 190 190 190 190 190 190
190.0667 190.0667 190 190.0667 190 190 190 190 190.233 190.233 190 190.233
0.2537 0.2537 0 0.2537 0 0 0 0 0.4302 0.4302 0 0.4302
191 191 190 191 190 190 190 190 191 191 190 191
3.0067 2.9822 3.395 3.0217 4.39 4.3821 3.739 4.494 2.764 2.717 3.547 2.698
using the OPDA with different strategies. Then we compare results of the approach with those of some other algorithms for the same cases. In this experiment, we use Visual Studio 2008 for coding and the Windows 7 (CPU is 2.50 GHz and RAM is 4.00GB) as the operating environment.
7
5.2.1. Results comparison between different strategies First of all, let us discuss the performance of the approach with different strategies that we choose (see Tables 3–6). Table 3 shows that success rates of experiments in which the feasible time window is partitioned into two sub-windows (R1 and R2) are significantly higher than that of R3 when sampling size is small. The best strategy we proposed is R2. When sampling size and decomposition strategy of activity are the same, selection strategy for activity –S3 is the best one, which has the highest success rate and the lowest average result. For Case 1, Table 4 shows that success rate of different experiments almost reach 100% when sampling size is 3000, in addition to the combination of strategies S2-R3. When sampling size is 5000, the success rate is up to 100% and optimal values are all the same for all experiments as Table 5 shows. For Case 2, when sampling size is 1000 and 5000, experimental results are not satisfactory because the number of activities is more than that of Case 1 and the activity network is more complex. Table 6 shows that some of success rates are 100% when sampling size is 50,000. Computational times are additional characteristics used to evaluate the performance of the OPDA. Tables 3–6 show that there is no significant differences in computational times when the decomposition strategy is the same, while the computational times of the decomposition strategy R3 are significantly less than that of R2 in most cases and are near to those of R1.
5.1. Experimental design The experiments have been performed on two real construction case studies adapted from Jun and El-Rayes [30] and Chen and Weng [12], the same with those in [23]. The two cases fully meet the demand of the data the approach needs. Fig. 5 shows the precedence relationships of the network projects. Cases 1 and 2 consists of 20 activities and 37 activities respectively. Two cases both have one renewable resource, where Case 1 has a maximum availability limit of 9 per day and Case 2 has 12 per day. The duration of each activity is noted above the corresponding circle node. The amount of required resources is indicated below the circle node. The precedence constraints among activities are described by using arrow lines [23]. The purpose we apply the OPDA for RCPSP is minimizing project duration while satisfying all constraints. The basic framework and search algorithm of the OPDA combine with the strategies for selecting activity S1–S4, the strategies for decomposition R1–R3 and strategy on sampling size proposed in chapter 4.3 to 4.5. We have carried on the experiments for several different combination strategies. For example, S1-R1 denotes strategy which choose activity with the maximal index of transitive relationship to decompose and the original time window is partitioned into two equal sub-windows. The design of the experiments is shown in Table 2 in order to obtain comprehensive experimental results of the OPDA. The total sampling sizes are usually 1000, 5000 and 50,000. However, we find that 5000 of sampling size has made success rate to 100% no matter which strategy is used in Case 1. So we set the total sampling size in Case 1 as 1000, 3000 and 5000.
5.2.2. Results comparison between different algorithms To verify the effectiveness of the OPDA, we compare its performance with those of other four different algorithms. These four algorithms include the original DE [31], Genetic Algorithm (GA) [12], CDE and FCDE [23]. The results of optimal value and computational times of other models from [23] are listed in Table 7. We choose the result of the least computational time to compare with other models when success rate is up to 100%. For Case 1, we choose the result of strategy S3-R3 with sampling size 3000. For Case 2, we choose the result of strategy S3-R3 with sampling size 50,000. Table 7 shows that the performance of OPDA is competitive. In terms of success rate and average results, comparing with other models, the performances of OPDA for RCPSP are both the best for Cases 1 and 2. The OPDA for RCPSP found optimal solutions with highest rate of success: 100% and 100%, lowest fitness solution: 42 and 190 and standard deviation: 0 and 0 in all executions of Cases 1 and 2, respectively. Although the results of the algorithms are not running on the same computer, the speed of OPDA for RCPSP is also competitive. It can be concluded that the OPDA for RCPSP we proposed is a competitive approach from the above comparison.
Table 7 Results comparison between OPDA for RCPSP and benchmarked algorithms. Performance measurement
GA
DE
CDE
FCDE
OPDA for RCPSP
Case 1
70% 42 42.51 0.85 44 5.67 8.91 2.20 13.23 60% 190 191.33 2.07 198 45.67 92.78 16.90 136.67
73.33% 42 42.5 0.86 44 2.34 5.57 3.78 12.91 70% 190 191.27 2.02 196 8.87 62.21 34.86 102.6
93.33% 42 42.07 0.25 43 6.67 12.45 3.46 16.08 80% 190 190.47 1.01 194 31.5 200.45 79.75 275.02
100% 42 42 0 42 6.77 10.91 2.38 14.01 93.33% 190 190.13 0.51 1.92 71.89 147.16 40.91 250.65
100.00% 42 42 0 42 0.015 0.0307 0.0096 0.047 100.00% 190 190 0 190 2.277 3.547 0.972 5.148
5.2. Result comparisons Fig. 6 shows the corresponding optimal solution schedule by using the OPDA for both cases. It is worthy pointing out that Fig. 6 shows just one of optimal solutions for each case. The optimal objectives of two cases are 42 and 190 which we can use in the analysis of experiments results. In order to evaluate the effectiveness and stability of the approach proposed, the performance of the OPDA for RCPSP is expressed in terms of success rate, best result found (best), average result (avg.), standard deviation (std.), and worst result (worst) after 30 runs. The success rate denotes the proportion of optimal solution obtained. The best results and worst results demonstrate the capacity of the approach to find the optimal solution. Average and standard deviation are two additional characteristics used to describe solutions quality.
Success rate Optimal value
Comp. time(s)
Case 2
Success rate Optimal value
Comp. time(s)
Best. Avg. Std. Worst. Best. Avg. Std. Worst. Best. Avg. Std. Worst. Best. Avg. Std. Worst.
8
Z. Liu et al. / Automation in Construction 75 (2017) 1–9
6. Conclusion RCPSP is a common hard problem to solve in construction project management. An effective approach with feasible space decomposition is proposed for it where a decomposition operator is employed to partition the feasible space of the original problem into some subspaces and then these subspaces are searched with an extended serial scheduling scheme, which is presented in a more systematic way than that in our previous work [26]. Based on the general framework of the approach, we have designed 4 strategies for selecting activity to do decomposition, 3 strategies for decomposition and one strategy on sampling size in various subspaces where these three kinds of strategies are not clearly defined in the procedure in [26]. We used two real construction projects to validate the effectiveness of the OPDA for RCPSP. The experiments verify the approach to diminish the searching space and reduce the amount of calculation in the process of search to improve the efficiency of solving the RCPSP. According to the experiments, the sampling size has an influence on the success rate of the solutions and solving efficiency. In terms of success rate, the strategy of decomposing the time window of activity based on the initial schedule is better than that of decomposing the original time window into three equal sub-windows, while it is opposed to compare the strategy for computational times. The strategy based on degree for selecting activity to do decomposition is the best one. It is proven that the approach proposed in this paper is fast and efficient. In addition to the strategy for selecting activity, strategy for decomposition and strategy on sampling size proposed in this paper, some other strategies can be designed and more activities can be selected to do decomposition to improve the efficiency of the approach in the future research. The decomposition-based approach is a framework for solving the RCPSP, which can be combined with various heuristics or metaheuristics in feasible subspace to solve the problem and computational experiments are also worthy of further attention. Moreover, another extension of this work is that distributed computing would be induced into the framework based on the approach by using different processors to do searching in various feasible subspaces. In this work, experiments are conducted on two real construction cases which are still small size and it will be meaningful to do more experiments on various cases with small, medium and large size (just like the instances in PSPLIB [8] or cases collected from construction projects of various sizes). The problem discussed in this work is a classic resource-constrained project scheduling problem where there is only Finish-Start (FS) relationship among activities and the resource are available all through the duration of project. However, there are more complex types of relationships among activities in practice, e.g. Start-Start (SS), Start-Finish (SF), Finish-Finish (FF) and FS relations with leads/lags, maximal precedence relations. There are usually time windows or calendars constraints on activities or resources in the project. Besides minimizing completion time, managers may take other objectives into consideration such as maximizing net present value, minimizing cost of the project. Many more cases of project scheduling problems can be found in [32,33]. The OPDA proposed in this paper cannot be utilized directly to solve these various project scheduling problems, but it provides a way to do feasible space decomposition and to embed other approaches into the procedure for solving these problems. So, the approaches based on feasible space decomposition for these practical problems are also worth studying. References [1] J. Blazewicz, J.K. Lenstra, A.H.G. Rinnooy Kan, Scheduling subject to resource constraints: classification and complexity, Discret. Appl. Math. 5 (1) (1983) 11–24, http://dx.doi.org/10.1016/0166-218X(83)90012-4. [2] H. Xu, X. Wang (Eds.), Optimizations in Project Scheduling: A State-of-Art Survey, in Optimization and Control Methods in Industrial Engineering and Construction, Springer, Netherlands, ISBN: 978-94-017-8043-8 2014, pp. 161–177, http://dx.doi. org/10.1007/978-94-017-8044-5_10.
[3] C. Schwindt, J. Zimmermann, Handbook on Project Management and Scheduling, vol. 1, Springer International Publishing, 2015, ISBN 978-3-319-05442-1 http://dx. doi.org/10.1007/978-3-319-05443-8. [4] P. Brucker, S. Knust, A. Schoo, O. Thiele, A branch and bound algorithm for the resource-constrained project scheduling problem, Eur. J. Oper. Res. 107 (2) (1998) 272–288, http://dx.doi.org/10.1016/S0377-2217(97)00335-4. [5] L. Bianco, M. Caramia, An exact algorithm to minimize the makespan in project scheduling with scarce resources and generalized precedence relations, Eur. J. Oper. Res. 219 (1) (2012) 73–85, http://dx.doi.org/10.1016/j.ejor.2011.12.019. [6] R. Kolisch, Serial and parallel resource-constrained project scheduling methods revisited: theory and computation, Eur. J. Oper. Res. 90 (2) (1996) 320–333, http://dx.doi.org/10.1016/0377-2217(95)00357-6. [7] R. Kolisch, Efficient priority rules for the resource-constrained project scheduling problem, J. Oper. Manag. 14 (3) (1996) 179–192, http://dx.doi.org/10.1016/02726963(95)00032-1. [8] R. Kolisch, S. Hartmann, Experimental investigation of heuristics for resourceconstrained project scheduling: an update, Eur. J. Oper. Res. 174 (1) (2006) 23–37, http://dx.doi.org/10.1016/j.ejor.2005.01.065. [9] R. Kolisch, A. Drexl, Adaptive search for solving hard project scheduling problems, Nav. Res. Logist. 43 (1) (1996) 23–40 (http://dx.doi.org/10.1002/(SICI)15206750(199602)43:1%3C23::AID-NAV2%3E3.0.CO;2-P). [10] R. Zamani, A competitive magnet-based genetic algorithm for solving the resourceconstrained project scheduling problem, Eur. J. Oper. Res. 229 (2) (2013) 552–559, http://dx.doi.org/10.1016/j.ejor.2013.03.005. [11] S.U. Kadam, S.U. Mane, A Genetic-Local Search Algorithm Approach for Resource Constrained Project Scheduling Problem, The 2015 International Conference on Computing Communication Control and Automation, Pune, India, 26–27, Feb. 2015 841–846, http://dx.doi.org/10.1109/ICCUBEA.2015.168. [12] P. Chen, H. Weng, A two-phase GA model for resource-constrained project scheduling, Autom. Constr. 18 (4) (2009) 485–498, http://dx.doi.org/10.1016/j.autcon.2008. 11.003. [13] G. Koulinas, L. Kotsikas, K. Anagnostopoulos, A particle swarm optimization based hyper-heuristic algorithm for the classic resource constrained project scheduling problem, Inf. Sci. 277 (2014) 680–693, http://dx.doi.org/10.1016/j.ins.2014.02.155. [14] M. Anantathanvit, M. Munlin, Radius Particle Swarm Optimization for Resource Constrained Project Scheduling, The 16th International Conference on Computer and Information Technology(ICCIT), Khulna, Bangladesh, 8–10, March 2014 24–29, http://dx.doi.org/10.1109/ICCITechn.2014.6997330. [15] K.P. Anagnostopoulos, G.K. Koulinas, A simulated annealing hyper heuristic for construction resource levelling, Constr. Manag. Econ. 28 (2) (2010) 163–175, http://dx. doi.org/10.1080/01446190903369907. [16] H. Li, H. Zhang, Ant colony optimization-based multi-mode scheduling under renewable and nonrenewable resource constraints, Autom. Constr. 35 (2013) 431–438, http://dx.doi.org/10.1016/j.autcon.2013.05.030. [17] K. Ziarati, R. Akbaria, V. Zeighamib, On the performance of bee algorithms for resource-constrained project scheduling problem, Appl. Soft Comput. 11 (4) (2011) 3720–3733, http://dx.doi.org/10.1016/j.asoc.2011.02.002. [18] M. Mobinia, Z. Mobinib, M. Rabbania, An Artificial Immune Algorithm for the project scheduling problem under resource constraints, Appl. Soft Comput. 11 (2) (2011) 1975–1982, http://dx.doi.org/10.1016/j.asoc.2010.06.013. [19] C. Fang, L. Wang, An effective shuffled frog-leaping algorithm for resourceconstrained project scheduling problem, Comput. Oper. Res. 39 (5) (2012) 890–901, http://dx.doi.org/10.1016/j.cor.2011.07.010. [20] A. Agarwal, S. Colak, S. Erenguc, A neurogenetic approach for the resourceconstrained project scheduling problem, Comput. Oper. Res. 38 (1) (2011) 44–50, http://dx.doi.org/10.1016/j.cor.2010.01.007. [21] L. Wang, C. Fang, A hybrid estimation of distribution algorithm for solving the resource-constrained project scheduling problem, Expert Syst. Appl. 39 (3) (2012) 2451–2460, http://dx.doi.org/10.1016/j.eswa.2011.08.095. [22] Z. Liu, L. Xiao, J. Tian, An activity-list-based nested partitions algorithm for resourceconstrained project scheduling, Int. J. Prod. Res. 54 (16) (2016) 4744–4758, http:// dx.doi.org/10.1080/00207543.2015.1065353. [23] M. Cheng, D. Tran, Y. Wu, Using a fuzzy clustering chaotic-based differential evolution with serial method to solve resource-constrained project scheduling problems, Autom. Constr. 37 (2014) 88–97, http://dx.doi.org/10.1016/j.autcon.2013.10.002. [24] J.F. Benders, Partition procedures for solving mixed variables programming problems, Numer. Math. 4 (1962) 238–252, http://dx.doi.org/10.1007/s10287-0040020-y. [25] H. Li, K. Womer, Optimizing the supply chain configuration for make-to-order manufacturing, Eur. J. Oper. Res. 221 (1) (2012) 118–128, http://dx.doi.org/10. 1016/j.ejor.2012.03.025. [26] J. Tian, Z. Liu, W. Yu, An Approach with Decomposition on Time Windows for Resource-constrained Project Scheduling, The 26th Chinese Control and Decision Conference, Changsha China, May 31, 2014–June 2, 2014 4897–4903, http://dx.doi.org/ 10.1109/CCDC.2014.6853050. [27] Z. Liu, H. Wang, Heuristic algorithm for RCPSP with the objective of minimizing activities' cost, J. Syst. Eng. Electron. 17 (1) (2006) 96–102, http://dx.doi.org/10.1016/ S1004-4132(06)60018-2. [28] W. Yu, An Approach with Nested Partition for Two Kinds of Resource-Constrained Project Scheduling Problem, Huazhong University of Science and Technology, Wuhan China, 2013 (Master Thesis, In Chinese). [29] V. Valls, F. Ballestin, S. Quintanilla, Justification and RCPSP: a technique that pays, Eur. J. Oper. Res. 165 (2) (2005) 375–386, http://dx.doi.org/10.1016/j.ejor.2004.04.008. [30] D.H. Jun, K. El-Rayes, Multi-objective optimization of resource scheduling in construction projects, Construction Research Congress 2009, Seattle, United States 2009, pp. 806–815, http://dx.doi.org/10.1061/41020(339)82.
Z. Liu et al. / Automation in Construction 75 (2017) 1–9 [31] P. Kenneth, R.M. Storn, J.A. Lampinen, Differential Evolution: a Practical Approach to Global Optimization, Springer-Verlag, Berlin Heidelberg, 2005, ISBN 978-3-54031306-9http://dx.doi.org/10.1007/3-540-31306-0. [32] M. Hajdu, Point-to-point versus traditional precedence relations for modeling activity overlapping, Procedia Eng. 123 (2015) 208–215, http://dx.doi.org/10.1016/j. proeng.2015.10.079.
9
[33] W. Herroelen, E. Demeulemeester, B. De Reyck, A classification scheme for project scheduling, Project Scheduling: Recent Models, Algorithms and Applications, Springer, US, ISBN: 978-1-4613-7529-6 1999, pp. 1–26, http://dx.doi.org/10.1007/ 978-1-4615-5533-9_1.