Computers & Industrial Engineering 72 (2014) 230–238
Contents lists available at ScienceDirect
Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie
The impact of fixed and variable costs in a multi-skill project scheduling problem: An empirical study Isabel Correia a,⇑, Francisco Saldanha-da-Gama b a b
Departamento de Matemática/Centro de Matemática e Aplicações, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa, 2829-516 Caparica, Portugal Departamento de Estatística e Investigação Operacional/Centro de Investigação Operacional, Faculdade de Ciências, Universidade de Lisboa, 1716-049 Lisboa, Portugal
a r t i c l e
i n f o
Article history: Received 10 July 2013 Received in revised form 22 January 2014 Accepted 26 March 2014 Available online 3 April 2014 Keywords: Project scheduling Multi-skilled resources Cost minimization
a b s t r a c t In this paper, we address a cost-oriented multi-skill project scheduling problem. The project consists on a set of activities such that, for some pairs, a start-to-start time dependency exists. The execution of each activity requires several skills. More than one resource of each skill may be required for processing an activity. A pull of multi-skilled resources is assumed. Costs are associated with resource usage and include fixed and variable costs. The former are incurred simply by using the resources; the latter depend on the final makespan of the project. For this problem, a mathematical programming modeling framework is proposed. The ‘natural’ model contains a non-linear objective function which, nonetheless, can be linearized at the expense of one additional set of continuous variables. The linearized model is enhanced using several sets of additional inequalities. The results of an extensive set of computational tests performed with the final model are reported. One major goal is to evaluate the possibility of using an off-the-shelf solver for tackling the problem. Another relevant goal is to understand the extent to which a cost-oriented objective influences the solutions obtained. Accordingly, we compare the solutions obtained using such objective with the solutions obtained using the traditional makespan minimization objective, often considered in project scheduling problems. Ó 2014 Elsevier Ltd. All rights reserved.
1. Introduction In the basic version of a project scheduling problem, a set of time dependent activities has to be scheduled in order to minimize the total time span for executing the project. A well-known extension to this problem is the resource-constrained project scheduling problem (RCPSP). In this case, each activity requires the use of resources which are available in limited quantities. For each activity, in addition to its processing time, we need to consider the corresponding resource requirements. This is a topic which has attracted much attention in the literature. Many variants and extensions of this problem have been studied (the reader should refer to Hartmann & Briskorn (2010), Weglarz, Józefowska, Mika, & Waligóra (2011) and to the references therein). In the basic setting of the RCPSP, each resource has a single capability or skill. However, in many practical applications, resources are multi-skilled. This is often the case when human resources are involved. The inclusion of this feature in a problem leads to a multi-skill project scheduling problem. In this type of
⇑ Corresponding author. Tel.: +351 212948388. E-mail addresses:
[email protected] (I. Correia),
[email protected] (F. Saldanha-da-Gama). http://dx.doi.org/10.1016/j.cie.2014.03.020 0360-8352/Ó 2014 Elsevier Ltd. All rights reserved.
problems, it is assumed that each activity requires several skills. For each skill, it is known the quantity of work necessary to execute each activity. There is a pull of multi-skilled resources that can be allocated to the activities. Each resource has one or several skills. It is usually assumed that in each moment, a resource can contribute with at most one skill to one activity and remains allocated to the activity during its execution. In other words, the activities’ skills requirements refer to the presence of a set of resources that possess the necessary capabilities. Additionally, the combined workforce allocated to each activity stays together for the duration of the activity. This is the case, for instance, when one wants to schedule maintenance and installation operations. Different types of multi-skill project scheduling problems have been addressed in the literature. Bellenguez and Néron (2005), Bellenguez-Morineau (2008) and Bellenguez-Morineau and Néron (2007) study the problem assuming that there are unavailable periods for the resources. The goal in these works is to minimize the project makespan. Additionally, Bellenguez and Néron (2005) consider hierarchical levels for the skills. In particular, different levels of efficiency are associated with each resource for performing each skill. For each activity, not only we need to know the skills it requires but also the execution levels of such skills. More than one resource may be required for each combination skill/level.
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238
Li and Womer (2009) consider a multi-skill project scheduling problem assuming that each skill required by some activity asks for exactly a single resource. The objective is to minimize the total fixed-cost associated with the resources. Firat and Hurkens (2012) consider a multi-skill work loading problem. Different levels of efficiency are considered for each skill. Each activity has requirements for each skill/level combination. The goal is to determine the workloads of teams so that the number of tasks processed in each workday is maximized. More recently, Correia, LampreiaLourenço, and Saldanha-da-Gama (2012) have studied a makespan minimization multi-skill project scheduling problem. Each activity may require any number of skills and for each skill more than one resource may be necessary. Finally, it is worth making a brief reference to the fact that multi-skill resources have also been considered in the context of multi-project problems. Note, however, that this is done is a totally different context. For instance, no sequence decisions are to be made. Works in this direction are those presented by Gutjahr, Katzensteiner, Reiter, Stummer, and Denk (2008) and Heimerl and Kolisch (2010). In the large majority of the works that can be found in the literature on the above problems, time is the driving factor defining the performance measure to take into account and eventually to optimize. Accordingly, one finds objective functions such as the makespan or the maximum lateness (when due dates are involved). This is true, in particular, for the multi-skill project scheduling problem. However, in practice, although being true that managers consider time as an important aspect, it is also true that they are often more concerned with the costs involved in a project. In this case, labor costs, assume a relevant role. For the classical RCPSP, the need for a cost-oriented objective function is captured in several works. This is the case with the so-called resource investment problem introduced by Möhring (1984). The problem consists in allocating resources to a project in such a way that a given deadline is satisfied. The objective is to minimize the costs associated with the resources which are assumed to be renewable. This problem was studied by other authors namely by Drexl and Kimms (2001), Neumann and Zimmermann (2000), Neumann, Schwindt, and Zimmermann (2002), Ranjbar, Kianfar, and Shadrokh (2008) and Yamashita, Armentano, and Laguna (2007). Nübel (2001) proposed the socalled resource renting problem in which renewable resources have to be rented. In particular, for each resource the author considers the existence of a (fixed) procurement costs and a (variable) renting cost. The objective is to minimize the total resource availability costs (which include procurement and renting). A deadline is prescribed for the project conclusion. By setting the renting costs to zero the problem reduces to the resource investment problem. In the context of multi-skill project scheduling problems, to the best knowledge of the authors, Li and Womer (2009) is the only work addressing a cost-oriented problem. Fixed costs are associated with the resources. In the computational experiments these costs are set to 1, i.e., the number of resources used in the project is to be minimized. Therefore, the impact of considering different cost structures is neglected. In this paper, we aim at deepening the knowledge on cost minimization multi-skill project scheduling problems. We consider the basic situation in which each activity requires one or several resources for each skill that must be considered for performing the activity. We assume fixed and variable costs associated with the resources. For each resource, the variable cost is a means for weighting the total time that the resource is involved in the project. Furthermore, resources are assumed to be distinct in terms of the variable costs. For instance, resources with more skills may be more costly than resources with less skills. The goal in this problem is to schedule the activities and allocate resources to them in order to minimize the total cost associated with resource usage.
231
A constraint is considered assuring that the total time span for executing the project stays below a prescribed deadline. The motivation for doing so, is the well-known fact in the area of project management and scheduling that no clear trade-off exists between time and cost. In fact, these two factors are often conflicting and one possibility for overcoming this conflict is exactly to minimize the cost but imposing a constraint on the total duration of the project. This way, a useful tool is given to the decision maker allowing a deeper insight on how time and costs relate with each other. The general framework just described is illustrated in Fig. 1 and is motivated by the need felt by many companies (construction, software development, etc.) to contract workforce for undertaking a specific project. The major goal in such cases is to minimize the labor cost assuring an acceptable execution time for the entire project. We consider a mixed-integer linear programming approach for the problem. Initially, a ‘natural’ non-linear mathematical programming formulation is proposed and discussed. We show that the non-linearities can be removed at the expense of a new set of continuous variables. Several sets of inequalities are discussed for enhancing the model. The possibility of using a commercial solver for tackling the problem is explored as this is a tool available to the common decision maker in a company. An extensive set of computational experiments is reported and analyzed in order to give a clear perception on how the different types of costs considered influence the solutions obtained. Furthermore, we compare the solutions obtained with those resulting from a classical makespan minimization objective. The current paper goes beyond the existing literature on multi-skill project scheduling problems by considering a general cost-oriented objective function comprising fixed and variable costs. As mentioned above, non-linearities arise, which nonetheless, can be removed but at the expense of an extra set of continuous variables. The modeling considerations presented are of great relevance for practitioners who wish to solve real world problems. We perform an extensive empirical study for evaluating (i) the tractability of the enhanced mixed-integer linear programming formulation proposed using an off-the-shelf solver, (ii) the impact of the different types of costs (alone and combined) on the difficulty in solving the problem (iii) the extent to which the solutions change by considering a cost-oriented objective instead of a makespan one, (iv) the extent to which different economies of scale in the costs influence the results. We use as a basis for making comparisons, the solutions obtained by Correia et al. (2012) for a makespan minimization problem. The remainder of the paper is organized as follows. In Section 2 a mathematical programming modeling framework is proposed for
Fig. 1. General underlying framework for a cost minimization multi-skill project scheduling problems.
232
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238
Precedence relations defined in the set E imply other (nondirect) precedences. In fact, if some activity i1 precedes i2 and i2 precedes i3 then i1 precedes i3 . The following additional set can now be defined: A ¼ fði; jÞ 2 V V:
no direct or transitive precedence exists between i and j}
This set contains the pairs of activities which can be processed simultaneously with respect to the temporal and resource constraints (feasible anti-chain). Initially, in this set, we only include the pairs of activities such that no precedence relation exists between them. Afterwards, using some preprocessing it will be possible to remove some pairs from that set due to incompatibilities arising from the resource constraints. Parameters: Fig. 2. Components for a mathematical model.
ril the problem. In Section 3 several potential enhancements are proposed for the mixed-integer linear programming model arising from the previous section. In Section 4 the empirical study is conducted. The paper ends with the conclusion drawn from the work done. 2. Mathematical model
L ¼ f1; . . . ; l; . . . ; Lg Li Lk
pi d ck
Cost per unit of time in which resource k 2 R is in the project. Fixed cost for using resource k 2 R in the project.
fk
We assume that the project is represented by an activity-onnode network N ¼ ðV; EÞ, where V represents the set of activities and E represents the precedences between such activities. The network is acyclic and the weight of an arc is equal to the processing time of the activity corresponding to the initial node of the arc. Two dummy activities are considered: one represents the beginning of the project; the other represents the end. There are three main components underlying the construction of a mathematical model for the problem: sets, parameters and decisions. Such components are illustrated in Fig. 2. In this figure one can devise three main sets (skills, activities and resources), 5 types of parameters (fixed and variable costs – associated with the resources; processing time, resource requirements and project deadline – associated with the activities) and 4 types of decision (Starting time and sequencing – associated with the activities; resource allocation and resource usage – associated with the resources). We detail now all these components by introducing the notation. Sets: R ¼ f1; . . . ; k; . . . ; Kg V ¼ f0; . . . ; n þ 1g
Number of resource units with skill l 2 L required by activity i 2 V. Processing time for activity i 2 V. Dummy activities are assumed to have processing time 0. Deadline for the entire project.
Set of resources Set of activities to be executed. Activities 0 and n þ 1 are the dummy activities. Thus, n is the number of activities to be executed Set of skills Set of skills required by activity i 2 V Set of skills that can be performed by resource k 2 R
Throughout this paper 0 will be considered for the origin of time. Furthermore, it is assumed that parameters r il and pi are positive integers (i 2 V; l 2 L) and the costs ck and fk are positive (k 2 R). We introduce the following four sets of decision variables: Decision variables: Si : Starting time for activity i 2 V.
xilk
8 > < 1 if resource k contributes with skill l ¼ for activity i ði 2 V; k 2 Ri ; l 2 Lk \ Li Þ > : 0 otherwise
yij ¼
zk ¼
1 if activity i is completed before activity j is started 0 otherwise ði; j 2 VÞ 1 if resource k is selected to perform the project 0 otherwise ðk 2 RÞ
The cost minimization multi-skill project scheduling problem can be formulated as follows:
ðPÞ min
X ðfk þ ck Snþ1 Þzk
s:t: Sj P Si þ pi
i; j 2 V ^ ði; jÞ 2 E
ð2Þ
Sj P Si þ pi Mð1 yij Þ i; j 2 V ^ ði; jÞ 2 A X xilk ¼ ril i 2 V; l 2 Li
ð3Þ
Rl ¼ fk 2 R : l 2 Lk g
Set of resources with skill l 2 L
V k ¼ fi 2 V : Li \ Lk – ;g
Set of activities requiring skills that resource k 2 R has Set of resources with skills required by activity i 2 V
Ri ¼ fk 2 R : Li \ Lk – ;g
ð4Þ
k2Rl
X
Based upon the previous sets one can also define:
ð1Þ
k2R
xilk 6 zk
l2Li \Lk
X
xilk þ
l2Lk \Li
Snþ1
k 2 R; i 2 V k
X
ð5Þ
xjlk 6 yij þ yji þ 1
l2Lk \Lj
k 2 R; i; j 2 V k ^ ði; jÞ 2 A 6d
Si P 0 i 2 V
ð6Þ ð7Þ ð8Þ
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238
xilk 2 f0; 1g i 2 V; k 2 Ri ; l 2 Lk \ Li
ð9Þ
yij 2 f0; 1g i; j 2 V ^ ði; jÞ 2 A
ð10Þ
zk 2 f0; 1g k 2 R
ð11Þ
The non-linear objective function (1) quantifies the total fixed and variable costs associated with the resources. In particular, when a resource is used in the project, it is necessary to pay for the corresponding fixed cost as well as for the variable cost. The latter depends on the project makespan (Snþ1 ). This reflects the need in many real situations, to somehow have the resources allocated to the project until it is finished even if during some periods the resource is not used in any activity. As stated in the model above, the variable cost reflects this need. Constraints (2) are the precedence constraints. Constraints (3) assure an appropriate definition of the values for the sequencing variables by assuring that if yij is equal to 1 then activity j can start only after activity i is finished. In these constraints, M denotes a large value. Constraints (4) assure that for each skill required for each activity, the necessary resources are allocated. Inequalities (5) help to account for the fixed costs associated with the resources and assure that when a resource is used it can contribute to each activity with at most one skill. Constraints (6) assure that if one resource k is assigned to two activities i and j (assuming i; j 2 V k ) then, yij þ yji P 1, i.e., either i is performed before j or j is performed before i. Constraints (7) assured that the project is finished before the prescribed deadline. Finally, constraints (8)–(11) are domain constraints. Model P above has a non-linear objective function which, nonetheless, can be linearized. To do so we consider one additional set of decision variables to represent the time that each resource is involved in the project. In particular we define:
t k ¼ Snþ1 zk ;
k2R
ð12Þ
In fact, if some resource k is not used in the project (zk ¼ 0) then t k ¼ 0; otherwise, tk ¼ Snþ1 i.e., the resource is allocated to the project for its entire duration. Accordingly, a linearization for model P arises by including these new decision variables in the objective function and by considering additional constraints assuring consistency in the choice of the values for these variables. Hence, we get:
ðP1Þ min
X f k zk þ c k t k
ð13Þ
k2R
s:t: ð2Þ—ð7Þ k2R t k 6 dz k ðz 1Þ 6 t S þd nþ1
k
ð14Þ k
k2R
ð15Þ
ð8Þ—ð11Þ tk P 0 k 2 R
ð16Þ
Constraints (14) and (15) are the ones required to assure consistency in the choice of the variables. In fact, when zk ¼ 0 we get t k ¼ 0 (by (14) and (16)). Therefore, (15) becomes redundant (is As t has a positive equal to (7)); when zk ¼ 1 we have Snþ1 6 t k 6 d. k coefficient in the objective function and we are facing a minimization problem then in every optimal solution we will have tk ¼ Snþ1 . Compared with model P, model P1 represents an increase of jRj in the number of decision variables (although the new variables are continuous) and an increase of 2jRj in the number of constraints. Remark 1. An objective function such as the one considered in this paper allows studying the effect of the different types of costs together or separately. One particular case arising from this problem is the one in which one wants to minimize the number of resources used in the project. In this case, all variable costs are equal to 0 and all fixed costs are equal to 1.
233
3. Model enhancements The computational experience presented by Correia et al. (2012) for a makespan minimization multi-skill resource constrained project scheduling problem showed that the inclusion of several additional inequalities in the model considered resulted in a significant improvement in terms of the performance of a general solver when tackling the model. The inequalities considered in that work included time windows inequalities and inequalities based in incompatibility considerations. As the purpose in this paper is also to evaluate the possibility of using a general solver for solving the cost minimization problem at hand, such type of inequalities may also prove to be useful. 3.1. Time windows inequalities A simple set of inequalities that can be used to enhance model P1 is based on release dates and deadlines for each activity. They are very popular in mixed-integer linear programming formulations for project scheduling problems and can be used to enhance model P1 as follows. Let dij be the length of the longest path from node i to node j in the precedence network, i; j 2 V; i < j. As in the previous section, d denotes the deadline previously defined for the project. For each activity i 2 V denote by ESi and LSi its earliest starting time and its latest starting time, respectively. In project scheduling, it is well-known that activity i cannot start before time d0i , i.e., ESi ¼ d0i . On the other hand, taking into account that once activity i starts being processed one has to wait at least di;nþ1 until the project is finished, one can set d LSi ¼ d i;nþ1 . The observations above define a time window for the starting time of each activity i:
ESi 6 Si 6 LSi
ð17Þ
which can be added to the formulation proposed in the previous section. 3.2. Inequalities based on incompatibility considerations A second set of inequalities is based on the following definition: Definition 1. Two activities i; j 2 V; i; j – 0; n þ 1 are said to be incompatible if there is never a slot in time in which they can be executed simultaneously. The previous incompatibility concept has been proposed for the resource constrained project scheduling problem (see, for instance, Alvarez-Valdes & Tamarit, 1993 or Klein & Scholl, 1999) and was explored for a makespan minimization resource constrained project scheduling problem by Correia et al. (2012). By considering the availability of the resources as well as the skills and the corresponding amount of resources required by each activity it is not difficult to state sufficient conditions for incompatibility. Before doing so, consider two activities i and j and an auxiliary directed network N a ¼ ðV a ; Ea Þ (V a is the set of nodes; Ea is the set of arcs) built as follows: Apart from a source and a sink node two intermediate sets of nodes are considered in V a . –Each node in the first intermediate set is associated with a resource which can be allocated to at least one of the activities i and j. Hence, the first intermediate set of nodes is defined by the resources in Ri [ Rj . –The second intermediate set of nodes contains has all the skills required by at least one of the two activities. Hence, the second intermediate set of nodes is defined by the skills in Li [ Lj .
234
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238
The set of arcs Ea is defined as follows. –From the source node there will be an arc converging in each node in the first intermediate set with a minimum throughput 0 and capacity 1. –Each node in the first intermediate set will be linked to a node in the second intermediate set if the resource (node in the first set) has the skill (node in the second set). Again, the minimum throughput will be set to 0 and the capacity to 1. –From every node in the second intermediate set there will be an arc directed to the sink node. Each such arc has a minimum throughput and capacity equal to the number of resources required for the corresponding skill if both activities are executed simultaneously. If a feasible flow exists in this auxiliary graph then there are enough resources to execute i and j simultaneously. The following conditions emerge naturally as sufficient conditions for two activities i and j to be incompatible: 1. A precedence relation exists between i and j. 2. No feasible flow exists in the auxiliary network N a ¼ ðV a ; Ea Þ built as shown above. 3. LSi þ pi < ESj . 4. LSj þ pj < ESi . The concept of incompatibility can be straightforwardly extended to a triplet of activities fi; j; hg. In this case, it is also straightforward to extend the sufficient conditions 1 and 2 above. The knowledge of the sets of incompatible activities can be used to enhance model P1. This was first proposed by Alvarez-Valdes and Tamarit (1993) for the project scheduling problem and can be done here in exactly the same way. In fact, as mentioned before, if two activities i; j are incompatible, then either i will be executed before j or the other way round. Therefore, we can impose
yij þ yji ¼ 1
ð18Þ
because in this case we know in advance that it is not possible to have yij ¼ yji ¼ 0. If fi; j; hg is a triplet of incompatible activities then the following inequality is valid for P1:
yij þ yji þ yih þ yhi þ yjh þ yhj P 1:
ð19Þ
Note that the inequality above is only of interest if fi; jg, fi; hg and fj; hg are not incompatible otherwise the inequality is implied by (18) (using the appropriate indices). This inequality follows from the fact that if the three activities i; j; ; h are incompatible, then at least one of the variables involved in the previous inequality should be equal to 1. 4. Numerical experiments In this section we report the computational experience performed with model P1 and the enhancements proposed in the previous sections.
The computational experiments were performed using a subset of the test bed instances proposed by Correia et al. (2012) (the reader should refer to this work for all the details about the instances considered). In particular, we consider the subset of 54 instances with a skill factor of 0.5. In the instances generated by Correia et al. (2012) this corresponds to the situation in which, each activity requires 2 among the 4 existing skills. The number of activities is equal to 20. Each resource has 1, 2 or 3 skills. For each activity and for each skill it requires, the number of resources needed is in the set f1; 2; 3g. The number of resources varies in the set f10; 13; 15g and the network complexity (which is a measure of the density of the precedence network) varies in the set f1:5; 1:8; 2:1g. For each combination #resources/network complexity Correia et al. (2012) generated 6 instances. Thus, in total we have 54 instances in this set. Finally, in the context of the current paper, four possibilities were considered for the prescribed project deadline. The reference value is the best known value found by Correia et al. (2012) for the project makespan. Using this value, five multi – the deadline of the plication factors were considered for defining d project: 1.0, 1.05, 1.10, 1.15 and 1.20. A deadline is obtained by rounding down the result of this product (recall that the duration of each activity is integer). For instance, when this factor is 1.0 it is exactly the best makespan means that the value chosen for d value found by Correia et al. (2012). If the factor is 1.20 this means is 20% above the best value found by Correia et al. (2012) for that d the makespan when no costs were considered. It is important to note that by using instances based upon the work presented by Correia et al. (2012) we have the possibility of comparing the solutions obtained using the cost-oriented objective with those obtained using the traditional makespan minimization one. Regarding the costs, two types of economies of scale were considered – tight and loose. In fact, one goal of the computational tests is to check the extent to which the strength of the economy of scale influences the difficulty in solving the problem when a general solver is considered. Table 1 contains the values considered. The enhanced model P1 presented in the previous sections was solved using standard mathematical programming software, namely the exact algorithm provided by the ILOG CPLEX 12.3 ILOG CPLEX User’s Manual (2007), on a machine with an INTEL processor Core (TM) i7-2600 CPU, 3,40 GHz, 8,00 GB RAM. In all tests, a CPU time limit of 36,000 s (10 h) was set. All the other CPLEX parameters were maintained in their default values. In Tables 2 and 3 each line depicts average values for 54 instances. This means that in total, 810 instances are summarized in each table leading to a total of 1620 instances tested. The tables are divided into three horizontal sections – one for each cost structure – and seven columns. The sections entitled ‘‘Variable costs only’’ and ‘‘Fixed costs only’’ indicate that only one type of cost is considered. This means that fk is set to zero in the first case whereas ck takes the value zero in the second. The first column Tables 2 and 3 identifies the costs considered. The second and third columns refer to the deadline (multiplication factor used and the (average) value). The fourth column presents the (average) cost for the optimal or best solution obtained and the fifth column
Table 1 Fixed and variable costs considered. Economy of scale Loose
Resource with 1 skill Resource with 2 skills Resource with 3 skills
Tight
ck
fk
ck
fk
1.0 1.4 1.8
100 140 180
1.0 1.1 1.2
100 110 120
235
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238 Table 2 Overall results for the different cost structures – loose economy of scale. Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
CPU (s)
Factor
Value
Fixed and variable costs
1.00 1.05 1.10 1.15 1.20
55.30 57.57 60.31 63.07 65.83
2402.92 2317.01 2122.85 2134.65 2062.44
100.00 97.49 97.11 96.83 96.37
0.00 0.28 0.35 0.32 0.04
21 883 1283 1538 1452
Variable costs only
1.00 1.05 1.10 1.15 1.20
55.30 57.57 60.31 63.07 65.83
846.25 824.69 803.79 794.78 773.05
100.00 97.46 96.10 94.45 92.01
0.00 0.12 0.18 0.19 0.29
23 726 1087 894 1452
Fixed costs only
1.00 1.05 1.10 1.15 1.20
55.30 57.57 60.31 63.07 65.83
1556.67 1492.39 1396.30 1329.63 1264.07
100.00 99.97 100.00 99.97 100.00
0.00 0.00 0.35 0.32 0.04
15 447 429 1203 919
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
CPU (s)
Table 3 Overall results for the different cost structures – tight economy of scale. Deadline Factor
Value
Fixed and variable costs
1.00 1.05 1.10 1.15 1.20
55.30 57.57 60.31 63.07 65.83
1882.62 1810.35 1709.59 1656.63 1603.15
100.00 97.46 96.81 96.48 95.44
0.00 0.24 0.42 0.43 0.11
37 1145 1161 686 1787
Variable costs only
1.00 1.05 1.10 1.15 1.20
55.30 57.57 60.31 63.07 65.83
663.91 643.34 623.58 617.66 608.45
100.00 97.04 96.01 94.07 91.81
0.00 0.15 0.37 0.29 0.31
24 2433 847 2741 1913
Fixed costs only
1.00 1.05 1.10 1.15 1.20
55.30 57.57 60.31 63.07 65.83
1218.70 1165.19 1082.78 1031.67 984.81
100.00 99.98 100.00 99.98 100.00
0.00 0.15 0.30 0.14 0.02
18 838 798 1977 1140
presents the (average) percentage that the deadline represents with respect to the makespan (for the optimal or best solution found). Column headed with ‘‘Final gap (%)’’ contains the (average) final gap upon termination of the solver. Note again that the solver may terminate without the optimal solution if the time limit is reached or if an out-of-memory occurs. In these situations optimality of the final solution is not guaranteed/proved. Accordingly, the best solution found is saved. Finally, the last column contains the CPU time (seconds) required by the solver. One first aspect emerging from the observation of Tables 2 and 3 regards the total cost, which decreases when the deadline is expanded. This is justified by the fact that with larger deadlines, fewer resources can be used thus leading to a saving in cost. Another interesting fact observed in these tables regards the makespan which, apart from the instances with the tighter deadline (multiplication factor 1.0) tends to diverge from the deadline when the deadline is extended. The exception occurs when only fixed costs are considered. In this case, we observe that the deadline is attained in the large majority of the instances. This may be explained by the fact that fixed costs do not depend on the project makespan. Thus, it is less relevant to finish earlier. As a consequence the model can select fewer resources taking advantage of having a larger deadline. This is interesting because in classical project scheduling problems, less time generally means higher cost
and thus the makespan tends to stay close to the deadline. This is not the case in the problem at hand when variable costs are included in the objective function. In fact, as these costs depend on the project makespan, it is possible to obtain optimal solutions where the deadline is not attained. Regarding the complexity of the instances, we can observe in the last two columns that the two tighter deadlines lead to easier instances. This is true for all three cost structures. Not only the average final gap is smaller but also the CPU time is clearly lower than in instances with higher deadlines. In fact, we can observe that tighter deadlines lead to easier instances. This may be justified by the combinatorial nature of the problem. With tight deadlines many feasible solutions can possibly be discarded as non-optimal. An overall observation of Tables 2 and 3 shows that using a general solver, the final gap is on average extremely good. It should be pointed out that among the 810 instances reported in Table 2 only in 14 the solver stopped before the optimal solution was found (or proved to be optimal). This happens either because the time limit was reached or because an out-of-memory occurred. In Table 3, in 28 out of the 810 instances tested, the solver stopped before an optimal solution was found (or proved to be optimal). These number also shows a tendency of the instances with tighter economies of scale to be more difficult.
236
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238
Table 4 Detailed results – loose economy of scale — fixed and variable costs. Deadline factor
# Resources
Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
CPU (s)
Resource usage (%)
1.00
10 13 15
64.00 53.44 48.44
2254.71 2451.37 2502.68
100.00 100.00 100.00
0.00 0.00 0.00
7 30 27
96.67 87.18 81.86
1.05
10 13 15
66.67 55.61 50.44
2225.48 2333.54 2392.01
96.33 97.90 98.57
0.00 0.85 0.00
20 312 1167
94.44 82.05 77.41
1.10
10 13 15
69.89 58.22 52.83
2211.70 2226.07 2227.78
94.99 97.80 99.16
0.00 1.05 0.00
42 1716 2114
90.56 77.78 70.37
1.15
10 13 15
73.06 61.00 55.17
2129.96 2145.12 2128.88
94.37 98.00 98.79
0.00 0.97 0.00
174 803 3596
87.78 72.65 67.41
1.20
10 13 15
76.28 63.61 57.61
2106.47 2039.21 2041.64
93.81 97.55 98.46
0.00 0.13 0.00
148 589 3571
84.44 69.23 63.33
CPU (s)
Table 5 Detailed results – loose economy of scale — variable costs only. Deadline factor
# Resources
Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
1.00
10 13 15
64.00 53.44 48.44
876.93 849.14 812.68
100.00 100.00 100.00
0.00 0.00 0.00
14 23 32
96.67 87.18 81.85
Resource usage (%)
1.05
10 13 15
66.67 55.61 50.44
868.81 816.88 788.39
96.33 97.90 98.46
0.00 0.35 0.00
17 316 1824
95.00 82.48 77.04
1.10
10 13 15
69.89 58.22 52.83
856.93 798.23 756.19
94.52 96.66 97.58
0.00 0.53 0.00
39 1067 2155
91.11 78.63 71.11
1.15
10 13 15
73.06 61.00 55.17
856.98 786.42 740.93
91.18 95.54 97.58
0.00 0.49 0.09
106 1337 1285
90.56 75.21 68.52
1.20
10 13 15
66.67 55.61 50.44
856.23 733.66 729.26
87.84 94.24 95.08
0.00 0.36 0.53
143 1811 2544
90.00 71.37 65.93
Table 6 Detailed results – loose economy of scale — fixed costs only. Deadline factor
# Resources
Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
1.00
10 13 15
64.00 53.44 48.44
1377.78 1602.22 1690.00
100.00 100.00 100.00
0.00 0.00 0.00
7 16 22
96.70 86.75 81.85
1.05
10 13 15
66.67 55.61 50.44
1356.57 1517.17 1603.33
100.00 100.00 99.89
0.00 0.46 0.00
62 62 1196
95.00 81.62 77.40
1.10
10 13 15
69.89 58.22 52.83
1297.78 1424.44 1466.67
100.00 100.00 100.00
0.00 0.81 0.00
49 336 283
90.00 76.92 70.37
1.15
10 13 15
73.06 61.00 55.17
1264.44 1341.11 1383.33
100.00 100.00 99.89
0.00 0.31 0.00
234 1840 1569
87.78 71.79 67.04
1.20
10 13 15
76.28 63.61 57.61
1222.22 1262.22 1307.78
100.00 100.00 100.00
0.00 0.13 0.00
1599 190 927
84.44 69.23 63.33
In Tables 4–9 more detailed results are presented. This allows a deeper insight into the solutions obtained. In these tables, each line contains average values for 18 instances. The information presented is similar to the one presented in Tables 2 and 3. Two additional columns are now presented. One refers to the number of resources; the other, refers to the resource usage. In particular, this
CPU (s)
Resource usage (%)
column presents (average) percentage values of the number of resources used with respect to the number of resources available. As mentioned above, with the information provided by Tables 4–9 one can go deeper in terms of the analysis of the results and solutions. In fact, in these tables, it is possible to relate the results with the number of resources considered. Firstly, for each
237
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238 Table 7 Detailed reults – tight economy of scale — fixed and variable costs. Deadline factor
# Resources
Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
CPU (s)
Resource usage (%)
1.00
10 13 15
64.00 53.44 48.44
1752.59 1915.72 1979.54
100.00 100.00 100.00
0.00 0.00 0.00
8 62 40
96.70 87.18 81.11
1.05
10 13 15
66.67 55.61 50.44
1727.58 1817.87 1885.61
96.33 98.10 98.24
0.00 0.47 0.26
19 538 2945
95.00 82.05 76.67
1.10
10 13 15
69.89 58.22 52.83
1663.09 1720.42 1745.24
95.31 97.81 97.69
0.00 0.87 0.40
45 2307 1196
90.00 76.08 63.00
1.15
10 13 15
73.06 61.00 55.17
1642.26 1644.80 1682.82
93.92 97.63 98.59
0.00 0.58 0.72
110 1554 372
87.78 71.37 66.30
1.20
10 13 15
76.28 63.61 57.61
1611.95 1586.02 1611.49
93.81 95.72 97.30
0.00 0.12 0.20
175 1111 4317
84.44 68.38 62.59
CPU (s)
Resource usage (%)
Table 8 Detailed reslts – tight economy of scale — variable costs only. Deadline factor
# Resources
Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
1.00
10 13 15
64.00 53.44 48.44
683.15 665.16 643.43
100.00 100.00 100.00
0.00 0.00 0.00
7 17 48
96.70 87.15 80.73
1.05
10 13 15
66.67 55.61 50.44
675.91 635.66 618.44
96.33 97.40 97.58
0.00 0.33 0.11
12 880 4575
95.00 82.08 76.67
1.10
10 13 15
69.89 58.22 52.83
663.65 618.09 588.99
95.31 96.28 96.64
0.00 0.58 0.53
50 546 2044
90.00 76.92 70.00
1.15
10 13 15
73.06 61.00 55.17
663.65 608.26 581.08
91.18 95.81 95.97
0.00 0.71 0.15
127 3726 4522
90.00 71.77 66.67
1.20
10 13 15
76.28 63.61 57.61
661.31 595.18 568.86
88.49 94.06 93.73
0.00 0.59 0.35
170 2623 3163
88.89 68.80 64.07
Table 9 Detailed results – tight economy of scale — fixed costs only. Deadline factor
# Resources
Deadline
Optimum/best cost
Makespan vs deadline (%)
Final gap (%)
1.00
10 13 15
64.00 53.44 48.44
1069.44 1250.56 1336.11
100.00 100.00 100.00
0.00 0.00 0.00
5 16 34
96.70 87.18 81.11
1.05
10 13 15
66.67 55.61 50.44
1051.67 1179.44 1264.44
100.00 100.00 99.90
0.00 0.44 0.00
113 380 1994
95.00 82.05 76.67
1.10
10 13 15
69.89 58.22 52.83
999.44 1098.33 1150.56
100.00 100.00 100.00
0.00 0.84 0.05
33 2220 185
90.00 76.07 69.63
1.15
10 13 15
73.06 61.00 55.17
974.44 1031.11 1089.44
100.00 100.00 99.90
0.00 0.87 0.00
233 1062 4584
87.80 71.37 65.93
1.20
10 13 15
76.28 63.61 57.61
938.89 983.33 1032.22
100.00 100.00 100.00
0.00 0.05 0.00
240 298 2835
84.44 68.38 62.59
multiplication factor one observes that the makespan tends to stay closer to the deadline when the number of resources increases. This can be explained by the fact that more resources means more flexibility and eventually cheaper alternatives maintaining or even increasing the makespan. Regarding the percentage resource usage, it decreases as the number of available resources increases.
CPU (s)
Resource usage (%)
This is possibly a consequence of an increase in terms of resource choices when more resources are available. The results also indicate than an intermediate number of resources tends to deteriorate the final gap. As before, this can be explained by the combinatorial nature of the problem. The extreme situations may allow discarding easily more solutions as being non-optimal.
238
I. Correia, F. Saldanha-da-Gama / Computers & Industrial Engineering 72 (2014) 230–238
5. Conclusions and directions for further research In this paper, a cost minimization multi-skill project scheduling problem with studied. Two cost components were associated with resource usage: fixed and variable costs. A mathematical programming modeling framework was proposed. The initial objective function was linearized which resulted in a mixed-integer linear programming model. Several sets of inequalities were proposed in order to enhance the model. A series of computational tests were performed in order to assert the possibility of using a commercial solver for tackling the problem. The computational results show than for instances of a realistic size a commercial solver provides high-quality solutions within an acceptable computational time. Furthermore, the results show how the optimal (or near optimal) cost as well as the final makespan relates with different inputs such as the cost component(s) considered, the number of resources and the deadline set for the project. In the introduction, we mention the existence of several types of multi-skill project scheduling problems. As future research, it is definitely worth considering the impact of cost-oriented objective functions in such problems. In fact, the study of cost-oriented multi-skill project scheduling problems is in its infancy. This is a full new area to explore. Acknowledgement This work was partially supported by the Fundação para a Ciência e Tecnologia (Portuguese Foundation for Science and Technology) through the projects PEst-OE/MAT/UI0297/2011 (Centro de Matemática e Aplicações) and PEst-OE/MAT/UI0152/2013 (Centro de Investigação Operacional). References Alvarez-Valdes, R., & Tamarit, J. M. (1993). The project scheduling polyhedron: Dimension, facets and lifting theorems. European Journal of Operational Research, 67, 204–220. Bellenguez, O., & Néron, E. (2005). Lower bounds for the multi-skill project scheduling problem with hierarchical levels of skills. In Lecture notes in computer science 3616/2005: Practice and theory of automated timetabling V: 5th international conference PATAT 2004, Pittsburgh, PA, USA, August 18–20, 2004, Revised selected papers (pp. 229–243). Springer..
Bellenguez-Morineau, O. (2008). Methods to solve multi-skill project scheduling problem. 4OR, 6, 85–88. Bellenguez-Morineau, O., & Néron, E. (2007). A branch-and-bound method for solving multi-skill project scheduling problem. RAIRO Operations Research, 41, 155–170. Correia, I., Lampreia-Lourenço, L., & Saldanha-da-Gama, F. (2012). Project scheduling with flexible resources: Formulation and inequalities. OR Spectrum, 34, 635–663. Drexl, A., & Kimms, A. (2001). Optimization guided lower and upper bounds for the resource investment problem. Journal of the Operational Research Society, 52, 340–351. Firat, M., & Hurkens, C. A. J. (2012). An improved MIP-based approach for a multiskill workforce scheduling problem. Journal of Scheduling, 15, 363–380. Gutjahr, W., Katzensteiner, S., Reiter, P., Stummer, C., & Denk, M. (2008). Competence-driven project portfolio selection, scheduling and staff assignment. Central European Journal of Operations Research, 16, 281–306. Hartmann, S., & Briskorn, D. (2010). A survey of variants and extensions of the resource-constrained project scheduling problem. European Journal of Operational Research, 207, 1–14. Heimerl, C., & Kolisch, R. (2010). Scheduling and staffing multiple projects with a multiskilled workforce. OR Spectrum, 32, 343–368. ILOG CPLEX User’s Manual. ILOG, Inc., Incline Village, Nevada, 2007.
.. Klein, R., & Scholl, A. (1999). Computing lower bounds by destructive improvement: An application to resource-constrained project scheduling problem. European Journal of Operational Research, 112, 322–346. Li, H., & Womer, K. (2009). Scheduling problems with multi-skilled personnel by a hybrid MILP/CP benders decomposition algorithm. Journal of Scheduling, 12, 281–298. Möhring, R. H. (1984). Minimizing costs of resource requirements in project networks subject to a fixed completion time. Operations Research, 32, 89–120. Neumann, K., Schwindt, C., & Zimmermann, J. (2002). Recent results on resource constrained project scheduling with time windows: Models, solution methods, and applications. Central European Journal of Operations Research, 10, 113–148. Neumann, K., & Zimmermann, J. (2000). Procedures for resource leveling and net present value problems in project scheduling with general temporal and resource constraints. European Journal of Operational Research, 127, 425–443. Nübel, H. (2001). The resource renting problem subject to temporal constraints. OR Spectrum, 23, 359–381. Ranjbar, M., Kianfar, F., & Shadrokh, S. (2008). Solving the resource availability cost problem in project scheduling by path relinking and genetic algorithm. Applied Mathematics and Computation, 196, 879–888. Weglarz, J., Józefowska, J., Mika, M., & Waligóra, G. (2011). Project scheduling with finite or infinite number of activity processing modes – A survey. European Journal of Operational Research, 208, 177–205. Yamashita, D. S., Armentano, V. A., & Laguna, M. (2007). Robust optimization models for project scheduling with resource availability cost. Journal of Scheduling, 10, 67–76.