IEEE TRANSACTIONS ON ENGINEERING MANAGEMENT, VOL. 45, NO. 1, FEBRUARY 1998 49 Use of Petri Nets for Resource Allocation in Projects Ashok Kumar V. K. and L. S. Ganesh Abstract—Traditional models for project management have not adequately incorporated a number of factors that are important for resource allocation. This paper describes the use of Petri nets to facilitate resource allocation in projects under some conditions commonly encountered in practice. Petri nets provide a powerful formalism for representing and analyzing concurrent systems. To date, however, very little has been done to integrate this graphical and mathematical tool with the area of project management. Petri net models can be used to analyze interdependencies, criticality, substitution, conflicting resource priorities, and vari- ations in the availability of resources. This paper proposes a new model and demonstrates the usefulness of the model for real-time activity scheduling in a resource-constrained project en- vironment. The model has been computerized using C language, and a simple project is chosen as an example to provide step- by-step explanations of the simulation carried out. This paper also discusses the implications of the model and the analysis it supports. Index Terms—Petri nets, project management, resource alloca- tion, resource-constrained scheduling. I. INTRODUCTION T RADITIONAL models such as critical path method (CPM)/program evaluation and review technique (PERT)/Gantt have been extensively used to graphically represent, monitor, and analyze projects executed over a period of time. Using traditional models, several studies have been carried out to: 1) ascertain the accuracy of the beta distribution to repre- sent activity duration times [21], [23]; 2) calculate criticality indexes 1 [22] 3) optimally schedule the activities in a resource- constrained environment [6], [9], [10], [12], [20], [24], [25]; 4) develop criteria for prioritization of activities while scheduling limited resources [6], [20]; 5) level the resource requirements [27], [32]. These studies have definitely aided in analyzing the uncer- tainties associated with a project and in taking corrective measures. At the same time, however, a number of factors such as interdependencies, criticality, conflicting priorities, and substitution of resources, which affect the control over project Manuscript received March 26, 1993; revised April 1996. Review of this manuscript was arranged by Department Editor R. Balachandra. The authors are with the Division of Industrial Engineering and Man- agement, Department of Humanities and Social Sciences, Indian Institute of Technology, Madras 600 036 India. Publisher Item Identifier S 0018-9391(98)00817-4. 1 Criticality index denotes the probability of an activity’s appearing in the critical path when a number of simulations are carried out with probabilistic activity completion times in a PERT network. execution, have not received the attention they deserve. This oversight may be due to the inadequacy of the traditional models to represent these factors effectively. The later models such as venture (V)ERT, graphical (G)ERT, controlled activity networks, and tools like time/cost tradeoff curves and influence matrix approaches (except critical resource diagram [1]) also are not capable of incorporating these factors. In contrast, Petri nets can incorporate these factors and thus provide a powerful methodology for resource allocation in projects. Petri nets are a graphical and mathematical modeling tool [31] that has been successfully applied in the areas of per- formance evaluation, communication protocols, legal systems, and decision models [8], [17], [31]. Project management has also been identified by some researchers [14], [15], [18] as a prospective area where the modeling power of Petri nets can be used. Liu and Horowitz [18] have suggested a model utilizing AND/OR graphs and Petri net notations to provide the description of a project work breakdown structure and the specification of relationships among different project information types to describe software-development projects. Magott [15] has suggested performance evaluation of con- current processes combining stochastic Petri nets and PERT networks. But these works do not concentrate on the important problem of resource allocation in projects. The aim of this paper is to demonstrate the relevance and use of Petri nets for resource allocation in projects. The Petri net model described here enables clear understanding of the effect of resource-availability constraints on project execution. This paper also discusses the efficacy of the Petri net model for on- line activity scheduling in a resource-constrained environment. This paper is organized as follows. In Section II, existing project-management models are identified and their inade- quacies are briefly highlighted. In Section III, we provide an introduction to different classes of Petri nets and their important properties. Section IV discusses, by means of an example, the proposed model, its applications, and the analysis it supports. Last, Section V presents conclusions and outlines further scope for research in this field. II. PROJECT-MANAGEMENT MODELS A. Traditional Models The CPM, the PERT, and the Gantt models can be referred to as traditional project-management models [18]. These mod- els have been extensively used to calculate activity parameters, including earliest starting time, latest starting time, earliest completion time, latest completion time, maximum available time, and slack time. The underlying chart of the Gantt model makes the computation of resource requirements for each day 0018–9391/98$10.00 1998 IEEE