# A stage-based human resource allocation procedure for project management with multiple objectives

Shwu-Min Horng

National Chengchi University in Taiwan, Republic of China

### Introduction

Since the development of Program Evaluation and Review Technique (PERT) and Critical Path Method (CPM) in the late 1950s, interest in project management has been mainly focused on making the best use of scarce resources throughout the duration of a project. Project management can be defined as “an organization of people dedicated to a specific purpose or objective” (Steiner, 1969, p 481). Projects generally involve large, expensive, unique or high risk undertakings which have to be completed by a certain date, for a certain amount of money, within an expected level of performance. The management of human resources has always been the most important issue in project management. However, for the purpose of modeling and solution resolving in project management, human resources were usually considered working at constant speed; and no models or theories were found to include the time required among people for communication and interaction. The first objective of this study is to model the communication and interaction time required for the people working in the same activity. In addition, when more than one person is assigned to the activity, a manager is appointed to monitor the process.

Most of the literature in project management models the project as a whole, the ultimate purpose being to minimize the cost or duration of the entire project. However, this is impractical in real cases. For example, in implementing an Enterprise Resource Planning (ERP) system, companies normally decompose the project into several stages and evaluate the stages periodically because of high cost and risk. In order to comply with certain important events—such as the completion of a new building, the visit of important customers, training schedules, etc.—the expected completion schedule of the stage has to be modified manually. As a result, the original resource allocation plan for the entire project becomes inflexible and ineffective. One of the objectives in this research is to develop a model based on stages to provide solutions when the expected completion date of the project is changed. The stage-based model has several advantages:

- The completion of a stage represents a milestone of the project, making it easier for the project manager to monitor and visualize the progress.
- Decomposing the project into several stages reduces the complexity of the problem. Although the global optimum might not be obtained, the stage-based system provides additional benefits in practice.
- Human resources are very difficult to forecast and manage. Many factors—such as resignation, training, taking leaves, etc.—have high impact on the efficiencies and are difficult to quantify. The longer the period to consider the human resources, the more difficult to control and confirm their schedules. Therefore, it is better to consider the human resources during the period of a stage than throughout an entire project.
- In reality, not every project is successful. By focusing on the success of each stage, the decision maker is able to continue or interrupt the project according to the current situation. Switching to another system is another possible alternative.

The last objective of this research is to derive solutions under multiple objectives, particularly cost and time. Theoretically, spending the minimum cost and finishing the project in minimal time are mutually exclusive. Companies usually swing between these two goals, with the weights on them varying based on practical considerations. Therefore, a heuristic is developed in this study to find the solutions considering different weights of two objectives.

### Literature Review

Time and cost are two important measures in Project Management (PM), and certain aspects of conventional models do not deal with items—such as team building, leadership, motivation, communication, risk, quality management, and so on—have been receiving more attention recently (Williams, 2003). For the study of time as the measure, some authors (Ingalls & Morrice, 2004) used simulations to solve the problem with limited constraints. By showing all the possible schedules graphically, the decision maker can make the final decision according to the simulation results. Genetic Algorithm (GA; Holland, 1975) was another approach to solve the resource-constrained project scheduling problems (Alcaraz & Maroto, 2001: Hartmann, 2001). Some authors developed their heuristics based on the characteristics of the problems (Lova & Tormos, 2001; Tormos and Lova, 2001), while others considered the continuous restriction of the resources, and developed an algorithm through CPM to find the feasible schedule assuming the activity production rate remains the same (Ammar & Elbeltagi, 2001). Another popular approach is mathematical programming—such as linear programming (Wang, Perkins, & Khurana, 2002) or nonlinear programming (Burkova, Kolpachev, & Potapenko, 2004)—to solve the optimization problem. A project can be decomposed into several continuous phases and solved by using dynamic programming. Decomposing a complex project into several stages can simplify the problem and reduce the complexity (Khamooshi, 1999). Another paper discussed the management of time-critical operations and their dynamic interrelations in project managements. The authors found that practicing managers tend to plan safety buffers in their operations, a practice which biases the overall planning of projects, and proposed a management model putting special emphasis on the tasks along the critical path (Hameri & Heikkilä, 2002). In this study, a manager was added to each activity with more than one person involved, and additional time was included to take into account the communication among resources working in the same activity.

