European Journal of Operational Research 127 (2000) 408±424 www.elsevier.com/locate/dsw A multicriteria heuristic method to improve resource allocation in multiproject scheduling Antonio Lova *, Concepcion Maroto, Pilar Tormos Department of Statistics and Operational Research, Universidad Politecnica de Valencia. Camino de Vera s/n, 46071 Valencia, Spain Abstract Many works published in the area of project management make reference to the scheduling of single projects and time objectives like minimising project duration. Nevertheless, frequently companies manage various projects which share a pool of constrained resources, taking into account other objectives in addition to time. In order to add exibility in using project scheduling tools, we have developed a multicriteria heuristic that improves lexicographicly two criteria: one time type ± mean project delay or multiproject duration increase ± and one no time type ± project splitting, in-process inventory, resource levelling or idle resources ± that can be chosen by the user. The multicriteria heuristic algorithm consists of several algorithms based on the improvement of multiproject feasible schedules. Through an extensive computational study, we have shown that this method improves the feasible multiproject schedule obtained from heuristic methods based on the priority rules coded Maximum Total Work Content (MAXTWK) and Minimum Latest Finish Time (MINLFT) as well as project management software ± Microsoft Project, CA-SuperProject, Time Line and Project Scheduler. Ó 2000 Elsevier Science B.V. All rights reserved. Keywords: Project management; Multiproject scheduling; Resource allocation; Project management software; Multicriteria heuristic algorithm 1. Resource allocation in multiproject scheduling Frequently, the availability of the resources assigned to a project is limited and often not suf- cient to concurrently execute the elegible activities. In this situation, decisions must be made about their scheduling that in many cases imply an increase in project completion time. Thus project * Corresponding author. Tel.: +34-96-3877490; fax: +34-96- 3877499. E-mail address: allova@eio.upv.es (A. Lova). scheduling becomes a problem of a combinatorial nature that can only be solved by exact methods for small projects. The resource-constrained project scheduling problem has been studied in the literature through two approaches: the scheduling of a single project and the scheduling of multiple simultaneous projects. In the rst case, minimising project duration has been one of the most dominant problems studied (Wiest, 1963, 1967; Davis and Patterson, 1975; Cooper, 1976; Alvarez-Valdes and Tamarit, 1989; Boctor, 1990; Ozdamar and Ulusoy, 1995; Kolisch and Hartmann, 1998). In contrast, there 0377-2217/00/$ - see front matter Ó 2000 Elsevier Science B.V. All rights reserved. PII: S 0 3 7 7-2 2 1 7 ( 9 9 ) 0 0 490-7
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 409 are few studies involving the scheduling of several projects with common and constrained resources. In these works, the problem is solved using heuristics based on priority rules. These heuristics have been one of the most used methods to solve the resource-constrained project scheduling problem due to the fact that they are fast in terms of the computational e ort, obtain good results even for large size projects and they are easy to integrate into a project management tool (Kolisch, 1996). Additionally, multiproject scheduling can be carried out with two approaches: Multi-Project and Single-Project approach. In the rst, projects are independent and in the second, projects are arti cially bound together into a single project by the addition of two dummy activities: `start' and `end' of the single project. Both approaches will produce di erent schedules with some priority rules due to the fact that in the single-project approach parameters of the activities are obtained from the single project duration, whereas in the multi-project approach these parameters are calculated from the duration of each individual project. To obtain a multiproject feasible schedule we can choose one of the two approaches. The pioneering work of multiproject scheduling by Fendley (1968) used multiprojects with three and ve projects and considered three e ciency measurements in the computational analysis: Project slippage, Resource utilization and In-process inventory. The most important conclusion of this work is that the priority rule Minimum Slack First (MINSLK) obtains the best e ciency with the three response variables. Kurtulus and Davis (1982) designed multiproject instances whose projects have between 34 and 63 activities and resource requirements for each activity between 2 and 6 units. They show six new priority rules especially adapted to the multiproject problem. These rules are Shortest Activity from the Shortest Project, Longest Activity from the Longest Project, Maximum Operation First, Maximum Slack First, Minimum Total Work Content and Maximum Total Work Content. Kurtulus and Davis show in their computational experience that the priority rules Maximum Total Work Content (MAXTWK) and Shortest Activity from the Shortest Project (SASP) are the best algorithms to schedule multiprojects when the objective is to minimise the mean project delay. Penalties due to the projects delay have been studied by Kurtulus and Narula (1990). They analyse this problem with multiproject instances of three projects in which activity numbers are between 24 and 33 for small-sized problems and between 50 and 66 activities for large-sized problems. The priority rules used in previous works are modi ed by adding penalty to the projects delay. Six penalty functions and four new priority rules based on penalties are analysed: Maximum Duration and Penalty, Maximum Penalty, Maximum Total Duration Penalty and simultaneously Slack and Penalty. As one of the most important conclusions, the priority rule Maximum Penalty is the best algorithm when minimising the sum of the project weight delay. Dumond and Mabert (1988) have studied the problem of assigning due dates to the projects in a multiproject environment. Each project has between 6 and 49 activities with 24 activities on average whose resource requirements are between 1 and 3 types of resources simultaneously. In this work, ve resource allocation heuristics and four strategies to assign due dates to the projects are analysed: Mean Flow, Number of Activities, Critical Path Time and Scheduled Finish Time. The computational experience shows that the priority rule First Come First Served (FCFS) with the strategy Scheduled Finish Time Due Date rule is the best algorithm for minimising the mean completion time, the mean lateness, the standard deviation of lateness and minimising the total tardiness. A model to control projects has been developed by Tsubakitani and Deckro (1990). They coded the SASP priority rule to schedule multiprojects with more than 50 projects which can have more than 100 activities. The model has an UPDATE routine that allows the project manager to update the projects when they are in execution. In the same year, Bock and Patterson (1990) designed a computational experience based on the work of Dumond and Mabert with three factors: Due Date Setting Strategy, Algorithm based on priority rule and Resource Preemption Strategy. This work shows that the priority rules FCFS and
410 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 MINSLK(DD) have the best performance minimising mean weighted lateness and mean absolute lateness. After this, Lawrence and Morton (1993) studied the due date setting problem and developed an algorithm with a good performance minimising mean weighted tardiness and mean weighted delay. Finally, Wiley et al. (1998) developed a method utilizing Work Breakdown Structure (WBS) and Dantzig±Wolfe decomposition to generate feasible aggregate level multiproject program plans and schedules. The Dantzig±Wolfe procedure provides a means of generating interim solutions and their appropriate funding pro le. The decision maker may then choose any one of these solutions besides the optimal solution based upon his/her own experience and risk tolerance. From most of these works, we can conclude that heuristics based on priority rules with the multi-project approach perform better than the ones based on the single-project approach for minimising mean project delay. Nevertheless, the rules based on a single-project approach are more e cient minimising multiproject duration increase (Kurtulus and Davis, 1982; Ozdamar and Ulusoy, 1995). In this literature review, we have found some gaps. The characteristics of the multiproject instances used are not justi ed and the objectives analysed have been studied separately. To ll these gaps, we have designed a survey carried out in the Valencian Region-Spain (Lova, 1997). The company sectors of the survey are made up of small and medium-sized companies from the area of construction, textile, computers and information systems and public administrations. 1000 surveys were sent out of which we received 202, a response rate of approximately 20%. The survey is divided in three parts: general characteristics of the companies, characteristics of the activities, resources and projects ± single and multiple projects ± and nally to what extent project scheduling techniques are being used. One of the main results of the survey was to quantify how many companies work with single projects and how many with several projects simultaneously sharing a pool of resources. The results are conclusive; 84% of the companies which responded to the survey indicated that they work with multiple projects. This data is in line with the work by Payne (1995) that indicates that up to 90% of all projects occur in the multiproject context. Another result indicates the predominance of projects with less than 50 activities (84%) and about 95% of the projects have less than 100 activities. On the other hand, a further analysis of the use of standard and non-standard software scheduling tools highlight their use in the allocation of resources to project activities, improving project control and aiding decision making. Nevertheless, companies indicate that project scheduling techniques need to have more exibility for the practitioner. That is to say, companies frequently manage various objectives at the same time and the project scheduling software needs to be adapted to these needs. The rst objective of this work is, therefore, to add exibility to companies scheduling projects with several criteria through the development of a multicriteria heuristic method to improve resource allocation in multiproject scheduling. This multicriteria algorithm includes aspects such as time ± mean project delay or multiproject duration ± as well as project splitting, in-process inventory, resources levelling or idle resources. Additionally, due to the wide-spread use of standard project management software it is necessary to analyse and improve their capabilities and performance considering objectives in addition to time. Therefore, the second objective of this work is to analyse the project management software together with the classical algorithms in the context of multiproject scheduling considering time and no time criteria. 2. Previous de nitions and concepts A multiproject schedule is de ned as a set of start times (ST ij ) of the activities of the projects. The completion time of each project (F i ) is the latest completion time of the activities of the project; therefore, max F i will be the duration of the multiproject. In this context, a multiproject feasible schedule is a multiproject schedule for which the
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 411 resource constraints and the precedence relationships are not violated. The multicriteria algorithm is based on the concepts of local/global left/right shift activity into its feasible schedule maintaining the feasibility of the schedule (Wiest, 1964). These concepts were analysed by Baker (1974) for the Job-Shop problem and applied to the resource-constrained project scheduling problem by Sprecher (1994) and Sprecher et al. (1995) and can be generalised to a multiproject context. We de ne two types of free slack into a multiproject feasible schedule: Forward Free Slack (FFS) and Backward Free Slack (BFS) of the activities (Lova, 1997). The FFS of an activity into a feasible schedule is the amount of time that the activity can be shifted right allowing the successors to start on their scheduled dates. This is the classical de nition of Free Slack on the Critical Path Method. It does not take into account the resource constraints. The FFS of an activity j of the project i is calculated by the minimum scheduled start time of the successor activities of j minus its scheduled nish time. The BFS of an activity is the amount of time that the activity can be shifted left allowing the predecessors to start on their scheduled dates and it does not take into account the resource constraints. The BFS of an activity j of the project i is calculated by its scheduled start time minus the maximum scheduled nish time of the predecessor activities of j. These concepts are applied in the successive Forward and Backward pass of the multicriteria algorithm. Generally, a Forward Pass is a process that starts at the beginning of the multiproject ± earliest scheduled start of the projects in the multiproject environment ± and nishes at the end of the multiproject ± latest scheduled nish of the projects, whereas a Backward Pass is a process that starts at the end of the multiproject and nishes at the beginning of the same. Speci cally, the Backward Pass is applied to a multiproject feasible schedule where all the activities have BFS equal to zero through the following steps: Step 1. From a multiproject feasible schedule, an activity list is compiled and sorted by decreasing order of the scheduled nish time of the activities. All activities of the projects are therefore merged into the activity list. Step 2. One activity is selected from the activity list starting at the top, i.e. the selected activity a ij is that with the greatest scheduled nish time. For this activity its FFS is calculated and is locally or globally shifted right as late as possible to a feasible position into its FFS, rescheduling its scheduled start time (ST ij ). In this way, the FFS of the predecessor activities can increase and they will have the possibility of shifting the activities even further to the right. Activities with scheduled nish time (FT ij ) equal to max F i cannot be shifted right. The selected activity a ij is removed from the activity list. Step 3. Step 2 is repeated until activity list is empty. In the case of the Forward Pass, it obtains a multiproject feasible schedule where all the activities have BFS equal to zero. This pass is applied with the following steps: Step 1. If we do not have a multiproject feasible schedule, then we apply a heuristic based on a priority rule. STOP Otherwise, from the multiproject feasible schedule, an activity list is compiled and sorted by increasing order of the scheduled start time. Step 2. One activity is selected from the activity list starting at the top, i.e., the selected activity a ij is that with the smallest scheduled start time. For this activity its BFS is calculated and is locally or globally shifted left as early as possible to a feasible position into its BFS, rescheduling its scheduled start time (ST ij ). In this way, the BFS of the successor activities can increase and they will have the possibility of shifting the activities even further to the left. The selected activity a ij is removed from the activity list. Step 3. Step 2 is repeated until activity list is empty. 3. The multicriteria heuristic method The multicriteria heuristic algorithm for multiproject scheduling has two phases. It starts from a feasible multiproject schedule and it improves
412 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 lexicographicly two criteria: one time type and one no time type. First, it obtains a good schedule for the multiproject with one time criterion ± minimising the mean project delay or minimising the increase in multiproject duration. Second, it improves the rst phase schedule with the no time criterion: Project splitting, In-process inventory, Resource levelling or Idle resources. In the second phase, when the multiproject schedule is improved with a no time criterion, the time criterion of the rst phase will never make it worse. In other words, the completion time of the projects ± if the time criterion is to minimise mean project delay ± or the completion time of the multiproject ± if the time criterion is to minimise multiproject duration increase, will never be increased. The initial multiproject schedule will be improved by time and no time criteria which the user can choose (Fig. 1). The First Phase involves a multipass method, concretely a Forward±Backward scheduling method (Kolisch and Hartmann, 1998) similar to the one applied by Li and Willis (1992) and Ozdamar and Ulusoy (1996) to single project scheduling. The process consists of an iterative Forward±Backward pass until no time improvement can be achieved (Fig. 2). The feasible schedule obtained by the Forward Pass is used by the Backward Pass and vice versa. This process obtains a good schedule of the multiproject with the time criterion. The iterative Forward±Backward pass requires at Step 1 of the rst Forward Pass a heuristic based on priority rules to obtain the initial multiproject feasible schedule and to start the iterations. If the time criterion is to minimise mean project delay, we use the parallel priority rule MAXTWK with a multi-project approach. Whereas if the objective is to minimise the increase in multiproject duration, we use the parallel priority rule Minimum Latest Finish Time (MINLFT) with a single-project approach. These priority rules have been some of the most used and e cient rules in previous studies for the time objectives considered (Kurtulus and Davis, 1982; Alvarez-Valdes and Tamarit, 1989; Boctor, 1990, Kolisch and Hartmann, 1998). If the multi-project approach is used, the completion time of the projects are considered as upper bounds in every pass. In the Backward Pass, activities with FT ij equal to F i cannot be shifted Fig. 1. Multicriteria heuristic algorithm for multiproject scheduling.
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 413 Fig. 2. Iterative forward±backward pass. right and change their scheduled dates. We are therefore sure that in an iteration the multiproject schedule will never make it worse with this time criterion. In the Forward Pass, activities can be shifted left until time is equal to zero and the process can reduce the completion time of the projects (F i ). The mean project delay, as a measure of e ciency of the multiproject schedules with a multiproject approach, is calculated as the average of the resource-constrained completion time of each project minus the unconstrained critical path of the same. In the single-project approach, when the iterative Forward±Backward pass is applied, the multiproject duration (max F i ) is considered as the upper bound. When projects are closely related due to economical or technical reasons, it is interesting to nish the multiproject considered as a single project, as early as possible. That is, the objective is to minimise the increase in single project duration. In the Backward Pass, activities can be shifted right until max F i and in the Forward Pass activities can be shifted left until time is equal to zero and the process can reduce the completion time of the multiproject (max F i ). In the single-project approach it is assumed that the completion time of each project (F i ) can be known. The multiproject duration increase can be measured in a multiproject schedule with a single-project approach as a percentage, that is: ((Max CT i ) Max CP j )/Max CP j ) 100, where CT i is the resourceconstrained completion time of project i and CP j is the unconstrained critical path of project j. This measure indicates the multiproject duration increase considering the initial multiproject duration as the unconstrained latest completion time of the projects and the nal multiproject duration as the latest completion time of the projects after solving the resource con icts. For both time criteria, if after the application of a Backward Pass, the scheduled start time of all activities in the schedule is greater than zero, then all activities of the multiproject will have BFS and the next Forward Pass will improve the multiproject schedule with the time criterion chosen. Therefore, the iterative Forward±Backward pass will always nish with a Forward Pass. The Backward Pass and the Forward Pass can be coded through a serial scheme and a priority rule in which activities are selected to be rescheduled in the order of the activity list. In the Forward Pass the original precedence network is used and in the Backward Pass the reverse precedence network is used. The Second Phase consists of several feasible schedule improving algorithms based on the Forward Pass and/or the Backward Pass that is different for each criterion. A Backward Pass is applied to improve Project splitting, In-process inventory or Resource levelling, and a Backward± Forward Pass is applied to improve Idle Resources, always maintaining the good results obtained by the time criterion considered in the rst phase. 3.1. Project splitting Frequently, continuity in the execution of projects is an important factor for several reasons. In fact, project splitting can cause a great deal of additional e ort for some companies to control projects. Furthermore, continuity of the projects in time implies higher quality in their execution by allowing the project manager to control projects easier. When projects share a pool of resources it is possible that in the scheduling process projects can be split. In this sense, a project already started is split at a moment when no activity of the project is in execution. After this moment, in the future, the project continues its execution. To improve a multiproject schedule with this criterion, we propose a Backward Pass where activities are not shifted right to feasible positions as late as possible into its FFS. Activities are shifted right to the position that minimises project splitting. If there are several positions that obtain the
414 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 same minimum value of the criterion, the activity is shifted right as late as possible. This criterion can be measured as the number of days on average that a project is split from the beginning of the project until its completion time. 3.2. In-process inventory In-process inventory can be de ned as the amount of work that cannot be processed immediately due to the limitation of resources (Fendley, 1968). This inventory has an important cost for many companies ± handling and storage ± and it is an indicator of ine ciency if it exists in a great amount. An activity ij has in-process inventory when its FT ij is smaller than all the ST ik of the activities k successors of j. In this way, the work performed by the activity ij is not processed by its successor activities during (min ST ik )±FT ij units of time. In order to improve this criterion we apply a Backward Pass in which each activity tries to reach its successor activities. This criterion can be measured by a ratio between the sum of the amount of time that the In-process inventory is waiting from the end of the activity ij until a successor activity continues the work for each activity and the number of activities of the multiproject. 3.3. Resource levelling The ideal histogram of resource requirements is a rectangle delimited by the multiproject duration and the resource availability. However, this situation is not usual in resource-constrained project scheduling. In practice, daily requirements of a resource vary depending on the needs of the activities that are scheduled simultaneously. This criterion for each resource can be measured by the variance of the requirements. Nevertheless, minimising the variance of resource requirements of a resource is equivalent to minimising the sum of the squares of the resource requirements of this resource (Burgess and Killebrew, 1962; Levy et al., 1963; Woodworth and Willie, 1975). When more than one type of resource is assigned to each activity, the objective will be to minimise the sum of the squares of the resource requirements of each individual resource. To improve this criterion we apply a Backward Pass where activities are shifted right into its FFS to the feasible position that minimises the sum of the squares of the resource requirements for each individual resource. It is important to note that when we improve this criterion, it is possible to reduce the availability of the resources that are necessary to execute the multiproject. As in the Burgess and Killebrew algorithm, the Backward Pass can be repeated until no improvement is achieved. The variance of the resource requirements has an important drawback: the dependecy of the scale and measurement units of each resource. For this reason, when activities use more than one type of resource at the same time we cannot measure the e ciency of the schedules neither with the sum of the squares of resource requirements of all the resources nor with the average of the variance of the requirements of the resources. To solve this drawback we propose measuring the e ciency of the multiproject schedule with the Coe cient of Variation (d i ) that can be compared with other coe cients of variation and is de ned as a ratio between the standard deviation and the average. This parameter has no dimensions and the Mean Coe cient of Variation E d i can be calculated as a ratio between the sum of the Coe cient of Variation of each resource and the number of types of resources (Lova, 1997). Thus, the smaller the Mean Coe cient of Variation the greater the Resource Levelling. This measure is de ned as (1). p var x i P K iˆ1 E x i E d i ˆ ; K where K is the number of types of resources: 1 In this expression, x i is the variable amount of resource i required daily by the activities of the multiproject along the feasible multiproject duration. It is important to note that the coe cient of variation of each resource can be weighted based on some rational basis, such as cost or managements utility for the variation of a resource. In this context, the objective of the improving algorithm would be to minimise the sum of the weighted coe cients of variation.
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 415 3.4. Idle resources In general, a unit of a resource is idle in a moment when it is available for the multiproject but it is not assigned to any activity. In the context of constant availability, the only way to minimise idle resources is to minimise multiproject duration. To supply another de nition of idle resources we consider that one unit of a resource assigned to the multiproject will continue being assigned from the rst instant in which the unit is used until this unit is not needed by the multiproject (Lova, 1997). With this de nition, one unit of resource will be idle when, being assigned to the multiproject, the activities of the multiproject do not need it. In our situation, we consider that the availability of each resource is the maximum requirement available. The ideal histogram in order not to have idle resources with this de nition is a rectangular histogram or like stairs ± ascending, descending or ascending and descending. If the histogram is like the latter case, the multiproject manager knows that he/she will have a process to assign resources and a process to free resources, e.g., with this de nition, if some expensive resource needs to be shipped to the main o ce from far away, this resource is not assigned to the multiproject during all the multiproject duration; the project manager will assign it from the rst instant in which this resource is used until it is not needed by the multiproject activities, therefore this resource will have lower idleness than if the project manager assigns it during the multiproject duration. In Fig. 3 we show idle resources as we have just de ned. To improve the multiproject schedule with this criterion we apply a Backward Pass from the half of the multiproject duration to the beginning of the schedule and a Forward Pass from the half of the multiproject duration to the end of the multiproject schedule. Both passes imply shifting activities to the middle of the multiproject schedule ± as around the half of the multiproject duration. This criterion can be measured by the maximum of the idleness of the resources. That can be measured as the relationship between the resource requirements histogram and the resource availability histogram as a percentage of idle resources. It is important to note that the availability of each resource at time t is calculated in function with the idle resources previously de ned. 4. Methodology to evaluate the performance of the multicriteria heuristic method In order to evaluate the e ciency of the algorithms integrated into the multicriteria heuristic method with the di erent criteria, a computational Fig. 3. Resource histogram that illustrates idle resources.
416 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 experiment has been designed. The characteristics of the multiproject instances considered are obtained through the survey carried out in the Valencian Region-Spain (Lova, 1997) together with the multiproject characteristics of the literature review (Fendley, 1968; Kurtulus and Davis, 1982; Kurtulus and Narula, 1985; Dumond and Mabert, 1988; Tsubakitani and Deckro, 1990; Bock and Patterson, 1990; Lawrence and Morton, 1993). On the one hand, results can be applied to a large number of companies and on the other hand results can be comparable to those found in the literature. These multiproject instances have been used by Lova (1997); Maroto et al. (1997); Maroto et al. (1998). The multiproject instances have four or eight projects whose activities are subject to nish±start precedence constraints with zero time lag. All the projects in each multiproject have 30 or 60 activities with preemption not allowed. Each activity has a single execution mode with a xed integer duration between 1 and 10 time units. In this way, small-sized problems have 120 activities and largesized problems have 480 activities. Complexity of the network is xed to 3, where complexity is de- ned as a ratio between Number of Arcs and Number of Nodes. The factor Nodes per Level (Maroto et al., 1996) which measures the grade of parallelism of the project activities is xed between three and ve. Thus, each project has on average four activities in parallel. The Overload Factor used was de ned by Kurtulus and Davis (1982) where the rank of the values of AUF k are between 0.6 and 1.6. This parameter for the resource type k is de ned as (2). AUF k ˆ 1 M X M Lˆ1 where W SL;k ˆ Xb W SL;k R max;k S L ; X M X Ni tˆa iˆ1 jˆ1 r ijk X ijt : 2 X ijt is 1 if activity j of project i is active at time t and 0 otherwise, N i is the number of activities of project i, S 1 ˆ CP 1 (critical path duration of project 1), S 2 ˆ CP 2 CP 1 ;...and S M ˆ CP M CP M 1 (where M denotes the number of projects of the multiproject), a ˆ CP L 1 1; b ˆ CP L and R max;k is the availability of resource type k. A value of 0.6 of AUF k means a low overload and a value of 1.6 means a high overload. In our design, this factor has two levels: 0.8 and 1.2. In this way half of the multiproject instances have a low-medium overload and the other half have a medium-high overload. The multiproject instances can use ve types of constant renewable resources and 2 or 4 resources on average can be assigned to each activity. These assignments are constant throughout the duration of each activity. The Resource Factor has two levels: 0.4 and 0.8. Requirements of the resources are randomly generated between 1 and 6. We have carried out two replications for each one of the 2 2 2 2 ˆ 16 treatments (Number of Projects Number of Activities per Project Resource Overload Resource Factor). In total, we have generated 32 multiprojects instances integrated by 192 single projects (Vives, 1995). The analysis of each criterion has been carried out with the appropriate ANOVA, which considers xed and random factors ± the multiproject factor is random. We have then analysed the results through a mixed ANOVA with crossed and nested factors and xed and random e ects with a signi cance level of 5%. The ANOVA-Analysis of Variance-that is a powerful statistic tool used in Linear Regression Models and in Design of Experiments allows us to study the e ect of several factors (multiproject characteristics) over the mean of the corresponding response variable. 5. Results of the computational experience It would be very complex to analyse in the same computational experience for all the possibilities that the multicriteria heuristic method o ers. Therefore, for each criterion we have analysed the e ciency of the scheduling methods ± priority rules and project management software, with and without the application of the algorithms integrated into the multicriteria heuristic algorithm. The multiproject instances described in Section 4 have been solved with the priority rules MAX- TWK and MINLFT, and four of the best-known and popular-priced project management software- CA-SuperProject v. 4.0 and Microsoft Project v.
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 417 4.0 with the single and multi-project approach, Project Scheduler 6 v. 1.5 and Time Line v. 6.0. These methods are used in the rst pass of the iterative Forward±Backward pass when the objective is to minimise a time criterion or to obtain a feasible multiproject schedule when the objective is to improve a no time criterion. Table 1 shows for each criterion, the mean initial feasible schedule, the standard deviation, the minimum and maximum values for heuristics and project management software. Furthermore, the mean improved feasible schedule after applying the improving heuristics, the mean amount of improvement and the mean CPU-time in seconds are also included. As we can see in Figs. 4 and 5, results show the di erent e ciency of the multicriteria heuristic method depending on the initial feasible multiproject schedule ± priority rules or project management software ± and the high e ciency of the algorithms integrated into the multicriteria heuristic algorithm for resource-constrained multiproject scheduling in the objectives considered. In all the multiproject instances we have improved the initial feasible multiproject schedule and the degree of improvement depends on the initial schedule. In general, with the software Project Scheduler 6, the application of the algorithms developed obtains the most important improvements. 5.1. Time criterion: Mean project delay and multiproject duration increase On average, in two passes of the Iterative Forward±Backward Pass we obtain the largest improvement in a small computational time of a few seconds for hundreds of activities on a personal computer with a Pentium processor and 100 MHz clock pulse (Table 1). In Fig. 4(a) we can see that before the application of the iterative Forward±Backward pass the priority rule MAXTWK obtains on average the best results for the Mean Project Delay criterion. CA-SuperProject-MP, CA-SuperProject-SP, Project Scheduler 6, Time Line and MINLFT obtain a medium and signi cantly di erent e ciency, and Microsoft Project-MP and Microsoft Project-SP present a signi cantly worse performance. It is interesting to note that CA-SuperProject-MP has a better performance than CA-SuperProject-SP. This means that CA-SuperProject codes the solution problem in a di erent way depending on the multi-project approach or the single-project approach. It is not the same situation with Microsoft Project-MP and Microsoft Project-SP that on average obtain a similar performance. This suggests that the two options that Microsoft Project incorporates are more geared toward activity organization than scheduling capabilities. Additionally, the application of the iterative Forward± Backward pass reduces the di erences between the methods, being the iterative Forward±Backward pass with the priority rule MAXTWK the most e cient method. In Fig. 4(b) we can see the e ciency of the multiproject schedules with the Multiproject Duration Increase criterion. It is important to note that before the application of the iterative Forward±Backward pass the priority rule MINLFT is the scheduling method that obtains the best performance. Regarding the project management software, again their di erent e ciency is shown, Time Line being the most e cient project management software. Project Scheduler 6 obtains the worst performance. With this criterion, the performance of CA-SuperProject and Microsoft Project is independent of the multi-project approach or single-project approach. Furthermore, after the application of the iterative Forward± Backward Pass there are project management software like Time Line that outperforms the heuristic algorithm based on priority rules. The iterative Forward±Backward pass with the priority rule MINLFT results the most e cient method. Regarding the in uence of the remaining factors considered in the design of experiment, for both time criteria analysed, the factors Number of Projects and Resource Factor are not signi cant e ects whereas the Factors Number of Activities and Overload are signi cant e ects. If the number of activities of the projects increase, then mean project delay increases and the multiproject duration increase measured as a percentage decreases. The Overload Factor has a di erent behavior, if the amount of constraints over the resources
418 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 Table 1 Performance of scheduling methods and improving algorithms Mean initial feasible schedule a Standard deviation Min Max Mean improved feasible schedule Mean amount of improvement Mean project delay (days) MAXTWK 151.2 70.1 68 311 143.0 8.2 11.57 MINLFT 199.1 86.3 81 448 191.4 7.7 9.66 SuperProject-MP 194.1 85.3 82 421 177.0 17.1 11.97 SuperProject-SP 221.3 94.7 90 484 199.6 21.7 12.04 MicrosoftProject-MP 254.2 115.5 100 565 200.3 53.9 12.32 MicrosoftProject-SP 252.3 111.4 101 566 200.0 52.3 13.07 Project scheduler 6 218.5 105.1 94 461 151.7 66.8 15.01 Time line 209.6 90.5 86 457 192.8 16.8 10.47 Mean CPUtime (s) b Multiproject duration (%) MAXTWK 254.7 94.5 94 456 224.0 26.2 13.15 MINLFT 205.7 81.1 69 357 195.5 10.2 6.61 SuperProject-MP 231.2 90.7 78 433 205.9 25.3 9.69 SuperProject-SP 226.4 91.2 74 418 202.7 23.7 8.59 MicrosoftProject-MP 261.7 109.7 86 497 203.7 58.0 9.36 MicrosoftProject-SP 258.6 107.4 82 470 203.7 54.9 8.88 Project scheduler 6 316.3 130.7 118 625 222.4 93.9 12.51 Time line 213.6 83.7 74 374 195.5 18.1 7.51 Project splitting (days) MAXTWK 85.47 43.1 26 194 63.62 21.85 4.21 MINLFT 105.8 59.6 28 293 89.81 15.99 4.20 SuperProject-MP 108.3 58.6 33 289 86.84 21.46 4.12 SuperProject-SP 124.2 66.3 33 316 95.40 28.80 5.14 MicrosoftProject-MP 157.0 87.4 45 419 104.3 52.70 14.39 MicrosoftProject-SP 154.6 84.6 47 421 104.7 49.90 12.64 Project scheduler 6 147.4 78.9 53 341 69.28 78.12 15.54 Time line 114.0 61.9 31 295 89.00 25.00 6.17
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 419 In-process Inventory (days) MAXTWK 9.18 3.20 4 18 6.50 2.68 4.24 MINLFT 14.40 4.75 7 25 13.31 1.09 3.65 SuperProject-MP 13.15 4.22 6 23 11.03 2.12 3.68 SuperProject-SP 15.09 5.03 7 27 12.93 2.16 3.84 MicrosoftProject-MP 16.75 6.34 6 30 12.43 4.32 4.25 MicrosoftProject-SP 16.69 6.30 6 31 13.18 3.51 4.31 Project Scheduler 6 13.84 5.61 5 28 6.96 6.88 4.84 Time Line 14.46 5.67 7 24 12.28 2.18 4.43 Resource Levelling (E(di)) MAXTWK 0.51 0.15 0.27 0.77 0.48 0.03 4.90 MINLFT 0.40 0.14 0.20 0.66 0.36 0.04 4.40 SuperProject-MP 0.45 0.13 0.23 0.70 0.42 0.03 4.62 SuperProject-SP 0.43 0.15 0.20 0.73 0.39 0.04 4.81 MicrosoftProject-MP 0.49 0.18 0.22 0.81 0.44 0.05 5.43 MicrosoftProject-SP 0.48 0.16 0.23 0.81 0.43 0.05 5.59 Project scheduler 6 0.58 0.16 0.36 0.86 0.53 0.05 7.56 Time line 0.42 0.14 0.21 0.69 0.37 0.05 5.34 Idle resources (max %) MAXTWK 43.59 10.88 24 62 42.25 1.34 6.34 MINLFT 38.84 10.64 18 61 36.56 2.28 5.75 SuperProject-MP 42.06 10.23 20 59 39.41 2.65 6.06 SuperProject-SP 42.06 10.58 22 64 38.37 3.69 5.78 MicrosoftProject-MP 46.12 10.14 27 66 39.37 6.75 6.56 MicrosoftProject-SP 45.91 10.54 25 66 39.31 6.60 6.59 Project scheduler 6 51.09 9.63 32 70 43.47 7.62 7.71 Time line 40.28 10.19 21 60 36.75 3.53 6.93 a 3 CPU-time seconds on average. b For multiprojects with 300 activities on average.
420 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 Fig. 4. Performance in multiproject scheduling. Means plot for time criteria: (a) mean project delay and (b) multiproject duration increase. increases, mean project delay and multiproject duration are increased. When the time criterion of a schedule increases, the iterative Forward±Backward Pass increases its e ciency. 5.2. No time criterion: Project splitting, in-process inventory, resource levelling and idle resources In Fig. 5(a), Project splitting is analysed, and we can see that before the application of the Backward Pass, the priority rule MAXTWK is the most e cient. CA-SuperProject-MP, CA-SuperProject- SP, Time Line and MINLFT obtain a medium and di erent e ciency, and Project Scheduler 6, Microsoft Project-MP and Microsoft Project-SP o er the worst results. After the application of the Backward Pass, with the priority rule MAXTWK the best e ciency is obtained. The performance with the di erent levels of the factors Number of Projects and Resource Factor do not have significant di erences. Nevertheless, the factors Number of Activities and Resource Overload have signi cant e ects, so if the level of these factors increases, the level of project splitting also increases. The e ciency of the multiproject scheduling measured by the In-process inventory can be shown in Fig. 5(b). We can see that before applying the Backward Pass, the priority rule MAXTWK is the method that obtains the best e ciency. CA-SuperProject-MP, CA-SuperProject-SP, Project Scheduler 6, Time Line and MINLFT obtain a medium and di erent e ciency, and Microsoft Project-MP and Microsoft Project-SP obtain the worst performance. After applying the Backward Pass, again and as in the previous criterion, with the priority rule MAXTWK the best e ciency is obtained. Additionally, factors Number of Projects, Number of Activities and Resource Factor have no signi cant e ect and the levels of the Overload Factor have di erent e ciency in the sense that when the resource constraints arehigher, in-process inventory is also increased. As we have described in previous sections, Resource Levelling is measured in this work by the Mean Coe cient of Variation. Fig. 5(c) shows the means plot of the di erent methods. Regarding this response variable, the priority rule MINLFT obtains the best results. In this case the mean order is the same before and after the application of the feasible schedule improving algorithm ± Backward Pass. The software Time Line obtains the highest e ciency of the project management software. Factors Number of Activities, Number of Projects, Resources Factor and Overload have signi cant e ects. If the level of the factors Number of Activities, Number of Projects and Resource Factor increases, the histogram will be more leveled and if
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 421 Fig. 5. Performance in multiproject scheduling. Means plot for no time criteria: (a) project splitting, (b) in-process inventory, (c) mean coe cient of variation (resource levelling) and (d) idle resource. the level of the Overload increases the multiproject schedule obtains more unleveled histograms. Additionally, when the level of the Resource Factor is low, the Backward Pass is more e cient. Idle Resources are analysed in Fig. 5(d) in which we can see that the priority rule MINLFT is the method that obtains the best performance. When the multiproject schedules obtained by Time Line are improved with the Backward±Forward Pass, the new schedules obtain a performance similar to those obtained with MINLFT. The Resource Overload Factor has no signi cant e ect. Nevertheless, the factors Number of Projects and Resource Factor have a signi cant e ect in the sense that when the level of these factors increases, idle resources decrease. In general, improvements with no time criteria can be greater if before applying the corresponding feasible schedule improvement algorithm, the rst phase of the multicriteria heuristic algorithm
422 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 proposed is applied. Finally, we can say that project management software needs to make an e ort to obtain an e ciency close to the heuristics based on priority rules and the multicriteria heuristic algorithm designed can be helpful for this purpose. 6. Conclusions and future works In order to add exibility in using project scheduling tools, we have developed a multicriteria heuristic algorithm taking into account aspects such as time ± mean project delay or multiproject duration increase ± as well as project splitting, inprocess inventory, resource levelling or idle resources. With this approach, the practitioner can choose the most interesting time and not time objective for him. The heuristic multicriteria algorithm consists of several algorithms based on the improvement of feasible schedules. These algorithms, that are based on the concepts of FFS and BFS of the activities, can be easily coded into a project scheduling software tool and they signi cantly improve the initial feasible multiproject schedule obtained from heuristic methods based on priority rules as well as project management software. Concretely, as we can see in Table 2, in our computational study, on the one hand, the rule MAXTWK ± with a multiproject approach ± and the software Project Scheduler 6 with the application of the corresponding feasible schedule improving algorithm results the most e cient method for the criteria Mean project delay, Project splitting and In-process inventory. On the other hand, the rule MINLFT ± with a single-project approach ± and the software Time Line with the application of the corresponding feasible schedule improving algorithm, result the most e cient methods for the criteria Multiproject Duration Increase, Resource Levelling and Idle Resources. These nal activity schedules can be again manually adapted to the particular needs of the practitioners with the concepts of FFS and BFS. Additionally, in the rst phase of the multicriteria algorithm and for time criteria, the multiproject schedule can be improved again. This new improvement (that we can consider in future works) can consist of additional Forward±Backward pass iterations where activities from the Table 2 Best methods and ranking of performance for heuristics and project management software before and after applying the improving algorithms Criteria Heuristics and project management software Application of the improving algorithms Best method Ranking a Best method Ranking a Mean project dealy Multiproject duration MAXTWK SPJ-MP > MINLFT > TL > PS6, SPJ-SP > MSP-SP, MSP-MP MINLFT TL > SPJ-SP, SPJ-MP > MAXTWK > MSP-SP, MSP-MP > PS6 Project splitting MAXTWK MINLFT, SPJ-MP > TL > SPJ-SP > PS6 > MSP-SP, MSP-MP In-process Inventory Resource levelling MAXTWK SPJ-MP > PS6 > TL, MINLFT > SPJ-SP > MSP-SP, MSP-MP MINLFT TL > SPJ-SP > SPJ-MP > MSP-SP > MSP-MP > MAXTWK > PS6 Idle resources MINLFT TL > SPJ-MP, SPJ-SP > MAXTWK > MSP-SP, MSP-MP > PS6 a > denotes statistically better performance according to the Newman±Keuls test. MAXTWK MINLFT Time line PS6 > SPJ-MP > MINLFT-MP, TL > SPJ-SP, MSP-SP, MSP-MP SPJ-SP, MSP-SP, MSP-MP, SPJ-MP > PS6, MAXTWK MAXTWK PS6 > SPJ-MP, TL, MINLFT > SPJ-SP > MSP-MP, MSP-SP MAXTWK MINLFT MINLFT Time line PS6 > SPJ-MP > TL, MSP-MP > SPJ-SP, MSP-SP > MINLFT TL > SPJ-SP > SPJ-MP, MSP-SP > MSP-MP > MAXTWK > PS6 SPJ-SP > MSP-SP, MSP-MP, SPJ-MP > MAXTWK > PS6
A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 423 sorted activity list can be shifted or not shifted with a random decision. That is, the scheduled dates can change or not change. In this way, the free slacks of the activities change and new improvements are possible. Furthermore and in the context of project controlling, when the inevitable activity delay occurs during the execution of the projects, the project manager must often reschedule the resource constrained projects to determine new activity start and nish times (Willis, 1985). So, there is clearly a need for information and what-if analysis tools that allow the project manager to control projects easier. FFS and BFS concepts de ned in this work are very useful for this purpose and can be e ciently included into Decision Support Systems tools integrated into standard project management software like Microsoft Project, CA-SuperProject or Time Line. This standard software have a programming language to code these new features and Forward±Backward iterative procedures. Finally, it is interesting to note that this algorithm is open in the sense that it can be adapted to include new objectives related to the particular needs of companies and it o ers exibility to practitioners when they schedule and control projects. Acknowledgements We would like to thank the referees for their helpful comments and suggestions on an earlier version of this paper, the Generalitat Valenciana for its support with the Programa de Proyectos de Investigacion Cientõ ca y Desarrollo Tecnologico, GV-2216/94 and GV97-TI-05-35, and nally the Instituto de la Mediana y Peque~na Industria Valenciana (IMPIVA) for its help in the survey carried out in the Valencian Region-Spain. References Alvarez-Valdes, A., Tamarit, J.M., 1989. Heuristic algorithms for resource constrained project scheduling: A review and an empirical analysis. In: Slowinski, R., Weßglarz, J. (Eds.), Advances in Project Scheduling. Elsevier, Amsterdam, pp. 113±134. Baker, K.R., Introduction to Sequencing and Scheduling, Wiley, New York. Bock, D.B., Patterson, J.H., 1990. A comparison of due date setting resource assignment and job preemption heuristics for the multiproject scheduling problem. Decision Sciences 21, 387±402. Boctor, F.F., 1990. Some e cient multi-heuristic procedures for resource constrained project scheduling. European Journal of Operational Research 49, 3±13. Burges, A.R., Killebrew, J.B., 1962. Variation in activity level on a cyclic arrow diagram. Journal of Industrial Engineering 13, 76±83. Cooper, D.F., 1976. Heuristics for scheduling resource constrained scheduling projects: An experimental investigation. Management Science 22, 1186±1194. Davis, E.W., Patterson, J.H., 1975. A comparison of heuristics and optimum solutions in resource constrained project scheduling. Management Science 21, 944±955. Dumond, J., Mabert, V.A., 1988. Evaluating project scheduling and due date assignment procedures: An experimental analysis. Management Science 34, 101±118. Fendley, L.G., 1968. Towards the Development of a Complete Multiproject Scheduling System. Journal of Industrial Engineering, 505±515. Kolisch, R., 1996. Serial and parallel resource-constrained project scheduling methods revisited: Theory and computation. European Journal of Operational Research 90 (2), 320±333. Kolisch, R., Hartmann, S., 1998. Heuristic algorithms for the resource-constrained project scheduling problem: Classi cation and computational analysis. In: Weglarz, J. (Ed.), Project Scheduling: Recent Models, Algorithms and Applications. Kluwer Academic Publishers, Amsterdam, pp. 147± 178. Kurtulus, I.S., Davis, E.W., 1982. Multi-project scheduling: Categorization of heuristic rules performance. Management Science 28 (2), 161±172. Kurtulus, I.S., Narula, S.C., 1985. Multi-project scheduling: Analysis of project performance. IIE Transactions 17 (1), 58±66. Lawrence, S.R., Morton, T.E., 1993. Resource-constrained multi-project scheduling with tardy costs: Comparing myopic bottleneck and resource pricing heuristics. European Journal of Operational Research 64, 168±187. Levy, F.K., Thompson, G.L., Wiest, J.D., 1963. Multiship multishop workload smoothing program. Naval Research Logistics Quarterly 9, 37±44. Li, K.Y., Willis, R.J., 1992. An iterative scheduling technique for resource-constrained project scheduling. European Journal of Operational Research 56, 370±379. Lova, A., 1997. Programacion de multiproyectos con recursos limitados: un enfoque multicriterio. Unpublished Ph. D. Dissertation, Universidad Politecnica de Valencia. Maroto, C., Lova, A., Alcaraz, J., Tormos, P., 1997. Resource allocation in single, multiple projects: algorithms and
424 A. Lova et al. / European Journal of Operational Research 127 (2000) 408±424 professional software, XV EURO and XXXIV INFORMS Joint International Meeting: OR/MS for the New Millennium, 14±17 July, Barcelona (Spain). Maroto, C., Tormos, P., Lova, A., 1998. The evolution of software quality in project scheduling. In: Weßglarz, J. (Ed.), Project Scheduling: Recent Models, Algorithms and Applications. Kluwer Academic Publishers, Amsterdam, pp. 239± 259. Maroto, C., Tormos, P., Lova, A., Crespo, F., 1996. Professional Software for resource constrained scheduling: heuristic and exact methods, Fifth international workshop on project management and scheduling, 11±13 April, Poznan (Poland), Scienti c Publishers OWN PAN, pp. 163±166. Ozdamar, L., Ulusoy, G., 1995. A survey on the resourceconstrained project scheduling problem. IIE Transactions 27, 574±586. Ozdamar, L., Ulusoy, G., 1996. A note on an iterative forward/ backward scheduling technique with reference to a procedure by Li and Willis. European Journal of Operational Research 89, 400±407. Payne, J.H., 1995. Management of multiple simultaneous projects: A state-of-the-art review. International Journal of Project Management 13, 163±168. Sprecher, A., 1994. Resource-Constrained Project Scheduling. Springer, Berlin. Sprecher, A., Kolish, R., Drexl, A., 1995. Semi-active, active and non-delay schedule for the resource-constrained project scheduling problem. European Journal of Operational Research 80, 94±102. Tsubakitani, S., Deckro, R.F., 1990. A heuristic for multiproject scheduling with limited resources in the housing industry. European Journal of Operational Research 49, 80±91. Vives Casino, E., 1995. Modelizacion de grafos para Gestion de Proyectos, Proyecto Fin de Carrera, Facultad de Informatica, Universidad Politecnica de Valencia. Wiest, J.D., 1963. The Scheduling of Large Projects with Limited Resources, Ph.D. Thesis, Carnegie Institute of Technology. Wiest, J.D., 1964. Some properties of schedules for large projects with limited resources. Operations Research 12, 395±418. Wiest, J.D., 1967. A heuristic model for scheduling large projects with limited resources. Management Science 13, B359±B377. Wiley, V.D., Deckro, R.F., Jackson Jr., J.A., 1998. Optimization analysis for design and planning of multi-project programs. European Journal of Operational Research 107, 492±506. Willis, R.J., 1985. Critical path analysis and resource constrained project scheduling ± Theory and practice. European Journal of Operational Research 21, 149±155. Woodworth, B.M., Willie, C.J., 1975. A heuristic algorithm for resource leveling in multi-project multi-resource scheduling. Decision Sciences 6, 525±540.