Solving resource-constrained construction scheduling problems with overlaps by metaheuristic

. The paper concerns the problem of roadworks scheduling executed in the flow-shop system. Works may be performed parallelly with the acceleration (overlaps) of construction project, i


Introduction
Construction project planning processes are usually carried out using techniques based on the critical path method (CPM) (Mattila, Park 2003). CPMs have evolved (from simple diagrams to sophisticated commercial computer programmes used today) for over 40 years. The network scheduling of continuous linear processes has been presented in many papers dealing with graphical network planning techniques (e.g. Lucko, PeñaOrozco 2009;Arditi et al. 2001;Hegazy 1999;Johnston 1984). Construction process synchronization problems have been solved for linear engineering structures (i.e. railways, motorways, etc.). Novel network planning methods have been proposed by Hamerlink and Rowings (1998) and Harris and Ioannou (1998). Solutions to many specific problems can be found in works by Chrzanowski and Johnston (1996), Harris and Ioannou (1998) and Zavadskas et al. (2010). Solutions of production scheduling are provided by Karwat (2012) in industrial application. For linear scheduling methods applied to construction projects scheduling -deterministic (e.g. O'Brien 1969;Hamerlink, Rowings 1998;Mattila, Abraham 1998;Harris, Ionnou 1998;El-Rayes, Moselhi 2001) as well as fuzzy and probabilistic (e.g. Moselhi, Lorterapong 1995) -an optimization process is executed for a fixed order of tasks. In this paper we allow to change the order of the executed tasks, which situation takes place when a company performs construction projects (e.g. roadworks) on several working fronts parallelly. That is why we propose robust metaheuristics approximate methods for minimization of such construction projects make spans.
There is a number of applications designed to create construction projects schedules in literature. However, if the model is equal to NP-hard optimization problem, then existing algorithms for real-life data (hundreds of jobs) are not able to find an optimal solution in a reasonable time (computational complexity is exponential). Therefore, approximate algorithms are usually applied (Bożejko et al. 2012).
The development of optimization methods, particularly applied to resource-constrained scheduling, has proceeded towards modern and more effective sequence approaches since the beginning of this field. At the end of the 1970s, the turning point in the combinatorial optimization methods was the branch and bound (B&B) method regarded those days as a remedy for nearly all problems of great size which could not be solved by means of methods applied at that time. However, it soon occurred that Downloaded by [Centrum Wiedzy i Informacji Naukowo-Technicznej] at 04:32 27 October 2014 the B&B method only slightly extended the scope of solvable problems (e.g. for a sum-cost, single-machine scheduling problem this size extended from 20 to 40-50 tasks). What is more, the cost necessary to obtain an optimal solution is much too high compared to economic benefits and its use in practice. The conclusion of these investigations was the definition of a bounded area of the B&B scheme application.
The next breakthrough concerned the occurrence of advanced approximate methods: dedicated for a particular problem as well as metaheuristic (general schemas) -first the simulated annealing method and next the method of genetic algorithms and the tabu search method. Until around 2005 several dozen of different metaheuristics had been proposed (i.e. scatter search, ant colony optimization, particle swarm optimization, genetic programming, etc.) though again those methods reached the limit of their abilities to the moment where the size of effectively solvable problems (i.e. these for which an average deviation from the optimal solutions was smaller than 1%) might be shifted to a number reaching thousands, but not millions or hundred millions. Eventually the concept of "no-free-lunch" by Wolpert and Macready (1997) finished the discussion. With reference to rough methods this concept may be paraphrased in the following way: without using special attributes of examined problems considerable advantage of one metaheuristic over the other cannot be obtained. Nowadays, the classification of scheduling algorithms are: (1) analytical (exact) algorithms; (2) heuristic (dedicated) methods; and (3) metaheuristics.
In this paper we are using the newest achievements in this field applying algorithms which have proved to be very effective in solving classic optimization problems such as traveling salesman problem (TSP) or flow shop problem (Rogalska et al. 2008). We are proposing not only a description of the problem, but also a mathematical model and its solving algorithms. What is more, we prove specific properties (according to "no-free-lunch" theorem), significantly accelerating the calculations performed by algorithm based on tabu method. The whole procedure is illustrated on the example of a certain part of a road divided into several segments, on which the same works are performed in the same sequence (some of them start in advance).

Construction project problem with overlaps
We are considering the construction work (Construction Project with Overlaps, in short denoted by CPwO) involving execution of many construction projects. Each project consists of the same number of works to be done in a fixed sequence (the same for each object) set by the technological order. The works are performed by different brigades. There are data of work execution times and overlapping times given. The problem consists in determining the starting and ending dates of individual work performance on the projects, which minimize the completion date of all the projects that meet the following restrictions: (i) each work can be performed only by a single, defined by a technological order, brigade; (ii) neither brigade can perform at the same time more than one work; (iii) for each project there must be a technological order maintained, i.e. the same order of work execution; (iv) execution of any work cannot be interrupted before it is completed; (v) any work can be started in advance (with overlapping), i.e. before the end of the one preceding it in the technological order; (vi) any work cannot be completed before the end of the one preceding it in the technological order. The optimization issues related to the scheduling of construction works are usually formulated as discrete optimization problems, namely, works scheduling on machines, where projects correspond to tasks, works correspond to operations and brigades to machines. In the further part of the paper we will use definitions and designations used in tasks scheduling theory.
The above considered construction project with overlaps (CPwO problem in short) can be defined as follows. There is a set of jobs: The set of all operations: the permission for 'overlapping' of subsequent job's operations, or the start of the next job's operation with some time delay compared to the start of the current operation and before its completion. We assume that the "overlapping" of the first operation of each task is equal to 0. We introduce the following variables: S -due date of all the operations start (without loss of generality we assume 0 S = ); max C -searched date for ending of all operations.
O nm Remark 1. Date of completion of the tasks performed in the order π : m n C C π π By Φ we denote the set of all permutations of the solution of tasks from .
J The solution to the herein considered problem of construction project with overlaps CPwO (i.e. equivalent to problems of tasks scheduling defined by the constraints (1)-(8)) is to determine the optimal permutation * π ∈ Φ such that: The problem which is presented in this section concerns construction projects scheduling in which -using the language of automation -jobs should start on the next machine before being finished on the previous one. In a classical permutation flow shop problem each of jobs should be carried out one after the other; moreover, the sequence of carrying out jobs on each machine has to be the same; start of carrying out a job on a next machine has not to follow until it is finished on the previous machine. Optimization consists in determining such a sequence of carrying out jobs that it will minimize the total times of carrying them out.
In the literature there were different generalizations and special cases of the problem CPwO considered. They cover both the objective function and the constraints. If we assume that the acceleration times (overlaps) we get a classical permutation flow shop problem with the C max criterion. In literature this problem is denoted by and is strongly NP-hard (from this fact it follows that CPwOproblem is also NPhard). Although for over 30 years intensively examined permutational flow problem is already classical optimization problem nowadays, however there are still no satisfactory algorithms of its solving, in particular for practical instances of big sizes. Instances which are not bigger than 20 jobs and 5 machines can be solved, in a reasonable time, by exact algorithms based on the branch and bound method. In last years many algorithms of the max | | F perm C problem based on tabu search method (Grabowski, Wodecki 2004), genetic algorithm (Reeves, Yamada 1998;Bożejko, Wodecki 2004), parallel algorithm, scatter search (Bożejko, Wodecki 2008) and simulated annealing (Ishubuchi et al. 1995), parallel algorithm  have been published. Generally, the quality of defined by these algorithms solutions is dependent, to a large extent, on their operation time. The higher the time, the bigger subset of the set of acceptable solutions is searched (directly), which increases the opportunity to find a good solution.
Many works are also devoted to the flow-shop problem with transportation time (i.e. transport times of jobs between machines). Work of Gupta and Stafford (2006) is a classical study of the problem. The latest results and literature review are presented in the works of Gupta (2012) and Lamoudan et al. (2011).

Graph model
For any feasible solution, i.e. the order of execution of tasks on machines (permutations) = ( (1), , ( )) n π π π … , we construct a directed graph with burdened vertices and arcs ( ) = ( , ( )) G V A π π , where a set of vertices V O = (vertices correspond to operations), and ( ) ( ) A R E π = ∪ π and a set of arcs, where: The set R contains arcs connecting consecutive operations of the same task (they represent the technological order). These are called vertical arcs; Downloaded by [Centrum Wiedzy i Informacji Naukowo-Technicznej] at 04:32 27 October 2014 Arcs from the set ( ) E π combine the operations performed by the machine, setting the sequence of tasks (the same on each machine). These are called horizontal arcs.
Vertices and arcs of the graph are loaded with weights. Weight of vertex The weight of vertical arc weights of all other arc (horizontal) equal 0. Figure 1 shows part of the graph ( ), G π π ∈ Φ (without marked burdens of vertices and arcs).
w v Its length is equal to the sum of the weights of vertices and arcs (including the weight of the first and last vertex). By ( , ), , P u v u v O ∈ we denoted the critical path, i.e. the longest path in the graph from vertex u to v , and by ( , ) L u v -the length of the path. Example 1. Figure 2 shows a fragment of a permutation graph (1, 2,3, 4,5, 6, 7) π = for data taken from the Table 1. A sequence of vertices The permutation π ∈ Φ is a feasible solution of the CPwO problem if and only if the graph ( ) G π does not contain cycles.
Remark 3. Time of jobs execution, according to the solution π ∈ Φ equals to the length of the critical path (i.e. the longest path) of the graph ( ).
is a critical path in the graph ( ). G π Solving the CPwO problem boils down to determining such a feasible solution π ∈ Φ for which the corresponding graph ( ) G π has the shortest possible critical path.
Let π ∈ Φ be a feasible solution. By ( ) denote the critical path in the graph ( ). G π This path can be partitioned into subsequences of vertices (subsequences of operations): such as: (a) each subsequence contains successive operations executed directly one after another on the same machine; (b) cross-section of any two subsequences is an empty set; (c) each subsequence is a maximum (due to inclusion) the subset of the operations. Subsequence , of operations from the critical path executed on the k-th machine is called a block (Wodecki 2009).
Remark 5. Any block contains exactly one operation from each task.
are respectively the first and the last in a sequence. In turn a block without the first and the last job (ˆk B ) we call an internal block. The definitions given are presented on the Figure 3. be a sequence of blocks in a permutation . π ∈ Φ We are considering the k-th block: π + π − π and its length: , ( ) , ( ) Let β ∈ Φ be a permutation generated from π by changing the order of the tasks of the internal block ˆ, k B i.e. tasks from a set of tasks: From definition of a permutation β results that: and there appears equality of sets: In the graph ( ) G β we are considering certain path from vertex 1, (1) , ( ) , ( ) .
From definition of a permutation β results that the length of some paths in graphs ( ) G β and ( ) G π are the same, in particular: , .
(because the critical path is the longest path in the graph). Thus max max ( ) ( ) ( ). C L W C β ≥ = π We have shown that there exists a path W in the graph ( ) G β which length equals: Because max ( ) C β is the length of the longest path in the graph ( ) G β , therefore: From Eqns (9) and (10) we have max max ( ) ( ). C C β ≥ α In this way we have proved that if the permutation β was generated from π by changing the order of tasks in some internal block, then the length of the critical path max max ( ) ( ), C C β ≥ π which completes the proof. The change of operations order in any block does not generate the solution with lower value of the cost function. At least one operation from any block should be moved before the first or after the last operation of this block to generate the solution (graph) with smaller length of the critical path. We use this property to reduce the neighborhood size, i.e. to omit generating solutions with greater values (comparing to the current solution) of the cost function. Downloaded by [Centrum Wiedzy i Informacji Naukowo-Technicznej] at 04:32 27 October 2014

Solution algorithms
In the literature several criteria of classification methods for solving NP-hard problems are used. With reference to the determined solutions the following methods are distinguished: − exact methods; − approximation methods. Exact (optimal) methods, due to their exponential computation time, are of little use in practice. With their use, it is possible to solve only small size instances within a reasonable time. Even constantly increasing power of computers cannot significantly affect the increase in the size of examples solvable in acceptable time. Therefore, to solve NP-hard optimization problems there are almost exclusively approximate methods used. However, they do not give a guarantee that the determined solution is optimal. In reference to the way in which the solutions are determined algorithms can be divided into three main classes: − construction algorithms; − correction algorithms; − metaheuristc algorithm.
Hereby considered CPwO problem is an important generalization of the flow shop problem. In recent years, many metaheuristic algorithms, solving the above mentioned flow shop problem, have been published. The best of them are based on tabu search method parallel algorithm (Grabowski, Wodecki 2004;. Solutions determined by them, for a representative group of examples, are only slightly different from the best currently known in the literature. Therefore, in order to solve the CPwOproblem we will use the tabu search algorithm. Construction algorithm. To determine the starting solution, for the tabu search algorithm, we have used a modified version of the NEH algorithm (Nawaz et al. 1983). This algorithm is considered to be the best algorithm for solving a classical design flow shop problem with the criterion max C . Based on computational experiments carried out on a representative group of examples, the mean relative error set by the NEH algorithm of solutions does not exceed 5%.

Algoritm MNEH
Step 1: Number the tasks so that: Step 2: for := 2 k to n to insert task k in one of the positions 1, 2, , k … in subpermutation π so that the value of the objective function (i.e. the date of tasks completion) was minimal. Computational complexity of the algorithm equals O(m + nlnn).
Tabu search method. This method was proposed by Glover and Laguna (1997) and then developed by other authors (Nowicki, Smutnicki 1996;Grabowski, Wodecki 2004). Tabu search (TS) is a modification of the local search method. In the basic version the TS method starts its operation of a certain initial solution x 0 ∈ X, where X is a set of the all feasible solutions. In the basic step of this method the whole neighbourhood N(x i ) of a solution x i is searched. Neighbourhood is defined by movements which can be performed with x i . The search aims at finding in N(x i+1 ) a solution with the smallest cost function value. The process of searching is continued till the best found solution.
To prevent the cyclic repetitions of solutions, stopping in a local extreme and to direct search into promising solutions areas there has been introduced the history memory of searching in the form of tabu list (so-called tabu list). On this list the definite number of recently "visited" solutions (basic solutions) is stored. These solutions are not remembered directly, but as some of their "attributes". That's why tabu arising from a particular iteration refers also to solutions which have been previously basic solutions. To weaken this constraint, additionally some aspiration function for the tabu solution is defined. If value of this function is smaller than the given level, then the solution is not treated as tabu. In the course of performing next iterations, it's remembered the best found solution * x in the sense of cost function value and corresponding to the value of this function. Searching stops at the moment of starting working appropriate alloy's conditions. Summing up, the tabu method includes the following basic elements: initial solution -a solution from which an algorithm starts its operation; movement -a function transforming one solution into another; neighbourhood -a set of solutions which are possible to obtain from a determined solution by means of a class of movements; tabu list -a list including attributes of movements or solutions for determined number of recently examined solutions; completion condition -a situation in which an algorithm ends up its operation e.g. (1) was performed the determined beforehand number of iterations; passed the algorithm's operation time, (2) in successive iterations the cost function value was constant.
Moves and neighbourhood. In the literature we can meet many types of a move based on interchanges of jobs on a machine. The intuition following from Theorem 1 suggests that the "insertion" type move should be the most proper one for the problem considered. Roughly speaking, the insertion move operates (see Wodecki 2009;) on a sequence of jobs on a machine and removes a job placed at a position in this sequence and inserts it in another position of the sequence. More precisely, let k B , = 1, 2, , k m … be the k th block in a permutation . π ∈ Φ For the job Downloaded by [Centrum Wiedzy i Informacji Naukowo-Technicznej] at 04:32 27 October 2014 let us denote by ( ) k N j a set of permutations created by moving the job ( ) j π to the beginning of the block k B (before the first job in block ( )). The neighbourhood of the solution π has the form of: The number of elements of this neighbourhood is limited in advance by n.
Tabu List. Let k l π be the permutation obtained from π by removing job the ( ) k π from its original position , k and next inserting it in the position l in π ( k l i move).
To prevent generating a cycle in the graph ( ) G π some attributes of each movement are put on the list of tabu moves, which is served as the FIFO queue. We put the move's attribute, the triple ( ( ), , ( )), k l k l F π π on the tabu list .

L
Let us assume that we analyze a move k l i which generates the permutation k l β from . β∈ Φ If the triple ( , , ) r j Ψ such that ( ) , k r β = l j = and ( ) k l F β ≥ Ψ is on the TS L list, such a move is forbidden. The only parameter of this list is its length (the number of its elements). There are many realizations of the tabu list presented in the given references (Glover, Laguna 1997;Grabowski, Wodecki 2004).
The algorithm stops (completion condition) after Max_iteriterations.

Case study
During planning the road works execution, e.g. a road repair, the whole project can be divided into working parcels with different sizes whose boundaries are set for instance by crossroads/intersections with existing road paths. The sequence of taking actions on parcels by working teams will affect not only the total time of the whole project, but also the time of machines or working brigades delays. The problem of setting the optimal sequence of doing works on individual parcels in regard to the established criterion, for example the minimal time of carrying out a project, the minimal time of the working brigades delay or working costs concerning jobs sequencing.
To make a right division of works, it's necessary to determine the kind of works according to the general classification. The general works classification in the road and bridge construction is presented as follows: 1) preparatory works; 2) earthworks; 3) lands and pavements consolidation; 4) profiled lands and gravel pavements building; 5) reinforcement of soil-surfaced road pavement and subgrade; 6) broken stone pavement building; 7) asphalt concrete pavement building; 8) cement concrete pavement building; 9) repairing, conservation, maintenance and reconstruction of pavement; 10) production, conversion and purification of aggregates including aggregates usage obtained in the process of recycling; 11) loading, unloading and transport works; 12) bridges and culverts building; 13) energy production and transfer; 14) old objects demolition.
Example 1. We are considering a project for the construction of a section of a road, which was divided into seven segments: s1, s2, s3, s4, s5, s6, s7. Figure 4 shows a diagram of the works to be performed on each of the segments.
The technological order of works is as follows: w1 -earthworks; w2 -sand drainage blanket preparation; w3 -preparation of broken-stone or macadam foundation; w4 -binding course preparation with asphalt mediumgrained concrete; w5 -surface course preparation with asphalt fine-grained concrete; w6 -roadsides preparation with stone dust; w7 -drainage process; w8 -planting and eventual topsoil removal. For each of the segments the works should be done in a flow-shop system, i.e. in the following order: (w1, w2, w3, w4, w5, w6, w7, w8). It is possible to start the implementation of the next job before the end of the previous one (overlap). Figure 5 shows one of the segments under construction. Some of the works are done in advance (in parallel). Figures illustrating the issue of a construction project example are given in Table 1. We are presenting a special case of general works classification mentioned above, namely, the national road section, which consists of eight activities. Figure 6 shows works scheduling for a single road segment s1 (the arrows indicate the order of execution of separate works). Total time of works completion took 42 workdays. The work w1 is performed within 19 days. Two days before the end of the work w1,w2 work begins (overlap for this work is 2, see Table 1). If the acceleration for each work from the segment s1 was equal to 0 (as in the classic flow-shop system), then, in order to execute all the works in this segment, we would need 114 days.
As in literature there are no solving algorithms for the problem considered, the quality of solutions (in the sense of the cost function value) generated by the ATS algorithm has been compared to solutions obtained by the MNEH algorithm. Additionally, there have been created instances of the problem of the small sizes nxm: 10×10. For these instances the optimal solution has been determined by a total searching of the solutions set (by the branch and bound, B&B algorithm). The obtained values have been compared to results which MNEH and ATS algorithms have provided.
To determine the initial permutation for the ATS algorithm the appropriately adopted MNEH algorithm has been applied. The adaptation of the this algorithm for the need of the algorithm discussed here has consisted in considering the transport times of jobs between machines during determining the cost function value for each solution processed in the algorithm.
For each problem instances the following values have been calculated: C -the cost function value obtained by the ATS algorithm; PRD(A) -the relative percentage deviation to the  Table 2 presents the percentage relative deviation to the MNEH algorithm for the tabu search algorithm considered. Table 3 shows the cost function value for the optimal solutions and solutions obtained by the MNEH and the tabu search algorithms. Average relative deviation of the constructive MNEH was on the level of 3.32%. The proposed tabu search found optimal solutions for all the examples (average relative deviation was 0.00%). Downloaded by [Centrum Wiedzy i Informacji Naukowo-Technicznej] at 04:32 27 October 2014 The proposed ATS algorithm as well as MNEH were also tested for the classic flow shop problem, i.e. for zero overlaps. The percentage relative deviation of the tabu search and the MNEH algorithms to the Taillard's (1993) reference solutions are presented in the Table 4. Average relative deviation to the best known solutions was on the level of 3.25% for the MNEH algorithm, 0.19% and 0.07% for the proposed tabu search algorithm, for 1000 and 5000 iterations, respectively. Our algorithms MNEH and ATS was coded in C++ and executed on a PC with Intel Celeron 1.73 GHz processor. Computations times were at most few seconds.
From the perspective of practitioners of construction industry, there is an attempt to synchronize a number of works in time and space in scheduling of construction projects by flow-shop system. Computational experiments presented above gives practitioners an useful algorithms (ATS and fast MNEH) which can be embedded into expert systems and tool engineering computer appli-cations, e.g. as it was shown in the work Bożejko et al. (2012).

Application of the proposed method to the case study
Apart of the benchmark data presented above, the practical data, referring to the building of road segments with different length, have been considered. In Table 1 here have been included data presented as the total times of actions on working segments represented as workdays. The ATS algorithm has been applied to data from Table 1.
The algorithm work has resulted in a solution π = (4,2,5,7,6,1,3) for which the cost function value is max C = 75 (workdays). In the Figure 8 there is presented a building schedule for individual road segments for the obtained permutation π . The cost function value in case of scheduling for the permutation accordant to the segments numeration (natural permutation) (1, 2,3, 4,5, 6, 7) π = (Fig. 7, max C = 78) is bigger than for a scheduling achieved from results of the ATS algorithm operation (Fig. 8, max C = 75). The algorithm executed 20 iterations and computations time did not exceed 0.1 sec. In order to examine the effectiveness of the method there were additional calculations performed. They were carried out in two stages: 1. Using the algorithm of solving the flow shop problem (flow shop problem without acceleration of works) stated in the work of Grabowski and Wodecki (2004) (Table 1), moved up to the left (reduced) schedule of individual works was obtained. This resulted in a solution C max = 98 workdays. Taking into account the acceleration of works already in the mathematical model of the issue provides a significant reduction (by over 20) of the completion time of the construction process.

Conclusions
We have discussed the problem of road projects scheduling in this paper. Moving the issues of construction scheduling in the field of classical scheduling theory one can encounter many difficulties associated with the selection of the correct model (a type of an issue), and the corresponding algorithm. For they are usually completely new, with many nonstandard constraints, strongly NP-hard combinatorial optimization problems. In order to solve them one can use the most up-to-date effective methods of algorithm construction (metaheuristics): simulated annealing, genetic algorithm, tabu search, neural networks, ant colony optimization, etc. On the basis of our theoretical research, experimental computations and the results presented in the literature (including "no free lunch" theorem) it can be stated that none of these methods is generally better than the others. Effective solving of NP-hard problems requires a proper choice of algorithm design methods and the use of specific properties of the problem.
We propose to use the new flow shop scheduling model with overlaps. Tabu search metaheuristics has been adopted to solve the problem with the use of the new so-called block properties which were introduced in the paper. Although the limitation of the proposed algorithms does not guarantee optimality of the generated solutions, however, solutions determined by the ATS algorithm are very close to optimal (for large examples of the 500 jobs the average percentage relative deviation to optimal ones equals 0.07%). The above mentioned algorithm is deterministic and guarantees repetition of calculations. Therefore, the obtained results show the efficiency of the proposed method, which is especially visible for data instances of the large size, as well as for the practical data of the small and medium sizes, for which the proposed tabu search approach gives optimal solutions.
Presented in the paper method allows its practitioners for a better analysis of the actual construction process and to determine the optimal (or close to optimal) schedules. This enables efficient use of not only equipment but also personnel and a better estimation of the time (and cost) of construction, which has a direct impact on the financial situation of construction companies.