For costs-minimization literature, mathematical models were used by most researchers. A mixed integer program (Smith, Nauss, & Subramanian, 2004) and a linear program (Deckro & Hebert, 2002) were applied to the allocation of human resources. To consider the dynamic value of the resources, net present value was proposed as the criterion to allocate resources (Olafsson, 2003). Time and cost are two objectives not usually optimized simultaneously; the trade-off between these two was studied by using simulations (Haga & Marold, 2004).

Risk is also a common measure in project management, with different definitions in the literature. Some authors used questionnaires to collect information from project managers. Their statistical analyses identified six dimensions of software project risk, and measures were developed for each. The results show that these risks have influence on project performance (Wallace, Keil, & Rai, 2004). Human risk factors were identified as the most influential construction risk to project risk management (Thevendran & Mawdesley, 2004). Risk could be quantified (Crossland, Williams, & McMahon, 2003), or transformed into project uncertainty management and controlled systematically (Ward & Chapman, 2003). Some authors recognized the risks as knowledge to be reused, and consequently to be reduced (Barros, Werner, & Travassos, 2004). In another research project, the variance of project completion time was considered the risk and modeled by nonlinear programming (Turnquist & Nozick, 2004).

The soft factors previously mentioned are usually related to the human behaviors. The biases engaged from project personnel applying heuristics can be introduced into the formulation of specifications, eventually leading to failed projects (Purvis, McCray, & Roberts, 2004). A study integrated several models and used simulation to predict the impact of unexpected situations during the project development on project performance (Lee & Miller, 2004). Some authors presented a method for analyzing the impact that software project factors have on project success (Wohlin & Andrews, 2003), while others defined a vision of what the project is meant to achieve and how it can make a significant positive impact (Christenson & Walker, 2004). Focusing on the small and medium-sized enterprises in the Southeast Asia region, an agent-based model was proposed to coordinate the management of enterprise resources (Huin, 2004). Another research project studied the organizational development projects and suggested that it is not possible to develop a solution once and for all in the initial phase (Riis & Pedersen, 2003). It is a continuous management task to find solutions that represent a proper balance between opposite criteria. This concept motivated researchers to develop a flexible resource allocation model to provide solutions according to the most recent conditions.

For the combined objective, a study assigned weights on resource constraints, duration of project, and cost, to form a single objective and solved it by using GAs (Chang, Christensen, & Zhang, 2001). Another paper proposed fuzzy goal programming by combining the objectives of total costs, total completion time, and total budget constraint (Wang & Liang, 2004). Figure 1 summarizes the literature regarding project management in terms of two factors, objective and methodology.

**Figure 1. Literature summary of project management by methods and objectives**

### Staged-Based Human Resource Allocation Procedure

In this paper, a stage-based human resource allocation procedure is developed assisting the decision maker to find the most appropriate solution for the project. By decomposing the project into several stages and setting different completion dates, a list of solutions is created and the decision maker is able to select the solution based on the criteria of cost, time, and risk. Figure 2 illustrates the stage-based resources allocation procedure developed in this study. It can be depicted as the following steps.

**Step 1:** The completion date of the entire project is the ultimate goal and should be determined at the beginning. However, it will be modified if the decision maker is not satisfied with the solutions generated.

**Step 2:** The project is decomposed into several stages, each of which has a start and an end time. Decomposition of the project is based on the characteristics of the project, and no activity will be planned across two consecutive stages. The last stage is defined as the *N ^{th}* stage.

**Step 3:** The procedure starts at the first stage and works sequentially through the last stages.

**Step 4:** The expected completion time of the stage is determined by the user.

**Step 5:** The input data, in addition to the expected completion time for the entire project (given at step 1), stages of the project (given at step 2), include required resources of each stage, activities of each stage and their precedence relationship, required resources of each activity, activities that can be handled by each resource, availabilities of resources during the expected implementation period of the project, and cost information.

**Step 6:** Form the first Nonlinear Programming (NLP-1) to minimize the cost.

**Step 7:** A two-phase approach integrating a GA and Linear Programming (LP) will be used to find the solution.

