Automation in Construction 111 (2020) 103052
Contents lists available at ScienceDirect
Automation in Construction journal homepage: www.elsevier.com/locate/autcon
Memetic algorithm for solving resource constrained project scheduling problems
T
Humyun Fuad Rahman , Ripon K. Chakrabortty, Michael J. Ryan ⁎
Capability Systems Centre, School of Engineering and IT, University of New South Wales, Canberra, ACT 2610, Australia
ARTICLE INFO
ABSTRACT
Keywords: Project scheduling Resource constrained Makespan Genetic algorithm Memetic algorithm
The resource constrained project scheduling problem (RCPSP) has a wide variety of practical applications in construction, manufacturing, project planning, and other areas. Since the 1960s many optimization algorithms have been proposed to solve this NP-hard problem, and their performances are evaluated in well-known test problems with different complexities. Although it is desirable to find an algorithm which can provide promising solutions with reasonable computational efforts for any problem under consideration, no single algorithm can meet that condition. To deal with this challenge, we present a genetic algorithm based memetic algorithm (MA) for solving RCPSP. The algorithm is initiated by a critical path-based heuristic and a variant of the Nawaz, Enscore, and Ham (NEH) heuristic. The algorithm involves a similar block order crossover and a variable insertion based local search. An automatic restart scheme is also presented which assists the algorithm to escape from local optima. In addition, a design-of-experiment (DOE) method is used to determine the set of suitable parameters for the proposed MA. Numerical results, statistical analysis and comparisons with state-of-the-art algorithms demonstrate the effectiveness of the proposed approach.
1. Introduction The resource constrained project scheduling problem (RCPSP) is one of the important scheduling problems that attracts the attention of researchers and practitioners due to its computational complexity (known to be NP-Hard) [1,2] and several real-life applications such as in construction industries, automobile manufacturing, steel production, assembly production scheduling, and job-shop environments [3]. The RCPSP can be defined as the need to minimize the duration of a project (makespan) while satisfying relevant constraints. Normally, a project consists of (n + 2) activities, i.e. {1, … j …, n + 2}, where the first and the last activity of the project are dummy activities. Each activity j requires either some or all k renewable resources, i.e. {r1j, r2j …, rkj} at the same or different level at time s, and for the duration dj. Rk is the maximum availability of the kth resource. Note that, duration and resource utilization of a dummy activity are both 0. Finally, each activity j needs to follow its precedence constraint, i.e. an activity cannot be started unless all its predecessors, pred(i) are completed. Generally, a mathematical model of the single mode RCPSPs can be expressed as follows. Decision variable:
⁎
jth activity starts to process at time t ajt = {1,if 0,otherwise
min Cmax =
T t=0
a(n + 2) t . (t + dn+ 2)
(1)
n
(2)
subject to: T
ajt = 1
t=0 T
t . ait
t=0
ajt
n+2
t
j=1
t dj + 1
{0, 1}
i T t=0
(t + dj ). ajt
rkj. ajt
Rk
k
i
n and
K and
t
j T
pred (i)
(3) (4) (5)
The objective function is the minimization of makespan, Cmax (Eq. (1)). Eq. (2) ensures that an activity can be executed only once. Eq. (3) ensures that each activity j cannot be started unless all its predecessors have been completed. Eq. (4) ensures that an activity can be started when its required renewable resources (such as workforce, machines, tools or equipment) are available. Over the years, exact techniques such as branch and bound [4–6], branch and cut [7], and the event based approach [8] have been proposed for the optimal solution of RCPSPs. Due to computational
Corresponding author. E-mail address:
[email protected] (H.F. Rahman).
https://doi.org/10.1016/j.autcon.2019.103052 Received 4 March 2019; Received in revised form 24 November 2019; Accepted 7 December 2019 0926-5805/ © 2019 Elsevier B.V. All rights reserved.
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
complexity and NP-hard problems, these techniques can only solve small problems. Recently, Coelho and Vanhoucke [9] proposed a branch and bound method, which dynamically selects the lower bounds for solving small and large RCPSPs problem instances. However, this approach is computationally expensive. Thus, researchers have focused on developing heuristics and meta-heuristic techniques, such as genetic algorithm (GA) [10], differential evolution (DE), ant colony algorithm (ACO), and particle swarm optimization (PSO) for finding optimal or near-optimal solutions for RCPSPs within reasonable computational times. A detail review of the heuristic and metaheuristic algorithms is presented in Section 2 which reveals the following gaps in the literature.
2. Related work on solving RCPSPs Over the last few decades there has been a growing literature in the field of heuristic and meta-heuristics for solving RCPSPs. A review of meta-heuristic algorithms for solving RCPSPs can be found in [12]. Explanation of some selected state-of-the art algorithms is provided below. 2.1. Evolutionary algorithms Alcaraz and Maroto [15] proposed a GA-based approach for solving RCPSP utilizing three crossover operators (i.e. precedence set, forwardbackward and two-point forward-backward) and two mutation operators: (1) exchange each activity with its following one and (2) randomly move the position of each activity to another one. Among these operators, the forward-backward crossover and the second mutation operator outperforms other variants. However, this algorithm is still far away from the optimal or best-known solutions. A decomposition-based GA (DBGA) was proposed by Debels and Vanhoucke [16] where the algorithm was initiated with random solutions and a serial generation scheme was used to convert the infeasible schedules into a feasible solution. The algorithm decomposes the problem into subproblems and uses a modified version of peak crossover operator [16] for competitively solving RCPSPs. The algorithm shows competitive performance for the PSPLIB problem instances. In the GA proposed by Valls et al. [17], a peak crossover was proposed to combine the good parts of a chromosome and a double justification operator was used as a local search operator. The algorithm shows promising performance to other algorithms reported in that paper, for 60 and 120 activity instances from the PSPLIB benchmark. However, this algorithm is outperformed by more-recent algorithms. Mendes et al. [18] proposed a GA with random key representation of chromosomes, and the schedules were constructed by a heuristic rule. As the reproduction operator of the GA, they used a uniform and single point crossover and a mutation operator. Although their approach showed competitive solutions, it could not outperform the stateof-the art algorithms. Gonçalves et al. [19] proposed a similar approach which also could not outperform the state-of-the art algorithms and suffered from poor convergence rate. Zamani [20] proposed a magnet crossover operator-based GA (GAMBX), which was an enhanced version of two-point crossover operator. In that crossover operation, one contiguous part from the first parent and two contiguous parts from the second parent's genotype are preserved. The performance of the algorithm was enhanced by a local search scheme. Zamani [21] proposed GA and an implicit enumeration search technique (IEST) based algorithm, where the algorithm initiated with IEST and then the set of solutions were improved by GA. Although the algorithm showed promising results, it is far away from the bestknown solutions. Agarwal et al. [22] proposed GA and neural network (NN) based approach for solving RCPSPs where a NN approach is used as a local search. However, performance of the algorithm was inferior to other competitive techniques. Anagnostopoulos and Koulinas [23] proposed a genetic hyper heuristic algorithm where six heuristic were used in the upper level and eight heuristic were used in the lower level. The algorithm was not compared with other algorithms. Using the same algorithmic framework, the same authors proposed another algorithm by replacing GA with a greedy randomized adaptive search procedure [23]. Cheng et al. [24] proposed a fuzzy clustering and a chaotic approach based DE algorithm (FCDE) and solved two real case studies. In that algorithm, a logistic map generated chaotic sequence was then converted to feasible schedules by a serial generator. Although the algorithm showed competitive results, it was tested for small number of
• No single approach is suitable for solving all kinds of RCPSPs (from •
a small number of activity instances to larger numbers of activities) with reasonable solution quality and computational time. Even though some of those approaches have shown better performance, their performance is however far from the lower bounds or optimal solutions (if known).
The first point is the consequence of the no-free-lunch theorem [11] and the second point relates to the nature of NP-Hard problems. Hence, neither of the gaps can be closed and therefore, the best exact technique can solve at most 60 activities for RCPSPs, where the instances are not highly constrained by resources [12]. Thus, there is scope to design improved heuristic or meta-heuristic algorithms that may be able to solve RCPSPs effectively. In this study, we address this gap by developing an efficient GA-based memetic algorithm (MA) to handle the entire spectrum of single-mode RCPSPs with makespan minimization as the objective. More specifically, the key contributions of this study can be summarized as follows.
• In order to initialize the proposed algorithm with promising in-
• • •
dividuals, an initialization method is proposed on the basis of the Nawaz, Enscore, and Ham heuristic (NEH) [13], which is adopted from application to the flow shop scheduling problem. This NEH heuristic also has embedded the well-known critical path-based heuristic, and some efficient priority rules from assembly line balancing problems. A modified crossover operator based on similar block order crossover (SBOX) is proposed to keep the block of activities in the same point of the solution and explore more effective solutions. To avoid being stuck in local optima, an automated restart mechanism has been implemented. Further to enhance the local search ability of MA, a local search approach based on variable insertion neighborhood search is also proposed. Finally, a duplication scheme is presented which minimizes the duplicity of generated schedules and improves diversity.
The efficiency of the proposed approach is evaluated by solving 2040 problem instances available in the standard project scheduling library (PSPLIB) for 30, 60, 90, and 120 activities [14]. Moreover, 1800 instances for RG30, 480 instances for RG300 from http://www. projectmanagement.ugent.be/?q=research/data/RanGen, and some real-world case studies are also solved to verify this proposed approach. The reminder of this paper is organized as follows. Section 2 provides a background on the existing literature on heuristics and metaheuristic techniques for RCPSPs. Section 3 gives a detail on the proposed MA. Parameter tuning and a discussion on the experimental results is presented in Section 4. Section 5 describes the importance of the proposed approach for solving construction project scheduling problems, while Section 6 provides some conclusions and highlights future research directions.
2
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Fig. 1. Flowchart describing the proposed framework of MA.
decoded by serial schedule generation scheme. In addition, each particle was improved by a local search. Although the algorithm shows promising results for solving PSPLIB instances, it suffers from low convergence rate. Ziarati et al. [31] developed three variants of bee algorithms for tackling RCPSPs, namely: (i) bee algorithm (BA), (ii) artificial bee colony (ABC), and (iii) bee swarm optimization (BSO). Each of these algorithms were enhanced by three different local search techniques. Although BSO with FBI approach showed better performance than other two variants, it was inferior to state-of-the-art algorithms. In [32], an ACO, scatter search (SS), and a local search-based hybrid algorithm was proposed to tackle RCPSPs. Firstly, the algorithm was initialized by ACO and then solutions were transferred to SS. The algorithm showed promising performances for 120 activities, but they were not competitive for 30 and 60 activities.
tested problems and it is therefore difficult to judge its performance against other competitive algorithms. Fang and Wang [25] proposed GA and DE fused shuffled frog-leaping algorithm (SFLA) where a virtual frog was encoded as the extended activity list (EAL) and decoded by a serial schedule generation process. The algorithm was initialized by priority rules and the regret-based sampling method and the population was evolved through a resource-based crossover operator. Diversity of SFLA was maintained by regular shuffling of the virtual frogs and a forward-backward improvement and permutation-based local search. Although the algorithm showed inferior performances for the problem instances with 30 and 60 activities, it showed promising performances for the problem instances with 120 activities. Recently, Elsayed et al. [26] proposed a two-operator based consolidated evolutionary algorithm in which meta-heuristics are selected self-adaptively.
2.3. Other approaches
2.2. Swarm intelligence based algorithms
To tackle RCPSPs, tabu search based approaches were proposed by Klein [33] and Palpant et al. [34]. Bouleimen and Lecocq [35] developed a simulated annealing algorithm for solving the same problem. Wang and Fang [36] proposed an estimation of distribution algorithm where the solution was encoded by EAL and decoded by a serial schedule generation scheme to generate feasible schedules. The algorithm was enhanced by a local search, but it did not provide competitive solutions while solving PSPLIB instances.
Zhang et al. [27] proposed two PSO variants, where the first algorithm used priority-based solution representation and the second used serial method with permutation-based representation to convert the particles into feasible solutions. However, recently these algorithms are outperformed by recent PSO-based algorithms [3,28]. Later, Zhang et al. [29] extended this algorithm with parallel method to generate feasible solutions but it is hard to judge their algorithm's competitiveness since they tested their algorithm with small test problems. Jia and Seo [28] introduced an improved PSO where particles were represented by a rank-priority technique and the solutions were enhanced by a double justification based local search technique. This algorithm showed superior performances than other PSO variants for solving PSPLIB problem instances. However, it is still inferior to other algorithms previously reported in the literature. In Koulinas et al. [30], a PSO based hyper-heuristic was proposed where eight heuristics were used in lower level. Each particle was encoded by random keys and
3. Proposed GA based MA As the aim of this study is to provide an efficient methodology to solve RCPSPs with makespan minimization as the objective, a genetic algorithm (GA) based MA has been proposed to solve the problem. The genetic algorithm is an evolutionary algorithm proposed by Holland [37,38], and has been applied for solving complex engineering
3
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
optimization problems [37–39]. A genetic algorithm is a convenient choice for RCPSPs given its achievements in all sorts of optimization domains [37,38]. The GA concept considers a population of a set of random solutions, called chromosomes. These chromosomes are evolved by a natural evolution process, namely selection, crossover, and mutation operations to search the best chromosome (i.e. solution) with best fitness. Furthermore, the search process can be enhanced by local search. This framework (i.e. GA with local search process) is known as MA. The search process of MA continues until the stopping criteria is met. The detail framework of the proposed MA is presented in Fig. 1. Following this figure, the detailed structure of the proposed MA is discussed in the following section.
permutation flow shop scheduling problem (PFSP) and its variants [42]. Due to similarity in the attributes of these problems, this heuristic has been adopted to solve RCPSPs. However, unlike PFSPs, RCPSP has precedence and resource constraints, and therefore the original NEH heuristic cannot be employed to solve RCPSPs. Hence, we have proposed a modified NEH heuristic algorithm for solving RCPSPs. The proposed modified NEH heuristic is as follows. In the first stage of original NEH heuristic, all activities (or jobs) are sorted by the longest processing time rule. However, in RCPSPs each activity must occupy single or multiple resources for a certain duration. Hence, in the first stage of the algorithm we sort all the activities based on both processing time and resource utilization. Considering precedence constraints, the generated schedule may be infeasible, which needs to be repaired to make it feasible. Next, a partial schedule is generated by inserting jth activity in all possible positions while considering its precedence relations. The pseudocode of the modified NEH heuristic algorithm is shown in Algorithm 1.
3.1. Solution encoding and population initialization A chromosome of a GA can be represented as an integer, binary, or real value. For solving RCPSP, solutions can be represented by parallel or serial schedule generation schemes. In this study, a chromosome represents a solution by a serial schedule generation scheme, where the
Algorithm 1. Modified NEH heuristic for RCPSPs.
sequence of activities follows a start-to-finish pattern. Traditionally, a GA starts with a set of random population. However, with random initialization, a GA may not converge to quality solutions within a reasonable computational time for solving complex problems [38]. Hence, we propose a non-random initialization in the following way: first two members of the initial population of the proposed MA are generated by two proposed heuristics, namely modified NEH and critical path method (CPM) based heuristic. The following six priority rules are also applied as the following six members of the initial population. Among those rules, maximum rank positional weight and maximum total number of follower tasks have already been implemented for solving RCPSPs [40]. The remaining four rules are adopted from assembly line balancing problems (ALBPs) [41]: maximum activity time, minimum activity time, minimum inverse positional weight, and minimum total number of predecessors activities. The reason to adopt these rules are: (1) these rules are effective in solving ALBPs and (2) these rules are simple and, can be applied for solving RCPSPs without any modification. Finally, the remaining members of the initial population are randomly generated.
3.1.2. Critical path method (CPM) based heuristic Delaying activities which are on the critical path (i.e., have zero slack time) may delay the schedule. Hence, the CPM heuristic identifies the activities on the critical path and schedules them as early as possible. The generated schedule is then improved by the insertion process by the fourth and fifth stage of the modified NEH heuristic. Fig. 2 presents a project network of eight activities. From the figure activities 1, 2, 4, 7, and 8 are critical activities. These activities are placed as soon as possible, and the generated partial sequence is 1-2-4-7-8. The remaining or non-critical activities are inserted one by one such that critical activities are placed as soon as possible while satisfying the precedence relationships. For example, consider activity 5 needs to be inserted into the partial schedule. Since activity 5 is the predecessor of activity critical activity 7, in the activity sequence it needs to be placed before activity 7. After inserting all the non-critical activities in the sequence, the final feasible activity sequence is 1-2-4-3-5-7-6-8 with makespan 29. Finally, after applying NEH-based insertion process the final makespan of the schedule is reduced to 23 (with sequence 1-3-6-52-4-7-8). The pseudo code of the CPM heuristic is shown in Algorithm 2. The relevant data of the example problem is available in Table A1 in the Appendix A.
3.1.1. Modified NEH heuristic The NEH heuristic is an effective algorithm for solving the
4
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Algorithm 2. CPM heuristic for RCPSPs.
2. Since precedence constraints are not violated within a block, maintaining the blocks in crossover process can reduces the violation of predecessor-successor relationships.
3.2. Selection operator and generational scheme In the proposed algorithm, a classical tournament selection process is employed for reproduction operations. After reproduction operations, the newly generated candidate solution replaces the worst member of the current generation if its makespan is better than that member. It is important to note that, in tightly constrained combinatorial optimization problems such as RCPSPs, after a few iterations many duplicate individuals are generated, which reduces the diversity of an algorithm and it converges to a local optimum. To avoid this problem, a candidate solution replaces the worst member in the generation if it is non-duplicate or unique. Note that, in RCPSPs there can be many different activity sequences with the same makespan (i.e. fitness). So, duplicate individuals that have same activity sequence and the sequence of activities of each member in the current generations are checked to identify duplicate individuals.
In SBOX, block of activities from both parents are identified and inserted directly to the same positions of each offspring. Then, the activities prior to the random crossover point from each parent are directly inserted to each offspring and finally, the missing activities of each offspring are inherited from the other parent. The motivation behind selecting SBOX over few other similar one-point crossover operators (i.e., similar job order crossover, similar point order crossover) are outlined in Section 4.1 (i.e., Fig. 6). Due to precedence constraints, step 2 and 3 of SBOX (Algorithm 3) operator cannot be used directly to RCPSPs. Hence, in step 2 and step 3 of modified SBOX, activities are inserted from parents to offspring in sequence while checking the predecessor-successor relationships and an activity is placed in an activity sequence only if the precedence constraints are not violated. An example of modified SBOX is shown in Fig. 3. Pseudo codes for that modified SBOX are also highlighted in Algorithm 3. From the Fig. 3, activity block 7-6-8 is directly inserted at the same position of both offspring without any modification. Activity 1, 2, 3 from parent 1 are inserted to offspring 1 and activity 1, 2, 4 are inserted from parent 2 to offspring 2. Finally, missing elements of both offspring are inherited from other parents, (i.e. activities 3 and 5 are inserted to offspring 1 from parent 2 and activity 4 and 5 are inserted to offspring 2 from parent 1) while considering precedence constraints as shown in Fig. 2.
3.3. Similar block order crossover operator (SBOX) and shift mutation In GA, the crossover operator plays a vital role in reproduction operation [43]. Our proposed MA utilizes a modified single point similar block order crossover (SBOX) [44] designed for flow shop scheduling problems for two reasons: 1. Preliminary experiments show that, with the evolution process there are many blocks of activities are generated within a sequence. These blocks are often broken apart by traditional single point crossover operation which results worst offspring.
Algorithm 3. Modified SBOX process.
5
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
In our proposed MA, shift mutation [45,46] is employed as mutation operator, since it shows promising performance in the preliminary experiments. In this mutation operation, an activity (except the first and last activity) from the activity sequence is randomly extracted and reinserted in another randomly selected position while maintaining the precedence relationships.
[PMjk ]n + 2 × n + 2 =
3 0 0 0 1 1 0 2 1 0 0 1 0 0 0
1 1 0 2 0 1
3.4. Self-restart mechanism
0 1 0 2 0
0 0 0 0 3
and
[BMxy ]n + 2× n + 2 =
1 0 1 0 1 1
0 1 0 2 0 0 0 0 Then, ρ = 0.267 and ω = 0.36, and final diversity score of three individuals are ∂ = 0.3135. Further, an elitism strategy is used to save the best individual from the current generation and transfer it to the next generation. In our proposed algorithm, we set elite size to one.
In GA, the evolution process may lose diversity over generations and this may cause the algorithm to stall in a local optimum. To avoid this issue, the proposed MA measures the diversity value, ∂ of its population at each generation and it restarts when the diversity of the algorithm is below a restart threshold value, ∆. Our proposed restart mechanism is inspired by [47] approach, where a job/activity position-based restart mechanism was proposed for solving lot-streaming flow shop scheduling problem. However, they ignored the frequency of activities and block of activities in a set of solutions, which is an important factor to consider while measuring the diversity. Hence, in this study, we propose an improved and simple diversity measurement technique based on position and frequency of activities and activity blocks in the sequence, which is described as follows.
3.5. Local search operation It is obvious to add a local search into MA to enhance intensification process. In our proposed MA, we employ a variable insertion neighborhood search (VINS) scheme as a local search operator, which has already been proved to be successful in solving other complex scheduling problems [48]. In traditional VINS mechanism, an activity is selected from kth position in the sequence and place in pth position. With this movement of a task, if the new activity sequence has a better
Algorithm 4. Self-restart mechanism.
It is obvious that higher value of ∂ means the algorithm is more diversified (i.e. each activity occupies different positions of each sequence and there is less or no block of activities among the individuals). For example, consider three individuals of a generation with five activities: s(1) = {1, 2, 3, 4, 5}, s(2) = {1, 3, 2, 4, 5}, s(3) = {1, 4, 2, 3, 5}. First, [PMjk]n+2×n+2 and [BMxy]n+2×n+2 are calculated as follows.
fitness value than the current best activity sequence, then the current sequence is replaced by that sequence. The process continues until all (n − 1)2 are evaluated. However, due to precedence constraints and dummy activities in the sequence traditional VINS cannot be adopted for solving RCPSPs. Hence, we modified VINS algorithm in the following way: (1) first and last activities are dummy activities and their positions are fixed and excluded from the insertion operation, (2) an activity is inserted into all possible position which satisfies its 6
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Fig. 2. Project network.
self-restart mechanism is O(npn2) in the worst case. The modified VINS has the complexity of O(n4K). The overall complexity is O [np(n4K + (ng − 1) ∗ (nlogn + n + n4K) + n2)]. Therefore, the overall complexity of the algorithm can be expressed as O(ngnpn4K).
precedence constraints i.e. without violating its predecessor and successor relationships. For example, consider the sequence 1-2-4-3-5-7-68 (from Fig. 2 Section 3.1), where activity 3 is selected to be inserted in all possible feasible positions, which is shown in Fig. 4. In this case, either the second or third sequence can replace the original sequence since they provide a better makespan value (26 < 29) than the original sequence. Considering all sub-algorithms and processes, the final pseudo code of the proposed GA-based MA is presented as follows:
4. Experimental results and analysis In this section, we present, discuss, and analyze the computational results obtained by the proposed GA-based MA on 2040 instances from the PSPLIB benchmark [14] datasets with J30, J60, J90 and J120. In
Algorithm 4. A GA based MA for solving RCPSPs.
3.6. Computational complexity analysis
addition, we have also solved the RG30 and RG300 problem sets taken from the http://www.projectmanagement.ugent.be/?q=research/ data/RanGen weblink, which was primarily cited by Debels and Vanhoucke [16]. The J30, J60 and J90 datasets contain 480 problems each and J120 dataset contains 600 problem instances. The RG30 dataset contains 1800 instances and the RG300 dataset contains 480 instances. The complexity of these problem instances depends on three parameters: (1) network complexity (NC); (2) the resource factor (RF); and
Let us assume that ng is the number of generations and np is the number of populations per generation. The initial generation has the time complexity of O(n2), since the complexity of the modified NEH algorithm and CPH based heuristic has the complexity of O(n4K). The complexity of the modified SBOX operation is O(nlogn). The selection and shift mutation require O(n). The computational complexity of the 7
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Fig. 3. Similar block order crossover (SBOX) for RCPSPs.
8
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Fig. 4. VINS for RCPSPs.
of parameters for MA is shown in Table 1. We employ the orthogonal array L27(35) since the number of parameters is 5 and each of the parameters has three levels. So, there are 27 treatments in the DOE, which are tested in 40 most complex problem instances from J60. Considering NC, RF, RS, these complex instances are: J60_9_1 to J60_11_10 and J60_13_1 to J60_14_10 [50]. For parameter tuning, we set 1000 schedules as the stopping criterion. The orthogonal array and the ARDCP values for 27 treatment are listed in Table 2. In accordance with to the orthogonal table the trend (response value and the significance rank) of parameters is listed and illustrated in Table 3 and Fig. 5 respectively. From Table 3, we can note that the local search probability is the most significant parameter. As expected, a large value of local search probability enhances the intensification process of the algorithm. In addition, mutation rate (ranked second) plays an essential role to maintain diversity of the evolution process. As well as mutation, the value for restart also plays an important role in maintaining diversity in the population. Hence, the choice of proper values for diversity threshold affect the convergence of the algorithm and the possibility of finding the global minimum. The population size is ranked in fourth position. Consequently, we can say that large population size may boost the optimization process but is computationally expensive. On the other hand, small population size may potentially be unable to evolve the algorithm which may become stuck in a local minimum. Finally, crossover rate has ranked in the last of the set. According to this analysis, a good choice of parameter can be suggested as: Population size = 50, crossover rate = 50%, mutation rate = 1.5%, local search probability = 4%, and restart threshold = 0.02. Following the parameter analysis, we further investigate the performance of modified SBOX operator over its similar variants, e.g. single point similar job (i.e. activity) order crossover (SJOX) and single point ordered crossover (SPOX). To evaluate the performance, all optimal parameter combinations which are identified through DOE are fixed for MA, and the algorithm solved 40 most complex problem instances for J60 (i.e., J60_9_1 to J60_11_10 and J60_13_1 to J60_14_10) used for parameter tuning, under the same stopping condition. Fig. 6 shows ARDCP values for three crossover operators and, as shown in the figure, SBOX outperforms the other two crossover operators.
Table 1 Combination of parameter values. Parameters
Parameter level
Population size Crossover probability (%) Mutation probability (%) Local search probability (%) Restart threshold
1
2
3
20 50 5 2 0.02
30 70 10 3 0.06
50 90 15 4 0.08
resource strength (RS). In this paper, we compare the proposed MA with some typical state-of-the-art exact and heuristic algorithms in the literature. All of the numerical experiments were conducted on an Intel core i7 processor with a 3.40 GHz CPU and 16 GB RAM. The algorithm was coded in C++. To evaluate the performance of our algorithm, we use the average percentage of deviation from the best-known solutions and the critical path based lower bound. For PSPLIB benchmark instances, the average deviations from critical path (lower bound) can be calculated as:
ARDCP =
p=P p=1
(Cmax , alg , p Cmax, CP, p ) × 100% / p Cmax, CP, p
(6)
Similarly, for RG benchmark instances, the average deviations from upper bound (best known solution) and lower bound can be calculated as:
ARDUB =
ARDLB =
p=P p=1
p=P p=1
( Cmax, alg , p Cmax, UB, p ) × 100% / p Cmax, UB, p
(7)
(Cmax , alg , p Cmax, LB, p ) × 100% / p Cmax , LB, p
(8)
where P is the maximum of problem instances from J30, J60, J90 and J120 problem and pth problem instance: Cmax, alg, p is the makespan obtained by MA, Cmax, CP, p is the makespan obtained by critical path method while ignoring the violations of resource constraints, Cmax, UB, p is the best known or optimal makespan, Cmax, UB, p is the best known or optimal makespan, and Cmax, LB, p is the lower bound/critical path method value for each instances. The upper bound (UB) and lower bound (LB) values of RG instances are taken from the Excel file created by Vanhoucke and Coelho [49] and are downloaded from the weblink: http://www.projectmanagement.ugent.be/sites/default/files/files/ datasets/RG300.zip.
4.2. Comparisons of MA with the existing powerful algorithms This section provides a comparison of the proposed MA with some exact and powerful heuristic algorithms from the literature. For fair comparison, we set 5000 schedules generation in MA as the evaluation criteria, since this stopping criterion is widely used in the literature. Table 4 presents the performance of our proposed approach with respect to ARDCP values and computational time, CT for all 4320 (=2040 instances from PSPLIB + and 2280 instances from RG30 and RG300) problem instances. Considering these ARDCP values, in Table 5, we demonstrate the comparisons between our proposed approach with the heuristic and metaheuristic algorithms available in the literature: consolidated optimization algorithm [26], PSO based hyper-heuristic algorithm (PSO-HH) of Koulinas et al. [30], the genetic algorithm for project scheduling (GAPS) of [18], the hybrid algorithm, ACOSS (combination of ant colony optimization, local search strategy and a
4.1. Parameter analysis As we mentioned earlier, the proposed MA has parameters that require calibration to obtain the best performance. In order to calibrate the algorithm, we use Taguchi's design of experiment (DOE) technique which reduces the computational times and required tests for identifying the best possible parameter combination for MA. The combination 9
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Table 2 Orthogonal table and ARDCP values. Experiment number
Parameters
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
ARDCP
Population size
Crossover rate
Mutation rate
Local search probability
Restart threshold
20 20 20 20 20 20 20 20 20 30 30 30 30 30 30 30 30 30 50 50 50 50 50 50 50 50 50
50 50 50 70 70 70 90 90 90 50 50 50 70 70 70 90 90 90 50 50 50 70 70 70 90 90 90
0.05 0.05 0.05 1.00 1.00 1.00 1.50 1.50 1.50 1.00 1.00 1.00 1.50 1.50 1.50 0.05 0.05 0.05 1.50 1.50 1.50 0.05 0.05 0.05 1.00 1.00 1.00
2 2 2 3 3 3 4 4 4 4 4 4 2 2 2 3 3 3 3 3 3 4 4 4 2 2 2
0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08 0.02 0.05 0.08
scatter search) of [32], the genetic algorithm with forward-backward improvement (GA-FBI) of Gonçalves et al. [19], the scatter search electromagnetism meta-heuristic (SS-EM) of [51], the multiple justification PSO (MJPSO) algorithm of [52], the hybrid genetic algorithm of Valls et al. [17], the justification particle swarm optimization (JPSO) of [3], the Neurogenetic approach of [22], and event-based list and scatter search by Paraskevopoulos et al. [53]. From the results presented in Table 5, for J30 problem sets, our proposed algorithm almost always outperforms other approaches available in the literature. Furthermore, for J60, J90 and J120 problem sets, this proposed MA shows competitive performance comparing to all
Table 3 Response table for means. Level
Population size
Crossover rate
Mutation rate
Local search probability
Restart threshold
1 2 3 Delta Rank
11.69 11.68 11.62 0.08 4
11.63 11.66 11.70 0.06 5
11.75 11.65 11.58 0.17 2
11.89 11.62 11.48 0.41 1
11.59 11.67 11.73 0.14 3
12.11 12.05 11.77 11.37 11.76 11.75 11.30 11.46 11.62 11.16 11.38 11.83 11.77 11.68 12.02 11.69 11.70 11.86 11.51 11.50 11.35 11.42 11.66 11.46 11.91 11.82 11.87
Fig. 5. Factor level trend for each parameter. 10
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
obtain any improved solutions or upper bounds compared to existing approaches, we can claim that this proposed approach is highly competitive and an effective alternative approach to solve harder and larger activity-based instances. Critical path values (CP), UBs, LBs and obtained makespan values for each of the RG30 and RG300 instances are available on request to the corresponding author. In addition, even though the homogeneous interval algorithm (HIA) of Valls et al. [54] and large neighborhood search of Palpant et al. [34] did not provide any information about number of schedule as the stopping condition, our proposed algorithm still shows better performance than those approaches. In a nutshell, MA shows exceptional consistency and faster solving capability while solving RCPSPs. 4.3. Statistical analysis
Fig. 6. Evaluation of different crossover operators.
Since the proposed MA shows a stochastic nature, to better reflect any statistical differences among existing algorithms, this work carried out a number of statistical and nonparametric tests. As illustrated in the previous section, under all three different instance sets, there is no firm evidence on the superiority of any algorithm over the others. Hence to assist decision making and to evaluate the overall performance of the proposed MA, we have executed a ranking procedure based on a nonparametric test, called the Friedman test [57]. The Friedman test is often used for a randomized complete block design when the normality assumption is not satisfied, or the data is ordinal. Under each instance type, for each of the algorithms, relative ranks are calculated by considering ARDcp. All relative ranks are addressed in Table 7. As evident, MA exhibits the second-least rank value of 3.33 after GH-SS among all recent algorithms. Hence, it can be claimed that the performance of MA is highly competitive and consistent among all statistically dispersed results. For better justification, we have also executed the Wilcoxon signed ranks test [58] to analyze the differences between the best and the nearbest results according to Table 7 (i.e., MA, GH-SS and SS-FBI). Using a 5% significance level, the obtained p values are: 0.317 (GH-SS - MA), 0.180 (SS-FBI - MA) and 0.180 (SS-FBI – GH-SS). Meanwhile, based on the relative positive and negative ranks, the Z values are as follows: Z(GH_SS−MA) = − 1.00, Z(SS_FBI−MA) = − 1.342 and Z(SS_FBI−GH_SS) = − 1.342. Hence, it can be ensured that there is no unitary evidence of significant dominance of any algorithm over the others (as p > 0.05), even though the proposed MA algorithm has been outperformed by very few existing algorithms (i.e., GH_SS), particularly for the larger instance set (i.e., J120).
Table 4 Performance of MA for PSPLIB datasets. Algorithm MA
Schedule 5000 50,000
Problem
J30
J60
J90
J120
ARDCP Ct (second) ARDCP Ct (second)
0.00 0.034 0.00 0.21
10.72 1.16 10.55 9.06
10.37 11.41 9.94 90.78
32.76 18.14 31.12 140.08
cited algorithms. In addition, to verify the performance of this proposed MA against large datasets, we have solved all available benchmark instances for RG30 and RG300 and compared with the average percentage deviation from critical path values (i.e., ARDcp) against the reported results by Debels and Vanhoucke [16] and Vanhoucke and Coelho [49]. As reported earlier, the upper bound (UB) and lower bound (LB) values of RG instances are taken from the Excel file created by Vanhoucke and Coelho [49]. As can be seen from Table 6, the proposed MA could not outperform any of those available results for RG300 dataset. On the contrary, for RG30, ARDCP values are almost similar to the ones reported in Vanhoucke and Coelho [49] (i.e., we obtained 39.34% deviations while the best reported is 39.33%). Meanwhile, the percentage deviations from the best-known UBs (ARDUB) and LBs (ARDLB) are only 1.64% and 7.28% respectively for RG300 instances after executing for 50,000 schedules. Overall deviations for RG30 are also very insignificant for 50,000 schedules (0.01% and 0.40% respectively). Hence, even though our proposed MA did not Table 5 Comparison of the average deviation (%) among PSPLIB datasets. Algorithms [reference]
MA [our proposed approach] COA [26] GH-SS (LS) [53] Sequential (SS-FBI) [55] GA [21] PSO-HH [30] GA-FBI [19] ACOSS [32] GAPS [18] SS-EM [51] MJPSO [52] HGA [17] GA-FBI2 [16] JPSO [3] GANS [56] NG-FBI [22]
J30
J60
J90
J120
5000
50,000
5000
50,000
5000
50,000
5000
50,000
ARDCP
ARDCP
ARDCP
ARDCP
ARDCP
ARDCP
ARDCP
ARDCP
0.00 0.00 0.01 0.02 0.07 0.04 0.01 0.04 0.01 0.11 0.02 0.06 0.04 0.14 1.27 0.10
0.00 0.00 0.00 0.00 0.01 0.01 0.01 0.01 0.01 0.01 0.02 0.02 0.02 0.04 0.71 –
10.72 10.77 10.72 10.93 11.08 11.13 11.56 10.98 11.04 11.71 11.19 11.10 10.95 10.43 10.53 11.29
10.55 10.58 10.55 10.58 10.71 10.68 10.56 10.68 10.67 10.71 10.85 10.73 10.68 11.00 10.52 –
10.37 – – 10.40 – – – – – – – – 10.35 – – 11.29
9.94 – – 9.96 – – – – – – – – 9.90 – – –
32.76 32.90 32.12 32.52 33.36 32.59 35.94 32.48 33.03 33.57 33.78 32.54 32.18 33.88 31.51 34.15
31.12 31.22 30.78 31.16 31.81 31.23 32.76 30.56 31.44 31.57 32.40 31.24 30.69 32.89 30.45 –
11
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Table 6 Performance of MA for RG instances. Schedule
Problem
5000
RG30
ARDUB ARDLB ARDCP [this paper] ARDCP [16] ARDCP [49] Ct (sec) ARDUB ARDLB ARDCP [this paper] ARDCP [16] ARDCP [49] Ct (sec)
50,000
RG300
S1
S2
S3
S4
S5
All
0.10% 0.42% 42.82% – – 0.042 0.01% 0.33% 42.67% – – 0.287
0.14% 0.77% 45.68% – – 0.044 0.02% 0.65% 45.45% – – 0.289
0.08% 0.08% 34.31% – – 0.041 0.003% 0.003% 34.18% – – 0.301
0.16% 0.91% 34.80% – – 0.043 0.01% 0.77% 34.58% – – 0.310
0.14% 0.39% 34.80% – – 0.043 0.01% 0.26% 34.58% – – 0.278
0.12% 0.52% 39.52% – – 0.043 0.01% 0.40% 39.34% – 39.33% 0.293
For better illustration, Table 7 has been used to generate performance profiles and to execute nonparametric tests for the PSPLIB datasets. Fig. 7 represents the performance profile for the PSPLIB dataset (based on the results obtained after 50,000 schedules), which has been used as a tool for evaluating and comparing the performance of optimization algorithms. If the set of problems P is suitably large and representative of problems that are likely to occur in applications, then algorithms with large probability ρs(τ) are to be preferred. The performance profile for an algorithm is the (cumulative) distribution function for a performance metric. For a better understanding of performance profiles, see the work of Dolan and Moré [59]. In this paper we use the ARDcp as a performance metric. As reflected from Fig. 7, the proposed MA algorithm has the second-best probability (after GH + SS approach) of obtaining smallest deviations and converges fast towards 100% than a significant number of existing algorithms.
3.63% 9.44% 984.43% 817.36% – 29.07 1.64% 7.28% 968.57% 809.93% 956.71% 202.14
approaches available in the literature. The stopping criteria for our proposed algorithm is set to 100 schedules evaluation and B&B algorithm was coded with CPLEX embedded in Matlab R2017b. Each of the algorithms was run for 30 times and the results are tabulated in Table 8. However, owing to the inability to solve higher activity instances (i.e., Case 2, 4, 5, and 6) by B&B exact approach, we have highlighted the best obtained results after 1000 s of execution. As can be seen from that table, the proposed algorithm shows promising results in finding optimal makespan with significantly lower computational effort (i.e., only within 100 schedule evaluations), even for case studies with a higher number of activities. 5. Applicability of the proposed approach in construction project scheduling In the construction industry, project management decisions relevant to time and budget are made based on schedules that are developed in the planning phase of a project. Hence, one of the challenging tasks for the construction project manager is to minimize the total project duration with limited resource availability. Although one traditional project scheduling technique, namely CPM, has been used as a scheduling tool in the construction industry since the 1950s [63], it can provide optimal solutions when the availability of resource is unlimited. However, as discussed in Section 2, adding resource constraints to project scheduling problem makes it NP-hard and as shown from the example in Section 3.1, CPM based schedule can be possibly improved in RCPSPs. In today's competitive construction industry, the availability of resources should be limited (e.g., construction equipment, workers) to make it profitable and therefore, it is essential to develop an efficient decision-making tool that can provide optimal or near optimal schedules in reasonable computational time. Another important aspect is that the complexity in modern projects varies with respect to the number of activities, resources, maximum resource availabilities, and project managers need to deal with such complex project network frequently [64]. Therefore, it is desirable to have a solution approach that can provide competitive solutions, within computational time, for project scheduling problems with any degree of complexity. To serve these purposes, we propose a MA that is easy to implement. The performance of the proposed approach has been evaluated with a wide range of complex scheduling problems, from two different artificial standard benchmark data (PSPLIB and RG). Furthermore, we have
4.4. Case study To demonstrate the effectiveness of the proposed MA in solving reallife problems, we have also considered five real-life projects from three different areas: construction industry, information technology, and healthcare systems. As reflected in Table 8, cases 1–3 are directly adapted from their cited references. Meanwhile, case 4 (Commercial IT Project-CIT), case 5 (Patient Transport System-PTS), and case 6 (Nursing Home Noordhinder) are taken from the online database (http:// www.or-as.be/research/database) [60]. The PTS project deals with the design, installation (including staff training) and evaluation of an ICTsupported patient transport system in the general hospital Sint-Jan in Bruges (Belgium). The overall project networks and resource distributions are provided in Appendix A and Tables A2 and A3 respectively. Meanwhile the CIT project deals with the complete developing process of a software program for magazine publishers, including a preliminary market analysis. The project consists of activity, resource and cost data that were created by the user. The overall project networks and resource distributions are also provided in Appendix A and Tables A4 and A5 respectively. The Nursing Home Noordhinder is a construction project for building a nursing home in Knokke-Heist (Belgium). Project card excel file and all relevant information of this case study can be found from this online source: http://www.or-as.be/research/database. The performance of the proposed approach has been compared with an exact approach (i.e., B&B algorithm) and with the existing Table 7 Rank measurement of different algorithms using Friedman test. MA
COA
GH-SS
SS-FBI
GA
PSO-HH
GA-FBI
ACOSS
GAPS
SS-EM
MJPSO
HGA
GA-FBI2
JPSO
GANS
3.33
5.00
3.00
4.67
10.33
8.17
8.50
6.17
8.17
10.00
13.00
11.33
8.00
14.67
5.67
The bold values signifies the first, second, and third best performing algorithm algorithms among the list using the Friedman test. 12
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Fig. 7. Performance profile of different competitive algorithms.
evaluated our proposed approach for solving practical project scheduling problems, where relevant empirical data were collected from the construction and other industries (as discussed in Section 4). From the experimental evaluations it can be safely said that for all these set of problems, our proposed approach shows competitive performance in terms of solution quality and computational speed. In a nutshell,
adaptation of our proposed approach can be a useful tool for practitioners to significantly reduce time and financial losses, and to predict future budgets more carefully.
Table 8 Result comparison between MA and Other approaches in practical problems. Problem [source]
Problem size Number of activities
Average Cmax value Number of resources
Case 1: construction project [24,61]
20
1
Case 2: construction project [24,61]
37
1
Case 3: highway bridge construction project [62]
43
3
42 49 153
8 5 12
Case 4: commercial IT project [60] Case 5: patient transport system [60] Case 6: nursing home noordhinder [60] a
Existing approach 42.53 (PSO) 42.51 (GA) 42.50 (DE) 42.07 (CDE) 42.17 (FDE) 42 (FCDE-RCPSP) 192.47 (PSO) 191.33 (GA) 191.27 (DE) 190.47 (CDE) 191.20 (FDE) 190.13 (FCDERCPSP) 118.25 (PSO) 118.35 (GA) 117.75 (DE) 117.7 (ABC) 117 (ABCDE-RC) Not available Not available Not available
Best obtained result after 1000 s.
13
Average computational times (seconds) B&B
MA
Existing approaches
42
42
Not available
236a
190
Not available
117
117
Not available
340 1136a 10931a
309 1068 10,676
Not available Not available Not available
B&B 68.87
1000
100.52
1000 1000
MA 0.013
0.015
0.041
0.038 0.047 0.12
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
6. Conclusion and future research directions
and promising performance for J120, RG30 and RG300 problem sets. Six real-world projects from three different areas are also used to evaluate the comparative effectiveness of the proposed algorithm in handling real-world resource constrained problems. In future work, further investigations are needed to accelerate the performance of the algorithm for J120 and RG300 problem sets. The work presented in this paper is very relevant to modern construction and manufacturing industries to assist project managers with real-time decision support, to allow project scheduling decisions to be taken in a short computation time within the resource constraints. The developed MA can be employed by project managers to execute projects more efficiently and utilizing the available resources more effectively, and thus reduce project execution costs. Hence, the proposed approach assists project managers obtain a satisfactory schedule within reasonable computational time. Moreover, future studies might extend the presented algorithms to other interesting project scheduling problems from real-life, such as multi-mode resource constraint project scheduling problems. Another research opportunity is to study the extension of existing problems while considering multiple temporal constraints such as including aging and learning effects in activity durations, transportation time, alternative supplier shipping times, and project inspection time, and so on. There are also multiple conflicting objectives, including minimizing makespan and maximizing net present value, that need to be optimized simultaneously in real applications. Finally, it is also observed that in industry there are uncertainties in project durations and resource availability and its utilization, and hence it will be interesting to extend our proposed method to study these realistic cases.
Despite of significant number of approaches to solve RCPSPs over the decades, no single algorithm can offer sound performance in terms of accuracy and speed for all range of RCPSP datasets. Often, these algorithms have complex structures which makes their implementation difficult. As a result, in this study, we bring forward a unique and competitive GA-based MA algorithm in the quest for better optimization performance. This proposed approach initiates with a mix of quality solutions generated by two simple heuristics and some priority rules, and some random solutions, which eliminates the drawback of random initialization of the original GA. During the evaluation process a single-point similar block order crossover finds the simpler blocks of activities which act as the building blocks of quality solutions. This crossover operator has shown better performance than the traditional single point ordered crossover operator. Further, a shift mutation operation ensures population diversity and a self-restart mechanism measures population diversity at each iteration and restarts automatically to avoid local optima, when needed. Therefore, this mechanism helps MA to avoid entanglement in the local optima. Further, a variable insertion neighborhood search was introduced to further enhance performance, which show excellent performance, considering their simplicity and speed. More importantly, the proposed algorithm is simple and easy to implement, and generates competitive solutions. The parameters of the algorithm were adjusted by DOE and the effectiveness of the algorithm was verified by solving the popular PSPLIB and RG benchmark problems, with J30, J60, J90, J120, RG30 and RG300 problem sets. The results showed that the proposed algorithm is capable of converging to high quality solutions within reasonable computational efforts, especially for J30, J60 and J90 sets. Further, the proposed algorithm was compared with the state-of-the-art algorithms in terms of solution quality and it showed best performances for the lower activity problem sets (i.e., for J30, J60 and J90 instances)
Declaration of competing interest These authors declare that they have no conflict of interests on the work reported in this paper.
Appendix A Data for example problem Number of activities: 8 Maximum available resources: 4 Resource availabilities: [12 13 4 12] Table A1
Activity durations and successors. Activity ID
1 2 3 4 5 6 7 8
Activity duration
0 8 4 6 3 8 5 0
Resource use R1
R2
R3
R4
0 4 10 4 3 0 4 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 3 0 8 0 0
14
Number of successors
Successors
2 1 2 1 1 1 1 0
2 4 5 7 7 8 8
3 6
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Table A2
Patient transport system. ID
Name
Successors
Duration
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
Compose survey for the staff Brainstorming and filling in the survey Collecting and analysing the surveys Get-together PC, ICT committee & board Enrolment of the meeting Registering the technical requirements Set-up a detailed budget study Putting together the formal document Research suppliers transport systems Meeting with board for final proposal Contacting suppliers and sending proposal Analysing the received offers Presentation to board & ICT staff Collecting and registering comments on offers Taking final decision and contacting supplier Discussing project development with supplier Discussing project development with board Final agreement with supplier Signing contract Meeting with ICT committee Contacting Siemens and sending proposal Discussing project development with supplier Discussing progress with board Discussing progress with ICT committee Final agreement with supplier Signing contract Information session Explanation project implementation to staff Installation transport system Installation DACS Training coordinator Train de trainer Training rapportage Surveying the required functionalities Creating codes Registration data about employees Registration hospital data Training team 1 Training team 2 Training team 3 Training team 4 Training team 5 Training team 6 Check-up by PC Check-up by ICT committee Live pilot period Discussing project with board Discussing project with head nurses Enrolment of the entire project
FS2 + 1 w 1 d FS3 + 7 w 2 h FS4 FS5 + 2 h FS6 FS7 + 2 w FS8 + 3 w FS9;FS20 + 1 w FS10 + 1 w 1 d 4 h FS11 + 2 w FS12 + 3 w FS13 + 4 w FS14 + 3 w FS15 + 6 w FS16 FS17 + 7 w 3 d 4 h FS18 + 6 w FS19 FS27 + 4 d 4 h FS21 + 1 w 2 d FS22 + 2 w FS23 + 1 w FS24 + 2 d FS25 + 1 d 6 h FS26 FS27 + 8 w FS28 + 4 h FS29;FS30;FS31;FS34 FS36 FS38;FS44 FS32;FS36 FS38;FS44 FS47 FS35 + 4 w 4 d FF37 + 1 w FS37 + 3 w 2 d FS38;FS44 FS39 FS40 FS41 FS42 FS43 FS46 FS45 + 2 w FS46 FS33 FS48 + 4 d 2 h FS49
4h 2h 1d 4h 2h 2d 2d 3d 3d 4h 2d 3d 1d 1d 2d 3d 4h 2d 4h 2d 3d 2d 2h 4h 4h 4h 2h 2h 6d 6d 1d 1d 1d 1d 2d 4d 6d 2d 2d 2d 2d 2d 2d 1d 1d 71 d 2h 4h 1d
Table A3
Resource distribution for patient transport system. General
Resource demand
ID
Name
Type
Availability
Assigned to
1
Project coordinator Head nurses
Renewable
1 #persons
1;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;31;32;33;34;35;36;37;38;39;40;41;42;43;44;47;48;49;
Renewable
65 #persons 2[65.00 Head nurses];28[65.00 Head nurses];40[17.00 Head nurses];41[16.00 Head nurses];42[16.00 Head nurses];43[16.00 Head nurses];48[65.00 Head nurses]; 5 #persons 4[5.00 ICT committee];6;10;13[5.00 ICT committee];20[5.00 ICT committee];24[5.00 ICT committee];27[5.00 ICT committee];29[2.00 ICT committee];30[2.00 ICT committee];35;45[5.00 ICT committee]; 7 #persons 4[7.00 Board of directors];10[7.00 Board of directors];13[7.00 Board of directors];17[7.00 Board of directors];19;23[7.00 Board of directors];26;27[7.00 Board of directors];47[7.00 Board of directors]; 24 #persons 2[24.00 Stretcher-bearer/logisticians];28[24.00 Stretcher-bearer/logisticians];34[24.00 Stretcher-bearer/logisticians];38[12.00 Stretcher-bearer/logisticians];39[12.00 Stretcher-bearer/logisticians];
2 3 4 5
ICT committee Board of directors Stretcherbearer/logisticians
Renewable Renewable Renewable
15
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al.
Table A4
Commercial IT (CIT) project. ID
Name
Predecessors
0 22 23 24 1 39 40 2 3 4 5 6 7 8 9 10 11 25 26 12 13 14 15 16 17 18 19 20 21 38 37 27 28 29 31 32 33 34 35 36 41 42
Commercial IT project Explore the market Set up a survey Analysis of the market Problem study/analysis Negotiate and buy server Negotiate and buy computer Processmodels (BPMN) Conceptual datamodel (ER) Normalisation DB Datamap Logic database model Software design (UML-class diagram) Develop database Table 1 Develop database Table 2 Design & develop GUI 1 Design & develop GUI 2 Design CD-box Design CD-labels Develop SQL's 1 Develop SQL's 2 Debug SQL's 1 Debug SQL's 2 Implement SQL's in JAVA 1 Implement SQL's in JAVA 2 Develop program 1 Develop program 2 Testing & debugging 1 Testing & debugging 2 Visitations by sales representatives Direct mailings Make up report + presentation alpha version Presentation alpha version Reading of management report + approval alpha Testing phase alpha version Fix outstanding problems from alpha Make up report + presentation beta version Presentation beta version Reading of management report + approval beta Launch and installation beta version Installation server Installation computer
22FS 23FS 24FS 1FS 1FS 1FS 1FS 2FS;3FS 4FS 5FS 2FS;3FS 6FS 6FS 7FS 7FS 10FS;11FS 10FS;11FS 8FS 9FS 12FS 13FS 14FS 15FS 16FS;10FS 17FS;11FS 18FS 19FS 20FS;21FS 20FS;21FS 20FS;21FS 27FS 28FS 29FS 31FS 32FS 33FS 34FS 35FS 35FS;39FS 35FS;40FS
Successors FS23 FS24 FS1 FS2;FS3;FS39;FS40 FS41 FS42 FS4;FS7 FS4;FS7 FS5 FS6 FS8;FS9 FS10;FS11 FS12 FS13 FS18;FS25;FS26 FS19;FS25;FS26 FS14 FS15 FS16 FS17 FS18 FS19 FS20 FS21 FS27;FS37;FS38 FS27;FS37;FS38 FS28 FS29 FS31 FS32 FS33 FS34 FS35 FS36;FS41;FS42
Duration 56 d 5 h 10 d 3d 15 d 3d 2d 2d 7h 1d 4h 1h 2h 2d 6h 1d 2d 2d5h 10 d 10 d 2d2h 2d4h 1d2h 1d4h 1h 1h 3d 3d5h 1d 1d 10 d 2h 2d 2h 5h 3d 1d2h 1d 2h 5h 5d 5d 5d
Table A5
Resource distribution for commercial IT (CIT) project. General
Resource demand
ID
Name
Type
Availability
Assigned to
1
Programmers
Renewable
3 Programmers
2 3
IT Manager Database administrator Analyst programmer Secretary Marketing manager Sales representatives Technicians
Renewable Renewable
1 IT manager 1 Database administrator 1 Analyst programmer 1 Secretary 1 Marketing manager 2 Sales representatives 3 Technicians
10;11[1.50Programmers];16[2.00Programmers];17[2.50 Programmers];18[2.00 Programmers];19[3.00 Programmers];20[2.00 Programmers];21[3.00 Programmers];31[2.00 Programmers];32; 1[0.20 IT Manager];39[0.10 IT Manager];40[0.10 IT Manager];28;29[0.50 IT Manager];34;35[0.50 IT Manager]; 4;5[0.50 Database administrator];6;8;9;12[0.40 Database administrator];13[0.60 Database administrator];14[0.40 Database administrator];15[0.60 Database administrator];31[0.30 Database administrator]; 1;2;3;5[0.50 Analyst programmer];7[0.30 Analyst programmer];27[0.30 Analyst programmer];28;31[0.10 Analyst programmer];33[0.20 Analyst programmer];34; 37;27;33; 39[0.50 Marketing manager];40[0.50 Marketing manager];37[0.50 Marketing manager];
4 5 6 7 8
Renewable Renewable Renewable Renewable Renewable
38[2.00 Sales representatives]; 36[3.00 Technicians];41;42;
org/10.1016/0166-218X(83)90012-4. [3] R.-M. Chen, Particle swarm optimization with justification and designed mechanisms for resource-constrained project scheduling problem, Expert Syst. Appl. 38 (6) (2011) 7102–7111, https://doi.org/10.1016/j.eswa.2010.12.059. [4] A. Mingozzi, V. Maniezzo, S. Ricciardelli, L. Bianco, An exact algorithm for the resource-constrained project scheduling problem based on a new mathematical formulation, Manag. Sci. 44 (5) (1998) 714–729, https://doi.org/10.1287/mnsc.
References [1] P. Brucker, Scheduling and constraint propagation, Discret. Appl. Math. 123 (1–3) (2002) 227–256, https://doi.org/10.1016/S0166-218X(01)00342-0. [2] J. Blazewicz, J.K. Lenstra, A.R. Kan, Scheduling subject to resource constraints: classification and complexity, Discret. Appl. Math. 5 (1) (1983) 11–24, https://doi.
16
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al. 44.5.714. [5] U. Dorndorf, E. Pesch, T. Phan-Huy, A branch-and-bound algorithm for the resource-constrained project scheduling problem, Math. Meth. Oper. Res. 52 (3) (2000) 413–439, https://doi.org/10.1016/S0377-2217(97)00335-4. [6] 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, https://doi.org/10.1016/S0377-2217(97)00335-4. [7] R.K. Chakrabortty, R.A. Sarker, D.L. Essam, Resource constrained project scheduling with uncertain activity durations, Comput. Ind. Eng. 112 (2017) 537–550, https://doi.org/10.1016/j.cie.2016.12.040 10/01/2017. [8] R. Chakrabortty, R.A. Sarker, D.L. Essam, Event based approaches for solving multimode resource constraints project scheduling problem, IFIP International Conference on Computer Information Systems and Industrial Management, Vietnam, 8838 Springer, Berlin, Heidelberg, 2014, pp. 375–386, , https://doi.org/ 10.1007/978-3-662-45237-0_35. [9] J. Coelho, M. Vanhoucke, An exact composite lower bound strategy for the resource-constrained project scheduling problem, Comput. Oper. Res. 93 (2018) 135–150, https://doi.org/10.1016/j.cor.2018.01.017 05/01/2018. [10] A. Lova, P. Tormos, M. Cervantes, F. Barber, An efficient hybrid genetic algorithm for scheduling projects with resource constraints and multiple execution modes, Int. J. Prod. Econ. 117 (2) (2009) 302–316, https://doi.org/10.1016/j.ijpe.2008.11. 002. [11] D.H. Wolpert, W.G. Macready, No free lunch theorems for optimization, IEEE Trans. Evol. Comput. 1 (1) (1997) 67–82, https://doi.org/10.1109/4235.585893. [12] R. Pellerin, N. Perrier, F. Berthaut, A survey of hybrid metaheuristics for the resource-constrained project scheduling problem, Eur. J. Oper. Res. 280 (2) (2020) 395–416, https://doi.org/10.1016/j.ejor.2019.01.063. [13] M. Nawaz, E.E. Enscore Jr., I. Ham, A heuristic algorithm for the m-machine, n-job flow-shop sequencing problem, Omega 11 (1) (1983) 91–95, https://doi.org/10. 1016/0305-0483(83)90088-9. [14] R. Kolisch, A. Sprecher, PSPLIB—a project scheduling problem library: OR software-ORSEP Operations Research Software Exchange Program, Eur. J. Oper. Res. 96 (1) (1997) 205–216 1997/01/10/ https://doi.org/10.1016/S0377-2217(96) 00170-1. [15] J. Alcaraz, C. Maroto, A robust genetic algorithm for resource allocation in project scheduling, Ann. Oper. Res. 102 (1–4) (2001) 83–109, https://doi.org/10.1023/ A:1010949931021. [16] D. Debels, M.J.O.R. Vanhoucke, A decomposition-based genetic algorithm for the resource-constrained project-scheduling problem, Oper. Res. 55 (3) (2007) 457–469, https://doi.org/10.1287/opre.1060.0358. [17] V. Valls, F. Ballestin, S. Quintanilla, A hybrid genetic algorithm for the resourceconstrained project scheduling problem, Eur. J. Oper. Res. 185 (2) (2008) 495–508, https://doi.org/10.1016/j.ejor.2006.12.033. [18] J.J. Mendes, J.F. Gonçalves, M.G. Resende, A random key based genetic algorithm for the resource constrained project scheduling problem, Comput. Oper. Res. 36 (1) (2009) 92–109, https://doi.org/10.1016/j.cor.2007.07.001. [19] J.F. Gonçalves, M.G. Resende, J.J. Mendes, A biased random-key genetic algorithm with forward-backward improvement for the resource constrained project scheduling problem, J. Heuristics 17 (5) (2011) 467–486, https://doi.org/10.1007/ s10732-010-9142-2. [20] R. Zamani, A competitive magnet-based genetic algorithm for solving the resourceconstrained project scheduling problem, Eur. J. Oper. Res. 229 (2) (2013) 552–559, https://doi.org/10.1016/j.ejor.2013.03.005. [21] R. Zamani, An evolutionary implicit enumeration procedure for solving the resource-constrained project scheduling problem, Int. Trans. Oper. Res. 24 (6) (2017) 1525–1547, https://doi.org/10.1111/itor.12196. [22] A. Agarwal, S. Colak, S. Erenguc, A neurogenetic approach for the resource-constrained project scheduling problem, Comput. Oper. Res. 38 (1) (2011) 44–50, https://doi.org/10.1016/j.cor.2010.01.007. [23] K. Anagnostopoulos, G. Koulinas, Resource-constrained critical path scheduling by a GRASP-based hyperheuristic, J. Comput. Civ. Eng. 26 (2) (2011) 204–213, https://doi.org/10.1061/(ASCE)CP.1943-5487.0000116. [24] M.-Y. Cheng, D.-H. Tran, Y.-W. 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, https://doi.org/10.1016/j.autcon. 2013.10.002. [25] C. Fang, L. Wang, An effective shuffled frog-leaping algorithm for resource-constrained project scheduling problem, Comput. Oper. Res. 39 (5) (2012) 890–901, https://doi.org/10.1016/j.cor.2011.07.010. [26] S. Elsayed, R. Sarker, T. Ray, C.C. Coello, Consolidated optimization algorithm for resource-constrained project scheduling problems, Inf. Sci. 418 (2017) 346–362, https://doi.org/10.1016/j.ins.2017.08.023. [27] H. Zhang, X. Li, H. Li, F. Huang, Particle swarm optimization-based schemes for resource-constrained project scheduling, Autom. Constr. 14 (3) (2005) 393–404, https://doi.org/10.1016/j.autcon.2004.08.006. [28] Q. Jia, Y. Seo, An improved particle swarm optimization for the resource-constrained project scheduling problem, Int. J. Adv. Manuf. Technol. 67 (9–12) (2013) 2627–2638, https://doi.org/10.1007/s00170-012-4679-x. [29] H. Zhang, H. Li, C. Tam, Particle swarm optimization for resource-constrained project scheduling, Int. J. Proj. Manag. 24 (1) (2006) 83–92, https://doi.org/10. 1016/j.ijproman.2005.06.006. [30] 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, https://doi.org/10.1016/j.ins.2014.02.155. [31] K. Ziarati, R. Akbari, V. Zeighami, On the performance of bee algorithms for resource-constrained project scheduling problem, Appl. Soft Comput. 11 (4) (2011)
3720–3733, https://doi.org/10.1016/j.asoc.2011.02.002. [32] W. Chen, Y. Shi, H. Teng, X. Lan, L. Hu, An efficient hybrid algorithm for resourceconstrained project scheduling, Inf. Sci. 180 (6) (2010) 1031–1039, https://doi. org/10.1016/j.ins.2009.11.044. [33] R. Klein, Project scheduling with time-varying resource constraints, Int. J. Prod. Res. 38 (16) (2000) 3937–3952, https://doi.org/10.1080/00207540050176094. [34] M. Palpant, C. Artigues, P. Michelon, LSSPER: solving the resource-constrained project scheduling problem with large neighbourhood search, Ann. Oper. Res. 131 (1–4) (2004) 237–257, https://doi.org/10.1023/B:ANOR.0000039521.26237.62. [35] K. Bouleimen, H. Lecocq, A new efficient simulated annealing algorithm for the resource-constrained project scheduling problem and its multiple mode version, Eur. J. Oper. Res. 149 (2) (2003) 268–281, https://doi.org/10.1016/S03772217(02)00761-0. [36] 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, https://doi.org/10.1016/j.eswa.2011.08.095. [37] H.F. Rahman, R. Sarker, D. Essam, A real-time order acceptance and scheduling approach for permutation flow shop problems, Eur. J. Oper. Res. 247 (2) (2015) 488–503, https://doi.org/10.1016/j.ejor.2015.06.018 12/01/2015. [38] H.F. Rahman, R. Sarker, D. Essam, A genetic algorithm for permutation flow shop scheduling under make to stock production system, Comput. Ind. Eng. 90 (Supplement C) (2015) 12–24, https://doi.org/10.1016/j.cie.2015.08.006. [39] H.F. Rahman, I. Nielsen, Scheduling automated transport vehicles for material distribution systems, Appl. Soft Comput. 82 (2019) 105552, , https://doi.org/10. 1016/j.asoc.2019.105552. [40] R. Kolisch, Efficient priority rules for the resource-constrained project scheduling problem, J. Oper. Manag. 14 (3) (1996) 179–192, https://doi.org/10.1016/02726963(95)00032-1. [41] S. Ponnambalam, P. Aravindan, G.M. Naidu, A multi-objective genetic algorithm for solving assembly line balancing problem, Int. J. Adv. Manuf. Technol. 16 (5) (2000) 341–352, https://doi.org/10.1007/s001700050166. [42] R. Ruiz, C. Maroto, A comprehensive review and evaluation of permutation flowshop heuristics, Eur. J. Oper. Res. 165 (2) (2005) 479–494, https://doi.org/10. 1016/j.ejor.2004.04.017. [43] D.E. Goldberg, J.H. Holland, Genetic algorithms and machine learning, Mach. Learn. 3 (2) (1988) 95–99, https://doi.org/10.1023/A:1022602019183. [44] R. Ruiz, C. Maroto, J. Alcaraz, Two new robust genetic algorithms for the flowshop scheduling problem, Omega 34 (5) (2006) 461–476, https://doi.org/10.1016/j. omega.2004.12.006. [45] H.F. Rahman, R.A. Sarker, D.L. Essam, A memetic algorithm for permutation flow shop problems," in IEEE Congress on Evolutionary Computation (CEC), IEEE (2013) 1618–1625, https://doi.org/10.1109/CEC.2013.6557755. [46] H.F. Rahman, R.A. Sarker, D.L. Essam, G. Chang, A memetic algorithm for solving permutation flow shop problems with known and unknown machine breakdowns," in IEEE Congress on Evolutionary Computation (CEC), IEEE (2014) 42–49, https:// doi.org/10.1109/CEC.2014.6900242. [47] Q.-K. Pan, R. Ruiz, An estimation of distribution algorithm for lot-streaming flow shop problems with setup times, Omega 40 (2) (2012) 166–180, https://doi.org/10. 1016/j.omega.2011.05.002. [48] H.F. Rahman, R. Sarker, D. Essam, Multiple-order permutation flow shop scheduling under process interruptions, Int. J. Adv. Manuf. Technol. 97 (5–8) (2018) 2781–2808, https://doi.org/10.1007/s00170-018-2146-z. [49] M. Vanhoucke, J. Coelho, A tool to test and validate algorithms for the resourceconstrained project scheduling problem, Comput. Ind. Eng. 118 (2018) 251–265 2018/04/01/ https://doi.org/10.1016/j.cie.2018.02.001. [50] R. Chakrabortty, R. Sarker, D. Essam, Single mode resource constrained project scheduling with unreliable resources, Oper. Res. (2018) 1–35, https://doi.org/10. 1007/s12351-018-0380-7. [51] D. Debels, B. De Reyck, R. Leus, M. Vanhoucke, A hybrid scatter search/electromagnetism meta-heuristic for project scheduling, Eur. J. Oper. Res. 169 (2) (2006) 638–653, https://doi.org/10.1016/j.ejor.2004.08.020. [52] A. Fahmy, T.M. Hassan, H. Bassioni, Improving RCPSP solutions quality with stacking justification–application with particle swarm optimization, Expert Syst. Appl. 41 (13) (2014) 5870–5881, https://doi.org/10.1016/j.eswa.2014.03.027. [53] D.C. Paraskevopoulos, C.D. Tarantilis, G. Ioannou, Solving project scheduling problems with resource constraints via an event list-based evolutionary algorithm, Expert Syst. Appl. 39 (4) (2012) 3983–3994, https://doi.org/10.1016/j.eswa.2011. 09.062. [54] V. Valls, F. Ballestín, S. Quintanilla, A population-based approach to the resourceconstrained project scheduling problem, Ann. Oper. Res. 131 (1–4) (2004) 305–324, https://doi.org/10.1023/B:ANOR.0000039524.09792.c9. [55] F. Berthaut, R. Pellerin, A. Hajji, N. Perrier, A path relinking-based scatter search for the resource-constrained project scheduling problem, Int. J. Proj. Organ. Manag. Sci. 10 (1) (2018) 1–36, https://doi.org/10.1504/IJPOM.2018.090372. [56] S. Proon, M. Jin, A genetic algorithm with neighborhood search for the resourceconstrained project scheduling problem, Nav. Res. Logist. 58 (2) (2011) 73–82, https://doi.org/10.1002/nav.20439. [57] D.W. Zimmerman, B.D. Zumbo, Relative power of the Wilcoxon test, the Friedman test, and repeated-measures ANOVA on ranks, J. Exp. Educ. 62 (1) (1993) 75–86, https://doi.org/10.1080/00220973.1993.9943832. [58] E.A. Gehan, A generalized Wilcoxon test for comparing arbitrarily singly-censored samples, Biometrika 52 (1–2) (1965) 203–224, https://doi.org/10.2307/2333825. [59] E.D. Dolan, J.J. Moré, Benchmarking optimization software with performance profiles, Math. Program. 91 (2) (2002) 201–213, https://doi.org/10.1007/ s101070100263. [60] J. Batselier, M. Vanhoucke, Construction and evaluation framework for a real-life
17
Automation in Construction 111 (2020) 103052
H.F. Rahman, et al. project database, Int. J. Proj. Manag. 33 (3) (2015) 697–710, https://doi.org/10. 1016/j.ijproman.2014.09.004. [61] P.-H. Chen, H. Weng, A two-phase GA model for resource-constrained project scheduling, Autom. Constr. 18 (4) (2009) 485–498, https://doi.org/10.1016/j. autcon.2008.11.003. [62] D.-H. Tran, M.-Y. Cheng, M.-T. Cao, Solving resource-constrained project scheduling problems using hybrid artificial bee colony with differential evolution, J. Comput. Civ. Eng. 30 (4) (2016), https://doi.org/10.1061/(ASCE)CP.1943-5487.
0000544. [63] D. Castro-Lacouture, G.A. Süer, J. Gonzalez-Joaqui, J.K. Yates, Construction project scheduling with time, cost, and material restrictions using fuzzy mathematical models and critical path method, J. Constr. Eng. Manag. 135 (10) (2009) 1096–1104, https://doi.org/10.1061/(ASCE)0733-9364(2009)135:10(1096. [64] X. Hu, N. Cui, E. Demeulemeester, L. Bie, Incorporation of activity sensitivity measures into buffer management to manage project schedule risk, Eur. J. Oper. Res. 249 (2) (2016) 717–727, https://doi.org/10.1016/j.ejor.2015.08.066.
18