**Decision nodes:** If the feasible solution is found, the procedure returns to step 4 and sets the expected completion date of the stage one unit of time earlier. The unit of time is usually a week. This process is iterated until no solution can be found. By calculating the variance of activities on the critical path, each solution will have its confidence level to complete the stage by the expected completion date and its associated cost. If the user is not satisfied with the solutions, he/she is allowed to modify the resources (add or subtract the resources, change the availabilities of the resources) or reset the completion date of the stage, and repeat the process from step 4. After working through all the stages, the procedure enters the next step.

**Step 8:** All the feasible solutions of stages will be collected and stored at this step. Each solution contains the start time, end time, confidence level to complete the stage by the end time, and its cost.

**Step 9:** In order to find the solution of the entire project, the user needs to determine the minimum risk, defined in this paper as the probability to complete the project by its completion date, set at step 1.

**Step 10:** The problem stated in step 9 is modeled as another NLP (NLP-2).

**Figure 2. Staged-based resources allocation procedure (S-RAP)**

The next section describes the details of formulating and solving the two NLPs.

### Formulation of NLP-1

The linear programming is used as the basic model (Deokro and Hebert, 2002), and other factors are added to generate the NLP-1 as follows.

*H*_{k(q)}: Non-managerial resources needed for the project,*k =* 1,2,…*s*_{1}.

*q* : resource attribute, *q =* 1,2,…, *v*.

Resources are categorized into several groups, with each group assigned an attribute. However, the resources holding multiple skills have more than one attribute. For example, a project requires two software engineers familiar with C++ and Java, and they are assigned attributes 1 and 2, respectively. A software engineer with knowledge of both will be assigned attributes 1 and 2.

*H*_{m} : project managers, *m =* *s*_{1} +1, *s*_{1} + 2,…, *s*_{2}, total of *s*_{2} – *s*_{1} managers.

*x _{i}*: time at node

*i*,

*i =*1,2,…,

*n*.

(*i, j*): activity from node *i* to node *j, i* = 1,2,…, *n* – 1; *j* = 2,3,…, *n*.

*A* : the set of all activities, (*i, j*) ∈ *A* ∀ all *i,j.*

*A _{Hk}* : the set of activities (

*i*,

*j*) in which the non-managerial resource

*H*can work on, where (

_{k}*i*,

*j*) ∈

*A*.

*A*_{(i, j)}: the set of attributes required by activity (*i, j*), where (*i, j*) ∈ *A* .

*A*_{q(i, j)} : the set of non-managerial resources that their attributes belong to *A*_{(i, j)}, where (*i*, *j*) ∈ *A* . This is equivalent to the set of non-managerial resources that is possible to be acquired by activity(*i*, *j*).

*A*_{Hm} : the set of activities(*i*, *j*) that manager *H*_{m} is capable of managing, where (*i*, *j*) ∈ *A*

*B _{Hk(i,j)}* : binary variable, 1 when the non-managerial resource

*H*is occupied by activity(

_{k}*i*,

*j*), 0 otherwise.

*B _{Hm(i,j)}* : binary variable, 1 when the manager

*m*is occupied by activity (

*i*,

*j*), 0 otherwise.

*U*_{Hk(i,j)} : job per day, the working speed of non-managerial resource *H _{k}* at activity (

*i*,

*j*).

*d*_{q(i, j)}: the working time by non-managerial resources with attribute *q* at activity (*i*, *j*), where *q =* 1,2,…, *v*.

If more than one non-managerial resource containing the same attribute are working at the activity, they are assumed to share the load.

*L* : communication ratio. Power and Sohal (1998) mentioned that the working time will decrease when resources increase. However, their relationship is not linear because additional time, indicated by *L* ratio, is required for communication and collaboration among resources. Note that no additional time is needed when there is only one resource.

*T*_{ij}: time needed to complete activity*(i,J),* *T*_{ij}=*Max*(*d _{q(i,j)}*), where

*q*∈

*A*

_{(i,j)}Because each resource works at a different speed in each activity, the total time required for resources with the same attribute to complete the activity will be calculated, and the largest one used to represent the activity time of (*i*,*j*).

Assume that an activity (2,3) requires resources with attributes 1 and 2, and that the communication ratio is 0.05. Five resources, three of them with attribute 1 and two of them with attribute 2, are assigned to this activity, as shown in Figure 3.

**Figure 3. Example of five resources with two attributes in an activity**

*u _{Hk(i,j)}* is equal to the reciprocal of the numbers in column 3. Apply these numbers to equation (1) and round up the numbers to the nearest integer:

*d _{1(2,3)}* = (1/(1/10+1/8+1/14))(1+0.05)

^{3-1}= 3.72 ⇒ 4 , and

*d*= (1/(1/7+1/9))(1+0.05)

_{2(2,3)}^{2-1}= 4.13 ⇒ 5. Therefore,

*T*=

_{(2,3)}*Max*(

*d*,

_{1(2,3)}*d*) = 5 days.

_{2(2,3)}*p _{m(i,J)}*: percentage of activity time required for project manager H

*on activity (*

_{m}*i,j*).

*D _{Hk}* : total time available to resource

*H*during the time frame of the stage.

_{k(q)}*D _{Hm}* : total time available to project manager

*H*during the time frame of the stage.

_{m}*C*_{Hk} : cost per unit of time for resource *H*_{k}, where *m* = 1,2,…, *s*_{1}.

*C** _{Hm}* : cost per unit of time for project manager

*H*

_{m}, where

*m*=

*s*

_{1}+1,

*s*

_{1}+ 2,…,

*s*

_{2}.

*F*_{(i, j)}: fixed cost of activity (*i*,*j*).

*OH* : overhead costs per unit of time of the stage.

*T*_{d} : expected completion date of the stage.

Minimize Z =

The objective (equation 2) is the total expense of the stage. It consists of indirect cost, direct cost, and fixed cost. Indirect cost is the overhead cost multiplied by the project duration *X _{n}*; direct cost includes the expenses of non-managerial resources and managerial resources; and fixed cost is the setup cost of the stage. Constraint (3) defines the activity time of (

*i*,

*j*) to be less than or equal to the time between scheduled start time and end time. In order to provide the lower and upper bounds of the activity time in constraints (3), the PERT three-estimate approach is used in this research. Three estimates for each resource are obtained for each activity. Enter the three estimates of the resources assigned to the activity into equation (1), and three estimates for the activity are calculated. The approximate mean and variance of the activity are computed accordingly in which the means of activities are used for the NLP model to find the schedule, and the variances of activities in the critical path are used to compute the variance of duration to complete the stage.

Constraint (4) specifies the completion date of the stage. Constraints (5) and (6) make sure that the non-managerial and managerial resources will not be assigned to those activities in which they are not capable of working. For any activity, at least one resource for any attribute and exactly one manager are required. This is described in constraints (7) and (8). In constraints (9) and (10), the time used by both of the non-managerial and managerial resources will not exceed the times available. Constraint (11) defines the binary variables and (12) is the nonnegative constraint.

Although the model described in the previous section is nonlinear programming, it will be simplified as linear programming when all of the binary variables are known. An approach integrating a GA and a LP is developed to solve the NLP.

The following steps briefly describe how GA is used in this research: coding, initialization, selection, crossover, mutation, remedy, elitism, evaluation, and termination.

### Coding

A string, representing a solution, has the number of digits equal to the total binary variables. Figure 4 is an example of a project with three activities {(1,2), (2,3), and 1,3)}, two managerial resources, and three non-managerial resources. In order to generate feasible solutions after the process of crossover from two strings, the string is arranged based on the activity shown in Figure 4.

**Figure 4. An example of a project with three activities, 2 managerial resources, and 3 non-managerial resources listed by variable**

Non-managerial resource 1 can work on activities (1,2), (1,3), and (2,3); non-managerial resource 2 on activities (1,2) and (1,3); and non-managerial resource 3 on activities (1,3) and (2,3). Managerial resource 4 will be assigned to work on activities (1,2) and/or (1,3); and managerial resource 5 on activities (1,3) and/or (2,3). A string of 11 1 101 01 01 1 represents a feasible solution of assigning resources 1, 2, and 4 to activity (1,2), resources 1, 3, and 5 to activity (1,3), and resources 3 and 5 to activity (2,3). One string consists of several genes representing special meanings. In this example, the first two digits represent the gene indicating the assignment of non-managerial resources to the first activity, and a total of six genes are observed as shown in Figure 5.

**Figure 5. An example of a project with three activities, 2 managerial resources, and 3 non-managerial resources listed by activity**

### Initialization

Assigning a random integer value, 0 or 1, to each binary variable generates the initial population. However, all the randomly generated solutions have to be feasible, and the string will be regenerated until satisfying constraints (5), (6), (7), and (8).

### Selection

Selection is an operation to select strings according to their performance, for the purpose of generating new offspring. The strings with better evaluation performance are given a better chance to survive in the next generation. Crossover and mutation (the next two steps) are then applied to selected strings.

### Crossover

In this step, two parent strings exchange portions of their contents. For example, two parent strings—(11 1 101 01 01 1) and (10 1 111 01 01 1)—are selected according to pre-defined crossover probabilities. A crossover point between genes is randomly selected (assume 2 is selected; the maximum is 5), and two new strings (11 1 111 01 01 1 ) and (10 1 101 01 01 1) are then generated. Values between 0.6 and 0.9 are generally used for crossover probabilities so that more strings can evolve to local optima.

### Mutation

According to a pre-defined mutation probability, a digit is selected and replaced with a different number. For example, the operator might select digit two in string (101 01 01 1) and replace the “0” with “1”. Thus, the new string will be (111 01 01 1). The mutation probability is typically one percent of the total digits in one string, because a digit change in a string often means a dramatic change of searching direction. A proper mutation probability helps the algorithm maintain diversity while searching. On the other hand, an improper mutation probability will either damage the strings if it is too large or prematurely converge the process if it is too small.

### Remedy

After the processes of crossover and mutation, the strings might not be feasible, and might require modification. The remedy process for the infeasible strings is stated as follows. For every activity, ensure that each attribute of non-managerial resources has been assigned with at least one of the required resources; otherwise a randomly generated resource containing the same attribute will be allocated to this activity. Regarding the managerial resources, only the activities with more than one non-managerial resource require exactly one managerial resource. These activities will be screened and those without any managerial resource will be randomly assigned one, and activities with too many managerial resources will randomly choose one. All the randomly selected managerial and non-managerial resources to a specific activity are based on their pre-defined capabilities of working on this activity. The last process is to examine whether or not each non-managerial and managerial resource is over-utilized. Note that two activities might be performed in parallel fashion, with the same resource assigned to both activities scheduled over its capability. An example is shown in Figure 6.

**Figure 6. An example of a resource over utilized by two activities**

A resource is scheduled working 75% of his time (6 hours per day) in activity 1 from day 1 to day 9, and 50% of his time (4 hours per day) in activity 2 from day 2 to day 9. The last two rows of the table represent the adjusted schedule by moving all his time toward either day 1 or day 9. Apparently, in day 6 this resource is used 200%. When this situation is detected, a dummy activity is added immediately after activity 1 with a required resource of one day of the same person.

### Elitism

The worst individual of the population in the current generation is replaced with the best individual in the population from the previous generation. This strategy helps the algorithms converge to better solutions (Rudolph, 1994).

### Evaluation

After generating feasible solutions for the binary variables, the nonlinear programming is simplified to a LP and the solution, whenever available, can be found. The value of objective will then represent the performance of the string.

### Termination

Some criteria are used to terminate the algorithm. The most commonly used one is the number of evaluations, which is equal to the population size times the number of generations.

### Formulation of NLP-2

The following variables are used for formulating NLP-2, as described at step 10.

: the *j ^{th}* solution at stage

*i*, where

*i*= 1,..

*N*, and

*j*= 1,..

*m*

_{j}.

*m*is the number of feasible solutions at stage

_{i}*i*.

*BT*(): the begin time of solution .

*ET*(): the end time of solution .

*CL*(): the confidence level of solution to complete the *i ^{th}* stage between BT() and ET().

*CO*(): the cost of solution .

*T _{p}:* The due date of the entire project determined at step 1.

*CL:* Confidence level of the entire project determined at step 9, the probability to complete the project by *T _{p}.*

Equation (13) is the objective function to minimize the total cost of the entire project. The end time of the last stage has to be completed by the project completion date and is described in constraint (14). Constraint (15) indicates that every stage has to be completed by the begin time of the following stage. The last constraint, (16), is the reliability test to make sure that the probability of completing the project by the due date is greater than the pre-defined value. Because each stage requires a feasible schedule, a total of (m_{1})x(m_{2})x(m_{3})x ...(m_{N}) possible solutions can be found. The one with the minimum cost of equation (13) and not violating constraints (14) to (16) is the final solution of the entire project. Although the number of schedules of each stage stored at step 8 will be accumulated over time, and they are all feasible to be considered in NLP-2 as described above, finding all the possible combinations requires little CPU time and should be applied to solving NLP-2.

### Multiple objectives

During implementation of the ERP system, the company usually focuses on the cost or time individually. However, both of the goals are generally restricted within certain ranges by higher-level management. Therefore, the project manager will need to consider the tradeoff between two objectives simultaneously. For example, an increase in resources can shorten the duration, but the cost will also increase. Depending on the weights assigned to each objective, the solutions are considered as the Pareto Front solutions defined, as follows.

Consider an optimization problem with multiple objectives. If *x*_{*} is a solution in feasible region and no other point *x*_{*} ≠ *x*_{*} satisfying the following two conditions simultaneously:

1. *f _{j}* (

*x*) <

*f*(

_{j}*x*

_{*}) to any objective

*f*, and

_{j}2. if *i ≠ j*, *f _{i}*(

*x*) ≤

*f*(

_{i}*x*

_{*}),

then *x*_{*} is the Pareto front solution of this problem. In general, the Pareto front solutions with two objectives can be illustrated as in Figure 7.

**Figure 7. Pareto Front Solutions**

Different solutions can be found accordingly, following the steps shown in Figure 1 by altering the expected completion date of the project at step 1. After several iterations, the Pareto Front solutions as in figure 2 will be obtained and the decision maker will have the option of selecting solutions by assigning weights on the two objectives, cost and time. The decision maker can also use this procedure at the end of each stage to evaluate the entire project based on the current conditions.

### Summary and Future Work

This paper proposes a procedure by dividing a project into stages in which the resource allocation in each stage is modeled as nonlinear programming and solved by a two-phase approach. A remedy process is developed to modify the infeasible solutions that are either generated by the GA operators, crossover and mutation, or by over-utilizing the resources. Because management tends to overestimate the duration of a project, this paper includes the time required for communication among teammates working in the same activity and the time required for managing the activities, so that the solution can be better used to estimate the duration of the project. This research also considers multiple objectives that are encountered during most of the practical cases, and provides a way of finding solutions of the Pareto Front for the management to make the final decision according to the latest conditions. A numerical example with the data from real cases will be collected for this research to demonstrate the advantages of the procedure proposed in this study.

### Acknowledgment

This research is supported by National Science Council of Taiwan under Grant No. NSC-94-2416-H-004-014.

### References

Alcaraz, J., & Maroto, C. (2001). A robust genetic algorithm for resource allocation in project scheduling. *Annuals of Operating Research, 102*(1), 83-109.

Ammar, M. A., & Elbeltagi, E. (2001). Algorithm for determining controlling path considering resource continuity. *Journal of Computing in Civil Engineering, 15*(4), 292-298.

Barros, M. O., Werner, C. M. L., & Travassos, G. H. (2004). Supporting risks in software project management. *The Journal of Systems and Software, 70*(1-2), 21-35.

Burkova, I. V., Kolpachev, V. N., & Potapenko, A. M. (2004). Geometrical method of scheduling in project management. *Automation and Remote Control, 65*(12), 1991-1997.

Chang, C., Christensen, M. J., & Zhang, T. (2001). Genetic algorithms for project management. *Annuls of Software Engineering, 11*(1), 107-139.

Christenson, D., & Walker, D. H. T. (2004). Understanding the role of “vision” in project success. *Project Management Journal, 35*(3), 39-52.

Crossland, R., Williams, J. S., & McMahon, C. (2003). The practical application of design risk assessment models. *Proceedings of the Institution of Mechanical Engineers, Part B: Journal of Engineering Manufacture, 217*(2), 227-234.

Deckro, R. F., & Hebert, J. E. (2002). Modeling diminishing returns in project resource planning. *Computers and Industrial Engineering, 44*(1), 19-33.

Haga, W.A., & Marold, K.A. (2004). A simulation approach to the PERT/CRM time-cost trade-off problem. *Project Management Journal, 35*(2), 31-37.

Hameri, A-P, & Heikkilä, J. (2002). Improving efficiency: Time-critical interfacing of project tasks. *International of Journal of Project Management, 20*(3), 143-153.

Hartmann, S. (2001). Project scheduling with multiple models: A genetic algorithm. *Annals of Operations Research, 102*(1), 111-135.

Holland, J. H. (1975). *Adaptation in natural and artificial systems.* Ann Arbor, MI: The University of Michigan Press.

Huin, S. F. (2004). Managing deployment of ERP systems in SMEs using multi-agents. *International Journal of Project Management, 22*(6), 511-517.

Ingalls, R. G., & Morrice, D. J. (2004). PERT scheduling with resource constraints using qualitative simulation graphs. *Project Management Journal, 35*(3), 5-14.

Khamooshi, H. (1999). Dynamic priority-dynamic programming scheduling method (DP)^{2}SM: A dynamic approach to resource constraint project scheduling. *International of Journal of Project Management, 17*(6), 383-391.

Lee, B., & Miller, J. (2004). Multi-project management in engineering using simulation modeling. *Software Quality Journal, 12*(1), 59-82.

Lova, A., & Tormos, P. (2001). Analysis of schemes and heuristic rules performance in resource-constrained multiproject scheduling. *Annals of Operations Research, 102*(1), 263-286.

Olafsson, S. (2003). Making decisions under uncertainty-implications for high technology investments. *BT TechNo.logy Journal, 21*(2), 170-179.

Power, D., & Sohal, A. S. (1998). Human resource management strategies and practices in Just-In-Time environments: Australian case study evidence. *International Journal of Production Research, 36*(5), 1293-1304.

Purvis, R. L., McCray, G. E., & Roberts, T. M. (2004). Heuristic and biases in information systems project management. *Engineering Management Journal, 16*(2), 19-27.

Riis, J. O., & Pedersen, F. L. (2003). Managing organizational development projects by paradoxes. *Production Planning & Control, 14*(4), 349-360.

Rudolph, G. (1994). Convergence analysis of canonical genetic algorithms. *IEEE Transactions on Neural Network, 5*(1), 96-101.

Smith, L. D., Nauss, R. M., & Subramanian, A. (2004). Decision support for staffing, outsourcing and project scheduling in MIS strategic plans. *INFOR, 42*(1), 79-100.

Steiner, G. A. (1969). Top management planning Macmillan. *Project Management Handbook,* (2nd ed.). In D. I. Cleland & W. R. King (Eds.), New York: Van Nostrand-Reinhold.

Thevendran, V., & Mawdesley, M. J. (2004). Perception of human risk factors in construction projects: An exploratory study. *International Journal of Project Management, 22*(2), 131-137.

Tormos, P., & Lova, A. (2001). A competitive heuristic technique for resource-constrained project scheduling. *Annals of Operations Research, 102*(1), 65-81.

Turnquist, M. A., & Nozick, L. K. (2004). A nonlinear optimization model of time and resource allocation decisions in projects with uncertainty. *Engineering Management Journal, 16*(1), 40-49.

Wallace, L., Keil, M., & Rai, A. (2004). How software project risk affects project performance: An investigation of the dimensions of risk and an exploratory model. *Decision Sciences, 35*(2), 289-321.

Wang, R.-C., & Liang, T-.F. (2004). Project management decisions with multiple fuzzy goals. *Construction Management and Economics, 22*(10), 1047-1056.

Wang, Y., Perkins, J. R., & Khurana, A. (2002). Optimal resource allocation in new product development projects: A control - theoretic approach. *IEEE Transactions on Automatic Control, 47*(8), 1267-1276.

Ward, S., & Chapman, C. (2003). Transforming project risk management into project uncertainty management. *International Journal of Project Management, 21*(2), 97-105.

Williams, T. (2003). The contribution of mathematical modeling to the practice of project management. *IMA Journal Management Mathematics, 14*(1), 3-30.

Wohlin, C., & Andrews, A. A. (2003). Prioritizing and assessing software project success factors and project characteristics using subjective data. *Empirical Software Engineering, 8*(3), 285-308.

©2006 Project Management Institute

Advertisement

Advertisement

## Related Content

Advertisement